TCP/IP详解卷1:协议(第二章:链路层)

  • 以太网和IEEE 802封装

    • 8 0 2 . 3针对整个C S M A / C D网络
    • 8 0 2 . 4针对令牌总线网络
    • 8 0 2 . 5针对令牌环网络
    • 8 0 2 . 2则定义这三者的共同特性,那就是8 0 2网络共有的逻辑链路控制(L L C)
    • 不幸的是,8 0 2 . 2和8 0 2 . 3定义了一个与以太网不同的帧格式。文献[Stallings 1987]对所有的IEEE 802标准进行了详细的介绍
    • TCP/IP详解卷1:协议(第二章:链路层)_第1张图片
    • 上图几个参数的解释:
      • DSAP(Destination Service Access Point),目的服务访问点,其值被设为:0xAA
      • SSAP(Source Service Access Point),源服务访问点,其值亦被设为:0xAA
      • Ct r l字段的值设为03
      • 随后的3个字节o rg code都置为0
      • 再接下来的2个字节类型字段和以太网帧格式一样
    • 8 0 2 . 3标准定义的帧和以太网的帧都有最小长度要求;8 0 2 . 3规定数据部分必须至少为3 8字节,而对于以太网,则要求最少要有4 6字节。为了保证这一点,必须在不足的空间插入填充(p a d)字节;

  • SLIP:串行线路IP

    • S L I P的全称是Serial Line IP;它是一种在串行线路上对I P数据报进行封装的简单形式,在RFC 1055[Romkey 1988]中有详细描述;SLIP适用于家庭中每台计算机几乎都有的RS - 232串行端口和高速调制解调器接入Internet;
    • SLIP协议定义的帧格式:
      • IP数据报以一个称作END(0xc0)的特殊字符结束。同时,为了防止数据报到来之前的线路噪声被当成数据报内容,大多数实现在数据报的开始处也传一个END字符(如果有线路噪声,那么END字符将结束这份错误的报文。这样当前的报文得以正确地传输,而前一个错误报文交给上层后,会发现其内容毫无意义而被丢弃);
      • 如果IP报文中某个字符为END,那么就要连续传输两个字节0xdb和0xdc来取代它;0xdb这个特殊字符被称作SLIP的ESC字符,但是它的值与ASCII码的ESC字符(0x1b)不同;
      • 如果IP报文中某个字符为SLIP的ESC字符,那么就要连续传输两个字节0xdb和0xdd来取代它;
    • SLIP是一种简单的帧封装方法,还有一些不得一提的缺陷:
      • 每一端必须知道对方的IP地址,没有办法把本端的IP地址通知给另一端;
      • 数据帧中没有类型字段(类似于以太网中的类型字段),如果一条串行线路用于SLIP,那么它不能同时使用其他协议;
      • SLIP没有在数据帧中加上检验和,这样,上层协议提供某种形式的CRC就显得很重要;

  • CSLIP:压缩的SLIP

    • 压缩的SLIP;
    • 由于串行线路的速率通常较低(19200 b/s或更低),而且通信经常是交互式的(如Telnet和Rlogin,二者都使用TCP),因此在SLIP线路上有许多小的TCP分组进行交换。为了传送1个字节的数据需要20个字节的IP首部和20个字节的TCP首部,总数超过40个字节;
    • 于是人们提出一个被称作CSLIP(即压缩SLIP)的新协议,它在RFC 1144[Jacobson 1990a]中被详细描述;

  • PPP:点对点协议

    • PPP,点对点协议修改了SLIP协议中的所有缺陷。PPP包括以下三个部分:
      • 在串行链路上封装IP数据报的方法。PPP既支持数据为8位和无奇偶检验的异步模式(如大多数计算机上都普遍存在的串行接口),还支持面向比特的同步链接;
      • 建立、配置及测试数据链路的链路控制协议(LCP:Link Control Protocol)。它允许通信双方进行协商,以确定不同的选项;
      • 针对不同网络层协议的网络控制协议(NCP:Network Control Protocol)体系。当前RFC定义的网络层有IP、OSI网络层、DECnet以及AppleTalk;例如,IP NCP允许双方商定是否对报文首部进行压缩;
    • PPP数据帧格式:

    • PPP协议特殊字符的处理

  • 环回接口

    • 这个图看起来有点迷,基础太欠缺了

你可能感兴趣的:(ppp,SLIP,链路层协议,CSLIP,环回测试接口)