Interested Article - SLIP

SLIP ( Serial Line Internet Protocol ) — устаревший сетевой протокол канального уровня эталонной сетевой модели OSI для доступа к сетям стека TCP/IP через низкоскоростные линии связи путём простой инкапсуляции IP-пакетов . Используются коммутируемые соединения через последовательные порты для соединений клиент-сервер типа точка-точка . В настоящее время вместо него используют более совершенный протокол PPP .

История

SLIP был разработан в начале 80-х компанией . Протокол начал быстро распространяться после включения в ОС Berkeley Unix 4.2 Риком Адамсом (Rick Adams) в 1984 , так как благодаря ему стало возможным подключение к Интернет через последовательный COM-порт , имевшийся на большинстве компьютеров. Ввиду своей простоты сейчас используется в микроконтроллерах .

Принципы работы

  • Для установления связи необходимо заранее задать IP-адреса , так как в протоколе SLIP нет системы обмена адресной информацией.
  • В принимаемом потоке бит SLIP позволяет определить признаки начала и конца пакета IP . По этим признакам SLIP собирает полноценные пакеты IP и передаёт верхнему уровню. При отправлении IP-пакетов происходит обратная операция — они переформатируются и посимвольно отправляются получателю через последовательную линию.
  • Для передачи необходимо использовать конкретную конфигурацию UART : 8 бит данных (8 data bits), без контроля четности (no parity), аппаратное управление каналом передачи ( EIA hardware flow control) или трёхпроводный нуль-модемный кабель (3-wire null-modem — CLOCAL mode).

Структура кадра

Так как передача данных в последовательных асинхронных линиях связи байт-ориентированная, сначала IP-пакет разбивается на байты (октеты). Границей SLIP-кадра является уникальный флаг END (0xC0). Уникальность этого флага поддерживается байт-стаффингом (byte stuffing) внутри кадра с ESC-последовательностью 0xDB, причём байт END (0xС0) заменяется последовательностью (0xDB, 0xDC), а байт ESC (0xDB) — последовательностью (0xDB, 0xDD).

Недостатки

  • Нет возможности обмениваться адресной информацией — необходимость предустановки IP-адресов .
  • Отсутствие индикации типа инкапсулируемого протокола — возможно использование только IP .
  • Не предусмотрена коррекция ошибок — необходимо выполнять на верхних уровнях, рекомендуется использовать протокол TCP .
  • Высокая избыточность — из-за использования стартовых и стоповых битов при асинхронной передаче (+20 %), передачи в каждом SLIP-кадре полного IP-заголовка (+20 байт) и полных заголовков верхних уровней, байт-стаффинга.
  • В некоторых реализациях протокола максимальный размер кадра ограничен 1006 байтами для достижения обратной совместимости с реализацией в Berkeley Unix .

CSLIP

Сетевой протокол CSLIP ( Compressed SLIP ) — немного усовершенствованный Ван Якобсоном (Van Jacobsen из Lawrence Berkeley Labs) протокол SLIP. Изменения коснулись сжатия IP-заголовков и TCP-заголовков . 40 байт этих двух заголовков могут сжиматься до 3-5 байт. CSLIP даёт заметный выигрыш против SLIP только при использовании небольших пакетов и хороших линий связи, так как при необходимости повтора передачи в CSLIP заново переданы будут все пакеты, вплоть до последнего переданного несжатого, против одного пакета в SLIP.

Литература

  • Галкин В. А., Григорьев Ю.А.. Телекоммуникации и Сети. — М.: МГТУ им. Н. Э. Баумана, 2003. С. 608. ISBN 5-7038-1961-X

См. также

Ссылки

Источник —

Same as SLIP