PPP数据帧的格式

上传人:s****a 文档编号:158502254 上传时间:2022-10-05 格式:DOCX 页数:9 大小:128.44KB
收藏 版权申诉 举报 下载
PPP数据帧的格式_第1页
第1页 / 共9页
PPP数据帧的格式_第2页
第2页 / 共9页
PPP数据帧的格式_第3页
第3页 / 共9页
资源描述:

《PPP数据帧的格式》由会员分享,可在线阅读,更多相关《PPP数据帧的格式(9页珍藏版)》请在装配图网上搜索。

1、ppp数据帧的格式 2007-5-17 11:43:00PPP协议也许大家都听说过,可以说现在家里的ADSL都是通过PPP协议进行链 路的搭建,今天就说说PPP到底是个啥东东。想要了解PPP,个人认为有3个关键的知识点。1、PPP数据帧的格式;2、PPP的几种报文;3、PPP的状态转移首先说说的PPP数据帧的格式,因为PPP是链路层协议,所以我们将它的 数据单位称为帧,7EFF037E标志地址控制协议域信息域校验标志1B1B1B2B缺省1500B2B1B每一个PPP数据帧均是以一个标志字节起始和结束的,该字节为0x7E (这样很 容易区分出每个PPP帧)紧接在起始标志字节后的一个字节是地址域,

2、该字节为OxFF。我们熟知网 络是分层的,且对等层之间进行相互通信,而下层为上层提供服务。当对等层进 行通信时首先需获知对方的地址,而对不同的网络,在数据链路层则表现为需要 知道对方的MAC地址、X.121地址、ATM地址等;在网络层则表现为需要知道对 方的IP地址、IPX地址等;而在传输层则需要知道对方的协议端口号。例如如 果两个以太网上的主机希望能够通信的话,首先发送端需获知对端的MAC地址。 但由于PPP协议是被运用在点对点的链路上的特殊性,它不像广播或多点访问的 网络一样,因为点对点的链路就可以唯一标示对方,因此使用PPP协议互连的通 信设备的两端无须知道对方的数据链路层地址,所以该字

3、节已无任何意义,按照 协议的规定将该字节填充为全1的广播地址。同地址域一样,PPP数据帧的控制 域也没有实际意义,按照协议的规定通信双方将该字节的内容填充为0x03( 既然无意义,就可以随便赋值了吧,呵呵,只要大家都遵守一个标准就行)就PPP协议本身而言,我们最关心的内容应该是它的协议域和信息域。协议 域可用来区分PPP数据帧中信息域所承载的数据报文的内容。协议域的内容必须 依据ISO 3309的地址扩展机制所给出的规定。该机制规定协议域所填充的内容 必须为奇数,也即是要求低字节的最低位为“1”,高字节的最低位为“0”。如 果当发送端发送的PPP数据帧的协议域字段不符合上述规定,则接收端会认为

4、此 数据帧是不可识别的,那么接收端会向发送端发送一个Protocol-Reject报文, 在该报文尾部将完整地填充被拒绝的报文。信息域缺省时最大长度不能超过1500字节,其中包括填充域的内容,1500 字节大小等于PPP协议中配置参数选项MRU (Maximum Receive Unit)的缺省值 ,在实际应用当中可根据实际需要进行信息域最大封装长度选项的协商。信息域 如果不足1500字节时可被填充,但不是必须的,如果填充则需通信双方的两端 能辨认出有用与无用的信息方可正常通信。协议域和信息域是需要合在一起看的,目前主要用到的协议类型有 LCP、NCP和普通的IP协议,而他们相对应的协议域字段

5、则为0XC021、0X8021和0X0021,可以看到应证了这句话:也即是要求低字节的最低位为“ 1”,高字节的最低位为“0”。而后面的信息根据不同协议包含了不同的报文内容。0XC021LCP数据报文校验0X8021NCP数据报文校验0X0021IP数据报文校验其实这3种不同协议就对应PPP协议在运行过程中的不同状态,以后会在PPP 状态转移中介绍到,我们可以很容易根据 PPP 帧的协议域就判断目前处于 PPP 的哪个阶段。遇到PPP问题,我们通常通过抓包,然后判断PPP哪个阶段有问题 ,再进行分析和问题定位。注意一点的就是,NCP不是一种协议,它的全称是网 络控制协议,也就是说最后双方都遵循

6、的数据传输协议,可以是IPCP,也可以 是 IPXCP。CRC校验域主要是对PPP数据帧传输的正确性进行检测的,当然在数据 帧中引入了一些传输的保证机制是好的,但可以反过来说,同样我们会引入更多 的开销,这样可能会增加应用层交互的延迟。最后给大家一个通过Ethereal抓下来的PPP帧,对应上面的说明,看看 大家是否可以看懂:7EFF03C021 01 01 00 17 02 06 00 0A 00 00 05 06 00 0B 42 CB 07 02 08 02 0D 03 06 7E1.1 PPP概述点到点协议(Point to Point Protocol, PPP)是 IETFClnt

7、ernet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。它 解决了 SLIP中的问题,并成为正式的因特网标准。PPP协议在RFC 1661、RFC 1662和RFC 1663中进行了描述。PPP支持在各种物理类型的点到点串行线路上传输上层协议报文。PPP有很 多丰富的可选特性,如支持多协议、提供可选的身份认证服务、可以以各种方式 压缩数据、支持动态地址协商、支持多链路捆绑等等。这些丰富的选项增强了 PPP的功能。同时,不论是异步拨号线路还是路由器之间的同步链路均可使用。 因此,应用十分广泛。1 PPP的层次结构PPP 支持各种类型的硬件

8、,包括 EIA/TIA 232、EIA/TIA 449、EIA/TIA 530 、V.35、V.21等。只要是点到点类型的线路都可以运行PPP。在数据链路层,PPP 通过LCP协议进行链路管理,相当于以太网数据链路层的MAC子层。而在网络层 ,由NCP为不同的协议提供服务。这里的NCP相当于以太网数据链路层的LLC 子层。如图1所示。O5JPPP图1PPP的层次结构2 PPP的功能PPP主要完成了以下功能:链路控制PPP为用户发起呼叫以建立链路;在建立链路时协商参数选择;通信过程中 随时测试线路,当线路空闲时释放链路等。PPP中完成上述工作的组件是链路控 制协议 LCP (Link Contr

9、ol Protocol,LCP)。网络控制当LCP将链路建立好了以后,PPP要开始根据不同用户的需要,配置上层协 议所需的环境。PPP使用网络控制协议NCP (Network Control Protocol,NCP )来为上层提供服务接口。针对上层不同的协议类型,会使用不同的NCP组件。 如对于IP提供IPCP接口,对于IPX提供IPXCP接口,对于APPLETALK提供ATCP 接口等。1.2 PPP过程从开始发起呼叫到最终通信完成后释放链路,PPP的工作经历了一系列的过 程。下面,是这一过程的描述。当一个PC终端拨号用户发起一次拨号后,此PC终端首先通过调制解调器呼 叫远程访问服务器,如

10、提供拨号服务的路由器。当路由器上的远程访问模块应答了这个呼叫后,就建立起一个初始的物理连 接。接下来,PC终端和远程访问服务器之间开始传送一系列经过PPP封装的LCP 分组,用于协商选择将要采用的PPP参数。如果上一步中有一方要求认证,接下来就开始认证过程。如果认证失败,如错误的用户名、密码,则链路被终止,双方负责通信的设备或模块(如用户端的 调制解调器或服务器端的远程访问模块)关闭物理链路回到空闲状态。如果认证 成功则进行下一步。在这步骤中,通信双方开始交换一系列的NCP分组来配置网络层。对于上层 使用的是IP协议的情形来说,此过程是由IPCP完成的。当NCP配置完成后,双方的逻辑通信链路就

11、建立好了,双方可以开始在此链 路上交换上层数据。当数据传送完成后,一方会发起断开连接的请求。这时,首先使用NCP来释 放网络层的连接,归还IP地址;然后利用LCP来关闭数据链路层连接;最后, 双方的通信设备或模块关闭物理链路回到空闲状态。图2给出了上述过程的示意图。图2PPP过程1.3PPP帧格式PPP帧格式以HDLC帧格式为基础,做了很少的改动。二者的主要区别是: PPP是面向字符的,而HDLC是面向位的。PPP在点到点串行线路上使用字符填充 技术。所以,所有的帧的大小都是字节的整数倍。图3中给出了 PPP的帧格式。7-节_ ! 空 22字苛 哙WOO字节 2或4字E I 沖4f1$V011

12、1111011111111W000011FCS011T111O图3PPP的帧格式PPP帧是以标准HDLC标志字节(01111110)开始和结束的。接下来是地址字段,缺省情况下,被固定设成二进制数11111111,因为点 到点线路的一个方向上只有一个接收方。地址字段后面是控制字段,缺省情况下,被固定设成二进制数00000011。因为缺省情况下,地址字段、控制字段总是常数。因此,这两部分实际可以 省略不要(需要通过LCP进行协商)。接下来是协议字段。用来标明后面携带的是什么类型的数据。 其缺省大小为2个字节。但如果是LCP包,则可以是1字节。接下来是数据字段。其长度可变,缺省最大长度为1500字节

13、。接下来是校验和字段,通常情况下是2个字节,但也可以是4 字节。1.4LCP协商选项LCP用来在通信链路建立初期,在通信双方之间协议功能选项。表1列出了 其中主要的选项。它们是身份验证、压缩、回叫、多链路。表1PPP LCP协商选项特性解释协议身份验证链路建立成功前要求提供正确的密 码PAP, CHAP压缩在带宽有限的链路提供对数据的压 缩功能Predictor , Stacker ,MPPC回叫由被叫方重新呼叫原呼叫发起方Cisco Callback , MSCallback多链路需要的时候进行多链路捆绑、负载MP均衡1.5LCP协商的其他选项除了身份认证方法之外,PPP的LCP还提供了链路

14、压缩、回叫、多链路捆绑 等选项。1 链路压缩PPP协议运行在速率十分有限的点到点串行链路上。为了提高数据发送效率 ,可以采用对数据进行压缩后再传送的方法,我们将其称为链路压缩。LCP支持以下一些链路压缩方法:Stac、Predictor、MPPC以及TCP头部压 缩。不同的方法对CPU及内存的需求并不相同。有些需要更多的内存(内存密集 型),有些则需要占用更多的CPU时间(CPU密集型)。压缩原理和效果也不相 同。Stac: Stac压缩算法基于Lempel-Ziv理论,它通过查找、替换传送内容中 的重复字符串的方法达到压缩数据的目的。使用Stac压缩算法可以选择由各种 硬件(适配器、模块等)

15、压缩或者由软件进行压缩,还可以选择压缩的比率。Stac 压缩算法需要占用较多的CPU时间。MPPC: MPPC是微软的压缩算法实现,它也是基于Lempel-Ziv理论,也需要 占用较多的CPU时间。Predictor: Predictor预测算法通过检查数据的压缩状态(是否已被压缩 过)来决定是否进行压缩。因为,对数据的二次压缩一般不会有更大的压缩率。 相反,有时经过二次压缩的数据反而比一次压缩后的数据更大。Predictor算法 需要占用更多的内存。TCP头部压缩:TCP头部压缩基于Van Jacobson算法,该算法通过删除TCP 头部一些不必要的字节来实现数据压缩的目的。2 回叫回叫又称

16、为回拨,是指当通信一方拨号到另一方后,由另一方断开拨号连接 并进行反向的拨号。这对于从甲地到乙地的电话费大于从乙地到甲地的电话费的情形。这时,可 以由甲方首先发起到乙方的呼叫连接,当乙方收到甲方的呼叫请求后,断开乙方 的呼叫。然后,从乙方发起到甲方的回叫。甲方应答后,双方的通信链路就建立 起来了。回叫还有更安全的优点。因为乙方在回叫之前可以验证对方是否是合法用户 ,或者可以用口令数据库的方法或者可以用检验对方电话号码的方法。3 多链路捆绑LCP的多链路捆绑(MP)选项通过将通信两端之间的多条通信链路捆绑成一 条虚拟的链路而达到扩充链路可用带宽的目的。LCP的多链路捆绑可以在多种类型的物理接口上

17、实现,包括异步串行接口、 同步串行接口、ISDN基本速率接口 BRI、ISDN主速率接口 PRI。LCP的多链路捆 绑也支持不同的上层协议封装类型,如X.25、ISDN、帧中继等。限于篇幅,关于以上LCP协商选项的配置这里就不再详细介绍了。2 PPP 配置(Cisco)2.1PPP基本配置1 封装对于同步串行接口,默认的封装格式是HDLC(Cisco私有实现)。可以使用 命令encapsulation ppp将封装格式改为PPP。如图4所示。利曲:1般.1閔.0. 1丿羽1舵.丨需.0.即羽LncEipaula-t-on PPP图4PPP串行封装当通信双方的某一方封装格式为HDLC,而另一方为

18、PPP时,双方关于封装 协议的协商将失败。此时,此链路处于协议性关闭(pro tocol down )状态,通 信无法进行。如图5所示。o u t exj0/0:192. 16B. U. l/24vy:r Kncfijisulatnn HD1.CEticarjsuLat.Qn 卩卩F图5两端路由器串行接口封装格式不一致这时,在路由器RouterA与路由器RouterB的链路没有成功建立之前,路由 器RouterA及RouterB的路由表将为空。当路由器RouterA的串行接口 Serial 0/0又改为封装成PPP协议时,双方 的通信将恢复正常。如图6所示,是在路由器RouterA上产生的de

19、bug ppp events 的输出。可以发现,成功地安装了此链路的路由条目。同时,系统提示该链路协 议被激活,链路可用。Mar I 01:58:4?.33l:SeOO LVT; SetBp14j 0 OaO*Mar I QI ;5847 k SeftO EVT; Packet 14 1 0a6I42EZ7C *Nfar 1 01:58:47.331: SfiO/O EVT: Packte 14 112550Mar 1 01 :歟47 爲通斷 EVT; Packet 14326142 B6ASI 01LVT; PatUl 14 2 0612512A4*Mar I 01 :*:4?一朋土 Sef

20、tO EVT: Pack-et 14 0 Ox6l42CS3ft *Mar I 01 :58:47339: Sdl/0 l-.VT: Packet 14O 隔嗥 EOS *Mii- I 01 :S8:47 J39; SeOiO EVTdd Route |.l4j W 0xCA800(J2 *Mar I 01=49.327; ScftO EVT: Add R.oute 14| 0 OxCOASOOUZ*Mar I 0l!5R:49.327: Sefl/O VT: Cstate 14 4 0x6134DE1K Mar I m疗比別一范”LN卜PE?Q卩OWN Ling petccol on fnt

21、rlace S-eriaHl-O,changed 时酬e io up图6 命令debug ppp events的输出同时,使用show ip route命令可以看到RouterA安装了两条路由条目,一 条是到达网络192.168.0.0/24的一条直连路由,另一条是到达主机 192.168.0.2/32的一条直连主机路由。如图7所示。R.o uiciAiji routeGateway of hst疋 riot192.1 fifi.U.O/24 is variably subncilcd, 1 subncB, 1 tiaiks 192.1 6K.0.0/24 i$ directly ctinnu

22、ettuL Sriii 10/()C19268-,OJ/32 海 directly cornccrcd. Sorin 10-;0图7 命令show ip route的输出当将路由器RouterA的Serial 0/0的封装格式再次改为HDLC时,命令debug ppp events将给出如图8所示的提示信息,提示该链路上的路由条目被删除。 同时,系统通告该接口协议性关闭。1 01:55:l&J07: SeO/(J bVT: Remove Kcutc 14 0 OxCOAKOU02*Mar 01 ;55;I7.IO; rLlNbPROTO-S-LPDOWM; Line protocol on L

23、ntcriacc Scr瀟OQ ch.iinged sliilc lu down图8 命令debug ppp events的输出同时,debug ppp negotiation的输出也表明了这一点,如图9所示。*Mar 1 02: 11:2.671: ScOO FPCP: Ruiwv* link info for cfentry I 92 J6S-0-2*Mar 02:11:29,671! ScO/O FK P: State is Closed*Mai 1 02: l;29.67l: ScO/O CDPCP: SUtc is Closed*Mar 1 02:11:29.67k Se(W PPP

24、: Phase is TERMINATING*Mar j 02:11:671: ScO/Q LC勇 State i|CldMar 1 02: l:29.fS7l: Sc0/0 PPP: Phase 凶 DOWN詁Mar 1 02:询勲诫 Se0/0 FPCP: Remove route to 192J6X.0.2图 9 命令 debug ppp negotiation 的输出2autoselect可以配置一个接口根据接收到的字符自动判断远程拨号用户协议类型并调 用相应的处理过程。如图10所示。图10auto select命令过程例如,如果远程拨号用户使用PPP协议拨入线路,线路将检测到PPP帧的起 始字符0x7E(01111110),并调用PPP处理过程。又如,当线路检测到“回车 ”符后将开始一个Exec会话过程等。autoselect命令允许线路被设置成可以接受多种类型协议的连接,如PPP 、SLIP、ARAP等。以下是Autoselect命令的使用格式。autoselect arap|ppp|slip|during-login其中,命令中的during-login选项将提示用户输入用户名和口令而不需要 按“回车”键(否则,一个会话过程将自动开始而不会给出用户名和口令的提示 )。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!