引言
点对点协议PPP(Point to Point Protocol)主要用于全双工的链路上进行点到点的数据传输和封装,它为点对点连接上传输多协议数据包提供了一个标准方法。在数据链路层中它很重要!
PPP协议特点
- 无传输可靠性的保证
- 封装成帧(7EH为首尾定界符)
- 可以提供透明传输
- 支持多种网络协议
- 支持多种网络类型
- 差错检测CRC
- 可查验连接状态
- MTU控制
- 网络层协商
可以看到上述PPP协议功能很多,PPP协议是一个协议集合体,由众多协议组成后一起运行。无论是差错检测还是封装成帧,你都可以理解为PPP协议是多种协议的集合,它将多种协议统一起来,每个协议各司其职却又互相联系。
PPP协议的组成
对于PPP协议,它由三大类组成。
(1)一个将IP数据包封装到串行链路的方法
(串行链路指的是链路状态协议,后面会提到)。PPP可以支持异步链路(无奇偶校验位的8bit数据),也可以支持面向比特的同步链路。
IP数据报在PPP帧中就是其信息部分。这个信息部分的长度受最大接受单元MRU的限制。MRU默认为1500。其中MRU是最大接受单元;MTU是最大传输单元。他们默认都是1500.
异步链路和同步链路,你可以简单理解为,打电话和发短信。我们打电话时是有着随时间而时刻变化的过程的,这个是同步链路;我们发短信,需要等待一段时间才有回信的,不会立刻回馈信息。这种是异步链路。
(2)LCP(链路控制协议)
LCP用来建立,配置和测试数据链路连接的协议。双方可以协商一些选项。其功能大体为:
1.检查链接设备的标识,决定是接受还是拒绝。
2.确定传输中可接收的包字节数。
3.核对双方配置是否匹配,不匹配则断开连接,只有LCP包链接是可用的时候数据才能实现网络通信。
就好比邮寄快递的时候,快递驿站会先查看我的物品是否可邮寄;还要确定我邮寄的包裹重量和类型,它们可不可以接受;最终会核对发货人信息和收货人信息,确保快递正确的流向,如果信息不正确,那么停止发货。
(3)NCP(网络控制协议)
NCP用来协商不同的网络协议,它包含了众多协议,因此它对其它很多协议都具备协商功能。
随着发展,越来越多的新型协议开始出现,这些协议的加入好比一张合同中添加了额外的条例。因此我们需要协商这些协议在合同履行中的一个合理性。征求双方同意后,才会添加并规范这些条例。不然不经协商的条例是不被认可的。
NCP在PPP协议中,或者说在数据链路层中为网络层的对接起到了非常重要的作用!