Системы управления и техническая эксплуатация информационных кабельных сетей
Тема 2.1. Структура протоколов TCP/IP
План занятия
Источники: Рашич В. О. и др. «Сетевые телекоммуникационные протоколы», пп. 2.3, 4.1, 4.4; Глецевич И. И., п. 3.1; документы Интернета (Request for Comments, RFC) 792, 1157, 3417
1. Уровни стека TCP/IP и модель OSI
Стек TCP/IP (Transmission Control Protocol / Internet Protocol): четыре уровня против семи у модели взаимодействия открытых систем (Open Systems Interconnection, OSI)
2. Основные протоколы и единицы данных
Поток, сегмент, дейтаграмма, пакет, кадр; три группы вспомогательных протоколов
3. Адрес, порт, сокет. Инкапсуляция
Запрос простого протокола управления сетью (Simple Network Management Protocol, SNMP) → UDP → IP → Ethernet по шагам
4. TCP и UDP. Почему SNMP по UDP
Протокол пользовательских дейтаграмм (User Datagram Protocol, UDP) против TCP; порты 161 и 162
5. ICMP, ping и traceroute
Протокол межсетевых управляющих сообщений (Internet Control Message Protocol, ICMP): эхо-запрос, время жизни (Time To Live, TTL)
Четыре уровня стека TCP/IP
Рашич, п. 2.3, рис. 2.6
Уровень TCP/IP | Уровни OSI | Протоколы | Где работает |
I. Прикладной | 7, 6, 5 | HTTP, SNMP, FTP, telnet, SMTP | Хосты |
II. Транспортный | 4 | TCP, UDP | Только конечные узлы |
III. Сетевой | 3 | IP; ICMP, RIP, OSPF | Хосты и маршрутизаторы |
IV. Сетевых интерфейсов | 2, 1 | Ethernet, PPP, X.25 | Не регламентируется |
HTTP — передача гипертекста, FTP — передача файлов, SMTP — почта; RIP, OSPF — маршрутизация; PPP — протокол «точка — точка». Соответствие уровням OSI «достаточно условно» (Рашич, с. 35).
Названия единиц данных
Рашич, п. 2.3, рис. 2.7
Уровень | Единица | Пояснение |
Приложение → TCP/UDP | Поток | Данные от приложения |
TCP | Сегмент | Нарезан из потока байтов |
UDP | Дейтаграмма | Одно сообщение приложения |
IP | Пакет (дейтаграмма) | Чаще говорят «пакет» |
Сетевых интерфейсов | Кадр | Ethernet, PPP, X.25 — для IP всё кадры |
Три группы вспомогательных протоколов
Рашич, п. 2.3, с. 40
Маршрутизация
RIP, OSPF и протокол пограничного шлюза (Border Gateway Protocol, BGP). Без них таблица маршрутизации пуста.
Преобразование адресов
Система доменных имён (Domain Name System, DNS): имя → IP-адрес. Протокол динамической настройки узла (DHCP) раздаёт адреса.
Управление сетью
Простой протокол управления сетью (SNMP) собирает данные об ошибках и отказах; telnet — удалённая настройка.
Вывод для эксплуатации
Для управления по SNMP коммутатору нужен весь стек: IP-адрес, UDP, агент. Неуправляемый коммутатор опросить нельзя.
Адрес, порт, сокет
Рашич, п. 4.4, с. 125–127
Определения
• IP-адрес — 32-битный адрес узла: доставляет пакет до устройства
• Порт — очередь к точке входа приложения; номер адресует приложение
• Сокет — пара «IP-адрес, порт»: однозначно задаёт процесс в сети
Пример: менеджер и агент
• Агент коммутатора: (10.0.0.2, UDP 161)
• Менеджер: (10.0.0.100, UDP 50123) — динамический порт
• Well-known порты 0–1023: FTP 21, telnet 23, DNS 53
• Порт приложения ≠ порт RJ-45 коммутатора
Инкапсуляция запроса SNMP
Рашич, пп. 4.1, 4.4; Сквирский, п. 1.1; RFC 894
SNMP: «получить sysName», 40 байт (условно)
UDP: +8 байт, порт 161 → 48 байт
IP: +20 байт, протокол 17 → 68 байт
Ethernet: +14 и контрольная сумма кадра (FCS) 4, тип 0800 → 86 байт
Коммутатор снимает заголовки в обратном порядке
Каждый уровень добавляет свой заголовок; приёмник по полю «тип», «протокол» и «порт» узнаёт, кому отдать данные дальше.
Рашич, пп. 4.1, 4.4; RFC 894. Размер данных SNMP — условный (40 байт)
TCP и UDP
Рашич, пп. 2.3, 4.4
Признак | TCP | UDP |
Соединение | Устанавливается | Нет |
Доставка | Квитанции, повтор по тайм-ауту | Без гарантии |
Порядок | Восстанавливается | Не контролируется |
Заголовок | Не менее 20 байт | 8 байт |
Ресурсы | Буферы и таймеры на соединение | Без состояния |
Примеры | FTP, telnet, HTTP | DNS, упрощённая передача файлов TFTP, SNMP |
Почему SNMP идёт по UDP
Гребешков, п. 5.1; RFC 1157, RFC 3417; объяснение — учебное толкование
Порты
Агент слушает UDP 161, менеджер принимает ловушки (trap) на UDP 162.
Сотни устройств
Соединение TCP с каждым — буферы и таймеры; агент не должен мешать работе коммутатора.
Короткие сообщения
Запрос и ответ помещаются в одну дейтаграмму UDP.
Сеть в аварии
TCP долго повторяет; менеджер сам решает: повторить запрос или считать узел недоступным.
Цена
Ловушка без подтверждения может потеряться — во второй версии (SNMPv2) появилось подтверждаемое Inform.
Сообщения ICMP для контроля сети
Рашич, п. 2.3; RFC 792
Тип | Сообщение | Когда | Утилита |
8 | Эхо-запрос | Проверка доступности | ping |
0 | Эхо-ответ | Ответ узла | ping |
11 | Время истекло | TTL = 0, пакет уничтожен | traceroute |
3 | Адресат недостижим | Нет маршрута, порт закрыт | диагностика |
Чтение вывода ping и traceroute
Глецевич, п. 3.1; механизм traceroute — учебное толкование
ping
• 5 эхо-запросов по 100 байт, тайм-аут 2 с
• «.!!!!»: точка — нет ответа, «!» — ответ
• Успех 80 % (4/5)
• Время оборота (Round-Trip Time, RTT) min/avg/max = 4/6/8 мс
traceroute
• TTL = 1 → отвечает 1-й маршрутизатор (ICMP 11)
• TTL = 2 → отвечает 2-й
• …пока не ответит узел назначения
• «1 172.16.0.1», «2 192.168.251.1» — путь из двух узлов
Каждый следующий зонд — с TTL на 1 больше. Маршрутизатор уменьшает TTL; при TTL = 0 уничтожает пакет и шлёт ICMP тип 11 (учебное толкование)
Коммутатор не отвечает: поиск
Учебное толкование: проверка снизу вверх по стеку
Проверка | Результат | Вывод |
ping | «.....» | Нет IP-связи: кабель, порт, адрес |
traceroute | Обрыв после 2-го узла | Неисправность за 2-м маршрутизатором |
ping | «!!!!!», 1–2 мс | IP есть, искать выше |
Запрос SNMP | Тайм-аут | Агент, порт 161, сообщество |
Поиск неисправности снизу вверх по стеку — учебное толкование
Итог: стек TCP/IP для управления
4 уровня
Прикладной, транспортный, сетевой, сетевых интерфейсов; соответствие OSI условное
Единицы данных
Поток → сегмент/дейтаграмма → пакет → кадр
Сокет
IP-адрес + порт; агент SNMP — UDP 161, ловушки — UDP 162
Инкапсуляция
40 → 48 → 68 → 86 байт: SNMP, UDP, IP, Ethernet
Контроль
ICMP: ping — доступность и RTT, traceroute — путь по TTL
Конец занятия