
- •Классификация сетей связи
- •1. По типу коммутации
- •2. По протяженности (территориальному охвату)
- •3. По топологии
- •Основные стандартизирующие организации в области сетей передачи данных
- •Сетевые модели. Инкапсуляция и декапсуляция данных
- •Эталонная модель osi и стек протоколов tcp/ip
- •Инкапсуляция:
- •Декапсуляция:
- •Физический уровень модели osi
- •Канальный уровень модели osi: Определение начала и конца сообщения
- •Канальный уровень модели osi: Обнаружение и исправление ошибок
- •Основы технологии Ethernet. Формат кадра Ethernet
- •Минимальный размер кадра:
- •Максимальный размер кадра:
Канальный уровень модели osi: Обнаружение и исправление ошибок
Роль канального уровня в обнаружении и исправлении ошибок
Канальный уровень отвечает за надежную передачу данных между устройствами в рамках одной сети. Одной из ключевых задач этого уровня является обнаружение ошибок, которые могут возникнуть из-за помех, искажений сигнала или потери данных при передаче через физическую среду. В некоторых случаях он также выполняет исправление ошибок, чтобы обеспечить целостность данных.
Типы ошибок на канальном уровне
Ошибки одиночных битов:
Один бит данных изменяется (например, 0 становится 1 или наоборот).
Ошибки групп битов (burst errors):
Несколько последовательных битов искажаются одновременно.
Потеря данных:
Часть данных теряется при передаче.
Методы обнаружения ошибок
Канальный уровень использует различные механизмы для обнаружения ошибок:
Контроль четности (Parity Check):
К данным добавляется один бит четности (парный или непарный).
Парный контроль: число единиц в данных (включая бит четности) должно быть четным.
Непарный контроль: число единиц должно быть нечетным.
Преимущества: простота реализации.
Недостатки: не обнаруживает ошибки в случае изменения двух битов.
Контроль по модулю 2 (Checksum):
Суммируются все биты данных, и результат записывается в контрольное поле.
При получении данных получатель вычисляет сумму и сравнивает с переданным значением.
Циклический избыточный код (CRC, Cyclic Redundancy Check):
Один из самых популярных методов.
Данные интерпретируются как многочлен, который делится на заранее заданный делитель.
Остаток от деления (CRC) добавляется к кадру.
При приеме данных выполняется та же операция: если остаток равен 0, данные считаются корректными.
Преимущества: высокая вероятность обнаружения ошибок, особенно при групповых искажениях.
Контроль длины кадра:
Заголовок кадра содержит поле длины. Если реальная длина не совпадает с указанной, это признак ошибки.
Методы исправления ошибок
Канальный уровень может исправлять ошибки, чтобы уменьшить необходимость повторной передачи данных:
Повторная передача данных (ARQ, Automatic Repeat Request):
Если обнаружена ошибка, приемник запрашивает повторную отправку данных.
Протоколы ARQ:
Stop-and-Wait ARQ: отправитель ожидает подтверждения после каждой передачи.
Go-Back-N ARQ: отправитель пересылает все кадры, начиная с ошибочного.
Selective Repeat ARQ: пересылаются только ошибочные кадры.
Коды с исправлением ошибок (FEC, Forward Error Correction):
Дополнительные биты (избыточность) добавляются для автоматического исправления ошибок без повторной передачи.
Примеры:
Коды Хэмминга: исправляют одиночные ошибки и обнаруживают двойные.
Коды Рида-Соломона: широко применяются в сетях и оптических дисках.
Двойное резервирование:
Данные передаются дважды, и сравниваются полученные копии.
Используется в критически важных системах (например, в авиации).
Примеры использования в протоколах
Ethernet:
Использует CRC для обнаружения ошибок.
Если ошибка обнаружена, кадр отбрасывается, и отправитель повторяет передачу.
Wi-Fi (802.11):
Использует контроль четности и ARQ.
В некоторых случаях применяется FEC для уменьшения количества повторных передач.
HDLC (High-Level Data Link Control):
Использует CRC для проверки целостности.
Преимущества и недостатки обнаружения и исправления ошибок
Методы |
Преимущества |
Недостатки |
CRC |
Высокая точность, низкая избыточность. |
Не исправляет ошибки, требует повторной передачи. |
FEC |
Исправляет ошибки без повторной передачи. |
Увеличивает объем передаваемых данных. |
ARQ |
Обеспечивает надежность передачи. |
Увеличивает задержки из-за повторных запросов. |
Заключение
Канальный уровень обеспечивает надежность передачи данных с помощью методов обнаружения и исправления ошибок. Методы, такие как CRC и FEC, широко используются в современных сетях для минимизации влияния помех и повышения эффективности передачи. Выбор конкретного метода зависит от требований к скорости, надежности и доступной пропускной способности.