PPPoE = PPP over Ethernet
处理最后一公里的问题
数字用户线路DSL是以电话线为传输介质的传输技术
DSLAM:数字用户接入复用器
BRAS:宽带远程接入服务器,BRAS是面向宽带网络应用的接入网关,位于骨干网的边缘层
人们通常把所有的DSL技术统称为xDSL,x代表不同种类的数字用户线路技术。目前比较流行的宽带接入方式为ADSL,ADSL是非对称DSL技术,使用的是PPPoE(PPP over Ethernet)协议。
PPPoE协议通过在以太网上提供点到点的连接,建立PPP会话,使得以太网中的主机能够连接到远端的宽带接入服务器上。PPPoE具有适用范围广、安全性高、计费方便等特点。
PPPoE是网络层协议
PPPoE报文是使用Ethernet格式进行封装的,Ethernet中各字段解释如下:
DMAC:表示目的设备的MAC地址,通常为以太网单播目的地址或者以太网广播地址(0xFFFFFFFF)。
SMAC:表示源设备的以太网MAC地址。
Type:表示协议类型字段,当值为0x8863时表示承载的是PPPoE发现阶段的报文。当值为0x8864时表示承载的是PPPoE会话阶段的报文。
PPPoE字段中的各个字段解释如下:
VER:表示PPPoE版本号,值为0x01。
Type:表示类型,值为0x01。
Code:表示PPPoE报文类型,不同取值标识不同的PPPoE报文类型。 PPPoE会话ID,与以太网SMAC和DMAC一起定义了一个PPPoE会话。
Length:表示PPPoE报文的Payload长度,不包括以太网头部和PPPoE头部的长度。
PPPoE中客户机不需要配置ip用bras服务器分配(类似IPCP动态分配)
PPPoE会话建立过程:
发现阶段 获取对方以太网地址,以及确定唯一的PPPoE会话。
会话阶段 包含两部分:PPP协商阶段和PPP报文传输阶段。
会话终结阶段 会话建立以后的任意时刻,发送报文结束PPPoE会话。
PPPoE五种类型报文来建立和终结PPPoE会话
PADI:用户主机发起的发现初始报文
PADO:PPPoE服务器发起的发现提供报文
PADR:用户主机发起的发现请求报文;在接收到的所有PADO报文中PPPoE客户端选择最先收到的PADO报文对应的PPPoE服务器,并发送一个PADR报文给这个服务器。
PADS:PPPoE服务器发起的发现会话确认报文;PPPoE服务器收到PADR报文后,会生成一个唯一的Session ID来标识和PPPoE客户端的会话,并通过一个PADS报文把Session ID发送给PPPoE客户端。
PADT:两端都可发起的会话终止报文
PPPoE会话阶段可分为两个部分:PPP协商和PPP报文传输阶段
PPP协商和普通的PPP协商方式一致,分为LCP、认证、NCP三个阶段
PPP报文传输的数据包中必须包含在发现阶段确定的Session ID并保持不变