Модели OSI и TCP/IP

Модели OSI и TCP/IP

До сих пор мы обсуждали отдельные «ингредиенты» интернета: кабели, свитчи, IP-адреса, пакеты. Теперь соберём их в цельную картину. Для этого инженеры придумали сетевые модели — способ разложить сложный процесс передачи данных на понятные уровни.

Зачем нужны уровни

Передача данных по сети — это десятки операций, выполняемых одновременно: модуляция сигнала, адресация, маршрутизация, проверка ошибок, шифрование, сжатие... Если попытаться описать всё одной гигантской инструкцией — получится нечитаемый хаос.

Уровни решают эту проблему: каждый уровень отвечает за свою задачу и ничего не знает о внутренностях других. Уровень, отвечающий за маршрутизацию, не заботится о том, как биты кодируются в электрические сигналы. Уровень, передающий биты, не знает, веб-страница это или видео-звонок.

Такое разделение даёт два преимущества:

  1. Модульность. Можно заменить технологию на одном уровне, не трогая остальные. Переход с Wi-Fi 5 на Wi-Fi 6 не требует переписывать браузер.
  2. Взаимозаменяемость. Каждый уровень предоставляет стандартный интерфейс уровню выше. TCP не важно, работает под ним Ethernet или Wi-Fi — он получает IP-пакеты в обоих случаях.

Модель OSI: эталон из семи уровней

OSI (Open Systems Interconnection) — это справочная модель, разработанная в 1984 году. Она описывает 7 уровней — от физического сигнала до пользовательского приложения:

УровеньЗадачаПримеры
7Прикладной (Application)Интерфейс для приложенийHTTP, FTP, SMTP, DNS
6Представления (Presentation)Формат данных, шифрованиеTLS/SSL, JPEG, ASCII
5Сеансовый (Session)Управление сеансами связиNetBIOS, RPC
4Транспортный (Transport)Надёжность, порядок, портыTCP, UDP
3Сетевой (Network)Адресация, маршрутизацияIP, ICMP
2Канальный (Data Link)Кадры, MAC-адреса, доступ к средеEthernet, Wi-Fi
1Физический (Physical)Биты, сигналы, кабели и разъёмыRJ-45, оптоволокно, радиоволны

Мнемоника для запоминания (сверху вниз): All People Seem To Need Data Processing. Снизу вверх: Please Do Not Throw Sausage Pizza Away.

OSI красива, но реальный интернет построен не по ней. На практике используют более простую модель.

Модель TCP/IP: четыре уровня вместо семи

TCP/IP-модель — это то, как устроен интернет на самом деле. Она компактнее: четыре уровня вместо семи:

┌──────────────────────────────┐
│  Прикладной (Application)     │  HTTP, DNS, FTP, SMTP...
│  OSI 7 + 6 + 5               │
├──────────────────────────────┤
│  Транспортный (Transport)     │  TCP, UDP
│  OSI 4                        │
├──────────────────────────────┤
│  Межсетевой (Internet)        │  IP, ICMP
│  OSI 3                        │
├──────────────────────────────┤
│  Сетевого доступа (Link)      │  Ethernet, Wi-Fi, MAC
│  OSI 2 + 1                    │
└──────────────────────────────┘

В TCP/IP-модели верхние три уровня OSI (прикладной, представления, сеансовый) слиты в один прикладной. Два нижних (канальный и физический) — в уровень сетевого доступа. Транспортный и межсетевой сохраняются как есть.

Что делает каждый уровень TCP/IP

Уровень сетевого доступа (Link). Физическая передача битов между соседними устройствами в одной сети. Оперирует MAC-адресами и Ethernet-кадрами. Свитч работает на этом уровне.

Межсетевой уровень (Internet). Доставка пакетов между разными сетями. Оперирует IP-адресами. Роутер работает на этом уровне. Ключевое слово — «маршрутизация».

Транспортный уровень (Transport). Надёжность и управление соединениями. TCP гарантирует доставку и порядок, UDP — быструю передачу без гарантий. Оперирует портами. Ключевое слово — «сеанс связи».

Прикладной уровень (Application). Собственно, то, ради чего всё затевалось: веб-страницы (HTTP), почта (SMTP), файлы (FTP). Оперирует данными в понятном приложению формате.

Инкапсуляция: как данные «упаковываются» при отправке

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

Прикладной уровень:    [HTTP-запрос]
                            ↓
Транспортный уровень:  [TCP-заголовок | HTTP-запрос]
                            ↓
Межсетевой уровень:    [IP-заголовок | TCP-заголовок | HTTP-запрос]
                            ↓
Сетевой доступ:        [Ethernet-заголовок | IP-заголовок | TCP-заголовок | HTTP-запрос]

Это называется инкапсуляция — каждый уровень заворачивает данные в свой «конверт». На приёмной стороне уровни работают в обратном порядке, снимая свои заголовки и передавая «начинку» выше.

Сравнение двух моделей

OSITCP/IP
Уровней74
СтатусТеоретическая, эталоннаяПрактическая, используется в интернете
РазработчикISO (международный стандарт)Инженеры DARPA
Сеансовый и представленияОтдельные уровниВнутри прикладного
ФизическийОтдельный уровеньЧасть Link-уровня
Для чего нужнаДля изучения и сравненияДля реальной работы

На собеседованиях часто спрашивают про OSI, потому что это общий язык для обсуждения сетей. Но строят реальные системы по TCP/IP.

Как использовать модель OSI на практике

Модель OSI помогает при диагностике: определи, на каком уровне проблема, и ты поймёшь, что именно проверять:

  • Уровень 1 (физический) — «кабель воткнут?», «роутер включён?». Проверка: горит ли лампочка на сетевой карте.
  • Уровень 2 (канальный) — «видит ли свитч устройство?». Проверка: загорелся ли индикатор порта.
  • Уровень 3 (сетевой) — «проходит ли ping до IP-адреса?». Проверка: ping 8.8.8.8.
  • Уровень 4 (транспортный) — «открыт ли порт?». Проверка: nc -vz хост порт.
  • Уровень 7 (прикладной) — «отвечает ли веб-сервер?». Проверка: открыть сайт в браузере.

Проверь себя

  1. Сколько уровней в модели OSI? А в TCP/IP?
  2. На каком уровне OSI работает роутер? А свитч?
  3. Чем модель TCP/IP отличается от OSI, кроме количества уровней?
<details> <summary>Ответы</summary>
  1. OSI — 7 уровней, TCP/IP — 4 уровня.
  2. Роутер — на уровне 3 (сетевом), свитч — на уровне 2 (канальном).
  3. TCP/IP описывает реально работающий стек протоколов интернета, а OSI — теоретическая универсальная модель, созданная раньше, чем сложился интернет. В OSI сеансовый уровень и уровень представления выделены отдельно, в TCP/IP они — часть прикладного.
</details>

Что унести с урока

  • Сетевые модели делят процесс передачи данных на уровни для упрощения и модульности.
  • OSI — 7-уровневая эталонная модель. TCP/IP — 4-уровневая практическая модель интернета.
  • Инкапсуляция: каждый уровень добавляет свой заголовок при отправке и снимает при приёме.
  • Роутер = уровень 3 (IP). Свитч = уровень 2 (Ethernet). Браузер = уровень 7 (HTTP).

Теперь, когда архитектура ясна, погрузимся на транспортный уровень. В следующем уроке разберём TCP — протокол, который превращает ненадёжный IP в гарантированную доставку данных.

Попробуйте интерактивную версию

Практические задачи, квизы и AI-наставник — бесплатный старт без карты

Перейти к практике