PPP协议

  • 格式:docx
  • 大小:31.96 KB
  • 文档页数:6

PPP

百科名片

点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet 和 Novell 的

Internet 网包交换(IPX)。

点对点协议

简介

PPP:点对点协议

(PPP:Point to Point Protocol)

点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet 和 Novell 的

Internet 网包交换(IPX)。

PPP 主要由以下几部分组成

封装:一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。PPP 封装精心设计,能保持对大多数常用硬件的兼容性,克服了SLIP不足之处的一种多用途、点到点协议,它提供的WAN数据链接封装服务类似于LAN所提供的封闭服务。所以,PPP不仅仅提供帧定界,而且提供协议标识和位级完整性检查服务。

链路控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。

网络控制协议:协商该链路上所传输的数据包格式与类型,建立、配置不同的网络层协议;

配置:使用链路控制协议的简单和自制机制。该机制也应用于其它控制协议,例如:网络控制协议(NCP)。

为了建立点对点链路通信,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路建立,LCP 所需的可选功能被选定之后,PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在链路上发送了。

链路将保持通信设定不变,直到有 LCP 和 NCP 数据包关闭链路,或者是发生一些外部事件的时候(如,休止状态的定时器期满或者网络管理员干涉)。

应 用:假设同样是在Windows 98,并且已经创建好“拨号连接”。那么可以通过下面的方法来设置PPP协议:首先,打开“拨号连接”属性,同样选择“服务器类型”选项卡;然后,选择默认的“PPP:Internet,Windows NT Server,Windows 98”,在高级选项中可以设置该协议其它功能选项;最后,单击“确定”按钮即可。

PPP工作流程

当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接(底层up)。

话流程

[1]

PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。

这些分组及其响应选择一些 PPP 参数,和进行网络层配置(此前如有PAP或CHAP验证先要通过验证),NCP 给新接入的 PC机分配一个临时的 IP

地址,使 PC 机成为因特网上的一个主机。

通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。

PPP和HDLC之间最主要的区别

PPP是面向字节的,HDLC是面向位的。

③PPP在GPS应用领域代表着“精密单点定位(Precise Point

Positioning)”,精密单点定位是利用国际GPS服务机构IGS提供的或自己计算的GPS精密星历和精密钟差文件,以无电离层影响的载波相位和伪距组合观测值为观测资料,对测站的位置、接收机钟差、对流层天顶延迟以及组合后的相位模糊度等参数进行估计。用户通过一台含双频双码GPS接收机就可以实现在数千平方公里乃至全球范围内的高精度定位。它的特点在于各站的解算相互独立,计算量远远小于一般的相对定位。

PPP的特点 PPP协议是一种点——点串行通信协议。PPP具有处理错误检测、支持多个协议、允许在连接时刻协商IP地址、允许身份认证等功能,还有其他。PPP提供了3类功能:成帧;链路控制协议LCP;网络控制协议NCP。PPP是面向字符类型的协议。

PPP协议的帧格式

标志字段 地址字段 控制字段 协议 信息部 分 FCS 标志字段

PPP应用范围

PPP是一种多协议成帧机制,它适合于调制解调器、HDLC位序列线路、SONET和其它的物理层上使用。它支持错误检测、选项协商、头部压缩以及使用HDLC类型帧格式(可选)的可靠传输。

PPP提供了三类功能:

1 成帧:他可以毫无歧义的分割出一帧的起始和结束。

2 链路控制:有一个称为LCP的链路控制协议,支持同步和异步线路,也支持面向字节的和面向位的编码方式,可用于启动路线、测试线路、协商参数、以及关闭线路。

3 网络控制:具有协商网络层选项的方法,并且协商方法与使用的网络层协议独立。

PPP的两种认证方式

一种是PAP,一种是CHAP。相对来说PAP的认证方式安全性没有CHAP高。PAP在传输password是明文的,而CHAP在传输过程中不传输密码,取代密码的是hash(哈希值)。PAP认证是通过两次握手实现的,而CHAP则是通过3次握手实现的。PAP认证是被叫提出连接请求,主叫响应。而CHAP则是主叫发出请求,被叫回复一个数据包,这个包里面有主叫发送的随机的哈希值,主叫在数据库中确认无误后发送一个连接成功的数据包连接

PPP 常见问题

1)什么是LCP?

链路控制协议(LCP) LCP 建立点对点链路,是 PPP 中实际工作的部分。LCP 位于物理层的上方,负责建立、配置和测试数据链路连接。LCP 还负责协商和设置 WAN 数据链路上的控制选项,这些选项由 NCP 处理。

2)NCP是什么?

PPP允许多个网络协议共用一个链路,网络控制协议 (NCP) 负责连接PPP(第二层)和网络协议 (第三层)。对于所使用的每个网络层协议,PPP

都分别使用独立的 NCP来连接。例如,IP 使用 IP 控制协议 (IPCP),IPX

使用 Novell IPX 控制协议 (IPXCP)。 PPP配置方法

PPP基本配置

1, 启用ppp

RouterTest#config terminal

Enter configuration commands, one per line. End with CNTL/Z.

RouterTest(config)#interface serial 0/0

RouterTest(config-if)#encapsulation ppp

RouterTest(config-if)#

2, 地址配置命令

RouterTest(config-if)#ip address 10.1.1.1 255.255.255.0

PAP配置实例

Router(config)#hostname RouterA

RouterA(config)#RouterB password itsasecret

RouterA(config)#interface Async 0

RouterA(config-if)#encapsulation ppp

RouterA(config-if)#ip address 10.0.0.1 255.255.255.0

RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234

RouterA(config-if)#username RouterA password itsasecret2

Router(config)#hostname RouterB

RouterB (config)#RouterA password itsasecret

RouterB (config)#interface Async 0

RouterB (config-if)#encapsulation ppp

RouterB (config-if)#ip address 10.0.0.2 255.255.255.0

RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234

RouterB (config-if)#username RouterB password itsasecret2

CHAP配置实例

Router(config)#hostname RouterA

RouterA(config)#RouterB password itsasecret

RouterA(config)#interface Async 0

RouterA(config-if)dialer in-band

RouterA(config-if)#encapsulation ppp

RouterA(config-if)#ppp authentication chap

RouterA(config-if)#ip address 10.0.0.1 255.255.255.0

RouterA(config-if)#dialer-map ip 10.0.0.2 name RouterB 5551234

RouterA(config-if)#username RouterA password itsasecret2

Router(config)#hostname RouterB

RouterB (config)#RouterA password itsasecret

RouterB (config)#interface Async 0 RouterB(config-if)dialer in-band

RouterB (config-if)#encapsulation ppp

RouterB (config-if)#ppp authentication chap

RouterB (config-if)#ip address 10.0.0.2 255.255.255.0

RouterB (config-if)#dialer-map ip 10.0.0.1 name RouterA 5551234

RouterB (config-if)#username RouterB password itsasecret2

同时启用CHAP和PAP

Router(config-if)#ppp authentication chap pap