PPP帧 点到点协议

2020-06-17 09:45 更新

一、简介

1.作用

是为在同等单元之间传输bai数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。

二、帧格式

1.报文格式

PPP帧的内容是指Address、Control、Protocol和Information四个域的内容。

字段 长度 含义
Flag 1字节 Flag域标识了一个物理帧的起始和结束,该字节为0x7E。
Address 1字节 PPP协议室被运用在点对点的链路上,它可唯一标识对方,因此无须知道对方数据链路层地址。所以该字节无任何意义,按协议规定填充为全1广播地址。
Control 1字节 同Address域一样,PPP数据帧的Control域也没实际意义,规定值为0x03,该域与Address域一起标识了PPP报文,即PPP报文头为FF03。
Protocol 1字节或2字节 协议域,可用来区分PPP数据帧中信息域所承载的数据报文的内容。协议域的内容必须依据ISO 3309的地址扩展机制所给出的规定。该机制规定协议域所填充的内容必须为奇数,也就是要求低字节的最低位为“1”,高字节的最低位为“0”。如果当发送端发送的PPP数据帧的协议域字段不符合上述规定,接收端则会认为此数据帧是不可识别的。接收端向发送端发送一个Protocol-Reject报文,在该报文尾部将填充被拒绝报文的协议号。
Information 0~1500字节 信息域最大长度是1500字节,其中包括填充域的内容。信息域的最大长度等于PPP协议中MRU(Maximum Receive Unit)的缺省值。在实际应用当中可根据实际需要进行信息域最大封装长度选项的协商。如果信息域长度不足1500字节,可被填充,但不是必须的。如果填充则需通信双方的两端能辨认出有用与无用的信息方可正常通信。FCS 0/1/2字节 FCS域计算范围是除了flag域的其他域。校验域的功能主要对PPP数据帧传输的正确性进行检测。在数据帧中引入了一些传输的保证机制,会引入更多的开销,这样可能会增加应用层交互的延迟。
Code 1字节 代码域,主要是用来标识LCP数据报文的类型。在链路建立阶段,接收方接收到LCP数据报文。当其代码域的值无效时,就会向对端发送一个LCP的代码拒绝报文(Code-Reject报文)。如果是IP报文,则不存在此域,取而代之的是IP报文内容。
Identifier 1字节 标识域的值表示进行协商报文的匹配关系。 标识域目的是用来匹配请求和响应报文。一般而言,在进入链路建立阶段时,通信双方任何一端都会连续发送几个配置请求报文(Configure-Request报文)。这几个请求报文的数据域的值可能是完全一样的,只是它们的标志域不同。通常一个配置请求报文的ID是从0x01开始逐步加1的。当对端接收到该配置请求报文后,无论使用何种报文回应对方,但必须要求回应报文中的ID要与接收报文中的ID一致。当通信设备收到回应后就可以将该回应与发送时的进行比较来决定下一步的操作。
Length 2字节 长度域表示此协商报文长度,它包含Code域及Identifier域的长度。长度域的值就是该LCP报文的总字节数据。它是代码域、标志域、长度域和数据域四个域长度的总和。 长度域所指示字节数之外的字节将被当作填充字节而忽略掉,而且该域的内容不能超过MRU的值。
Data 变长 数据域所包含的是协商报文的内容。

2.常见数据值

报文格式标识

0021: IP报文
002b: Novell IPX
002d: Van Jacobson Compressed TCP/IP
002f: Van Jacobson Uncompressed TCP/IP
0057: IPV6报文
8021: IPCP报文
802b: Novell IPX Control Protocol
8031: Bridging NC
8057: IPv6 CP报文
C021: LCP报文
C023: Password Authentication Protocol
C223: Challenge Handshake Authentication Protocol

Code

常见Code值如下:

0x01: Configure-Request


0x02: Configure-Ack


0x03: Configure-Nak


0x04: Configure-Reject


0x05: Terminate-Request


0x06: Terminate-Ack


0x07: Code-Reject


0x08: Protocol-Reject


0x09: Echo-Request


0x0a: Echo-Replyt


0x0b: Discard-Request


0x0c: Reserved

Type

为协商选项类型。 常见Type中的协商类型值:

0x01: Maximum-Receive-Unit


0x02: Async-Control-Character-Map


0x03: Authentication-Protocol


0x04: Quality-Protocol


0x05: Magic-Number


0x06: RESERVED


0x07: Protocol-Field-Compression


0x08: Address-and-Control-Field-Compression

Length为协商选项长度,它是指Data域的总长度,也就是包含Type、Length和Data。 Data为协商的选项具体内容。

二、配置命令

encapsulation PPP 把接口的封装改为 PPP ppp pap sent-username R1 password 123456 PAP 认证时,向对方发送用户名 R1 和密码 123456 PPP authentication pap PPP 的认证方式为 PAP user R1 password 123456 为对方创建用户 R1,密码为 123456 debug ppp authentication 打开 PPP 的认证调试过程 ppp authentication chap PPP 的认证方式为 CHAP

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号