已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PPPoE拨号流程PPPoE(Point to Point Protocol over Ethernet,基于以太网的点对点协议)的工作流程包含发现(Discovery)和会话(Session)两个阶段,发现阶段是无状态的,目的是获得PPPoE终端(在局端的ADSL设备上)的以太网MAC地址,并建立一个惟一的PPPoE SESSION-ID。发现阶段结束后,就进入标准的PPP会话阶段。1.发现阶段(PPPoED:PPPoE Discovery)1.1PADI(PPPoE Active DiscoveryInitiation)主机广播发起分组,分组的目的地址为以太网的广播地址 0xffffffffffff,CODE(代码)字段值为009(PADI Code),SESSION-ID(会话ID)字段值为0x0000。PADI分组必须至少包含一个服务名称类型的标签(Service Name Tag,字段值为0x0101),向接入集中器提出所要求提供的服务。1.2PADO(PPPoE Active DiscoveryOffer)接入集中器收到在服务范围内的PADI分组,发送PPPoE有效发现提供包分组,以响应请求。其中CODE字段值为007(PADO Code),SESSION-ID字段值仍为0x0000。PADO分组必须包含一个接入集中器名称类型的标签(Access Concentrator Name Tag,字段值为0x0102),以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。PADO和PADI的Host-Uniq Tag值相同。1.3PADR(PPPoE Active DiscoveryRequest)主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组。其中CODE字段为0x19(PADR Code),SESSION_ID字段值仍为0x0000。PADR分组必须包含一个服务名称类型标签,确定向接入集线器(或交换机)请求的服务种类。当主机在指定的时间内没有接收到PADO,它应该重新发送它的PADI分组,并且加倍等待时间,这个过程会被重复期望的次数。1.4PADS(PPPoE Active DiscoverySession-confirmation)接入集中器收到PADR分组后准备开始PPP会话,它发送一个PPPoE有效发现会话确认PADS分组。其中CODE字段值为065(PADS Code),SESSION-ID字段值为接入集中器所产生的一个惟一的PPPoE会话标识号码。PADS分组也必须包含一个接入集中器名称类型的标签以确认向主机提供的服务。当主机收到PADS 分组确认后,双方就进入PPP会话阶段。PADS和PADR的Host-Uniq Tag值相同。图1 PPPoE的协商流程2.会话阶段(PPPoES:PPPoE Session)PPP会话的建立,需要两端的设备都发送LCP数据包来配置和测试数据通信链路。用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行PPP会话。一旦PPPoE会话开始,PPP数据就可以以任何其他的PPP封装形式发送。所有的以太网帧都是单播的。PPPoE会话的SESSION-ID一定不能改变,并且必须是发现阶段分配的值。2.1 LCP协商阶段(LCP:Link Control Protocol)LCP的Request主机和AC都要给对方发送,LCP协商阶段完成最大传输单元(MTU),是否进行认证和采用何种认证方式(Authentication Type)的协商。(1)LCP协议数据报文分类链路配置报文:用来建立和配置一条链路,主要包括Configure-Request、Configure-Ack、Configure-Nak和Configure-Reject报文链路维护报文:用来管理和调试链路,主要包括Code-Reject、Protocol-Reject、Echo-Request、Echo-Reply和Discard-Request报文链路终止报文:用来终止一条链路,主要包括Terminate-Request和Terminate-Reply报文(2)LCP协商过程LCP协商的过程如下:协商双方互相发送一个LCP Config-Request报文,确认收到的Config-Request报文中的协商选项,根据这些选项的支持与接受情况,做出适当的回应。若两端都回应了Config-ACK,则标志LCP链路建立成功,否则会继续发送Request报文,直到对端回应了ACK报文为止。图2 LCP协商的基本过程说明:(1)Config-ACK:若完全支持对端的LCP选项,则回应Config-ACK报文,报文中必须完全协带对端Request报文中的选项。(2)Config-NAK:若支持对端的协商选项,但不认可该项协商的内容,则回应Config-NAK报文,在Config-NAK的选项中填上自己期望的内容,如:对端MRU值为1500,而自己期望MRU值为1492,则在Config-NAK报文中埴上自己的期望值1492。(3)Config-Reject:若不能支持对端的协商选项,则回应Config-Reject报文,报文中带上不能支持的选项,如Windows拨号器会协商CBCP(被叫回呼),而ME60不支持CBCP功能,则回将此选项拒绝掉。2.2 认证阶段(PPPAuthentication:PAP/CHAP)会话双方通过LCP协商好的认证方法进行认证,如果认证通过了,才可以进行下面的网络层的协商。认证过程在链路协商结束后就进行。PAP(Password Authentication Protocol,口令认证协议)认证PAP为两次握手协议,它通过用户名及口令来对用户进行验证。PAP验证过程如下:当两端链路可相互传输数据时,被验证方发送本端的用户名及口令到验证方,验证方根据本端的用户表(或Radius服务器)查看是否有此用户,口令是否正确。如正确则会给对端发送Authenticate-ACK报文,通告对端已被允许进入下一阶段协商;否则发送NAK报文,通告对端验证失败。此时,并不会直接将链路关闭。只有当验证不过次数达到一定值(缺省为10)时,才会关闭链路。PAP的特点是在网络上以明文的方式传递用户名及口令,如在传输过程中被截获,便有可能对网络安全造成极大的威胁。因此,它适用于对网络安全要求相对较低的环境。图3 PAP认证流程CHAP(Challenge Handshake Authentication Protocol,质询握手认证协议)认证CHAP为三次握手协议。只在网络上传输用户名,并不传输用户口令,因此它的安全性要比PAP高。CHAP的验证过程为:首先由验证方(Server)向被验证方(Client)发送一些随机产生的报文,并同时将本端的主机名附带上一起发送给被验证方。被验证方接到对端对本端的验证请求(Challenge)时,便根据此报文中验证方的主机名和本端的用户表查找用户口令字,如找到用户表中与验证方主机名相同的用户,便利用报文ID、此用户的密钥用Md5算法生成应答(Response),随后将应答和自己的主机名送回。验证方接到此应答后,用报文ID、本方保留的口令字(密钥)和随机报文用Md5算法得出结果,与被验证方应答比较,根据比较结果返回相应的结果(ACK or NAK)(1)接受认证端发送Challenge(2)申请认证端发验证请求报文(3)接受认证端回应认证接受报文经过以上三次报文交互后,CHAP认证完成。图4 CHAP认证流程2.3 NCP协商阶段(NCP:Network Control Protocol)NCP有很多种,如IPCP、BCP、IPv6CP,最为常用的是IPCP(Internet Protocol Control Protocol)协议。NCP的主要功能是协商PPP报文的网络层参数,如IP地址,DNS Server IP地址,WINS Server IP地址等。PPPoE用户主要通过IPCP来获取访问网络的IP地址或IP地址段。NCP流程与LCP流程类似,用户与ME设备之间互相发送NCP Config-Request报文并且互相回应NCP Config-Ack报文后,标志NCP己协商完,用户上线成功,可以正常访问网络了。IPCP的协商过程是基于PPP状态机进行协商的。经过双方协商,通过配置请求、配置确认、配置否认等包文交换配置信息,最终由initial (或closed)状态变为Opened状态。IPCP状态变为Opened的条件必须是发送方和接收方都发送和接收过确认包文。IPCP协商过程中,协商包文可包含多个选项,即参数。各个选项的拒绝或否认都不能影响IPCP的UP,IPCP可以无选项协商,无选项协商也同样能够UP。选项有IP Address、网关、掩码等,其中IP Address是最重要的一个选项,有些厂家的实现必须这个选项得到确认,大多数厂家的实现允许这个选项为空。NCP的基本协商流程见下图:图5 NCP的基本协商流程用户和接入设备对IP服务阶段的一些要求进行多次协商,以决定双方都能够接收的约定。如:IP业务阶段使用的IP压缩协议等。双方的协议是通过报文中包含的Option项进行协商的,每一个Option都是一个需要协商的问题。最后双方都需要对方答复Configure_Ack的同意报文。2.4 会话维持(Session Keep-alive)设备主动发送EchoRequest进行PPPoE心跳保活,若3次未得到服务器的响应,则设备主动释放地址。发LCPEchoRequest的时候,魔术字字段要和之前通信的Configure_Request使用的魔术字字段保持一致。有些设备或终端不支持主动发送 Echo-Request 报文, 只能支持回应Echo-Reply报文。2.5 会话结束(Session Termination)PPPoE 还有一个PADT(PPPOE Active Discovery Terminate)分组,它可以在会话建立后的任何时候发送,来终止PPPoE会话,也就是会话释放。它可以由主机或者接入集中器发送,目的地址填充为对端的以太网的MAC地址。当对方接收到一个 PADT(PPPOE Active Discovery Terminate)分组,就不再允许使用这个会话来发送PPP业务。PADT分组不需要任何标签,其CODE字段值为0xa7(PADT Code),SESSION-ID字段值为需要终止的PPP会话的会话标识号码。在发送或接收PADT后,即使正常的PPP终止分组也不必发送。PPP对端应该使用PPP协议自身来终止PPPoE会话,但是当PPP不能使用时,可以使用PADT。3.PPPoE接入流程示例PPP状态变迁如图6所示:图6 PPP状态变迁图以PPPoE-CHAP为例,PPP用户接入流程如图7所示:图7 PPPoE/CHAP接入认证流程4.Linux中的PPPoE拨号守护进程(pppd:Point-to-Point Protocol Daemon)pppd是一个后台服务进程(daemon),是一个用户空间的进程,所以把策略性的内容从内核的PPP协议处理模块移到pppd中是很自然的事了。pppd实现了所有鉴权、压缩/解压和加密/解密等扩展功能的控制协议。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于同态加密的隐私计算原型集成课程设计
- 基于生物特征的身份认证系统设计教程课程设计
- 冲压模具任务型课程设计
- 交互式数据新闻可视化平台人力资源管理课程设计
- 2026年大学生志愿服务西部计划考试专业知识全真模拟试卷及答案(共十二套)
- 2025年山东省烟台市莱阳市四年级数学第二学期期末检测试题(含答案解析)
- 2026中国物流园区中小企业入驻需求与定制化服务研究报告
- 2026磁性微球在体外诊断试剂中的市场份额增长趋势分析报告
- 2026锌空气电池金属电极腐蚀防护与循环寿命延长技术攻关报告
- 2026中国土地市场监测预警体系构建与应用研究报告
- 医疗器械产品共线生产风险评估报告
- 陕西省2026届九年级初中学业水平预测考试数学试卷(含解析)
- 云南省公路工程竣工文件编制及立卷归档实 用手册
- 2026遂溪发展集团有限公司第二批工作人员公开招聘15人考试参考题库及答案详解
- 2026年山东省临沂市重点学校初一入学语文分班考试试题及答案
- 2026下半年上海杨浦区卫健系统事业单位专业技术人员招聘93人笔试题库附答案详解【预热题】
- 中小学舞蹈社团新生招募活动计划
- 长江产业投资集团招聘笔试题目及答案解析
- 2026年秋季小学开学第一课 法治教育进校园主题班会
- 2026年中小学教师高级职称专业水平能力测试复习题库及答案
- 小学一年级上册劳动的教学计划
评论
0/150
提交评论