SLIP

来自站长百科
跳转至: 导航、​ 搜索

SLIP(Serial Line Internet Protocol,串行线路网际协议),该协议是Windows远程访问的一种旧工业标准,主要在Unix远程访问服务器中使用,现今仍然用于连接某些 ISP。因为SLIP协议是面向低速串行线路的,可以用于专用线路,也可以用于拨号线路,Modem的传输速率在1200bps到19200bps。


SLIP的缺点[ ]

SLIP是一种简单的组帧方式,使用时还存在一些问题。首先,SLIP不支持在连接过程中的动态IP地址分配,通信双方必须事先告诉对方IP地址,这给没有固定IP地址的个人用户上Internet网带来了很大的不便;其次,SLIP帧中无协议类型字段,因此他只能支持Ip协议;再有,SLIP帧中无校验字段,因此链路层上无法检测出传输差错,必须由上层实体或具有纠错能力的MODEM来解决差错问题。

SLIP是一种在串行线路上对I P数据报进行封装的简单形式,在RFC 1055[Romkey 1988]中有详细描述。SLIP适用于家庭中每台计算机几乎都有的R S - 2 3 2串行端口和高速调制解

调器接入Internet。

下面的规则描述了SLIP协议定义的格式:

1) IP数据报以一个称作END(0 x c 0)的特殊字符结束。同时,为了防止数据报到来之前的线路噪声被当成数据报内容,大多数实现在数据报的开始处也传一个E N D字符(如果有

线路噪声,那么E N D字符将结束这份错误的报文。这样当前的报文得以正确地传输,而前一个错误报文交给上层后,会发现其内容毫无意义而被丢弃)。

2) 如果I P报文中某个字符为END,那么就要连续传输两个字节0 x d b和0 x d c来取代它。

  •   0 x d b这个特殊字符被称作SLIP的ESC字符,但是它的值与ASCII码的E S C字符(0 x 1 b)不同。

3) 如果I P报文中某个字符为SLIP的ESC字符,那么就要连续传输两个字节0 x d b和0 x d d来取代它。

SLIP是一种简单的帧封装方法,还有一些值得一提的缺陷:

  •   1) 每一端必须知道对方的IP地址。没有办法把本端的IP地址通知给另一端。
  •   2) 数据帧中没有类型字段(类似于以太网中的类型字段)。如果一条串行线路用于SLIP,那么它不能同时使用其他协议。
  •   3 ) SLIP没有在数据帧中加上检验和(类似于以太网中的CRC字段)。如果SLIP传输的报文被线路噪声影响而发生错误,只能通过上层协议来发现(另一种方法是,新型的调制解调器可以检测并纠正错误报文)。这样,上层协议提供某种形式的CRC就显得很重要。



压缩的SLIP——CSLIP[ ]

由于串行线路的速率通常较低(19200 b/s或更低),而且通信经常是交互式的(如Telnet和Rlogin,二者都使用TCP),因此在SLIP线路上有许多小的TCP分组进行交

换。为了传送1个字节的数据需要2 0个字节的I P首部和2 0个字节的TCP首部,总数超过4 0个字节。

既然承认这些性能上的缺陷,于是人们提出一个被称作CSLIP(即压缩SLIP)的新协议,它在RFC 1144[Jacobson 1990a]中被详细描述。C S L I P一般能把上面的4 0个字节压缩到

3或5个字节。它能在CSLIP的每一端维持多达1 6个TCP连接,并且知道其中每个连接的首部中的某些字段一般不会发生变化。对于那些发生变化的字段,大多数只是一些小的数

字和的改变。这些被压缩的首部大大地缩短了交互响应时间。现在大多数的SLIP产品都支持CSLIP。


相关条目[ ]


参考资源[ ]

参考资源