-
高级数据链路控制( HDLC,high data link control )
是一种可靠的数据链路层协议
在通信线路质量差的年代很常用,现在很少用
现在使用最多的数据链路层协议:点对点通信协议(PPP),很简单的协议 -
PPP应用场景
互联网用户
需要连接到某个 ISP
才能接入互联网
PPP协议 就是用户
和ISP
进行通信时使用的数据链路层协议
PPP 协议应该满足的要求
- 1、简单(首要需求)
互联网体系结构中最复杂的部分放到了 TCP 协议中
网际协议 IP 相比简单,提供不可靠的数据报服务
因此数据链路层也没要提供比 IP层 更多的功能(不需要纠错,流量控制,序号)
力求简单,简单了反而不容易出错,CRC校验正确就接受一个帧,错误直接丢弃什么都不做
只要支持全双工链路就好 - 2、封装成帧
使用帧定界符 - 3、透明性
字节填充(异步),零比特填充(同步) - 4、多种网络层协议
PPP协议必须能在同一条物理链路
上同时支持多种网络层协议(如 IP,IPX)
当点对点链路所连接的是局域网或者路由器
时,PPP协议必须同时支持链路连接的局域网或路由器上运行的各种网络层协议 - 5、多种类型链路
PPP 能在多种类型的链路上运行:串行并行、同步异步、低速高速、电光
后来又出现了在以太网上运行的 PPP,PPP over Ethernet,简称PPPoE
为宽带上网的主机使用的链路层协议,PPPoE 把 PPP帧 再封装到以太网帧中
多个连接在以太网上的用户通过 PPPoE 共享一条到 ISP 的宽带链路 - 6、差错检测
有差错的帧直接丢弃,无差错的帧接收
若不再数据链路层进行差错检测,那么已出现差错的无用帧还要在网络中继续向前转发,白白浪费很多网络资源 - 7、检测连接状态
PPP 需要有一种协议能够及时(周期小于几分钟)自动检测链路是否工作正常,或者是否从故障状态恢复正常 - 8、最大传送单元
PPP 需要对每一种类型的点对点链路设置最大传送单元MTU
MTU是数据链路层的帧可以载荷的数据部分的最大长度,不是帧的总长度
若高层协议发送的分组长度超过MTU,PPP直接丢弃 - 9、网络地址协商
PPP 需要提供一种机制使通信的两个网络层的实体能通过协商获取或者配置彼此的网络层地址
协商算法要求简单,能在各种情况下得出协商结果 - 10、数据压缩协商
PPP 必须提供一种方法来协商使用数据压缩算法
PPP协议的组成(三个部分)
-
1、将 IP数据报 封装到串行链路的方法
PPP 既支持异步链路,也支持面向比特的同步链路
IP数据报 在PPP帧就是其信息部分,受 MTU 的限制 -
2、一个用来建立、配置和测试数据链路的 链路控制协议(LCP,Link Control Protocol)
通信双方可以协商一些选项 -
3、一套网络控制协议(NCP,Network Control Protocol)
其中每一个协议支持不同的网络层协议