Этот репозиторий содержит реализации различных кодов обнаружения ошибок, используемых в уровне ссылки на данные компьютерных сетей.
В уровне ссылки на данные модели OSI коды обнаружения ошибок используются для обнаружения ошибок, которые могут возникнуть во время передачи данных по каналу связи. Эти коды добавляются в данные перед передачей и пересчитываются приемником для проверки целостности полученных данных. Общие коды обнаружения ошибок включают биты паритета, контрольные суммы и циклические проверки избыточности (CRC). Эти коды позволяют приемнику определять, произошли ли какие -либо ошибки во время передачи данных, и предпринять соответствующие действия для запроса повторной передачи или исправления ошибок.
Вы можете найти реализацию каждого алгоритма в соответствующих каталогах в этом репозитории.
Контрольная сумма : Контрольная сумма - это простой метод обнаружения ошибок, в которой отправитель вычисляет значение контрольной суммы, суммируя байты в данных и добавляя его к данным. Приемник пересчитывает контрольную сумму и проверяет, соответствует ли он полученной контрольной сумме для обнаружения ошибок. Если контрольные суммы не совпадают, обнаружена ошибка.
Коды Хэмминга : коды хэмминга являются кодами, корректирующими ошибки, которые добавляют избыточные биты в данные для обнаружения и исправления ошибок. В кодах Хэмминга биты паритета добавляются в определенных позициях в данных для создания кодового слова. Эти паритетные биты помогают в выявлении и исправлении однобиточных ошибок в полученных данных.
Циклическая проверка избыточности (CRC) : CRC - это более сложная методика обнаружения ошибок, которая включает полиномиальное разделение. Отправитель генерирует CRC на основе данных и добавляет его к сообщению. Приемник выполняет то же полиномиальное разделение и сравнивает рассчитанную CRC с полученным. Если они отличаются, обнаружена ошибка.
Коды проверки паритета с низкой плотностью (LDPC) : коды LDPC являются линейными кодами, корректирующими ошибки, которые предлагают превосходные возможности обнаружения ошибок и коррекции. Эти коды имеют редкую структуру матрицы проверки паритета, что делает их эффективными с точки зрения производительности коррекции ошибок. Коды LDPC широко используются в современных системах связи.
Книга: компьютерные сети (Эндрю с. Таненбаум)
Этот репозиторий лицензирован по лицензии MIT. Смотрите файл лицензии для получения более подробной информации.