Слой данных (L2)
Тема дорожной карты · Компьютерные сети
Слой данных (L2) или канальный уровень (OSI Layer 2) играет ключевую роль в передаче данных между узлами внутри одного сегмента сети. Этот уровень отвечает за структурирование данных в фреймы, добавление MAC-адресов для локальной доставки и обнаружение ошибок с помощью контрольной суммы CRC. Доминирующие технологии L2 включают Ethernet (IEEE 802.3) и Wi-Fi (IEEE 802.11), которые обеспечивают надежную связь на уровне данных.
Как это работает
Слой данных (L2) является частью семиуровневой концептуальной модели OSI, которая разделяет сетевые concerns на отдельные уровни. Физический уровень (L1) отвечает за физические каналы связи, такие как кабели, радио и электрические сигналы. Канальный уровень (L2) упаковывает данные в структурированные фреймы, используя MAC-адреса для локальной доставки и обнаружения ошибок. Маршрутизация и IP-адресация происходят на уровне сети (L3), а уровень транспорта (L4) обеспечивает end-to-end доставку данных с использованием протоколов TCP и UDP. Уровни сессии, представления и приложения (L5-L7) в OSI-модели объединены в "Application" в TCP/IP. Хотя OSI-модель используется в основном для обучения и коммуникации, реальные сетевые стеки (TCP/IP) не маппятся идеально к OSI. Используйте OSI для коммуникации ("это L4-проблема, не L7"), но не как архитектуру для реальных систем.
Когда применять
Знание OSI-слоев полезно для сетевых интервью и диагностики. При troubleshoot "сайт медленный" — пройдитесь по слоям снизу вверх: ping (L3) → TCP handshake (L4) → TLS handshake → HTTP (L7). Не over-archtect под OSI-модель — реальные системы не fitятся чисто. В реальном мире современные стеки часто объединяют уровни L5-L7 в "Application", поэтому важно учитывать это при анализе проблем.
Типичные ошибки
Типичные ошибки при работе со слоем данных (L2) включают путаницу OSI-слоёв с TCP/IP-слоями (маппятся примерно, но не точно). Также важно помнить, что уровни L5-L7 в современных стеках часто слиты в "Application", поэтому не следует считать их различимыми. Неправильное использование OSI-labels также может привести к путанице, например, "L7 firewall" может означать WAF или L7 load balancer, в зависимости от контекста.