Открыть сервис

RFC 1042

RFC 1042 — это стандарт Интернета (Request for Comments), опубликованный в феврале 1988 года, который определяет стандарт передачи дейтаграмм IP (Internet Protocol) через сети IEEE 802 (в частности, через Ethernet, Token Ring и FDDI). Документ был разработан для обеспечения совместимости между протоколами TCP/IP и сетевыми технологиями, использующими формат кадров IEEE 802.2 (Logical Link Control, LLC), и является одним из ключевых технических решений, позволивших IP-сетям работать поверх широко распространённых локальных сетей.

История и предпосылки

В середине 1980-х годов, когда Интернет (тогда ещё ARPANET) активно развивался, возникла необходимость интеграции протоколов TCP/IP с существующими и перспективными сетевыми технологиями, особенно с теми, которые стандартизировал Институт инженеров по электротехнике и электронике (IEEE). Наиболее распространённой технологией локальных сетей к тому времени стал Ethernet, но его формат кадров (Ethernet II, или DIX) отличался от формата, предложенного IEEE 802.3.

Первоначально для передачи IP-пакетов через Ethernet использовался протокол ARP (Address Resolution Protocol) и специфический формат инкапсуляции, определённый в более раннем RFC 894 (1984 год). Однако IEEE 802.3 и IEEE 802.2 предлагали более сложную, многоуровневую структуру кадра, которая включала в себя заголовок LLC и, опционально, Subnetwork Access Protocol (SNAP). RFC 1042 был создан для унификации подхода к инкапсуляции IP-пакетов в сети, соответствующие стандартам IEEE 802, включая Ethernet, Token Ring и FDDI.

Основные положения RFC 1042

RFC 1042 описывает, как IP-дейтаграммы (а также пакеты других протоколов, таких как ARP) должны быть инкапсулированы в кадры IEEE 802.2 LLC с использованием SNAP-заголовка. Ключевые элементы документа:

Формат кадра

  1. Заголовок IEEE 802.3 (MAC):
  • MAC-адрес получателя (6 байт).
  • MAC-адрес отправителя (6 байт).
  • Длина данных (Length) — 2 байта, указывающая длину последующего поля данных (включая заголовок LLC и SNAP, но не включая преамбулу и CRC). В отличие от Ethernet II, где на этом месте находится EtherType (тип протокола), в IEEE 802.3 это поле интерпретируется как длина.
  1. Заголовок IEEE 802.2 LLC (Logical Link Control):
  • DSAP (Destination Service Access Point) — 1 байт. Для SNAP-инкапсуляции всегда равен 0xAA (170).
  • SSAP (Source Service Access Point) — 1 байт. Всегда равен 0xAA.
  • Control (Control Field) — 1 байт. Для ненумерованных информационных кадров (UI — Unnumbered Information) равен 0x03.
  1. Заголовок SNAP (Subnetwork Access Protocol):
  • Organizationally Unique Identifier (OUI) — 3 байта. Для протоколов TCP/IP, как правило, равен 0x000000 (что указывает на то, что следующий за ним код является EtherType).
  • EtherType (Protocol Identifier) — 2 байта. Код протокола, например:
  • 0x0800 — для IP.
  • 0x0806 — для ARP.
  1. Поле данных (Payload):
  • Собственно IP-дейтаграмма или ARP-пакет. Минимальный размер поля данных для IEEE 802.3 — 46 байт (включая заголовки LLC/SNAP), максимальный — 1500 байт. Если IP-пакет короче 46 байт, он дополняется (padding) до минимального размера.
  1. Контрольная сумма (Frame Check Sequence, FCS):
  • 4 байта, вычисляемые по всему кадру (от MAC-адреса получателя до конца данных).

Отличия от RFC 894

Основное отличие между RFC 1042 и RFC 894 заключается в способе указания типа протокола в кадре.

  • RFC 894 (Ethernet II): Использует поле EtherType (2 байта) сразу после MAC-адресов. Это проще, быстрее и не требует дополнительных заголовков. Однако этот формат не соответствует стандарту IEEE 802.3, который требует наличия поля длины.
  • RFC 1042 (IEEE 802.2/802.3): Использует поле длины, а затем — заголовки LLC и SNAP для идентификации протокола. Это более сложная, но стандартизированная IEEE схема, которая позволяет передавать несколько протоколов (не только IP) через один и тот же тип сети.

На практике большинство современных Ethernet-сетей используют формат Ethernet II (RFC 894), так как он более эффективен (меньше накладных расходов) и проще в реализации. Однако RFC 1042 остаётся важным для работы в сетях Token Ring и FDDI, где формат IEEE 802.2 является обязательным, а также для совместимости с некоторыми устаревшими или специализированными системами.

Применение и значение

RFC 1042 сыграл ключевую роль в стандартизации передачи IP-трафика через локальные сети, соответствующие стандартам IEEE 802. Он обеспечил:

  • Совместимость: Позволил IP-сетям работать поверх Ethernet, Token Ring и FDDI, используя единый механизм инкапсуляции.
  • Интеграцию: Упростил подключение TCP/IP-сетей к существующим локальным сетям, построенным по стандартам IEEE.
  • Основу для протоколов более высокого уровня: Обеспечил надёжную основу для работы протоколов прикладного уровня (HTTP, SMTP, FTP и др.) в среде IEEE 802.

Хотя в современных Ethernet-сетях доминирует RFC 894, RFC 1042 остаётся важным историческим документом и используется в некоторых специализированных конфигурациях, а также в качестве эталонного стандарта для понимания эволюции сетевых технологий.

Критика и ограничения

Основным недостатком RFC 1042 является его избыточность по сравнению с RFC 894. Добавление заголовков LLC (3 байта) и SNAP (5 байт) увеличивает накладные расходы на каждый кадр на 8 байт. В сетях с большим количеством коротких пакетов (например, при голосовой связи или передаче управляющих сигналов) это может приводить к снижению эффективности использования пропускной способности. Кроме того, более сложная структура кадра требует дополнительных вычислительных ресурсов на маршрутизаторах и коммутаторах для его обработки.

Текущий статус

На сегодняшний день RFC 1042 считается устаревшим (Historic) в контексте Ethernet, но остаётся актуальным для некоторых других технологий (например, для FDDI). В современных реализациях TCP/IP-стека в операционных системах (Linux, Windows, macOS) поддержка RFC 1042 обычно присутствует, но не является приоритетной. При настройке сетевых интерфейсов администраторы, как правило, выбирают формат Ethernet II (RFC 894) для обеспечения максимальной совместимости и производительности.

Источники

  1. RFC 1042 — A Standard for the Transmission of IP Datagrams over IEEE 802 Networks (1988).
  2. RFC 894 — A Standard for the Transmission of IP Datagrams over Ethernet Networks (1984).
  3. IEEE 802.3-2018 — Standard for Ethernet.
  4. IEEE 802.2-1998 — Standard for Logical Link Control.
  5. W. Richard Stevens. TCP/IP Illustrated, Volume 1: The Protocols. Addison-Wesley, 1994.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →