【计算机网络 | 第九篇】PPP:点对点协议

📅 发布时间:2026/7/2 22:44:41 👁️ 浏览次数:
【计算机网络 | 第九篇】PPP:点对点协议
文章目录3.2.1 PPP 协议概述3.2.2 PPP 协议的需求与功能1. PPP 协议应满足的需求2. PPP 协议不需要的功能3.2.3 PPP 协议的组成3.2.4 PPP 协议的帧格式1. 各字段含义2. 透明传输问题A. 字符填充法 (用于异步传输)B. 零比特填充法 (用于同步传输)3.2.5 PPP 协议的工作状态工作流程3.2.1 PPP 协议概述对于点对点的链路目前使用最广泛的数据链路层协议是点对点协议 PPP , Point-to-Point Protocol在实际应用场景中用户通常通过接入网连接到互联网服务提供商 (ISP)。当用户计算机与 ISP 进行通信时数据链路层所使用的协议即为 PPP 协议。3.2.2 PPP 协议的需求与功能1. PPP 协议应满足的需求IETF 在设计 PPP 协议时确立了以下主要需求简单这是首要要求。PPP 的设计旨在简化链路层的处理逻辑。封装成帧必须规定特殊的字符作为帧定界符以便接收端准确识别帧的起始与结束。透明性必须保证数据传输的透明性即无论数据载荷中包含何种比特组合都能被正确传输。支持多种网络层协议能够在同一条物理链路上同时支持多种网络层协议如 IP、IPX 等的运行。支持多种类型链路能够在多种类型的链路上运行如串行/并行、同步/异步、低速/高速、电/光链路。差错检测能够对接收端收到的帧进行检测并立即丢弃有差错的帧。检测连接状态能够及时自动检测出链路是否处于正常工作状态。最大传送单元 (MTU)必须对每一种类型的点对点链路设置最大传送单元 MTU 的标准默认值促进互操作性。网络层地址协商必须提供一种机制使通信的两个网络层实体能够通过协商知道或配置彼此的网络层地址。数据压缩协商必须提供一种方法来协商使用数据压缩算法。2. PPP 协议不需要的功能为了保持协议的简单性PPP不提供以下功能这些功能通常由上层的运输层协议如 TCP 负责纠错只负责检错不负责纠错。流量控制不进行流量控制。序号不对帧进行编号。多点线路不支持多点线路仅支持点对点。半双工或单工链路主要针对全双工链路设计。3.2.3 PPP 协议的组成PPP 协议并非单一协议而是由三个核心部分组成的协议族封装方法一种将 IP 数据报或其他网络层数据封装到串行链路的方法。链路控制协议 LCP用于建立、配置和测试数据链路连接。网络控制协议 NCP这是一套协议其中每一个协议支持不同的网络层协议如 IP、OSI 网络层、DECnet 等用于配置和建立网络层连接。3.2.4 PPP 协议的帧格式PPP 帧采用面向字节的格式所有帧的长度都是整数字节。1. 各字段含义首部标志字段 F值为0x7E(二进制01111110)表示帧的开始和结束。地址字段 A规定为0xFF。在 PPP 中该字段实际不起作用因为是点对点。控制字段 C规定为0x03。协议字段长度为 2 字节。该字段说明了信息字段中封装的是什么协议的数据。0x0021IP 数据报。0x8021网络控制数据。0xC021PPP 链路控制数据。0xC023鉴别数据。信息字段长度可变但不得超过 1500 字节默认 MTU。尾部FCS2 字节的帧检验序列通常使用 CRC。标志字段 F0x7E表示帧结束。PPP 是面向字节的所有的 PPP 帧的长度都是整数字节。2. 透明传输问题为了防止信息字段中出现与标志字段0x7E相同的比特组合而被误判为帧边界PPP 提供了两种透明传输机制分别适用于异步链路和同步链路。A. 字符填充法 (用于异步传输)当 PPP 使用在异步传输链路如传统的拨号调制解调器时采用特殊的字符填充法转义字符定义将0x7D定义为转义字符。填充规则若信息字段中出现0x7E则转换为 2 字节序列(0x7D, 0x5E)。若信息字段中出现0x7D则转换为 2 字节序列(0x7D, 0x5D)。若信息字段中出现 ASCII 控制字符数值小于0x20则在该字符前加入0x7D并将该字符的编码加以改变通常是第 5 位取反。B. 零比特填充法 (用于同步传输)当 PPP 使用在同步传输链路如 SONET/SDH一连串比特连续传送时采用硬件实现的零比特填充法发送端扫描整个信息字段只要发现有5 个连续的 1则立即在后面填入一个0。接收端扫描接收到的比特流每当发现5 个连续的 1时就把这 5 个连续 1 后的一个0删除。通过这种方式可以保证信息字段中不会出现 6 个连续的 1即01111110从而避免与标志字段 F 冲突。3.2.5 PPP 协议的工作状态PPP 链路的建立、维持和终止是一个包含物理层、链路层和网络层交互的过程。工作流程链路静止物理层连接尚未建立。建立物理连接当用户拨号接入 ISP 时路由器通过调制解调器确认并建立物理连接。LCP 协商PC 机向路由器发送一系列 LCP 分组封装成多个 PPP 帧协商 PPP 参数如 MTU、鉴别协议等。鉴别如果配置了鉴别如 PAP 或 CHAP则进行身份验证。若失败则链路终止。NCP 配置NCP 给新接入的 PC 机分配一个临时的 IP 地址使 PC 机成为互联网上的一个主机。链路打开此时链路建立完成开始进行网络层数据通信。链路终止通信完毕时NCP 释放网络层连接收回 IP 地址接着 LCP 释放数据链路层连接最后释放物理层连接。由此可见PPP 协议已超越了纯粹的数据链路层协议范畴它包含了物理层物理连接建立和网络层IP 地址分配的相关内容。PPP协议的状态图