PPP协议组成及简述协议协商的基本过程


Posted in 面试题 onMay 28, 2015
一、PPP(Point-to-Point Protocol点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。
二、PPP协议中提供了一整套方案来解决链路建立、维护、拆除、上层协议协商、认证等问题。
三、PPP协议包含这样几个部分:链路控制协议LCP(Link Control Protocol);网络控制协议NCP(Network Control Protocol);认证协议,最常用的包括口令验证协议PAP(Password Authentication Protocol)和挑战握手验证协议CHAP(Challenge-Handshake Authentication Protocol)。
四、一个典型的链路建立过程分为三个阶段:创建阶段、认证阶段和网络协商阶段。
阶段1:创建PPP链路
LCP负责创建链路。在这个阶段,将对基本的通讯方式进行选择。链路两端设备通过LCP向对方发送配置信息报文(Configure Packets)。一旦一个配置成功信息包(Configure-Ack packet)被发送且被接收,就完成了交换,进入了LCP开启状态。
应当注意,在链路创建阶段,只是对验证协议进行选择,用户验证将在第2阶段实现。
阶段2:用户验证
在这个阶段,客户端会将自己的身份发送给远端的接入服务器。该阶段使用一种安全验证方式避免第三方窃取数据或冒充远程客户接管与客户端的连接。在认证完成之前,禁止从认证阶段前进到网络层协议阶段。如果认证失败,认证者应该跃迁到链路终止阶段。
在这一阶段里,只有链路控制协议、认证协议,和链路质量监视协议的packets是被允许的。在该阶段里接收到的其他的packets必须被静静的丢弃。
最常用的认证协议有口令验证协议(PAP)和挑战握手验证协议(CHAP)。 认证方式介绍在第三部分中介绍。
阶段3:调用网络层协议
认证阶段完成之后,PPP将调用在链路创建阶段(阶段1)选定的各种网络控制协议(NCP)。选定的NCP解决PPP链路之上的高层协议问题,例如,在该阶段IP控制协议(IPCP)可以向拨入用户分配动态地址。
这样,经过三个阶段以后,一条完整的PPP链路就建立起来了。
五、认证方式
1)口令验证协议(PAP)
PAP是一种简单的明文验证方式。NAS(网络接入服务器,Network Access Server)要求用户提供用户名和口令,PAP以明文方式返回用户信息。很明显,这种验证方式的安全性较差,第三方可以很容易的获取被传送的用户名和口令,并利用这些信息与NAS建立连接获取NAS提供的所有资源。所以,一旦用户密码被第三方窃取,PAP无法提供避免受到第三方攻击的保障措施。
2)挑战-握手验证协议(CHAP)
CHAP是一种加密的验证方式,能够避免建立连接时传送用户的真实密码。NAS向远程用户发送一个挑战口令(challenge),其中包括会话ID 和一个任意生成的挑战字串(arbitrary challengestring)。远程客户必须使用MD5单向哈希算法(one-way hashing algorithm)返回用户名和加密的挑战口令,会话ID以及用户口令,其中用户名以非哈希方式发送。
CHAP对PAP进行了改进,不再直接通过链路发送明文口令,而是使用挑战口令以哈希算法对口令进行加密。因为服务器端存有客户的明文口令,所以服务器可以重复客户端进行的操作,并将结果与用户返回的口令进行对照。CHAP为每一次验证任意生成一个挑战字串来防止受到再现攻击(replay attack)。在整个连接过程中,CHAP将不定时的向客户端重复发送挑战口令,从而避免第3方冒充远程客户(remote client impersonation)进行攻击。
六、PPP协议的应用
PPP协议是目前广域网上应用最广泛的协议之一,它的优点在于简单、具备用户验证能力、可以解决IP分配等。
家庭拨号上网就是通过PPP在用户端和运营商的接入服务器之间建立通信链路。目前,宽带接入正在成为取代拨号上网的趋势,在宽带接入技术日新月异的今天,PPP也衍生出新的应用。典型的应用是在ADSL(非对称数据用户环线,Asymmetrical Digital Subscriber Loop)接入方式当中,PPP与其他的协议共同派生出了符合宽带接入要求的新的协议,如PPPoE(PPP over Ethernet),PPPoA(PPP over ATM)。
利用以太网(Ethernet)资源,在以太网上运行PPP来进行用户认证接入的方式称为PPPoE。PPPoE即保护了用户方的以太网资源,又完成了ADSL的接入要求,是目前ADSL接入方式中应用最广泛的技术标准。
同样,在ATM(异步传输模式,Asynchronous Transfer Mode)网络上运行PPP协议来管理用户认证的方式称为PPPoA。它与PPPoE的原理相同,作用相同;不同的是它是在ATM网络上,而PPPoE是在以太网网络上运行,所以要分别适应ATM标准和以太网标准。
PPP协议的简单完整使它得到了广泛的应用,相信在未来的网络技术发展中,它还可以发挥更大的作用

Tags in this post...

面试题 相关文章推荐
比较基础的php面试题及答案-编程题
Oct 14 面试题
Java面试题及答案
Sep 08 面试题
为什么要有struct关键字
May 08 面试题
如何提高SQL Server的安全性
Jul 25 面试题
System.Array.CopyTo()和System.Array.Clone()有什么区别
Jun 20 面试题
什么是Smart Navigation?
Jul 03 面试题
盛大二次面试题
Nov 18 面试题
铭立家具面试题
Dec 06 面试题
shell程序中如何注释
Feb 17 面试题
华为python面试题
May 03 面试题
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
Feb 04 面试题
JDBC操作数据库的基本流程是什么
Oct 28 面试题
网络通讯中,端口有什么含义,端口的取值范围
Nov 23 #面试题
什么是URL
Dec 13 #面试题
HSRP的含义以及如何工作
Sep 10 #面试题
Internet主要有哪些网络群组成
Dec 24 #面试题
你对IPv6了解程度
Feb 09 #面试题
STP的判定过程
Oct 01 #面试题
以思科路由器为例你写下单臂路由的配置命令
Aug 03 #面试题
You might like
php mail to 配置详解
2014/01/16 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
Redis构建分布式锁
2017/03/28 PHP
ThinkPHP开发--使用七牛云储存
2017/09/14 PHP
tp5框架无刷新分页实现方法分析
2019/09/26 PHP
写了10年的Javascript也未必全了解的连续赋值运算
2011/03/25 Javascript
jQuery隔行变色与普通JS写法的对比
2013/04/21 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
上传文件返回的json数据会被提示下载问题解决方案
2014/12/03 Javascript
编写简单的jQuery提示插件
2014/12/21 Javascript
JS判断来路是否是百度等搜索索引进行弹窗或自动跳转的实现代码
2016/10/09 Javascript
jQuery联动日历的实例解析
2016/12/02 Javascript
Javascript ES6中数据类型Symbol的使用详解
2017/05/02 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
微信小程序实现流程进度的图样式功能
2018/01/16 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
2018/03/20 Javascript
Vue中使用canvas方法总结
2019/02/12 Javascript
JavaScript从原型到原型链深入理解
2019/06/03 Javascript
javascript实现前端分页功能
2020/11/26 Javascript
jquery实现广告上下滚动效果
2021/03/04 jQuery
python使用rsa加密算法模块模拟新浪微博登录
2014/01/22 Python
python模块之StringIO使用示例
2015/04/08 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
python实现代码统计程序
2019/09/19 Python
python3爬取torrent种子链接实例
2020/01/16 Python
Windows下Sqlmap环境安装教程详解
2020/08/04 Python
完美解决Pycharm中matplotlib画图中文乱码问题
2021/01/11 Python
全球酒店比价网:HotelsCombined
2017/06/20 全球购物
夜班门卫岗位职责
2013/12/09 职场文书
暑期社会实践方案
2014/02/05 职场文书
小学班级口号
2014/06/09 职场文书
2014年行政部工作总结
2014/11/19 职场文书
宣传部部长竞选稿
2015/11/21 职场文书
Python机器学习之基础概述
2021/05/19 Python
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL