Протоколы вычислительных сетей
Ассистент: Кузнецова Анна Валентиновна
Зачёт
- Понятие и составные части сетевого протокола.
- Спецификация протокола (на примере RFC). Описание КА. Описание сообщений.
- Функции протокола канального уровня. MAC-адреса. Концентраторы (хабы) и коммутаторы (свитчи).
- Стек TCP/IP. Разделение на уровни. Протоколы передачи данных и вспомогательные протоколы.
- Протокол межсетевого обмена IPv4. IP-адрес. Маска и адрес сети.
- Маршрутизация IP-пакетов. Маршрутизаторы. Маршрутизатор по-умолчанию. Роль протокола ICMP в маршрутизации.
- IP-фрагментация. MTU сети. Нефрагментируемые пакеты. Определение MTU маршрута.
- Протокол UDP: сообщение, функции, область применения.
- Протокол TCP: сообщение, функции, область применения. Установка соединения. Борьба с IP-фрагментацией. Определение MSS соединения.
- Протокол TCP. Окно приёма и окно передачи. Подтверждение. Повтор потерянных сообщений. Быстрый повтор.
- Протокол обмена маршрутной информацией RIP, его проблемы и ограничения.
- Протокол обмена маршрутной информацией OSPF. Области OSPF. Виды маршрутизаторов OSPF. Алгоритм Дейкстры.
- Автономные системы. Маршрутные политики. Протокол BGP.
- Трансляция сетевых адресов в IPv4. Использование DNAT и SNAT. Особенности NAT в случае UDP и ICMP.
- Основные подходы к фильтрации IP-трафика. Запрещающая политика в iptables. Использование состояний в правилах фильтрации.
- Переход от спецификации к реализация прикладного протокола. Реализация КА протокола и разбора сообщений.
- Проблема "развязывания" соединений и потоков при реализации прикладных протоколов. Вызовы select и poll.
- Передача сокета соединения рабочему потоку.
Передача сокета соединения рабочему процессу.
- Well-known ports. Проблема привелегий.
- Тестирование протокола. Системное и модульное тестирование. Принципиальные ограничения тестирования.
- Верификация протоколов с использованием конечных моделей. Ограничения верификации.
- LTL-логика и LTL-формулы.
- Язык Promela. Основные идеи. Конструкция assert. Инвариантный assert.
- Язык Promela. Обнаружение тупиков. Обнаружение бесполезных циклов.
Курсовая работа (ИУ7-112, ИУ7-113)
- Задание индивидуальное, но работы ведётся в паре. Сообщите мне, с кто с кем работает.
- Задание и распределение вариантов.
- Помощь в выполнении.
Домашнее задание № 1 (ИУ7-111)
- Работы ведётся в паре. Сообщите мне, с кто с кем работает.
- Задание и распределение вариантов (по присланным заявкам).
- Помощь в выполнении.
Домашнее задание № 1 (112, 113)
Лабораторные работы
Информация о лабораторных работах.