Хорошо

Протокол SLIP

108 0 0 0 0

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


SLIP был разработан в начале 80-х компанией 3COM. Протокол начал быстро распространяться после включения в ОС 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, 0***).


Недостатки

Нет возможности обмениваться адресной информацией — необходимость предустановки 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.


  • x

Комментарий

Выполните вход в систему, чтобы ответить на пост. Вход | Регистрация
Отправить

Внимание! В целях защиты правовых интересов Вас, сообщества и третьих лиц, не публикуйте любой материал, содержащий политические высказывания, порнографию, упоминание азартных игр, употребление наркотиков, а также материал, нарушающий коммерческую тайну или содержащий персональные данные пользователей. Также не предоставляйте данные от вашей учетной записи. Вы будете нести ответственность за все действия, выполняемые под вашим аккаунтом. Подробная информация: “Политика конфиденциальности..”

My Followers

Авторизуйтесь и пользуйтесь всеми преимуществами участника!

Вход

Заблокировать
Вы уверены, что хотите заблокировать этого пользователя?
Пользователи из вашего черного списка не могут комментировать ваши посты, не могут упоминать вас, не могут отправлять личные сообщения.
Напоминание
Пожалуйста, привяжите свой мобильный номер чтобы получить бонус за приглашение.