TCP/IP — практическая модель сетевого взаимодействия, на которой построен Интернет и большинство современных IP-сетей. Она объединяет сетевые функции в четыре уровня и связывает их с реально используемыми протоколами.

В отличие от семиуровневой модели OSI, TCP/IP описывает фактически реализованный стек.

Уровни

УровеньНазначениеПримерыУровни OSI
ПрикладнойОбмен данными между приложениямиHTTP, DNS, DHCP, SSH5–7
ТранспортныйДоставка между процессамиTCP, UDP4
МежсетевойАдресация и маршрутизацияIP, ICMP, IGMP3
Канального доступаПередача в локальном сегментеEthernet, VLAN, ARP, Wi-Fi1–2

Инкапсуляция

При отправке данных:

  1. приложение формирует сообщение;
  2. TCP или UDP добавляет транспортный заголовок и порты;
  3. IP добавляет адреса источника и назначения;
  4. Ethernet или другой канальный протокол создаёт кадр;
  5. физическая среда передаёт биты.

На принимающей стороне заголовки обрабатываются в обратном порядке.

Адресация

Разные уровни используют разные идентификаторы:

  • канальный уровень — MAC-адрес;
  • межсетевой уровень — IP-адрес;
  • транспортный уровень — порт;
  • прикладной уровень — доменное имя, URL или идентификатор протокола.

Например, браузер обращается к домену, DNS получает IP-адрес, TCP использует порт 443, а Ethernet доставляет кадр до следующего узла.

TCP и UDP

  • TCP устанавливает соединение, сохраняет порядок и повторно передаёт потерянные данные.
  • UDP отправляет независимые датаграммы без гарантии доставки и имеет меньшие накладные расходы.

Передача файла обычно требует TCP. Потоковое мультимедиа, телеметрия или короткий DNS-запрос могут использовать UDP.

Диагностика

Проблему удобно искать снизу вверх:

  1. проверить интерфейс и локальный линк;
  2. проверить IP-адрес и маршруты;
  3. проверить доступность удалённого узла;
  4. проверить TCP- или UDP-порт;
  5. проверить прикладной запрос и ответ.

Так можно отделить ошибку маршрутизации от проблемы HTTP-сервера или DNS.

Связанные заметки