PPP相关知识
PPP的概念
PPP(Point to Point
Protocol)点对点协议,它是点对点信道1中最常用的数据链路层协议。
PPP的组成
封装(Encapsulation):一种封装多协议数据报的方法。PPP
封装提供了不同网络层协议同时在同一链路传输的多路复用技术。
链路控制协议(LCP):一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。
网络控制协议(NCP):协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议;
PPP工作流程2
第一步:链路的建立和配置协商,主要由LCP完成,通信的发起方发送PPP帧用来配置和检测数据链路。
第二步:链路质量检测(可选),属于LCP的可选功能,主要是测试链路的质量能否满足要求。
第三步:网络层协议的配置阶段,主要是NCP的功能,通信双方交换一系列NCP分组来配置网络层,NCP配置好后双方的逻辑通信链路就建立完成了。
第四步:链路终止,当数据传送完成,或者一些外部事件发生的时候,一方会发起断开连接的请求,这时,首先使用NCP来释放网络层的链接,然后使用LCP来关闭数据链路层的链接,最后双方的通信设备关闭物理链路。如图(偷的课本)
PPP基本的帧格式3
PPP采用0x7E作为一帧的开始和结束标志(F);其中地址域(A)和控制域(C)取固定值(A=0xFF,C=03H);协议域(两个字节)取0x0021表示IP分组,取0x8021表示网络控制数据,取0xC021表示链路控制数据;帧校验域(FCS)也为两个字节,它用于对信息域的校验。
PPP不同传输方式下的透明传输
异步传输4
字节填充
当信息域中出现0x7E,则转换为(0x7D,0x5E)两个字符。
当信息域中出现0x7D时,则转换为(0x7D,0x5D)。
当信息流中出现ASCII码的控制字符(即小于0x20),即在该字符前加入一个0x7D字符,同时将该字符的编码加以改变。
同步传输5
在发送端,先扫描整个信息端,只要发现有5个连续的1,就会立即填入一个0,这样保证信息段中不会出现标志字段F,就可以使用F进行确定边界。
异步传输和同步传输的区别(请注意链接的最后一句话7)
异步传输是面向字符的传输,而同步传输是面向比特的传输。
异步传输的单位是字符而同步传输的单位是帧。
异步传输通过字符起止的开始和停止码抓住再同步的机会,而同步传输则是以数据中抽取同步信息。
异步传输对时序的要求较低,同步传输往往通过特定的时钟线路协调时序。
异步传输相对于同步传输效率较低。
同步传输方式中发送方和接收方的时钟是统一的、字符与字符间的传输是同步无间隔的。
异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的。
注意到第一个区别点,PPP在同步传输时是面向比特的,在异步传输时是面向字符的,提问:PPP是面向比特的还是面向字符类型的协议?8
了解一下
面向比特与面向字节的协议
PPP的差错检测
根据PPP帧的格式,可以知道ppp通过CRC进行检错,但是不能纠错,属于不可靠协议。CRC不做介绍。
参考:百度(很重要)、《同步与异步传输》、《同步传输-异步传输-面向比特-面向字符-面向字节》、《PPP协议实例详解》、老师
- 点对点信道和广播信道的差别:点对点是双方主机在同一信道上的向对方发送信息,而广播信道是使用一套专用设备对许多在同一信道上的主机进行广播,即一对一和一对多的关系。 ↩
- 自下而上建立连接,自下而上释放链接 ↩
- 下面的图A和C换过来 ↩
- 异步传输(Asynchronous Transmission): 异步传输将比特分成小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。 ↩
- 同步传输是一种以数据块为传输单位的数据传输方式,该方式下数据块与数据块之间的时间间隔是固定的,必须严格地规定它们的时间关系。每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标记一个数据块的开始和结束,一般还要附加一个校验序列,以便对数据块进行差错控制。 ↩
- 问:信息段中是否会存在这样的有效信息111101…
答:不会,因为当扫描到11111后,会在其后面加0,变成1111001…,而经过填充后出现的111101…,是因为碰到标志字段F后形成的。 ↩ - 其实,同步和异步的最大区别就是:字符与字符间的传送一个是异步,一个是同步;而在字符内的位与位之间,两者都是同步的。 ↩
- 我想是面向字符的,在ppp帧封装时,不论是同步还是异步都是以一个8bit组合作为有效字段,比如标志段。无论是面向字符还是面向比特,都是ppp针对不同的线路类型所采取的不同的封装策略。只是在同步传输时,采用了零比特填充法(同HDLC),实现透明传输。 ↩