所选语种没有对应资源,请选择:

本站点使用Cookies,继续浏览表示您同意我们使用Cookies。Cookies和隐私政策>

提示

尊敬的用户,您的IE浏览器版本过低,为获取更好的浏览体验,请升级您的IE浏览器。

升级

NE40E V800R010C00 特性描述 - 广域网接入 01

评分并提供意见反馈 :
华为采用机器翻译与人工审校相结合的方式将此文档翻译成不同语言,希望能帮助您更容易理解此文档的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 华为对于翻译的准确性不承担任何责任,并建议您参考英文文档(已提供链接)。
PPP的建链过程

PPP的建链过程

PPP链路的建立是通过一系列的协商完成的。

图4-3  PPP链路建立过程

PPP运行的过程如图4-3所示。

  1. 通信双方开始建立PPP链路时,先进入到Establish阶段。

  2. 在Establish阶段,PPP链路进行LCP协商。协商内容包括工作方式是SP(Single-link PPP)还是MP(Multilink PPP)、最大接收单元MRU、验证方式和魔术字(magic number)等选项。LCP协商成功后进入Open状态,表示底层链路已经建立。

  3. 如果配置了验证,将进入Authenticate阶段,开始CHAP或PAP验证。如果没有配置验证,则直接进入Network阶段。

  4. 在Authenticate阶段,如果验证失败,进入Terminate阶段,拆除链路,LCP状态转为Down。如果验证成功,进入Network阶段,此时LCP状态仍为Open。

  5. 在Network阶段,PPP链路进行NCP协商。通过NCP协商来选择和配置一个网络层协议并进行网络层参数协商。只有相应的网络层协议协商成功后(相应协议的NCP协商状态为Open),该网络层协议才可以通过这条PPP链路发送报文。

    NCP协商包括IPCP(IP Control Protocol)、MPLSCP(MPLS Control Protocol)等协商。IPCP协商内容主要包括双方的IP地址。

  6. NCP协商成功后,PPP链路将一直保持通信。PPP运行过程中,可以随时中断连接,物理链路断开、认证失败、定时器超时、管理员通过配置关闭连接等动作都可能导致链路进入Terminate阶段。

  7. 在Terminate阶段,如果所有的资源都被释放,通信双方将回到Dead阶段,直到通信双方重新建立PPP连接,开始新的PPP链路建立。

Dead阶段(链路不可用阶段)

Dead阶段也称为物理层不可用阶段。PPP链路都需从这个阶段开始和结束。

当通信双方的两端检测到物理线路激活(通常是检测到链路上有载波信号)时,就会从Dead阶段跃迁至Establish阶段,即链路建立阶段。

链路被断开后也同样会返回到链路不可用阶段。

Establish阶段(链路建立阶段)

在Establish阶段,PPP链路进行LCP协商。协商内容包括工作方式是SP(Single-link PPP)还是MP(Multilink PPP)、最大接收单元MRU、验证方式和魔术字(magic number)等选项。当完成配置报文的交换后,则会继续向下一个阶段跃迁。

在Establish阶段,LCP的状态机会发生如下改变。

  • 当链路处于不可用阶段时,此时LCP的状态机处于初始化Initial状态或准备启动Starting状态。当检测到链路可用时,则物理层会向链路层发送一个Up事件。链路层收到该事件后,会将LCP的状态机从当前状态改变为Request-Sent(请求发送)状态,根据此时的状态机LCP会进行相应的动作,也就是开始发送Configure-Request报文来配置数据链路。

  • 如果本端设备先收到Configure-Ack报文,则LCP的状态机从Request-Sent状态改变为Ack-Received状态,本端向对端发送Configure-Ack报文以后,LCP的状态机从Ack-Received状态改变为Open状态。

  • 如果本端设备先向对端发送Configure-Ack报文,则LCP的状态机从Request-Sent状态改变为Ack-Sent状态,本端收到对端发送的Configure-Ack报文以后,LCP的状态机从Ack-Sent状态改变为Open状态。

  • LCP状态机变为Open状态以后就完成当前阶段的协商,并向下一个阶段跃迁。

下一个阶段既可能是验证阶段,也可能是网络层协议阶段。下一阶段的选择是依据链路两端的设备配置的,通常由用户来配置。

Authenticate阶段(验证阶段)

缺省情况下,PPP链路不进行验证。如果要求验证,在链路建立阶段必须指定验证协议。

PPP提供密码验证协议PAP和质询握手验证协议CHAP两种验证方式。

说明:

PPP的验证方式又可以分为单向验证和双向验证。单向验证是指一端作为验证方,另一端作为被验证方。双向验证是单向验证的简单叠加,即两端都是既作为验证方又作为被验证方。在实际应用中一般只采用单向验证。

PAP验证过程

PAP验证方式为两次握手验证,采用简单口令。

PAP验证的过程如图4-4所示。

图4-4  PAP认证过程

  1. 被验证方把本地用户名和口令发送到验证方。

  2. 验证方根据本地用户表查看是否有被验证方的用户名
    • 若有,则查看口令是否正确,
      • 若口令正确,则认证通过;
      • 若口令不正确,则认证失败。
    • 若没有,则认证失败。

PAP验证报文帧格式

PAP报文封装在协议域为0xC023的PPP数据链路层帧的信息域中。PAP报文的帧格式如图4-5所示。
图4-5  PAP验证报文帧格式

PAP验证报文帧格式中各字段的含义如表4-4所示。
表4-4  PAP验证报文帧格式各字段解释表

字段

长度(字节)

取值与含义

Code

1

标识PAP数据报的类型。
  • Authenticate-Request报文的该字段取值为0x01。
  • Authenticate-Ack报文的该字段取值为0x02。
  • Authenticate-Nak报文的该字段取值为0x03。

Identifier

1

标识请求报文和应答报文是否匹配。

Length

2

标识包括Code、Identifier、Length和Data域在内的PAP报文长度。

超出此长度的报文将被认为是填充字节并被丢弃。

Data

0或者多个字节

Data域的内容由Code域来决定。

CHAP验证过程

CHAP验证方式为三次握手验证协议。它只在网络上传输用户名,而并不传输用户密码,因此安全性要比PAP高。

CHAP的验证过程如图4-6所示。

图4-6  CHAP的验证过程

CHAP单向验证过程分为两种情况:验证方配置了用户名和验证方没有配置用户名。推荐使用验证方配置用户名的方式,这样可以对验证方的用户名进行确认。

  • 验证方配置了用户名的验证过程

    1. 验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文(Challenge),并同时将本端的用户名附带上一起发送给被验证方。

    2. 被验证方接到验证方的验证请求后,先检查本端接口上是否配置了CHAP密码,
      • 如果配置了,则被验证方用报文ID、配置的用户密码和MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发回验证方(Response)。
      • 如果接口上未配置CHAP密码,则根据此报文中验证方的用户名在本端的用户表查找该用户对应的密码,用报文ID、此用户的密码和MD5算法对该随机报文进行加密,将生成的密文和被验证方自己的用户名发回验证方(Response)。
    3. 验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,若比较结果一致,认证通过,若比较结果不一致,认证失败。

  • 验证方没有配置用户名的验证过程

    1. 验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文(Challenge)。
    2. 被验证方接到验证方的验证请求后,利用报文ID、ppp chap password命令配置的CHAP密码和MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发回验证方(Response)。
    3. 验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,若比较结果一致,认证通过,若比较结果不一致,认证失败。

CHAP验证报文帧格式

CHAP报文封装在协议域为0xC223的PPP数据链路层帧的信息域中。CHAP报文的帧格式如图4-7所示。
图4-7  CHAP验证报文帧格式

CHAP验证报文帧格式中各字段的含义如表4-5所示。
表4-5  CHAP验证报文帧格式各字段解释表

字段

长度(字节)

取值与含义

Code

1

标识CHAP报文的类型:
  • Challenge报文的该字段取值为0x01。
  • Response报文的该字段取值为0x02。
  • Success报文的该字段取值为0x03。
  • Failure报文的该字段取值为0x04。

Identifier

1

标识Challenge报文和Response报文的对应关系。

Length

2

标识包括Code、Identifier、Length和Data域在内的CHAP报文长度。

超出此长度的报文将被认为是填充字节并被丢弃。

Data

0或者多个字节

Data域的内容由Code域来决定。

说明:
CHAP与PAP验证存在如下差异:
  • PAP认证中,在链路上发送简单口令,完成PPP链路建立后,被验证方会不停地在链路上反复发送用户名和口令,直到身份验证过程结束,所以安全性不高。当实际应用过程中,对安全性要求不高时,可以采用PAP认证建立PPP连接。

  • CHAP认证中,验证协议为三次握手验证协议。它只在网络上传输用户名,而并不传输用户密码,因此安全性比PAP认证高。当实际应用过程中,对安全性要求较高时,可以采用CHAP认证建立PPP连接。

Network阶段(网络层协议阶段)

PPP完成了前面几个阶段,通过NCP协商来选择和配置一个网络层协议并进行网络层参数协商。每个NCP协议可在任何时间打开和关闭,当一个NCP的状态机变成Open状态时,则PPP就可以开始在链路上承载网络层数据传输。

Terminate阶段(网络终止阶段)

PPP能在任何时候终止链路。当载波丢失、认证失败或管理员人为关闭链路等情况均会导致链路终止。

下载文档
更新时间:2018-07-12

文档编号:EDOC1100028576

浏览量:4088

下载量:73

平均得分:
本文档适用于这些产品
相关文档
相关版本
Share
上一页 下一页