PPP协议.ppt
《PPP协议.ppt》由会员分享,可在线阅读,更多相关《PPP协议.ppt(39页珍藏版)》请在冰豆网上搜索。
![PPP协议.ppt](https://file1.bdocx.com/fileroot1/2022-10/7/9145cb0d-ef56-4f25-9a36-8dd55d2f8895/9145cb0d-ef56-4f25-9a36-8dd55d2f88951.gif)
PPP-点到点协议,复习,点到点传输与广播传输,采用点对点传输网络拓扑构型主要有4种:
星形、树型、环型和网状型。
其中网状拓扑构型又称之为无规则型,在网状拓扑结构中,节点之间的连接是任意的,没有规律。
网状拓扑的主要优点是系统可靠性高,但是结构复杂。
目前实际存在和使用的广域网基本上都是采用网状拓扑构型。
PPP协议,点到点协议(PointtoPointPRotocol,PPP)是IETF(InternetEngineeringTaskForce,因特网工程任务组)推出的点到点类型线路的数据链路层协议,已成为正式的因特网标准。
PPP支持在各种物理类型的点到点串行线路上传输上层协议报文。
串行与并行:
一、串行通信中数据按位传输,即一次传输一位;二、并行传输中数据按字节传输,即一次传输8位三、并行速度快,但造价高,内部的多根线缆同步较困难,相互之间易产生干扰,在远距离通信中多用串行通信,计算机内部大多使用并行通信。
四、使用串行通信的接口是串行接口,使用并行通信的接口是并行接口。
同步和异步串行通信串行通信由分为同步传输和异步传输一、同步传输:
同步传输是以数据块为传输单位,每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标记一个数据块的开始与结束。
所谓同步传输是指数据块与数据块之间的时间间隔是固定的,必须严格规定它们的时间关系。
同步传输中,发送方发出数据后等接收方发回响应以后才发下一个数据包。
路由器的串口属于快速的同步接口,所以需要在DCE端配置时钟进行信号同步。
二、异步传输异步传输是以字符为传输单位,每个字符都要加1位起始位和一位停止位,以标记一个字符的开始与结束,并以此实现数据传输同步。
所谓异步是指字符与字符之间的时间间隔是可变的,不需严格限制它们的时间关系。
异步传输中,发送方发出数据后,不等接收方发出响应接着就发下个数据包。
适合拨号这种慢速的连接方式。
异步传输简单、可靠,计算机与MODEM之间的通信就采用异步传输。
其缺点是开销大,每传输一个字符就要额外附加23位,效率低。
HDLC(高级数据链路控制协议),HDLC是思科路由器串口的默认封装协议。
特权模式下用showinterfacesserial命令可查看。
1979年,ISO将HDLC作为同步线路上数据链路层的标准协议。
标准HDLC帧格式如图:
根据控制字段,HDLC帧又分为3种类型:
信息帧:
监控帧:
无编号帧:
b0b1b2b3b4b5b6b7,HDLC控制字段结构,其中:
信息帧承载实际的数据。
监控帧用于差错和流量控制。
无编号帧用来管理连接。
标准HDLC的不足与改进:
标准的HDLC封装只支持高层的IP协议,不支持其他高层协议。
思科对标准帧协议进行了改进,增加了协议域字段,来支持多种网络层协议。
思科改进的HDLC可用于在思科的设备之间进行点到点连接。
当连接非思科的设备时,PPP是比较可行的,因为所有厂家实现的PPP都是相同的。
PPP协议和大多数硬件兼容,且PPP协议能够承载多种三层协议的数据。
PPP协议,一、SLIP(串行线路互连协议)SLIP也叫IETFRFC1055,用来在点到点链路中承载TCP/IP数据。
最初用在低速专用线路上,经常部署在拨号网络中。
但它没有数据包类型识别和差错控制功能,也不提供对数据的压缩功能,在大多数领域已经被PPP代替了。
二、PPP1、标准PPP是IETFRFC1660与RFC1661定义的点到点线路的数据链路层协议。
2、PPP能够承载多种不同的三层协议数据。
3、PPP可被配置在同步串口、异步串口、高速串口(HSSI)和ISDN接口上。
只要是点到点链路都可运行PPP,PPP用来解决网络连接的三个组件:
1、在点到点链路上使用HDLC封装数据。
PPP帧格式是以HDLC帧格式为基础,做了很少的改动。
2、使用LCP(链路控制协议)来建立、设定和测试数据链路连接。
3、使用NCPs(网络控制协议系列)给不同的网络层协议建立连接以及配置它们。
PPP帧结构:
协议字段标识PPP帧的用途。
如果PPP帧是数据帧,它标识数据报所属网络层协议。
如0021H表示TCP/IP,0023H表示OSI。
否则它标识为控制协议,如果协议字段在Cxxx-Exxx范围内。
如C021H表示连接控制协议,C023H表示口令验证协议。
如果协议字段在8xxx-Bxxx范围内,则表示是与网络控制协议有关的数据报。
如8021H表示因特网协议控制协议。
PPP的分层体系结构和OSI模型的对比:
PPP,网络层,数据链路层,物理层,IP,IPX,其它三层协议,LCP相当于以太网的MAC子层,NCP相当于LLC子层。
LCP子层功能:
PPP使用LCP(链路控制协议)来建立、测试数据链路连接。
此外还提供协商封装格式的可选选项,具体包括以下内容:
验证-验证过程要求主叫方输入身份信息,让被叫方验证是否建立这个呼叫。
压缩-减少帧中的数据量从而提高效率。
差错检测-用Quality选项来检测链路质量,进行差错检测。
多连接-多链路捆绑,在一条链路负载达到一定数值的情况下,启用第二条链路。
多条链路间可实现负载均衡。
PPP回拨-允许路由器作为回叫服务器。
客户端发起初始的呼叫并请求回叫。
初始呼叫被终止,回叫服务器根据配置回叫客户端。
这种机制增强了安全性。
NCP子层功能:
当LCP将链路建立好后,PPP使用NCP根据不同的需求,配置上层协议所需的环境,为上层提供服务接口。
针对上层不同的协议类型会使用不同的NCP组件。
比如对IP提供IPCP接口。
PPP会话建立过程:
从开始发起呼叫到最终通信完成后释放链路,PPP工作经历4个阶段:
一、链路的建立与配置协商。
这主要是LCP的功能,在连接建立阶段,通信的发起方发送LCP帧来配置和测试数据链路。
这些LCP帧中包含配置选项字段,允许他们利用这些选项协商压缩和验证协议。
如果LCP帧里不包含配置选项,则使用配置选项的默认值。
二、验证及确认阶段这属于LCP的可选功能。
LCP在初始建立连接时根据协商可进行验证,而且必须在网络层协议配置前完成。
PPP连接有两种可用的验证类型:
PAP和CHAP。
在进入网络层协议阶段之前根据LCP协商结果,也可以执行链路质量测试等选项。
检测主要是测试链路的质量能否满足要求。
如果链路质量不能满足要求,则建立链路失败。
三、网络层协议配置阶段本阶段主要是NCP的功能。
LCP初步建立好链路后,通信双方开始交换一系列NCP分组为上层不同协议数据包配置不同的环境。
比如上层传下IP协议数据包,则由NCP的IPCP负责完成这部分配置。
当NCP配置完后,双方的通信链路才完全建立好,双方可以在链路上交换上层数据。
期间,任何阶段的协商失败都将导致链路的失败。
四、链路终止当数据传输完成后或一些外部事件发生(如空闲时间超长或用户打断)时,一方会发出断开连接的请求。
这时,首先NCP来释放网络层的连接,然后LCP来关闭数据链路层的连接;最后,双方的通信设备或模块关闭物理链路回到空闲状态。
1、PAP(口令验证协议)PAP是一种两次握手验证协议,仅在初始连接建立时候完成。
PAP验证帧的协议字段的值设置为C023。
验证过程如下:
(1)被验证方主动重复发起验证请求,将本端的用户名和口令发送到验证方,直到验证被确认或连接终止。
(2)验证方接到被验证方的验证请求后,检查此用户名是否存在及密码是否正确。
如果用户名存在且口令正确,验证方返回接受报文,表示验证通过;否则用户方返回拒绝报文,表示验证不通过。
PPP的两种验证协议,PAP缺点:
不是一个强壮的验证法。
(1)PAP过程中密码在链路上直接传输,极易被捕获造成泄密。
(2)无法防止重复攻击和试错法攻击。
被验证者控制验证的频率和次数,验证通过后,不再需要验证,使打开的连接不能抵御恶意攻击。
2、CHAP(质询握手验证协议)
(1)CHAP由IETFRFC1994定义并克服了很多PAP的缺点。
(2)CHAP使用三次握手的方式,并且只在线路上传送用户名而不在线路上直接传送口令。
(3)CHAP验证帧的协议字段值都被设置为C223。
CHAP验证过程:
(1)在PPP链路建立阶段完成时,验证方主动发起验证挑战(Challenge),向被验证方发送本路由器的主机名和一些随机产生的报文。
格式如下:
被验证方主机名:
R1;验证方主机名:
R2,
(2)被验证方接到验证方的验证请求(01号报文)后,根据报文中的主机名在本路由器的数据库中查找用户名和口令。
找到相同的用户名,便利用对应的口令和01号报文中的ID、random,以某种散列算法(常用MD5算法)生成一个Hash值,组成如下02号报文发给验证方。
(3)验证方收到应答后,利用ID找到保存在本地的01号报文中的随机数,并根据02号报文中的被验证路由器的名字在本地数据库中查找用户名对应的密码,然后用ID、随机数和密码生成一个Hash值,与02号报文中的比较,相同则返回03号接收报文;不同则返回04号拒绝报文。
03、04号报文格式如下:
CHAP帧格式,PPP基本配置,拓扑如图:
PPP.pkt1、PPP封装配置
(1)配IP、时钟,启动接口,测试连通性。
(2)分别showR1、R2相连的串口。
同步串口默认封装格式是HDLC。
(showints2/0)(3)用encapsulationppp将R1的连接串口封装格式改为PPP。
观察两对端串口信息,处于协议关闭状态,Ping对端接口,不通。
原因:
双方关于封装协议协商失败。
(4)用encapsulationppp将R2的连接串口封装格式也改为PPP。
观察两对端串口信息,处于协议开启状态,显示“LCPOpen”和“Open:
IPCP,CDPCP”信息,表示链路协商成功,NCP也建立成功。
Ping对端接口,连通。
2、配置压缩压缩会影响路由器的性能,如要传输的文件已是压缩文件,则不要使用压缩选项。
(1)进入R1的S2/0端口配置模式下,用“compress?
”命令显示可用压缩的类型并选其一。
(2)执行“compress”加压缩类型命令。
如:
compresspredictor。
(3)同样配R2的S2/0口。
3.配置链路质量控制在链路质量控制阶段,LCP测试链路并决定链路的质量能否满足三层协议的需求,如不能,链路被关闭。
操作如下:
进入R1的S2/0的配置模式下,使用“pppqualityn%”。
此命令的功能是计算数据包发送和接收的成功率。
如达不到要求则断开链路。
4、配置链路负载均衡Multilinkppp(多链路PPP)允许包被分段,多段在到对方的多条点到点链路上同时被发送。
配置命令如下:
PPPmultilink(在端口配置模式下执行),ppp验证配置,一、PAP验证1、设置路由器使用PPP封装,操作同前。
2、配PAP验证,R1:
R1(config)#usernameR2passwordcisco2配置本地验证使用的用户名和密码R1(config)#ints0/0/0R1(config-if)#pppauthenticationpap选择ppp验证方式出现提示:
%LINEPROTO-5-UPDOWN:
LineprotocolonInterfaceSerial0/0/0,changedstatetodownR1(config-if)#ppppapsent-usernameR1passwordcisco1配置发送到对端的对应用户名和密码,要和对端的”usernameR1passwordcisco1”,R2:
R2(config)#usernameR1passwordcisco1R2(config)#ints0/0/0R2(config-if)#pppauthenticationpapR2(config-if)#ppppapsent-usernameR2passwordcisco2R2(config-if)#两端都出现提示:
%LINEPROTO-5-UPDOWN:
Lineprotoco