Стек TCP/IP и сопоставление с OSI

Знакомимся с практической четырёхуровневой моделью TCP/IP и сопоставляем её с семью уровнями OSI.

Модель TCP/IP — практический стек из четырёх уровней, по которому реально работает интернет. Названа по двум ключевым протоколам: TCP и IP.

Четыре уровня TCP/IP

OSI — красивая теория, но реальный интернет строился вокруг более простой модели. В ней четыре уровня, и почти все технологии вокруг них группируются естественно.

Уровень TCP/IPЧто делаетПротоколы
Прикладной (Application)данные приложенийHTTP, DNS, TLS, SMTP
Транспортный (Transport)доставка процессу, порты, надёжностьTCP, UDP
Сетевой / Интернет (Internet)IP-адреса, маршрутизацияIP, ICMP
Канальный / Доступа к среде (Link)физическая передача в сегментеEthernet, Wi-Fi

Сопоставление OSI и TCP/IP

Главное на собеседовании — уметь «склеить» две модели. TCP/IP объединяет несколько уровней OSI в один:

OSI (7)TCP/IP (4)
7 Прикладной + 6 Представления + 5 СеансовыйПрикладной
4 ТранспортныйТранспортный
3 СетевойСетевой (Internet)
2 Канальный + 1 ФизическийКанальный (Link)

То есть верхние три уровня OSI в TCP/IP — это один прикладной, а два нижних OSI — один канальный. Транспортный и сетевой совпадают один в один.

Почему так «схлопнули»? OSI разделяла верхние уровни ради теоретической чистоты, но на практике граница между «сеансом», «представлением» и «приложением» размыта: одно и то же приложение часто само управляет и кодировкой, и диалогом. Разработчикам TCP/IP было проще считать всё это единым прикладным уровнем. Аналогично, физический и канальный почти всегда идут парой (конкретная технология вроде Ethernet задаёт и сигнал, и формат кадра), поэтому их объединили в один уровень доступа к среде.

Почему победил TCP/IP

OSI разрабатывали как «правильную» модель «сверху», комитетами. TCP/IP вырос «снизу», из работающего кода ARPANET. Победила практика: к моменту, когда стандарты OSI допилили, интернет уже работал на TCP/IP. Урок для инженера — рабочий код часто побеждает идеальную спецификацию.

Где живут знакомые вам вещи

  • fetch, XMLHttpRequest, REST, GraphQL, веб-сокеты — прикладной уровень.
  • TLS (HTTPS) — формально между прикладным и транспортным, в TCP/IP его относят к прикладному.
  • «Порт 443», «порт 80» — транспортный.
  • «IP-адрес сервера», «маршрут», VPN — сетевой.
  • «Подключиться к Wi-Fi», MAC-адрес — канальный.

Итог

  • TCP/IP — практический стек из 4 уровней: прикладной, транспортный, сетевой, канальный.
  • Верхние 3 уровня OSI = прикладной TCP/IP; нижние 2 OSI = канальный TCP/IP.
  • Транспортный и сетевой уровни в обеих моделях совпадают.
  • Интернет работает по TCP/IP; OSI используют как язык объяснения.
Проверьте себя
1. Сколько уровней в модели TCP/IP?
A3
B4
C5
D7
2. Каким уровням OSI соответствует прикладной уровень TCP/IP?
AТолько прикладному (7)
BПрикладному, представления и сеансовому (7+6+5)
CТранспортному и сетевому
DФизическому и канальному
3. Какие уровни совпадают в OSI и TCP/IP один в один?
AФизический и канальный
BТранспортный и сетевой
CПрикладной и сеансовый
DНикакие
Поддержать проект