PPP协议

PPP协议是点到点通信的数据链路层协议,常用于广域网链接。它包括LCP和NCP等成员协议,负责链路控制和网络层协议协商。PPP帧结构包括Flag、Address、Control、Protocol、Information和FCS字段。工作流程涉及Link Dead、Link Establishment、Network Layer Protocol和Link Termination阶段,认证阶段可选PAP或CHAP方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PPP协议的基本概念:

        PPP是Point-to-Point Protocol的简称,中文翻译为点到点协议。与以太网协议一样,PPP也是一个数据链路层协议。以太网协议定义了以太帧的格式,PPP协议也定义了自己的帧格式,这种格式的帧称为PPP帧。以太网协议工作在以太网接口和以太网链路上,而PPP协议是工作在串行接口和串行链路上。

        利用PPP协议建立的二层网络称为PPP网络。一个PPP网络包含且只能包含两个PPP接口,连接这两个接口的链路称为PPP链路,这两个接口通过交互PPP帧来实现二层通信。PPP接口是数据链路层(二层)通信的终结点,所以我们也说PPP接口是三层接口。

        PPP协议还包含了若干个附属协议,这些附属协议也称为成员协议。PPP协议的成员协议主要包括一个被称为LCP(Link Control Protocol)的链路控制协议,以及一系列的被称为NCP(Network Control Protocol)的网络控制协议。PPP协议对于PPP链路的长度是没有规定的。PPP链路经常应用在广域网链接中;PPP技术被称为是一种广域网技术。

PPP帧的格式:

(1)Flag:

        该字段的长度为8bit,取值固定为0x7e。该字段标志了一个PPP帧的开始或结束;它既标志了当前PPP帧的开始,同时也标志了前一个PPP帧的结束。

(2)Address:

        该字段的长度为8bit,取值固定为0xff。需要注意的是,该字段并非是一个MAC地址,但它具有广播地址的含义,意思是“所有的接口”。

        PPP帧是在一条单一的PPP链路上固定地从此接口运动到彼接口,因此PPP帧不像以太帧那样包含了源MAC地址和目的MAC地址这些信息。事实上,PPP接口根本就不需要属于自己的MAC地址,MAC地址对于PPP接口来说毫无意义。

(3)Control:

        该字段的长度为8bit,取值固定为0x03。该字段并没有什么特别的作用,至于其取值为何固定位0x03,并没有过多解释。

(4)Protocol:

        该字段的长度为16bit,它的取值决定了Information字段包含的事什么样的协议报文。该字段的作用类似于以太帧中的类型字段。

(5)Information:

        该字段是PPP帧的载荷数据,其长度是可变的。例如,当Protocol字段的取值为0xc021时,就表明该字段是一个LCP报文;当Protocol字段的取值为0x8021时,就表明该字段是一个IPCP报文。特别地,当Protocol字段的取值为0x0021时,就表明该字段是一个IP报文。

(6)FCS:

        该字段的长度为16bit,其作用是对PPP帧进行差错校验。

PPP的基本工作流程:

        PPP基本工作流程的第一个阶段是Link Dead阶段。在此阶段,PPP接口的物理层功能尚未进入正常状态。只有当本端接口和对端接口的物理层功能都进入正常状态之后,PPP才能进入到下一个工作阶段,即Link Establishment阶段。在Link Establishment阶段,本端接口会与对端接口相互发送携带有LCP报文的PPP帧。简单地说,此阶段也就是双方交互LCP报文的阶段。通过LCP报文的交互,本端接口会与对端接口协商若干基本儿重要的参数,以确保PPP链路可以正常工作。

        如果PPP的Link Establishment阶段顺利地结束了,并且PPP协议的双方约定无需进行认证,或者双方顺利地结束了认证阶段,那么PPP就会自动进入到Network Layer Protocol阶段。在Network Layer Protocol阶段,PPP协议的双方会首先通过NCP(Network Control Protocol)协议来对网络层协议的参数进行协商,协商一致之后,双方才能够在PPP链路上传递携带有相应的网络层协议数据单元的PPP帧。

        有很多种情况都会导致PPP进入到Link Termination阶段,例如认证阶段未能顺利完成,例如链路的信号质量太差,例如网络管理员需要主动关闭链路,如此等等。

PPP之认证阶段:

如图所示

        如果在PPP的Link Establishment阶段,B接口向A接口发送的Configure-Request报文中表明了B将对A进行PAP认证,并且B接口收到了A接口回应的Configure-Ack报文,那么在接下来的Authentication阶段,作为认证方的B就会对作为被认证方的A进行PAP认证。 

        PAP认证时,用户名和密码只能以明文的形式包含在Authenticate-Request报文中。CHAP认证时相关的认证信息可以以密文的形式包含在CHAP报文中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值