Что такое модель OSI?

«Что такое модель OSI?» — вопрос из категории Сети, который задают на 28% собеседований AQA / Automation. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

Семь уровней модели OSI:

  1. Физический (Physical): Передача необработанных битовых потоков по физической среде (кабели, Wi-Fi). Тестирование на этом уровне может включать проверку целостности кабеля или уровня сигнала.
  2. Канальный (Data Link): Обеспечивает надежную передачу данных между двумя непосредственно соединенными узлами. Работает с MAC-адресами и кадрами (frames). Здесь могут возникать ошибки коллизий в Ethernet.
  3. Сетевой (Network): Отвечает за маршрутизацию пакетов и логическую адресацию (IP-адреса). Для тестирования важны сценарии с изменением маршрутов, проверка работы NAT, firewall.
  4. Транспортный (Transport): Гарантирует целостную доставку данных. Основные протоколы — TCP (надежный, с установкой соединения) и UDP (ненадежный, без соединения). Тестирование включает проверку таймаутов, повторной передачи пакетов (TCP), фрагментации.
  5. Сеансовый (Session): Управляет сеансами связи между приложениями (установка, поддержка, завершение). Пример — управление сессиями в протоколах удаленного доступа.
  6. Уровень представления (Presentation): Преобразует данные в формат, понятный прикладному уровню (шифрование, сжатие, кодирование). Тестирование SSL/TLS или сжатия данных относится сюда.
  7. Прикладной (Application): Непосредственный интерфейс для пользователя или программ. Протоколы: HTTP, FTP, SMTP. Большинство функционального тестирования веб-приложений работает на этом уровне.

Пример для QA: При тестировании веб-приложения:

  • Уровень 7 (HTTP): Проверяем корректность REST API-запросов и ответов.
  • Уровень 4 (TCP): Моделируем потерю пакетов или медленное соединение, чтобы проверить устойчивость приложения.
  • Уровень 3 (IP): Тестируем работу приложения при смене сети (Wi-Fi / мобильный интернет).