Протокол канального уровня SLIP (Serial Line IP)
Первым стандартом канального уровня (рис. 30), обеспечивающим работу терминалов пользователей (TCP/IP) по линиям связи, реализующих последовательную передачу символов, стал протокол SLIP (Serial Line IP), разработанный в начале 80х годов (RFC1055). Позднее SLIP был поддержан в ОС UNIX и реализован в программном обеспечении для персональных компьютеров.
Протокол SLIP характеризуется тем, что он обеспечивает возможность подключаться к сети INTERNET через стандартный интерфейс RS232. SLIP используется в оконечных компьютерах, подключенных к линиям связи, которые имеют пропускную способность 1,2...28,8 Кбит/с.
По сути, кадр SLIP структуры не имеет, он только предусматривает разграничение последовательно передаваемых пакетов IP (пакеты сетевого уровня) и тем самым обеспечивает синхронный ввод пакетов в канал связи (физический уровень). Для этого в протоколе SLIP используются специальный символ "END"
(рис. 30), значение которого в шестнадцатеричном представлении равно "С0" (11000000). В случае если в пакете IP имеется байт, тождественный символу "END",
то он заменяется двухбайтовой последовательностью, состоящей из специальных символов "ESC" ("DB" 11011011) и "DC" (11011100). (Применяемый в протоколе SLIP символ "ESC" не равен символу "ESC" в коде ASCII, поэтому обозначают его "SLIP ESC".) Если же байт данных тождествен символу "SLIP ESC", то он заменяется двухбайтовой последовательностью, состоящей из собственно символа "SLIP ESC" и символа "DD"(11011101). После последнего байта пакета IP передается символ "END".
Механизм формирования кадра показан на рис. 30. Здесь приведены стандартный пакет IP, один байт которого тождествен символу "END", а другой символу "SLIP ESC", и соответствующий ему кадр SLIP, который больше на 4 байта.
Рис. 30. Соответствие между кадром SLIP и пакетом IP
Протокол SLIP не определяет максимально допустимую длину "информационного поля" передаваемого "кадра", однако реальный размер "вкладываемого в кадр" пакета IP не должен превышать 1006 байтов.
Данное ограничение связано с первой реализацией протокола SLIP в соответствующей ОС BERKLEY UNIX, и поэтому соблюдение его необходимо для обеспечения требуемой совместимости разных реализаций (версий) SLIP.
Недостатки SLIP:
- во-первых, протокол SLIP не обеспечивает обмен адресной информацией. Это ограничение не позволяет использовать SLIP для некоторых видов сетевых услуг;
- во-вторых, отсутствует индикация типа протокола, пакет которого "вкладывается" в кадр SLIP. Поэтому через последовательную линию с помощью SLIP можно передавать трафик лишь одного сетевого протокола;
- в-третьих, в SLIP не предусмотрены процедуры обнаружения и коррекции ошибок.
Для повышения эффективности использования последовательных линий связи (увеличение пропускной способности) используются алгоритмы сжатия данных (например, за счет уменьшения объема служебной информации, содержащейся в заголовках пакетов IP). Такую задачу решает протокол CSLIP.