Кратко
- В RFC 768 вычисленный ноль передаётся как единицы, а поле из нулей означает, что вычисления не было.
- Необнаруженные ошибки показали: локальная экономия лишает доказательства всех участников доставки.
- Исключение IPv6 связано с конкретными туннельными портами и настроенными концами, которые принимают обязанности по целостности, пути и безопасности.
Поле могло отказаться свидетельствовать
Контрольная сумма UDP охватывает заголовок и данные, а также псевдозаголовок IP с адресами источника и назначения, номером протокола и длиной. RFC 768 использовал её не только против повреждения, но и против ошибочной доставки.
Арифметика дополнения до единицы способна законно дать ноль. Такой результат передаётся как все единицы. Все нули означают другое: отправитель не создавал сумму. Это не знак успешной проверки, а заявление об отсутствии решения.
Частная экономия создала общий слепой участок
RFC 1122 сохранил управление со стороны приложения, но потребовал реализовать генерацию и проверку и включать их по умолчанию. В документе отмечены многочисленные необнаруженные ошибки после того, как приложения локальных сетей отключали суммы ради эффективности.
Вычисления экономил отправитель. Получатель и оператор теряли независимый способ отвергнуть повреждение или неверную доставку. Техническая возможность убрать свидетельство не давала полномочия решать за неизвестные стороны.
IPv6 восстановил общий минимальный вердикт
IPv4 проверял хотя бы собственный заголовок. У IPv6 контрольной суммы сетевого заголовка нет. Поэтому RFC 2460 сделал сумму UDP обязательной и потребовал отбрасывать датаграммы с нулём. Псевдозаголовок транспортного уровня стал защищать контекст адресации, который больше ничто не проверяло ниже.
RFC 8200 сохраняет обычный порядок: вычислить при отправке, записать FFFF для нулевого результата, отбросить настоящий ноль и по возможности зарегистрировать ошибку. Шестнадцать бит не удостоверяют личность. Они лишь сохраняют минимум статистического свидетельства от случайного повреждения.
UDP-Lite объявил открытую область
Мультимедийное приложение иногда предпочтёт частично повреждённую нагрузку полной потере. RFC 3828 создал UDP-Lite с частичным покрытием, но псевдозаголовок и заголовок UDP-Lite всегда остаются защищёнными, а передача нулевой суммы запрещена.
Отправитель объявляет границу, получатель выбирает минимальное покрытие. Риск не исчезает: он становится видимым решением участников.
Туннельное исключение назвало ответственных
Высокоскоростной туннель может переносить уже защищённые внутренние пакеты, не имея дешёвого доступа ко всей внешней нагрузке. RFC 6935 разрешил ноль в ограниченных случаях IPv6, а RFC 6936 закрепил условия.
Режим по умолчанию выключен. Выбираются порты отправки и приёма; принимающий ноль порт обязан принимать и вычисленные суммы. Протокол защищает управление и состояние, учитывает фрагментацию и ошибочную доставку, проверяет путь через промежуточные устройства и противостоит инъекции и перегрузке. Сначала рассматриваются обычный UDP и UDP-Lite.
Исключение принадлежит известному туннелю, концы которого могут включить, наблюдать и отменить его. Оно не принадлежит любому отправителю в открытом Интернете.
Источники и пределы
Хронологию задают RFC 768, RFC 1122, RFC 2460, RFC 3828, RFC 6935, RFC 6936, RFC 8085 и RFC 8200. Они доказывают правила и описанные риски, а не единообразие реализаций или глобальную частоту ошибок. Контрольная сумма не является криптографической аутентификацией.
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
