夜光序言:
如果我早知道会爱上你,命中注定的人就是你,在我年少的时候,我就该掌握我的权利,霸占你,爱着你,从此天荒地老。
正文:
PPP:点对点协议
点对点协议是一个运行于点对点链路之上的链路层协议。
PPP 运行的点对点链路可能是一条串行的拨号电话线,或者 PPPoE,以太网上模拟的 PPP(为了对接入的每一个主机实现访问控制、计费功能)。
IETF 对 PPP 设计所提出的初始要求;
.分组成帧。
.透明性。PPP 协议不能对出现在网络层分组中的数据(首部或者数据)做任何限制。
.多种网络层协议。PPP 协议必须能够支持同时运行在相同物理链路上的多种网络层协议。
.多种类型链路。
.差错检测。PPP 接收方必须能够检测到接收帧中的比特差错。
.连接的活性。PPP 必须能够检测链路层次的故障,并且向网络层通知该故障。
.网络层地址协商。PPP 必须为通信的网络层(例如 IP)提供一个机制,来获知或者配置相互的网络层地址。
.简单性。
PPP 帧包含了以下字段:
·标志字段。每个 PPP 帧都是用值为 01111110 的 1 字节的标志字段作为开始和结束。
·地址字段。这个字段唯一可能的值是 11111111
·控制字段。这个字段唯一可能的值是 00000011。
·协议。该协议字段告诉 PPP 接收方所接收帧所封装数据(即 PPP 帧信息字段的内容) 所属的上层网络协议。
·校验和。检验和字段用于检测所传输帧中的比特差错。
字节填充
PPP 使用 01111110 标志字段作为帧的开始和结束,如果标志字段的值 01111110 出现在信息字段中会发生什么现象呢? PPP 使用一种称为字节填充的技术解决这个所谓透明传输的问题。
PPP 定义了一个特殊的控制转义字节 01111101。如果标志序列 01111110 出现在一个帧中除标志字段以外的任何地方,PPP 就在该字节之前插入一个这样的控制转义字符。
当接收方看到 01111110 之前有一个 01111101,会去除填充的控制转义字节来重建初始数据。