stringtranslate.com

Интернет-протокол последовательной линии

Протокол последовательной линии Интернета ( SLIP ) [1] [2] представляет собой инкапсуляцию протокола Интернета [a], разработанного для работы через последовательные порты и соединения маршрутизаторов . Он задокументирован в RFC  1055. На персональных компьютерах SLIP в значительной степени был заменен протоколом точка-точка (PPP), который лучше спроектирован, имеет больше функций и не требует настройки конфигурации IP-адреса перед его установкой. Однако на микроконтроллерах SLIP по-прежнему является предпочтительным способом инкапсуляции IP-пакетов из-за его очень малых накладных расходов.

Некоторые называют успешный и широко используемый протокол последовательной линии Интернета RFC 1055 "SLIP Рика Адамса", [3] чтобы избежать путаницы с другими предложенными протоколами под названием "SLIP". Эти другие протоколы включают в себя гораздо более сложный протокол последовательной линии интерфейса RFC  914, приложение D. [3]

Описание

SLIP изменяет стандартную датаграмму TCP/IP следующим образом:

Для SLIP требуется конфигурация последовательного порта с 8 битами данных , без контроля четности и либо аппаратное управление потоком EIA , либо режим CLOCAL (3-проводной нуль-модем ) для работы UART .

SLIP не обеспечивает обнаружение ошибок , полагаясь на протоколы верхнего уровня для этого. Поэтому SLIP сам по себе неудовлетворителен для канала, подверженного ошибкам, например, для некачественного коммутируемого соединения.

В некоторых модемных соединениях также требовались экранирующие символы SLIP для экранирования набора команд Hayes , что позволяло передавать двоичные данные через те модемы, которые распознавали некоторые символы как команды.

CSLIP

Версия SLIP со сжатием заголовков называется Compressed SLIP ( CSLIP ). [4] Алгоритм сжатия, используемый в CSLIP, известен как Van Jacobson TCP/IP Header Compression . [5] CSLIP не влияет на полезную нагрузку пакета и не зависит от сжатия модемом последовательной линии, используемым для передачи. Он уменьшает заголовок протокола управления передачей (TCP) с двадцати до семи байтов . CSLIP не влияет на датаграммы протокола пользовательских дейтаграмм (UDP).

История

RFC 1055, «нестандарт» для SLIP, берет свое начало в реализации 3COM UNET TCP/IP из 1980-х годов. Рик Адамс добавил SLIP в популярную 4.2BSD в 1984 году, и он «быстро прижился». К моменту RFC (1988) он описывался как «обычно используемый на выделенных последовательных соединениях и иногда для коммутируемых целей». [6]

Последняя версия FreeBSD, включающая "slattach" (команда для подключения к slip) в базу данных руководства, — FreeBSD 7.4, выпущенная в 2011 году. В руководстве утверждается, что для CSLIP существует автосогласование. Версия FreeBSD унаследована от 4.3BSD. [7]

Linux ранее использовал одну и ту же кодовую базу для SLIP и KISS (TNC) . Разделение произошло до начала истории ядра git (Linux-2.6.12-rc2, 2005). [8] Драйвер SLIP предлагает специальный "6-битный" экранированный режим для модемов, неспособных обрабатывать не-ASCII символы. [9] Команда Linux slattach (написанная независимо) также имеет возможность автоматически определять поддержку CSLIP. [10]

Смотрите также

Ссылки

  1. ^ SLIP на самом деле не заботится о внутренних структурах IP: по проводам можно передавать любые протоколы сетевого уровня .
  1. ^ "Интернет-вопросы и ответы". The New York Times . 31 мая 1996 г.
  2. ^ «Компьютер для руководителей; для озадаченных новичков, более легкий доступ». The New York Times . 8 мая 1994 г.
  3. ^ ab RFC  1547: «Требования к стандартному протоколу «точка-точка» в Интернете»
  4. ^ Понимание TCP/IP (Глава 4.2 Сжатый SLIP).
  5. ^ Якобсон, В. (февраль 1990 г.). «Сжатие заголовков TCP/IP для низкоскоростных последовательных соединений».— представил сжатие заголовков TCP/IP Ван Якобсона, используемое CSLIP
  6. ^ "RFC 1055: Нестандарт для передачи IP-дейтаграмм по последовательным линиям: SLIP". IETF Datatracker . 1 июня 1988 г.
  7. ^ "slattach(8)". man.freebsd.org .
  8. ^ Торвальдс, Линус (13 мая 2023 г.). "История для mkiss.c" . Получено 13 мая 2023 г.
  9. Торвальдс, Линус (13 мая 2023 г.). «drivers/net/slip/Kconfig».
  10. ^ slattach(8)  –  Руководство программиста Linux – Администрирование и привилегированные команды «Другие возможные значения: slip (обычный SLIP), adaptive (адаптивный CSLIP/SLIP)...