Что такое модель OSI и зачем она нужна?

«Что такое модель OSI и зачем она нужна?» — вопрос из категории Архитектура, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

Уровни модели OSI (снизу вверх):

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

Зачем нужна модель OSI?

  1. Стандартизация: Позволяет разным производителям создавать совместимое сетевое оборудование и ПО.
  2. Упрощение обучения и проектирования: Сложный процесс передачи данных разбивается на понятные, изолированные уровни.
  3. Устранение неполадок: Позволяет локализовать проблему на конкретном уровне (например, проблема с IP-адресацией — уровень 3, с подключением кабеля — уровень 1).

Практический пример — отправка HTTP-запроса:

  1. Уровень 7: Браузер формирует HTTP-запрос GET /index.html.
  2. Уровень 4: TCP добавляет порты источника и назначения, создавая сегмент.
  3. Уровень 3: IP добавляет адреса источника и назначения, создавая пакет.
  4. Уровень 2: Ethernet добавляет MAC-адреса, создавая кадр.
  5. Уровень 1: Кадр преобразуется в последовательность битов и передается по кабелю. На принимающей стороне происходит обратный процесс (инкапсуляция/деинкапсуляция).