一文看懂PPP协议——PPP协议简介

article/2025/8/24 15:47:45

今天给大家介绍一下PPP协议的相关内容,文章浅显易懂,特别适合0基础同学。本文主将主要从PPP概述、PPP链路建立过程和PPP认证三个角度对PPP协议进行讲解。

一、PPP概述

PPP,point-to-point协议,即点对点协议,是数据链路层封装协议的一种。刚开始接触计算机网络的同学很多人都有一种误区,认为数据链路层网络等同于以太网,所有的数据链路层封装方式都是以太网格式的以太帧。但是其实数据链路层有很多种网络,其数据链路层封装方式有很多。目前,Internet协议普遍采用的是TCP/IP协议,只要不同的网络运行的网络运行的网络层协议是TCP/IP协议,不管数据链路层是什么协议,都可以接入到互联网大家庭。(实际上,这也是网络分层设计的一大好处之一)
PPP协议工作在串行接口和串行链路上,一般来说,PPP协议所构成的网络只允许双方之间通信,不允许像以太网一样接入交换机后接入其他的主机或设备。
刚才我们说过,PPP协议在数据链路层封装的是PPP帧,PPP帧格式如下:
在这里插入图片描述
上述字段介绍如下:
1、FLAG
在PPP协议中,头部和尾部都有一个Flag字段,Flag字段标识着一个PPP帧的开始和结束。FLAG字段长度8bit,固定为0x7e,因为PPP协议将FLAG设置为PPP帧的开始和结束,因此在一个PPP帧中不允许出现0x7e字段的数据,如果出现这样的数据,则需要进行特殊形式的转义。
2、Address
在PPP协议中,因为进行通信的只有两方,因此一方发送的数据总是另一方,这一点PPP协议不像以太网协议一样,必须使用MAC地址来表明数据帧的发送者和接收者。PPP协议中的Address字段取值固定为0xff。
3、Control
长度8bit,取值固定0x03,无特殊作用。
4、Protocol
长度16bit,其取值类似于以太网帧的类型,表明了上层数据的类型。
5、FCS
长度16bit,用于帧校验。一个设备在收到PPP帧后会进行PPP帧校验,如果发现PPP在传输过程中出错,该帧会被立即丢弃。PPP协议没有纠错和重传机制。

二、PPP链路建立

PPP帧从开始建立到能够正常转发数据包需要一段时间,并且需要经历协商验证过程。PPP链路建立共分5个阶段,过程如下:
在这里插入图片描述
在Link Dead阶段,PPP链路进行初始化,当物理层接口联通后,状态自动进入到Link Establishment阶段。
进入到Link Establishment阶段,通信双方互相发送LCP报文,进行参数协商,如果参数协商失败,则会回退到Link Dead阶段。如果参数协商成功,并且双方需要认证,则进入到authentication阶段,如果不需要认证,则会直接进入到Network Layer Protocol阶段。
在Authentication阶段,通信双方会进行认证。
在Network Layer Protocol阶段,双方会再次进行协商,这次协商主要协商网络层参数,比如发送自己的IP地址、子网掩码等信息,看是否存在IP地址冲突或者不属于一个网段等情况。如果参数协商一致,那么此时就可以进行正常的数据包传送了。
在Link Termination阶段,代表PPP链接终止,除了Link Dead阶段之外,任何协商过程失败都会进入这一阶段,而如果处于Network Layer Protocol阶段,管理员手动关闭了链路,也会进入这一状态。

三、PPP认证

PPP协议认证有PAP和CHAP两种方式。
如果采取PAP认证方式,在Link Establishment阶段中,一方会对另一方发送包含用户名和密码的Authentication Request报文,另一方会在自己的用户名密码列表中查找是否存在该用户名和密码。如果认证通过,则会向对方发送一个Authentication ACK报文,如果认证不通过,则会向对方发送一个Authentication Nak报文。而到了Authentication阶段,验证方和被验证方会交互重复上述过程。
注意,如果采用PAP认证方式,认证的用户名和口令都是采用明文传输,在安全性上存在一定的风险。
与PAP方式相比,CHAP认证方式大体与之相同,但是CHAP认证方式会将用户名和密码以密文的形式包含在报文中,因此在安全性方面有很大的提升。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/118582795


http://chatgpt.dhexx.cn/article/JFEVu3Kk.shtml

相关文章

基于决策表的测试

在所有的测试方法中,基于决策表的测试方法是最严格的,因为决策表具有逻辑严格性。 决策表有四个部分,如下所示:条件桩 条件条目行动桩 行动条目(条目中的一列就是一个规则)所有条件都是二…

管理信息系统——决策表例题

1、某公司的对客户分类标准如下: 顾客每次订货额在 1000元以上(含1000元),信誉好的,订单设“优先”标志; 信誉不好,但是老客户的,订单设“优先”标志; 信誉不好&#x…

软件测试 7(决策表) --决策表测试

软件测试专栏上一篇主目录 下一篇 目录 1 决策表简介2 测试实例3 总结 【前言】 1 决策表简介 是最严格的功能性测试,具有逻辑性,用于表示和分析复杂的逻辑关系。适合描述不同条件集合下采取行动的若干组合的情况。决策表被设计成说明性的(与…

规则引擎 Drools:决策表

规则引擎 Drools:决策表 Drools除了支持drl形式的文件外还支持xls格式的文件(即Excel文件)。这种xls格式的文件通常称为决策表(decision table)。 决策表(decision table)是一个“精确而紧凑的…

决策表(决策树)-- homework

一、定义:决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况。精确而简洁描述复杂逻辑的方式,将多个条件与这些条件满足后要执行动作相对应。但不同于传…

软件测试_决策表(Decision Table)

软件测试_因果图与决策表 决策表(Decision Table) 定义 利用判定表设计测试用例集合的方法叫做判定表驱动分析法(决策表法)。 决策表测试 在所有的黑盒测试方法中,基于决策表的测试是最严格的、最具有逻辑性的测试方法。 决策表…

判定表法(决策表)-实验五例题-三角形决策表

判定表也称为决策表,其实质就是一种逻辑表。利用决策表可以设计出完整的测试用例集合。 下面通过一个“图书阅读指南”来制作一个决策表。图书阅读指南指明了图书阅读过程中可能出现的状况,以及针对各种情况给读者的建议。在图书阅读过程中可能会出现3 种…

测试设计之决策表

案例一、四边形4条边:a,b,c,d,其中a、c为对边,b、d为对边,根据条件判断四边形类型 条件:C1:a//c;C2:b//d;C3:ac&#xff1…

【软件工程】决策表和决策树

1.1决策表 1.1.1决策表的定义 决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况。精确而简洁描述复杂逻辑的方式,将多个条件与这些条件满足后要执行动作相对应。…

规则引擎 Drools--决策表(Decision Table)使用简介

参考:规则引擎 Drools:决策表_jueyinga的博客-CSDN博客_drools 决策表 一、规则引擎 Drools:决策表 Drools除了支持drl形式的文件外还支持xls格式的文件(即Excel文件)。这种xls格式的文件通常称为决策表(d…

如何用决策表设计测试用例?

实际测试中,如果输入条件较多,再加上各种输人与输出之间相互的作用关系,画出的因果图会比较复杂,容易使人混乱。为了避免这种情况,人们往往使用决策表法代替因果图法。 决策表也称为判定表,其实质就是一严…

浅谈决策树与决策表

前言 在程序设计过程中,经常会出现多层逻辑控制的嵌套,而这样的嵌套关系往往会导致我们不能直观的看出程序的逻辑关系,这会导致在测试过程中比较容易出现遗漏。因此我们需要引入决策表、决策树,其中决策表就是设计逻辑控制时十分…

决策表法

决策表法介绍: >>在因果图法设计测试用例的步骤中“因果图转换成判定表”中已使用了判定表。判定表又称决策表,为决策表发的核心,是分析和表达 多逻辑条件下执行不同操作情况的有效工具。因此,决策表法是一种能够将复杂逻辑…

6.决策表

决策表的使用方式与使用drl规则文件基本一致&#xff0c;好处是可以把一些相关的规则以表格方式展示&#xff0c;便于阅读及维护 1.maven依赖 <!-- 决策表 --> <dependency><groupId>org.drools</groupId><artifactId>drools-decisiontables&l…

请根据以下需求使用决策表设计测试用例

任务3&#xff1a;请根据以下需求使用决策表设计测试用例 信用卡额度发放&#xff1a; 年收入小于2万&#xff0c;不发放信用卡&#xff1b; 2万<年收入<5万&#xff0c;无稳定工作&#xff0c;额度1万&#xff0c;有稳定工作额度3万&#xff1b; 5万<年收入<1…

决策表法用例设计

决策表法 在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。 也即在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。 处理这类问题的一个非常有力的分析和表达工具是决策表,它可以很清楚地表达各种条件之间的复杂关系。 早在程序设计发…

决策表与决策树

决策表的定义&#xff1a; 决策表又称判断表&#xff0c;是一种呈表格状的图形工具&#xff0c;适用于描述处理判断条件较多&#xff0c;各条件又相互组合、有多种决策方案的情况。精确而简洁描述复杂逻辑的方式&#xff0c;将多个条件与这些条件满足后要执行动作相对应。但不…

决策表

决策表&#xff0c;也叫判定表。在所有的功能性测试方法中&#xff0c;基于决策表的测试方法被认为是最严格的&#xff0c;因为决策表具有逻辑严格性。 决策表是分析和表达多逻辑条件下执行不同操作的情况的工具。在程序设计发展的初期&#xff0c;决策表就已被用作编写程序的…

决策表法的应用

决策表的组成 决策表通常由以下4部分组成&#xff1a; 条件桩—列出问题的所有条件 条件项—针对条件桩给出的条件列出所有可能的取值 动作桩—列出问题规定的可能采取的操作 动作项—指出在条件项的各组取值情况下应采取的动作 条件桩条件项 …