Internet中主要的数据链路层协议:
SLIP (Serial Line IP)
— 串行线路的Internet数据链路层协议,面向字符,RFC1055PPP ( Point-to-Point Protocol)
— 点-点协议,面向字节,RFC1661通信线路质量较差的年代:HDLC(高级数据链路控制)
1,PPP 协议的特点
PPP协议是IETF在1992年制定的。经过1993年和1994年的修订,现在的PPP协议在1994年就已称为因特网的正式标准。
用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。
PPP协议是目前广域网上应用最广泛的协议之一,它的优点在于简单、具备用户验证能力、可以解决IP分配等。
用户到 ISP 的链路使用 PPP 协议 :
2,PPP 协议应满足的需求
简单——这是首要的要求
封装成帧 必须规定特殊的字符作为帧定界符。
透明性 多种网络层协议 必须能够在同一条物理链路上同时支持多种网络层协议(如IP和IPX等)的运行。
多种类型链路 能够在多种链路上运行
差错检测 必须能够对接收方收到的帧进行检测,并立即丢弃有差错的帧。
检测连接状态 能够及时(不超过几分钟)检测出一条链路是处于正常工作状态,还是已经出了故障。
最大传送单元 必须对每一种类型的点对点链路设置MTU的标准默认值。
网络层地址协商
数据压缩协商
3,PPP 协议不需要的功能
纠错 ppp协议是不可靠传输协议
流量控制
序号
多点线路
半双工或单工链路
4,PPP协议的组成
(1)一个将IP数据报封装到串行链路的方法。PPP既支持异步链路(无奇偶检验的8比特数据),也支持面向比特的同步链路。IP数据报在PPP帧中就是其信息部分。这个信息部分的长度受最大接收单元MRU (Maximum Receive Unit)的限制。MRU的默认值是1500字节。
(2)一个用来建立、配置和测试数据链路连接的链路控制协议LCP (Link Control Protocol)。通信的双方可协商一些选项。在[RFC 1661]中定义了11种类型的LCP分组。
(3)一套网络控制协议NCP (Network Control Protocol),其中的每一个协议支持不同的网络层协议,如IP、OSI的网络层、DECnet以及AppleTalk等。
5,PPP协议的帧格式
PPP的帧格式和HDLC的相似,PPP不是面向比特而是面向字节的,因而所有的PPP帧的长度都是整数个字节。
1)各字段的含义
- 标志(flag):01111110
- 地址(address):为固定值 “FF”(11111111),点-点协议,地址无意义
- 控制(control):为固定值“03”(00000011),无编号
- 数据(信息)字段:长度可变,不超过1500字节
协议字段定义参见RFC1700,它标识出网络层协议数据域的类型:
- 0021:信息字段内容为IP数据报
- C021:信息字段内容为PPP链路控制数据
- 8021:信息字段内容为网络控制数据
2)字节填充
当PPP使用异步传输时,它把转义符定义为0x7E,并使用字节填充。
字节填充规则:
将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。
若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。
若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。
例:
一个PPP帧的数据部分(用十六进制写出)是7D 5E FE 27 7D 5D 7D 5D 65 7D 5E。试问真正的数据是什么(用十六进制写出)?
答案: 7E FE 27 7D 7D 65 7E
3)零比特填充
当PPP用在同步传输链路(SONET/SDH)时,采用硬件来完成零比特填充(和HDLC的做法一样)。
零比特填充规则:
a,数据中某一段比特组合恰好出现和 F 字段一样的情况
b,发送端在 5 个连 1 之后填入 0 比特再发送出去
c,在接收端将 5 个连 1 之后的 0 比特删除,恢复原样
6,PPP协议的工作状态
PPP 协议的三个工作阶段:
1)LCP协商PPP参数,建立数据连接
2)用户验证,客户端会将自己的身份发送给远端的接入服务器。在认证完成之前,禁止从认证阶段前进到网络层协议阶段。如果认证失败,认证者应该跃迁到链路终止阶段。
3)调用网络层协议 ,认证阶段完成之后,PPP将调用在链路创建阶段(阶段1)选定的各种网络控制协议(NCP)。选定的NCP解决PPP链路之上的高层协议问题,例如,在该阶段IP控制协议(IPCP)可以向拨入用户分配动态地址。
PPP 协议的状态图 :
6,PPP协议的应用
家庭拨号上网就是通过PPP在用户端和运营商的接入服务器之间建立通信链路。
目前,宽带接入正在成为取代拨号上网的趋势,在宽带接入技术日新月异的今天,PPP也衍生出新的应用。典型的应用是在ADSL接入方式当中,PPP与其他的协议共同派生出了符合宽带接入要求的新的协议,如PPPoE(PPP over Ethernet),PPPoA(PPP over ATM)。