Сложно о простом. Канальный уровень (L2) модели OSI
Приветствую, коллеги! Меня зовут ProstoKirReal, и сегодня мы продолжим изучение модели OSI, обсудив канальный уровень (L2). Этот уровень играет ключевую роль в обеспечении надежной передачи данных в локальных сетях.
Перед тем, как познакомиться с данным уровнем, нам необходимо узнать одно понятие.
❯ Что такое фрейм или кадр?
Кадр (frame) является частью данных, которые разбиваются на некоторые части для дальнейшей передачи по сети.
На разных уровнях модели OSI части данных называются по-разному: на канальном уровне это кадры, на сетевом уровне — пакеты, на транспортном уровне — сегменты или датаграммы, а на прикладном уровне — сообщения или данные
Основные компоненты кадра:
- Заголовок (Header): включает контрольную информацию, такую как адреса отправителя и получателя (src/dst MAC-адреса), тип протокола (E-Type) и другие параметры.
- Поле данных (Payload): содержит непосредственно передаваемые данные. Это может быть часть сетевого пакета, переданного с вышестоящих уровней модели OSI.
- Контрольная последовательность (Trailer или CRC): используется для проверки целостности данных. CRC (Cyclic Redundancy Check) — это контрольная сумма, которая помогает обнаружить ошибки, возникшие при передаче данных.
![image](https://habrastorage.org/r/w1560/webt/th/ss/wk/thsswkip7nlm0hzrzidpihz42sa.png)
Примеры сетевых кадров:
- Ethernet-фрейм: наиболее распространенный тип кадров в локальных сетях (LAN). Ethernet-фрейм включает такие поля, как MAC-адреса отправителя и получателя, тип Ethernet, данные и CRC.
- Wi-Fi фрейм: используется в беспроводных сетях и имеет свои особенности, такие как дополнительные поля для управления и защиты данных.
❯ Что же происходит на канальном уровне?
Основная задача канального уровня — передача информации в рамках одной локальной сети. Для этого используются уникальные MAC-адреса, которые есть у каждого сетевого оборудования.
MAC-адрес можно сравнить с серией и номером в паспорте. Каждый гражданин имеет уникальный номер. Если забежать чуть выше по модели OSI, то имя и фамилию можно сравнить с IP-адресом.
В рамках сети коммутаторы (устройства для передачи сетевых пакетов) имеют полную MAC-таблицу всех MAC-адресов, которые участвовали в передаче данных по сети. Коммутаторы, благодаря данной MAC-таблице, передают кадры конкретным устройствам, а не отправляют их по всей сети. Концентратор (Hab) в свою очередь передает кадры всем устройствам в сети.
![image](https://habrastorage.org/r/w1560/webt/3d/lm/zk/3dlmzkvzl_saarnuvmmuws6-j3m.png)
Что такое канальный уровень?
Канальный уровень (Data Link Layer) — это второй уровень модели OSI. Он отвечает за надежную передачу данных через физический канал, обеспечивает обнаружение и исправление ошибок, а также управление доступом к среде передачи.
Основные функции канального уровня:
- Форматирование данных: преобразование необработанных битов данных в структурированные кадры.
- Обнаружение и исправление ошибок: обеспечение целостности данных путем обнаружения и исправления ошибок передачи.
- Управление доступом к среде: контроль доступа к общему физическому средству передачи, предотвращение коллизий.
- Адресация: использование MAC-адресов для идентификации устройств в локальной сети.
Примеры технологий и стандартов:
- Ethernet: основной стандарт для локальных сетей (LAN).
- Wi-Fi: беспроводной стандарт, основанный на 802.11.
- MAC-адреса: уникальные идентификаторы для сетевых интерфейсов.
- Коммутаторы (Switches): устройства для соединения узлов в сети на уровне L2.
Основные технологии и стандарты:
- 802.11 (Wi-Fi): стандарт беспроводных локальных сетей (WLAN), разработанный IEEE, охватывает различные версии, такие как 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac и 802.11ax. Эти стандарты определяют, как устройства взаимодействуют друг с другом по беспроводной связи на определенных частотах и с определенной пропускной способностью.
MAC (Medium Access Control) и LLC (Logical Link Control):
- MAC: подуровень канального уровня, отвечающий за управление доступом к физической среде передачи данных. Он обеспечивает метод контроля доступа, такие как CSMA/CD в Ethernet.
LLC: подуровень канального уровня, отвечающий за управление логическими соединениями, кадрами и контроль ошибок, обеспечивая интерфейс между сетью и MAC-подуровнем.
- VLAN (Virtual Local Area Network): технология, позволяющая логически разделять одну физическую сеть на несколько виртуальных сетей. Это помогает улучшить управление, безопасность и производительность сети, так как устройства в разных VLAN не могут взаимодействовать без маршрутизатора.
- ATN (Aeronautical Telecommunication Network): сеть, предназначенная для поддержки воздушного трафика и управления воздушным движением. ATN обеспечивает связь между различными авиационными системами и службами для безопасного и эффективного управления полетами.
- HDP (Health Device Profile): профиль Bluetooth, разработанный для передачи медицинских данных между устройствами. HDP стандартизирует способы передачи данных для медицинских приборов, обеспечивая совместимость и надежность передачи.
- Fibre Channel: высокоскоростной сетевой стандарт, используемый преимущественно для подключения устройств хранения данных (SAN). Fibre Channel обеспечивает высокую пропускную способность и низкую задержку, что делает его идеальным для критически важных приложений и баз данных.
- Frame Relay: технология передачи данных на канальном уровне, используемая для межсетевого взаимодействия. Она передает данные в виде кадров через виртуальные каналы, предоставляя высокую скорость передачи данных и эффективное использование пропускной способности сети.
- HDLC (High-Level Data Link Control): протокол канального уровня, разработанный ISO для передачи данных по синхронным и асинхронным линиям связи. HDLC обеспечивает установку и разрыв соединений, передачу данных, а также контроль ошибок и коррекцию.
- PPP (Point-to-Point Protocol): протокол канального уровня, используемый для установления прямого соединения между двумя узлами сети. PPP поддерживает аутентификацию, шифрование и компрессию данных, и часто используется для подключения к Интернету через модемы и DSL.
- Q.921: протокол канального уровня, используемый в ISDN (Integrated Services Digital Network) для установления, управления и завершения соединений. Q.921 управляет сигнализацией и контрольными функциями, необходимыми для передачи данных в ISDN.
- Token Ring: технология локальных сетей, разработанная IBM, где устройства подключаются в кольцо, и передача данных осуществляется по принципу передачи маркера (token). Только устройство, владеющее маркером, может передавать данные, что уменьшает вероятность коллизий.
Применение канального уровня на практике
Канальный уровень играет важную роль в локальных сетях. Например, когда коммутатор получает кадр данных, он использует MAC-адреса для определения того, куда отправить этот кадр. Это позволяет устройствам в одной локальной сети общаться друг с другом без вмешательства маршрутизаторов.
❯ Что будет, если в локальной сети два одинаковых MAC-адреса?
Сразу скажу, ничего хорошего. В идеальном мире у каждого сетевого устройства должен быть уникальный MAC-адрес. Но зачастую бывает, что в одной партии у сетевого оборудования имеются одинаковые MAC-адреса, а то и во всей партии.
Примеры проблем, которые могут возникнуть:
- Прерывание связи: если коммутатор получает пакеты с двух разных портов с одинаковым MAC-адресом, он будет постоянно обновлять свою таблицу коммутации, перенаправляя трафик то на один, то на другой порт, что приведет к потере связи для обоих устройств.
- Нестабильность сети: постоянные обновления таблицы коммутации могут вызвать непредсказуемое поведение сети, вплоть до полного прекращения работы некоторых сетевых сегментов.
Конфликты и коллизии:
- Устройства могут не получать пакеты: маршрутизаторы и коммутаторы используют MAC-адреса для пересылки данных. Если два устройства имеют одинаковый MAC-адрес, данные могут доставляться не тому устройству или вообще не доставляться.
- Коллизии пакетов: пакеты, направленные на один MAC-адрес, могут пересекаться, что приведет к их потере или повреждению.
Проблемы с коммутацией:
- Ошибка в таблицах MAC-адресов коммутаторов: коммутаторы строят таблицы MAC-адресов для маршрутизации трафика. Если два устройства имеют одинаковый MAC-адрес, коммутатор может постоянно обновлять свою таблицу, что приведет к неправильной маршрутизации пакетов.
- Штормы широковещания: может возникнуть избыточное широковещание, так как коммутатор будет пытаться отправить трафик на все порты, чтобы найти правильный адрес назначения.
Также могут возникнуть дополнительные проблемы на уровнях выше канального.
А вот если одинаковые MAC-адреса будут в разных LAN или в разных VLAN, то ничего страшного не произойдет.
❯ Заключение
Канальный уровень модели OSI обеспечивает надежную передачу данных в локальных сетях и управляет доступом к среде передачи. Понимание этого уровня поможет вам эффективно настраивать и обслуживать сетевое оборудование, такое как коммутаторы и сетевые адаптеры.
В следующей статье мы рассмотрим сетевой уровень (L3) и его роль в маршрутизации данных.
Спасибо за внимание, и до встречи в следующей статье!
Читайте также:
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩