随着运营商对宽带接入技术要求的不断提高,以 xDSL、CableModem 和以太网为主的几种宽带接入技术在用户管理和计费等方面的不足开始显露,已无法满足运营商的需求。在众多的接入技术中,以太网接入方式经济实惠,而 PPP 协议又可以提供良好的访问控制和计费功能,结合以太网的经济性及 PPP 良好的可扩展性与管理控制功能,于是产生了 PPPoE (Point-to-Point Protocol over Ethernet,在以太网上承载 PPP协议) 。PPPoE协议的提出很好地解决了用户管理和上网收费等实际应用问题,得到了运营商的认可并广为采用。
对于用户来说,PPPoE具有以下优点:
对于运营商来说,PPPoE具有以下优点:
PPPoE使用 Client/Server模型。PPPoE Client向 PPPoE Server发起连接请求,两者之间会话协 商通过后,就建立 PPPoE会话,此后 PPPoE Server向 PPPoE Client提供接入控制、认证、计费等功能。
根据PPPoE会话的起点所在位置的不同,PPPoE分为 Router-Initiated和 Host-Initiated两种组网结构。
如图1 所示,Router-Initiated 组网结构是在两台路由器之间建立PPPoE 会话,所有主机通过同一 个 PPPoE会话传送数据,主机上不用安装 PPPoE客户端拨号软件,一般是一个企业共用一个账号 接入网络(图中 PPPoE Client位于企业/公司内部,PPPoE Server是运营商的设备)。
图1 Router-Initiated组网结构图
如图 2所示,Host-Initiated组网结构是将PPPoE会话建立在 Host和运营商的路由器之间,为每一 个 Host建立一个 PPPoE会话,每个 Host都是 PPPoE Client,每个Host使用一个帐号,方便运营商对用户进行计费和控制。Host上必须安装 PPPoE客户端拨号软件。
图2 Host-Initiated组网结构图
如图3所示,PPPoE报文的格式是在以太网帧中携带 PPP报文。
图3 报文格式
各个字段解释如下:
-Source_address域:源设备的以太网 MAC地址。
0x00,表示会话数据。
0x09,表示 PADI(PPPoE Active Discovery Initiation)报文。
0x07,表示 PADO(PPPoE Active Discovery Offer)或 PADT(PPPoE Active Discovery Terminate)报文。
0x19,表示 PADR(PPPoE Active Discovery Request)报文。
0x65,表示 PADS(PPPoE Active Discovery Session-confirmation)报文。
如图4所示,PADI报文的主要字段包括:
图4PADI数据包举例
如图5所示,PADO 报文的主要字段包括:
图5 PADO数据包举例
如图6所示,PADR 报文的主要字段包括:
图6 PADR数据包举例
如图7所示,PADS 报文的主要字段包括:
图7 PADS数据包举例
如图8所示,PADT 报文的主要字段包括:
图8 PADT数据包举例
PPPoE的协商过程如图9所示:
图9 PPPoE协商过程
PPPoE协商过程包括 Discovery、Session和 Terminate三个阶段
Discovery阶段完成之后通信双方都会知道PPPoE的Session ID 以及对方以太网地址,它们共同确定了唯一的 PPPoE Session。Discovery阶段由四个过程组成,具体如下:
1.PPPoE Client广播发送一个 PADI报文,在此报文中包含 PPPoE Client想要得到的服务类型信息。
2.所有的 PPPoE Server收到 PADI报文之后,将其中请求的服务与自己能够提供的服务进行比 较,如果可以提供,则单播回复一个 PADO报文。
3.根据网络的拓扑结构,PPPoE Client可能收到多个 PPPoE Server发送的 PADO报文, PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server, 并单播发送一个 PADR报文。
4.PPPoE Server产生一个唯一的会话 ID(Session ID),标识和 PPPoE Client的这个会话, 通过发送一个 PADS报文把会话 ID发送给 PPPoE Client,从而建立会话,并进入 PPPoE Session阶段。
PPPoE Session上的PPP协商和普通的PPP协商方式一致,分为 LCP、认证、NCP三个阶段, 具体如下:
1.LCP阶段主要完成建立、配置和检测数据链路连接。
2.LCP协商成功后,开始进行认证工作,认证协议类型由 LCP协商结果(CHAP或者 PAP)决定。
3.认证成功后,PPP进入 NCP阶段。NCP是一个协议族,用于配置不同的网络层协议,常用 的是 IP控制协议(IPCP),它负责配置用户的 IP和 DNS等工作。
PPPoE Session的 PPP协商成功后,其上就可以承载 PPP数据报文。
在PPPoE Session阶段所有的以太网数据包都是单播发送的。
进入 PPPoE Session阶段后,PPPoE Client和 PPPoE Server都可以通过发送 PADT 报文的方式 来结束 PPPoE连接。PADT 报文可以在会话建立以后的任意时刻单播发送。在发送或接收到 PADT 后,就不允许再使用该会话发送 PPP流量,即使是常规的 PPP结束数据包也不允许发送。
图10 利用 ADSL Modem将局域网接入 Internet组网图
如图10所示,企业希望使用一个公共帐号访问 Internet。Router A作为 PPPoE Client,通过一个 帐号访问 Internet(相当于整个企业的员工公用这个帐号)。Router B 作为 PPPoE Server 连接至 DSLAM,提供 RADIUS认证、计费等功能,同时连接到 Internet。
图11 无线 PPPoE接入组网图
如图 11 所示,AP设备作为 PPPoE Client,BRAS设备作为 PPPoE Server,终端用户可以直接通 过无线网络访问 Internet。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有