什么是点对点协议 (PPP)?
PPP 是一种通常用于提供与 SLIP 相似功能的协议。它是能够传输不同类型数据包(包括 IP 数据包)的最佳可靠协议。它也可以用于拨号和租用的路由器-路由器线路。它通常支持帧技术来表示帧。
它可以通过串行连接传输数据报,以将 IP 流量封装为点对点连接的封装协议。
它可以提供 IP 地址的分配和管理、异步和面向位的同步封装、网络协议多路复用、链路配置等功能。它可以支持可扩展链路控制协议 (LCP) 以及网络控制协议 (NCP)。
PPP 组件
点对点协议包含以下组件,用于通过串行点对点连接发送数据报:
封装数据报
PPP 使用高级数据链路控制 (HDLC) 协议来封装点对点连接上的数据报。HDLC 协议表示单个 PPP 帧周围的边界,并支持 16 位校验和。
PPP 帧在主 HDLC 帧中插入一个协议字段,以识别帧传输的数据包类型,从而管理来自 IP 以外的其他协议(包括 Novell 的 IPX 或 Appletalk)的数据包。
实现 LCP
可扩展链路控制协议 LCP 可以启动、建立和验证数据链路连接。它在 HDLC 之上执行,以协商有关数据链路的首选项。
实现 NCP
网络控制协议 (NCP) 的分类可以启动和建立多个网络层协议(如 IP 和 Appletalk),并通过数据链路进行路由。它们可以使用等效的 NCP 进行强大的设置。
在通过链路传输 IP 数据报之前,运行 PPP 的两个主机必须协商各自使用的 IP 地址。用于此类协商的控制协议称为互联网协议控制协议 (IPCP)。
PPP 帧
PPP 帧格式如下图所示,包括以下内容:
**标志:**它包含一个表示帧开始或结束的字节。
**地址:**地址包含一个包含二进制序列的字节。PPP 不允许单个站点的地址。
**控制:**它创建一个包含二进制序列的字节,该序列用于用户信息通信。它是一个无连接链路功能,相当于逻辑链路控制 (LLC)。
**协议:**它包含两个字节,用于识别帧信息字段中封装的协议。
**数据:**数据可以是零个或多个字节,包括协议字段中定义的协议的数据报。信息字段的默认最大长度为 1500 字节。
**帧校验序列 (FCS):**它接受 2 个字节。在这种情况下,它也可以使用 4 字节 FCS 进行增强的错误检测,但需要事先达成协议。