← Сеть: основы
10 мин · intro · Урок 1 из 13

OSI и TCP/IP

Семь уровней OSI, четыре уровня TCP/IP. Зачем эти цифры в названиях балансировщиков.

Зачем вообще модель

Между проводом и твоим JSON-эндпоинтом — десяток технологий, которые должны как-то договариваться. Модель уровней нужна по одной причине: каждый слой решает свою задачу и не лезет в чужие. TCP не знает, как пакет физически летит по кабелю. HTTP не знает, как пакет добирается до хоста. Это даёт изоляцию: поменял Wi-Fi на ethernet, а HTTP даже не заметил.

Две модели

В индустрии живут две: академическая OSI (7 уровней) и реальная TCP/IP (4 уровня). OSI встречается в учебниках и на собесах, TCP/IP работает в железе и сетевых стеках.

TCP/IPЧто делаетOSI (эквивалент)Примеры
Applicationприложения и протоколыL7 Application, L6, L5HTTP, SSH, DNS, SMTP
Transportдоставка между процессамиL4 TransportTCP, UDP
Internetмаршрутизация между хостамиL3 NetworkIP, ICMP
Linkкадрирование + физическая передача битовL2 Data Link, L1 PhysicalEthernet, Wi-Fi, MAC

На практике говорят "L4", "L7": это OSI-нумерация, и она прижилась именно из-за такой нотации.

Что добавляет каждый уровень

Когда твой браузер открывает google.com, HTTP-запрос постепенно обрастает заголовками. Каждый уровень добавляет свой "конверт":

L7 HTTPHTTP payload L4 TCPTCP hdrHTTP payload L3 IPIP hdrTCP hdrHTTP payload L2 EthernetETHIP hdrTCP hdrHTTP payloadFCS L1 - биты летят в кабель / эфир
Каждый уровень добавляет свой заголовок слева, а полезная нагрузка внутри не меняется.

Добавление заголовков на отправителе — это инкапсуляция. На той стороне сервер разворачивает фрейм в обратном порядке: снимает Ethernet, IP, TCP, остаётся HTTP. Обратный разбор называют де-инкапсуляцией.

L4 vs L7 балансировщик

Это самый частый вопрос про OSI, который реально встречается на работе.

L4-балансировщик (TCP/UDP) решает, на какой backend отправить соединение, по IP и порту. Он не знает, что внутри: HTTP, RPC, бинарный протокол. Быстрее и проще, но видит меньше.

Примеры: AWS NLB, HAProxy в TCP-mode, nginx в stream режиме.

L7-балансировщик (HTTP) парсит HTTP-запрос и принимает решение по URL, заголовкам, cookie. Может делать sticky session по cookie, маршрутизацию /api/* на один backend, /static/* на другой.

Примеры: AWS ALB, nginx в http режиме, Traefik, Envoy.

В DevOps выбор простой: если надо роутить по path/host, бери L7. Для простого распределения TCP-трафика хватит L4, и стоит он дешевле.

Что важно запомнить

OSI — 7 уровней для лекций, TCP/IP — 4 уровня в реальном железе.

L4 = TCP/UDP + порты, L7 = HTTP и прикладные протоколы.

Каждый уровень оборачивает данные верхнего. Это и есть инкапсуляция.

Когда слышишь "L7-rules в Ingress" или "L4-NLB", в голове должна всплыть эта таблица.

В следующем уроке — L3 и L4 предметно: IP, порты, приватные диапазоны.

Дрилл · вопросы как на собесе

Проверь себя без подсказок

Сформулируй ответ вслух или письменно, потом раскрой и честно отметь: знал или нет.

01

Опиши уровни модели OSI и TCP/IP.

NET-004

Прошли материал до конца? Отметьте урок пройденным.