Сеть: модель OSI и распределение протоколов по уровням | Вопросы для собеседования | Skilio
Сеть: модель OSI и распределение протоколов по уровням
Вопрос:

Можете ли вы объяснить модель OSI сетевого взаимодействия и перечислить протоколы, связанные с каждым уровнем?

Почему понимание этой модели важно для инженера DevOps?

Подсказки:

  • Рассмотрите семь уровней модели OSI: Физический, Канальный, Сетевой, Транспортный, Сеансовый, Представления и Приложения.
  • Подумайте о распространённых протоколах, таких как IP, TCP/UDP, HTTP, DNS и о том, где они находятся в этой модели.
  • Помните, что такие протоколы, как ICMP (используемый командой ping) и VPN-протоколы, охватывают разные уровни.

Выше ожиданий:

  • Понимание инкапсуляции протоколов на разных уровнях.
  • Знакомство с деталями реализации TLS/SSL.
  • Опыт решения проблем в сети с использованием модели OSI в качестве справочника.
Ответ:

Обзор модели OSI

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

Слой 1: Физический слой

Физический слой занимается физическим соединением устройств и передачей потоков битов по физическому каналу.

Протоколы и стандарты включают:

  • Ethernet (IEEE 802.3) физические спецификации
  • Bluetooth физические спецификации радио

Ключевые характеристики:

  • Занимается электрическими, механическими и физическими аспектами
  • Определяет такие характеристики, как уровни напряжения, временные параметры, физические скорости передачи данных
  • Обрабатывает передачу неструктурированных данных
  • Представляет информацию с помощью физических сигналов (электрических, световых, радио)

Слой 2: Слой канала данных

Слой канала данных устанавливает и завершает соединения между непосредственно подключёнными узлами. Он обрабатывает обнаружение ошибок и управление потоком.

Протоколы включают:

  • Ethernet (IEEE 802.3)
  • Wi-Fi (IEEE 802.11)

Ключевые характеристики:

  • Организует биты в кадры
  • Использует MAC-адреса для идентификации устройств
  • Обеспечивает обнаружение ошибок, а иногда и исправление ошибок

Слой 3: Слой сети

Слой сети обрабатывает маршрутизацию и логическое адресование для установления путей между различными сетями.

Протоколы включают:

  • IPv4 (Internet Protocol версия 4) (обязательное знание)
  • IPv6 (Internet Protocol версия 6)
  • ICMP (Internet Control Message Protocol) (желательно знать)

Ключевые характеристики:

  • Использует логическое адресование (IP-адреса)
  • Выполняет пересылку пакетов
  • Обрабатывает фрагментацию и сборку пакетов
  • Определяет оптимальные пути с помощью алгоритмов маршрутизации

Слой 4: Транспортный слой

Транспортный слой предоставляет приложениям end-to-end связь, включая сегментацию, управление потоком и восстановление ошибок.

Протоколы включают:

  • TCP (Transmission Control Protocol) (обязательное знание)

  • UDP (User Datagram Protocol) (обязательное знание)

  • Используют логические порты на устройствах (1-65535)

TCP обеспечивает надёжную, упорядоченную и безошибочную доставку через:

  • Трех-этапный handshake для установления соединения
  • Подтверждения (acknowledgments) и повторные передачи
  • Управление потоком с использованием скользящего окна
  • Механизмы управления перегрузкой (congestion control)
  • Процесс завершения соединения (терминация)

UDP предлагает простую передачу без соединений:

  • Без гарантии доставки
  • Без управления перегрузкой
  • Более низкая нагрузка и задержка на обоих участников передачи
  • Более простая реализация

Слой 5: Session

Сеансовый слой устанавливает, управляет и завершает соединения между приложениями.

Протоколы включают: (дополнительное знание)

  • PPTP (Point-to-Point Tunneling Protocol)
  • SMB (Server Message Block)
  • NFS (Network File System) компоненты сеанса

Слой 6: Presentation

Слой presentation обрабатывает, шифрует и сжимает даныне, чтобы обеспечить читаемость данных для прикладного слоя.

Что может быть на этом уровне (дополнительное знание):

  • Безопасное шифрование SSL/TLS (Secure Sockets Layer/Transport Layer Security)
  • Потоковая передача видео

Слой 7: Application

Прикладной слой предоставляет интерфейсы для приложений для доступа к сетевым службам.

Некоторые из протоколов:

  • DNS (Domain Name System) (обязательное знание)
  • DHCP (Dynamic Host Configuration Protocol)
  • SSH (Secure Shell) (обязательное знание)
  • HTTP/HTTPS (Hypertext Transfer Protocol/Secure) (обязательное знание)
  • SMTP (Simple Mail Transfer Protocol)
  • POP3/IMAP (Post Office Protocol/Internet Message Access Protocol)

Ключевые характеристики:

  • Предоставляет сетевые сервисы, которыми пользуются сами приложения
  • Реализует аутентификацию и конфиденциальность
  • Определяет доступность ресурсов сети
  • Синхронизация коммуникаций между приложениями

Инкапсуляция протоколов

Инкапсуляция протоколов — фундаментальное понятие в сетях, где каждый слой добавляет свой заголовок (и иногда концовки) к данным, полученным от вышележащего слоя:

  1. Прикладной слой генерирует данные
  2. Слой представления форматирует и, возможно, шифрует данные
  3. Сеансовый слой добавляет сеансовую информацию
  4. Транспортный слой добавляет заголовок TCP/UDP (сегменты/датаграммы)
  5. Слой сети добавляет IP-заголовок (пакеты)
  6. Слой канала данных добавляет MAC-заголовок и трейлер (кадры)
  7. Физический слой преобразует в биты для передачи

При получении данных процесс инвертируется (распаковка).

Пример инкапсуляции:

+---------------------------+
| Прикладные данные          |
+---------------------------+
  |
  v
+---------------------------+
| TCP-заголовок | Прил. Данн.|
+---------------------------+
  |
  v
+---------------------------+
| IP-заголовок | TCP | Прил. Данн.|
+---------------------------+
  |
  v
+------------------------+------------------+
| Eth-заголовок | IP | TCP | Прил. Данн. | FCS   |
+------------------------+------------------+
  |
  v
[Преобразуется в биты для передачи]

Современные особенности протоколов

Реализация TLS/SSL

TLS (Transport Layer Security) обеспечивает безопасную связь через:

  • Аутентификацию на основе сертификатов
  • Алгоритмы обмена ключами (например, RSA, Диффи-Хеллмана)
  • Симметричное шифрование для шифрование и дешифрования данных во время передачи
  • Коды проверки подлинности сообщений (MAC) для целостности

The TLS handshake process:

  1. Client hello (cipher suites, TLS version)
  2. Server hello (selected cipher, certificate)
  3. Key exchange
  4. Finished messages

Оверлейная сеть в Kubernetes

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

  • Позволяют контейнерам на разных хостах взаимодействовать между собой
  • Реализуются с помощью инкапсуляции (например, VXLAN)
  • Поддерживают сетевые политики и микросегментацию
  • Обеспечивают обнаружение сервисов и балансировку нагрузки
  • Обеспечивают изоляцию сети между разными приложениями
  • Реализуют CNI (Container Network Interface) в Kubernetes

Устранение неполадок в сети

  • Структурный подход к изоляции проблем по слоям
  • Возможность использования соответствующих инструментов для каждого слоя (ping, traceroute, tcpdump, wireshark)
  • Более быстрое решение с идентификацией проблемы на конкретном слое
  • Понимание того, какие команды следует привлечь к решению сложных проблем

Пример подхода к устранению неполадок:

Слой 1 (Физический) → Проверка кабелей, качество сигнала
Слой 2 (Канала данных) → Проверка MAC-адресов, конфигурации коммутаторов
Слой 3 (Сети) → Проверка IP-соединения, таблицы маршрутизации, размер MTU
Слой 4 (Транспортный) → Проверка доступности портов, состояния соединений
Слои 5-7 → Просмотр журналов приложений, ответов API и т.д.
0
DevOps Средний Опубликовано
© Skilio, 2025
Условия использования
Политика конфиденциальности
Мы используем файлы cookie, для персонализации сервисов и повышения удобства пользования сайтом. Если вы не согласны на их использование, поменяйте настройки браузера.