点到点协议( Point to Point Protocol,简写为PPP)是在点到点链路上传输数据报的另一种方法。PPP在很多方面都优于SLIP,其中最重要的一点是它的可扩展性。PPP由以下3个组件组成:
- 封装方法(HDLC)。
- 链路控制协议(Link Control Protocol,LCP)。
- 网络控制协议(Network Control Protocol,NCP)。
PPP是一种面向位的协议,可在同步或异步链路上运行。PPP使用高级数据链路控制( High-level Data Link Control,HDLC)的变体作为封装的基础。这种封装在同一条链路上同时为多个网络层协议提供多路复用技术(multiplexing)。链路控制协议(Link Control Protocol,LCP)赋予PPP以多功能性,考虑到包格式、包大小和认证的协商。它还使PPP具有确定何时线路为失败、何时正常运行的功能。网络控制协议(Network Control Protocol,NCP)实际上是一套协议。每个子协议都是为处理各自网络层协议所需的错综复杂的配置而设计的。
二、HDLC
HDLC规程主要由HDLC帧结构、规程要素、规程类别三个部分组成。 为了能够实现HDLC的基本功能并能按照各项标准的规定灵活采用不同的CRC校验算法,我们必须了解HDLC基本的帧结构形式。HDLC是面向比特的链路控制规程,其链路监控功能通过一定的比特组合所表示的命令和响应来实现,这些监控比特和信息比特一起以帧的形式传送。以下是ISO/IEC 3309标准规定的HDLC的基本帧结构。起始标志 地址数据 控制数据 信息数据 帧校验序列 结束标志01111110 8bits 8bits 8bits 16或32bits 01111110其它的HDLC标准也有类似的HDLC帧结构。每帧的起始和结束以“7E”(01111110)做标志,两个“7E”之间为数据段(含地址数据、控制数据、信息数据)和帧校验序列。帧校验采用CRC算法,对除了插入的“零”以外的所有数据进行校验。为了避免将数据中的“7E”误为标志,在发送端和接收端要相应地对数据流和帧校验序列进行“插零”及“删零”操作。
各种HDLC协议间的区别之一是帧校验序列的CRC算法不同,这种不同表现在几个方面:
- HDLC帧校验序列的位数不同,如16位和32位等;
- CRC生成多项式不同,如对于16位的CRC,CCITT V .41标准的多项式是x16+x12+x5+1,ANSI CRC-16标准的多项式是x16 +x15+x2+1等;
- CRC序列的起始化条件不同,如可以初始化为全“0”、全“1”等;
- CRC计算结果的处理方式不同,如可以直接把CRC结果发送,或对CRC结果取反后再发送等;
- 对接收到的数据做CRC校验时,合格判据不同,因为有了上述的不同处理自然会得到不同的结果,由此造成合格判据不同。
Configuration
可以在同步接口,异步接口,ISDN BRI和PRI上用encapsulation ppp封装PPP
- RouterA (config) # interface serial 0
- RouterA (config) # encapsulation ppp
三、认证
1. PPP认证
PPP认证是客户端连接好并成功与一调制方法进行协商后、在LCP协议组中被协商的第1个协议。如果认证失败,Cisco 接入服务器就会立即中断连接。现有两种常用的认证协议:
- 口令认证协议( Password Authentication Protocol,简写为PAP)
- 质询握手认证协议( Challenge Handshake Authentication,简写为CHAP)。注意虽然认证不是使用PPP时所必需的,但它的确是构成
任何安全策略都需要的部分。
(1) 口令认证协议
口令认证协议(Password Authentication Protocol,PAP)是最简单的认证协议。一旦客户端连接到Cisco 接入服务器, PPP就可以进行认证。在这段时间内,用户名/口令反复地被发送到Cisco 接入服务器,直到认证被接受或拒绝。认证拒绝通常是以连接中断的形式出现的。当用户名/口令用PAP发送时,没有任何加密措施来隐藏用户名或口令
由于发送的数据只是用户名和口令,不安全。
(2) 质询握手认证协议
要提高安全性,用户可以使用一种更为安全的认证方法:质询握手认证协议( Challenge HandshakeAuthentication,简写为CHAP)。在CHAP认证过程中,Cisco 接入服务器向连接主机发送一条质询,质询是以随机数的形式出现的。这个数字称为加密密钥( encryption key),由Cisco 接入服务器产生,且必须是唯一的、不可预测的。然后主机用单向散列函数—通常用MD5 给用户名和口令加密。主机发送的这一新加密的消息称为响应。
三、PPP压缩技术
对于速度慢的链路而言,压缩是一种非常有用的工具。它可以加速传输速率,使得在外表上看来似乎是有了更多的带宽。因为压缩在LCP内是协商的选项,所以客户端和Cisco 接入服务器都必须支持它,否则就被禁用。
在Cisco 接入服务器上,可以配置下面的4种压缩:
- 预测压缩
- 堆栈压缩
- Microsoft 点到点压缩
- TCP头压缩
四、多链路PPP
多链路PPP(Multilink PPP)允许路由器在多个接口上将包分割或重新合并。多链路PPP是一种在呼叫连接过程中进行协商的LCP选项。在LCP协商过程中,客户端指示它可以将多个物理链路合并为一个“束”,之后这个束的运作就象是一个单独的WAN链路在运作.
多链路PPP提出了下面这些与多个WA N链路上负载的平衡相关的问题: