SLIP 协议

SLIP

  英文原义:Serial Line Internet Protocol

  中文释义:串行线路网际协议

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

  应 用:在Windows中要设置SLIP协议,比如在Windows 98中,假设已经创建了“拨号连接”,

SLIP

  英文原义:Serial Line Internet Protocol

  中文释义:串行线路网际协议

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

  应 用:在Windows中要设置SLIP协议,比如在Windows 98中,假设已经创建了“拨号连接”,右键单击该连接,选择“属性”。接着,在打开的属性窗口中,选择“服务器类型”选项卡,在“拨号网络服务器类型”中选择“SLIP:Unix连接”。最后,单击“确定”按钮即可。

  SLIP:串行线路IP

  S L I P的全称是Serial Line IP。它是一种在串行线路上对I P数据报进行封装的简单形式,在

  RFC 1055[Romkey 1988]中有详细描述。S L I P适用于家庭中每台计算机几乎都有的R S - 2 3 2串

  行端口和高速调制解调器接入I n t e r n e t。

  下面的规则描述了S L I P协议定义的帧格式:

  1) IP数据报以一个称作E N D(0 x c 0)的特殊字符结束。同时,为了防止数据报到来之前

  的线路噪声被当成数据报内容,大多数实现在数据报的开始处也传一个E N D字符(如果有线

  路噪声,那么E N D字符将结束这份错误的报文。这样当前的报文得以正确地传输,而前一个

  错误报文交给上层后,会发现其内容毫无意义而被丢弃)。

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

  0 x d b这个特殊字符被称作S L I P的E S C字符,但是它的值与A S C I I码的E S C字符(0 x 1 b)不同。

  3) 如果I P报文中某个字符为S L I P的E S C字符,那么就要连续传输两个字节0 x d b和0 x d d来

  取代它。

  图2 - 2中的例子就是含有一个E N D字符和一个E S C字符的I P报文。在这个例子中,在串行

  线路上传输的总字节数是原I P报文长度再加4个字节。

  图2-2 SLIP报文的封装

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

  1) 每一端必须知道对方的I P地址。没有办法把本端的I P地址通知给另一端。

  2) 数据帧中没有类型字段(类似于以太网中的类型字段)。如果一条串行线路用于S L I P,

  那么它不能同时使用其他协议。

  第2章链路层使用17

  下载

  IP数据报

  3 ) S L I P没有在数据帧中加上检验和(类似于以太网中的C R C字段)。如果S L I P传输的报

  文被线路噪声影响而发生错误,只能通过上层协议来发现(另一种方法是,新型的调制解调

  器可以检测并纠正错误报文)。这样,上层协议提供某种形式的C R C就显得很重要。在第3章

  和第1 7章中,我们将看到I P首部和T C P首部及其数据始终都有检验和。在第11章中,将看到

  U D P首部及其数据的检验和却是可选的。

  尽管存在这些缺点, S L I P仍然是一种广泛使用的协议。

  S L I P的历史要追溯到1 9 8 4年,Rick Adams第一次在4 . 2 B S D系统中实现。尽管它本

  身的描述是一种非标准的协议,但是随着调制解调器的速率和可靠性的提高, S L I P越

  来越流行。现在,它的许多产品可以公开获得,而且很多厂家都支持这种协议。

  2.5 压缩的SLIP

  由于串行线路的速率通常较低( 19200 b/s或更低),而且通信经常是交互式的(如Te l n e t

  和R l o g i n,二者都使用T C P),因此在S L I P线路上有许多小的T C P分组进行交换。为了传送1个

  字节的数据需要2 0个字节的I P首部和2 0个字节的T C P首部,总数超过4 0个字节(1 9 . 2节描述了

  R l o g i n会话过程中,当敲入一个简单命令时这些小报文传输的详细情况)。

  既然承认这些性能上的缺陷,于是人们提出一个被称作C S L I P(即压缩S L I P)的新协议,

  它在RFC 1144[Jacobson 1990a]中被详细描述。C S L I P一般能把上面的4 0个字节压缩到3或5个

  字节。它能在C S L I P的每一端维持多达1 6个T C P连接,并且知道其中每个连接的首部中的某些

  字段一般不会发生变化。对于那些发生变化的字段,大多数只是一些小的数字和的改变。这

  些被压缩的首部大大地缩短了交互响应时间。

  现在大多数的S L I P产品都支持C S L I P。作者所在的子网(参见封面内页)中有两条

  SLIP链路,它们均是CSLIP链路。

SLIP 协议的更多相关文章

  1. 《TCP/IP详解卷1:协议》第2章 链路层-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  2. 『TCP/IP详解——卷一:协议』读书笔记——05

    2013-08-19 22:35:57 2.6 PPP:点对点协议 PPP点对点协议修改了SLIP协议中的所有缺陷: 1. 在串联链路上封装IP数据报的方法.PPP即支持数据为8位&无奇偶检验 ...

  3. 『TCP/IP详解——卷一:协议』读书笔记——04

    2013-08-18 16:31:17 第2章 链路层 2.1 引言 链路层主要有三个目的: 为IP模块发送和接受IP数据报 为ARP模块发送ARP请求和接受ARP应答 为RARP发送RARP请求和接 ...

  4. NetAnalyzer笔记 之 二. 简单的协议分析

    [创建时间:2015-08-27 22:15:17] NetAnalyzer下载地址 上篇我们回顾完了NetAnalyzer一些可有可无的历史,在本篇,我决定先不对NetAnalyzer做介绍,而是先 ...

  5. TCP/IP协议和OSI协议

    作为一个与网络密切相关的Web前端工程师,TCP/IP和OSI模型不可不知,至少要知道一下这些常识性知识,在这我做一下记录 TCP/IP协议簇: TCP/IP是一组协议的代名词,包括许多别的协议,组成 ...

  6. 网络基础二 tcp/ip协议簇 端口 三次握手 四次挥手 11种状态集

    第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...

  7. 一些重要的计算机网络协议(IP、TCP、UDP、HTTP)

    一.计算机网络的发展历程 1.计算机网络发展 与其说计算机改变了世界,倒不如说是计算机网络改变了世界.彼时彼刻,你我都因网络而有了交集,岂非一种缘分? 计算机与网络发展大致经历如下过程:

  8. [转]从OSI网络模型到TCP/IP协议族简介

    OSI七层模型 OSI(Open System Interconnection,开放系统互联)七层网络模型成为开放式系统互联参考模型,是一个把网络通信在逻辑上的定义,也可以理解成为定义了通用的网络通信 ...

  9. 【TCP/IP详解 卷一:协议】第二章:链路层

    2.1 引言 链路层的三个目的: (1)为IP模块发送和接收IP数据报. (2)为ARP模块发送ARP请求和接收ARP应答.地址解析协议:ARP. (3)为RARP模块发送RARP请求和接收RARP应 ...

随机推荐

  1. erwin逆向工程,logical模型列名修改为中文

    逆向工程,应该选择physical template,这样拷贝到logical/physical 模型中,才可以将logical模型的列名修改为中文.

  2. LaTeX模板 - FORMCM

    LaTex 模板 - FORMCM \documentclass{mcmthesis} \mcmsetup{CTeX = true, % 使用 CTeX 套装时,设置为 true tcn = 8989 ...

  3. PHP闭包 function() use(){}

    php的闭包(Closure)也就是匿名函数.是PHP5.3引入的. 闭包的语法很简单,需要注意的关键字就只有use,use意思是连接闭包和外界变量. $a =function()use($b) { ...

  4. angularjs控制器之间的数据共享与通信

    1.可以写一个service服务,从而达到数据和代码的共享; var app=angular.module('app',[]); app.service('ObjectService', [Objec ...

  5. web微信开发总结

    这两天使用Django开发了web微信,实现了显示联系人以及收发消息的功能. 总结下这过程中使用到的一些知识. 1 http请求 通过chrome浏览器自带的开发者工具查看每次请求的信息,分析请求,包 ...

  6. Oracle Procedure记录

    1.定义 所谓存储过程(Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过 编译后存储在数据库系统中.在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储 ...

  7. 【Demo】jQuery 轮播图简单动画效果

    功能实现: (1)设定图片称号的鼠标悬停事件: (2)在事件中利用自定义动画函数调整显示图片,并修改对应标号样式: (3)为图片显示区域设定鼠标悬停事件: (4)当鼠标停在该区域时,清除图片切换动画定 ...

  8. idea中修改git提交代码的用户名

    1.原因:刚进入这家公司,给同事交接完,直接使用他的电脑,每次提交代码都显示他的用户名,本以为是电脑系统名称呢,可是修改了之后没有效果 2.解决方案: 打开C盘里的 .gitconfig文件 看下gi ...

  9. cat 命令|more命令|less命令

    cat主要有三大功能:1.一次显示整个文件:cat [-n] filename2.从键盘创建一个文件:cat > filename 3.将几个文件合并为一个文件:cat file1 file2 ...

  10. iOS安全系列之 HTTPS

    作者:Jaminzzhang 如何打造一个安全的App?这是每一个移动开发者必须面对的问题.在移动App开发领域,开发工程师对于安全方面的考虑普遍比较欠缺,而由于iOS平台的封闭性,遭遇到的安全问题相 ...