串行线路网际协议(SerialLine Internet Protocol,SLIP)
目录 |
串行线路网际协议是串行线路上对IP数据报进行封装的简单形式。该协议是Windows远程访问的一种旧工业标准,主要在Unix远程访问服务器中使用,现今仍然用于连接某些ISP。因为SLIP协议是面向低速串行线路的,可以用于专用线路,也可以用于拨号线路,Modem的传输速率在1200bps到19200bps。
串行线路IP(SLIP)用于运行TCP/IP的点对点串行连接。SLIP通常专门用于串行连接,有时候也用于拨号,使用的线路速率一般介于1200bps和19.2Kbps之间。SLIP允许主机和路由器混合连接通信(主机-主机、主机-路由器、路由器-路由器都是SLIP网络通用的配置),因而非常有用。
SLIP只是一个包组帧协议,仅仅定义了在串行线路上将数据包封装成帧的一系列字符。它没有提供寻址、包类型标识、错误检查/修正或者压缩机制。
SLIP定义了两个特殊字符:END和ESC。END是八进制300(十进制192),ESC是八进制333(十进制219)。发送分组时,SLIP主机只是简单地发送分组数据。如果数据中有一个字节与END字符的编码相同,就连续传输两个字节ESC和八进制334(十进制220)。如果与ESC字符相同,就连续传输两个字节ESC和八进制335(十进制221。当分组的最后一个字节发出后,再传送一个END字符。
因为没有“标准的”SLIP规范,也就没有SLIP分组最大长度的实际定义。可能最好是接受Berkeley UNIXSLIP驱动程序使用的最大分组长度:1006字节,其中包括IP头和传输协议头(但不含分帧字符)。
压缩串行线路IP(CSLIP)在传送出的IP分组上执行VanJacobson头部压缩。这个压缩过程显著提高了交互式会话吞吐量。
如今,点对点协议(PPP)广泛替代了SLIP,因为它有更多特性和更灵活。
①IP数据包以END(0xc0)的特殊字符结束,而有些数据报的开始处也传一个END字符以防止数据报到来之前的线路噪声当做数据报内容。
②若IP报文中某个字符为END,那么就连续传输两个字节oxdb和oxdc来取代(oxdb这个特殊字符被称作SLIP的ESC字符)。
③若IP报文中某个字符为ESC,那么就连续传输两个字节oxdb和oxdd来取代。
串行线路网际协议的缺陷。
①数据帧中没有类型字段,这代表若一条串行线路上使用SLIP进行传输数据报,那么其不能使用其他协议。
②每一段必须知道对方的IP地址且无法把本段的IP地址通知给另一端。
③SLIP没有在数据帧中加入检验和,若SLIP传输的报文发生错误,只能通过上层协议来发现其错误。