PPP和HDLC

 PPP帧格式和HDLC帧格式相似,如图所示。二者主要区别:PPP是面向字符的,而HDLC是面向位的

             

  

可以看出,PPP帧的前3个字段和最后两个字段与HDLC的格式是一样的。标志字段F为0x7E(0x表示7E),但地址字段A和控制字段C都是固定不变的,分别为0xFF、0x03。PPP协议不是面向比特的,因而所有的PPP帧长度都是整数个字节。

与HDLC不同的是多了2个字节的协议字段。协议字段不同,后面的信息字段类型就不同。如:

0x0021--信息字段是IP数据报

0xC021--信息字段是链路控制数据LCP

0x8021--信息字段是网络控制数据NCP

0xC023--信息字段是安全性认证PAP

0xC025--信息字段是LQR

0xC223--信息字段是安全性认证CHAP

当信息字段中出现和标志字段一样的比特0x7E时,就必须采取一些措施。因PPP协议是面向字符型的,所以它不能采用HDLC所使用的零比特插入法,而是使用一种特殊的字符填充。具体的做法是将信息字段中出现的每一个0x7E字节转变成2字节序列(0x7D,0x5E)。若信息字段中出现一个0x7D的字节,则将其转变成2字节序列(0x7D,0x5D)。若信息字段中出现ASCII码的控制字符,则在该字符前面要加入一个0x7D字节。这样做的目的是防止这些表面上的ASCII码控制字符被错误地解释为控制字符。

 

MTU

 

R1#show int e0/0

Ethernet0/0 is administratively down, line protocol is down 

  MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec,        <===二层MTU

 

R1#show ip interface e0/0

  MTU is 1500 bytes                 <===三层MTU(针对IP协议)

 

R1(config-if)#mtu 1388               <===二层MTU不允许修改

% Interface Ethernet0/0 does not support user settable mtu.

 

R1(config-if)#ip mtu 1288             <====三层MTU可以修改

 

你可能感兴趣的:(ppp,hdlc)