计算机网络 第三章: 点对点协议

文章目录

点对点协议PPP概述

点对点协议(Point-to-Point Protocol,PPP)是目前使用最广泛的点对点数据链路层协议。

点对点协议PPP是因特网工程任务组(Internet Engineering Task Force,IETF)于1992年制定的。经过多次修订,目前PPP已成为因特网的正式标准RFC1661,RFC1662

点对点协议PPP主要有两种应用(下图):

从网络体系结构的角度看点对点协议PPP的组成(下图):

PPP的帧格式

PPP的帧格式如下图:

标志(Flag)字段:PPP帧的定界符,取值为0x7E。
地址(Address)字段:取值为0xFF,预留(目前没有什么作用)。
控制(Control)字段:取值为0x03,预留(目前没有什么作用)。
协议(Protocol)字段:其值用来指明帧的数据载荷应向上交付给哪个协议处理。
帧检验序列(Frame Check Sequence,FCS)字段:其值是使用循环冗余校验CRC计算出的检错码。

PPP桢的透明传输

  • 面向字节的异步链路使用字节填充来实现透明传输RFC1662

    发送方的处理

    (1)将数据载荷中出现的每一个 0x7E 减去0x20(相当于异或0x20),然后在其前面插入转义字符0x7D。

    (2)若数据载荷中原来就含有0x7D,则把每一个0x7D减去0x20,然后在其前面插入转义字符0x7D。

    (3)将数据载荷中出现的每一个ASCII码控制字符(即数值小于0x20的字符),加上0x20(相当于异或0x20,将其转换成非控制字符),然后在其前面插入转义字符0x7D。

    接收方的处理

    进行与发送方相反的变换,就可以正确地恢复出未经过字节填充的原始数据载荷。

  • 面向比特的同步链路使用零比特填充来实现透明传输

    发送方的处理

    对帧的数据载荷进行扫描(一般由硬件完成),每出现5个连续的比特1,则在其后填充一个比特0。

    接收方的处理

    对帧的数据载荷进行扫描,每出现5个连续的比特1时,就把其后的一个比特0删除。

PPP帧的差错检测

帧检验序列FCS字段:其值是使用循环冗余校验CRC计算出的检错码。

CRC采用的生成多项式为 CRC−CCITT=X^16+X^12+X^5+1

接收方每收到一个PPP帧,就进行CRC检验。若CRC检验正确,就收下这个帧;否则,就丢弃这个帧。

使用PPP的数据链路层,向上提供的是不可靠数据传输服务。

PPP的工作状态

以用户主机拨号接入因特网服务提供者ISP的拨号服务器的过程为例

‌PPP协议的工作状态有六种‌,分别是链路静止、链路建立、鉴别、网络层协议、链路打开、链路终止。这些状态共同构成了PPP协议的状态转换图,确保用户与ISP之间能够建立稳定可靠的通信连接。

‌链路静止‌:这是PPP协议的初始状态,表示链路没有被使用,物理层活动载体,链路处于静默状态。

‌链路建立‌:当其中一端要进行通信时,将进入建立连接阶段,建立链路层的LCP连接;此阶段双方进行协商,确保双方对数据链路层的参数达成一致。

‌鉴别‌:在链路建立之后,进行身份鉴别,确保通信双方的身份真实性。

‌网络层协议‌:在鉴别成功后,进入网络层协议状态,此时双方开始交换网络层控制分组,如IP地址等,以便双方能够正确地进行网络层通信。

‌链路打开‌:当网络层配置完毕后,链路就进入可进行数据通信的"链路打开"状态。链路的两个PPP端点可以彼此向对方发送分组。

‌链路终止‌:当通信结束或出现错误时,进入链路终止状态,释放资源,准备下一次通信或进入链路静止状态。

通过这些状态的转换,PPP协议确保了用户与ISP之间能够建立起稳定可靠的通信连接,并能够在需要时进行身份验证和网络配置,从而实现了高效的数据传输和服务‌.

相关推荐
andxe10 小时前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
shiyi.十一11 小时前
第2章:应用层 — 知识要点与架构
网络·计算机网络·架构
吳所畏惧11 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈11 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
水境传感 李兆栋11 小时前
GNSS 位移监测站 :毫米级感知,筑牢安全监测防线
网络
维天说12 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zhang~Ling12 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
爱写代码的阿森12 小时前
鸿蒙三方库 | harmony-utils之PreferencesUtil首选项数据监听详解
服务器·华为·harmonyos·鸿蒙·huawei
爱写代码的森12 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
中微极客13 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能