PPPOE协议出现的背景Word文档下载推荐.docx

上传人:b****5 文档编号:17458299 上传时间:2022-12-01 格式:DOCX 页数:11 大小:991.05KB
下载 相关 举报
PPPOE协议出现的背景Word文档下载推荐.docx_第1页
第1页 / 共11页
PPPOE协议出现的背景Word文档下载推荐.docx_第2页
第2页 / 共11页
PPPOE协议出现的背景Word文档下载推荐.docx_第3页
第3页 / 共11页
PPPOE协议出现的背景Word文档下载推荐.docx_第4页
第4页 / 共11页
PPPOE协议出现的背景Word文档下载推荐.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

PPPOE协议出现的背景Word文档下载推荐.docx

《PPPOE协议出现的背景Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《PPPOE协议出现的背景Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。

PPPOE协议出现的背景Word文档下载推荐.docx

PPPOE的发现阶段

1.PPPOE的初始化过程

PPPOE的初始化过程是至关重要的,它不仅要在广播式的网络上确定一对一的逻辑关系,而且还要为PPPOE的会话阶段准备一些必要条件,如访问集中器唯一分配的会话ID(SessionID)。

在介绍PPPOE的发现阶段之前,首先让我们重温一下以太网帧的封装格式,前面也介绍过了,所有的PPPOE的数据报文均是被封装在以太网的数据域(净载荷区)中传送的。

2.以太网的帧格式

以太网的帧格式对于大多数人来说是并不陌生,而且目前大多数的网络中都在使用以太网2.0版,因此EthernetII就被作为一种事实上的工业标准而广泛使用,如果对以太网不太熟悉或想深入了解的读者,可参考相关局域网技术方面的书籍。

下图为以太网的帧格式:

∙以太网目的地址(目的MAC地址)和以太网源地址(源MAC地址),是我们大家最为熟悉的数据链路层地址。

它包括单播地址、多播地址和广播地址,而对于PPPOE协议中要使用到单播地址和广播地址。

在PPP的培训教材中也提到了,对于PPP这样的数据链路层协议而言,二层地址通信双方之间已失去了原有的意义。

∙以太网的类型域也是我们最关心的一个字段,它在1997年以前还一直由施乐公司维护,但后来就交由IEEE802小组维护了。

通过这个字段的内容,数据包的接收方可以识别以太网的数据域中承载的是什么协议的数据报文。

对于PPPOE的两大阶段,也正是通过以太网的类型域进行区分的。

在PPPOE的发现阶段时,以太网的类型域填充0×

8863;

而在PPPOE的会话阶段时,以太网的类型域填充为0×

8864。

∙数据域(净载荷)主要是用来承载类型域中所指示的数据报文,在PPPOE协议中所有的PPPOE数据报文就是被封装在这个域中被传送。

∙校验域,主要用来保证链路层数据帧传送的正确性。

3.PPOE的数据报文格式

描述完了以太网的帧格式后,我们简要介绍一下PPPOE的数据报文格式。

PPPOE的数据报文是被封装在以太网帧的数据域内的。

简单来说我们可能把PPPOE报文分成两大块,(虽然这样比较笼统,但还是比较好助于理解),一大块是PPPOE的数据报头,另一块则是PPPOE的净载荷(数据域),对于PPPOE报文数据域中的内容会随着会话过程的进行而不断改变。

下图为PPPOE的报文的格式:

∙PPPOE数据报文最开始的4位为版本域,协议中给出了明确的规定,这个域的内容填充0×

01。

∙紧接在版本域后的4位是类型域,协议中同样规定,这个域的内容填充为0×

∙代码域占用1个字节,对于PPPOE的不同阶段这个域内的内容也是不一样的,在这里没有用表格的形式将所有代码列出,但在后续章节会给出一些代码与数据报文的对照。

∙会话ID点用2个字节,当访问集中器还未分配唯一的会话ID给用户主机的话,则该域内的内容必须填充为0×

0000,一旦主机获取了会话ID后,那么在后续的所有报文中该域必须填充那个唯一的会话ID值。

∙长度域为2个字节,用来指示PPPOE数据报文中净载荷的长度。

∙数据域,有时也称之为净载荷域,在PPPOE的不同阶段该域内的数据内容会有很大的不同。

在PPPOE的发现阶段时,该域内会填充一些Tag(标记);

而在PPPOE的会话阶段,该域则携带的是PPP的报文。

4.PPPOE发现阶段的数据报文

PPPOE的发现阶段可分为四步,其实这个过程也是PPPOE四种数据报文的交换的一个过程。

当完成这四步后,用户主机与访问集中器双方就能获知对方的MAC地址和唯一的会话ID号,从而进入到下一个阶段(PPPOE的会话阶段)。

实际上双方在互相知道了对方的MAC地址后,就已经在广播式的网络上确定了一一的对应关系,为了保证这个连接的有效性,同时使PPPOE协议能更加灵活的运用,因此还加入了会话ID字段,通过这两个条件就可完成确定双方点对点的关系。

在这个阶段一开始,由于接入用户并不知道访问集中器的MAC地址,则使用类似于ARP解析的过程的机制来获取访问集中器的MAC地址。

首先由接入用户侧发起一个初始化的广播报文,对于访问集中器如果配置了PPPOE的业务时,它会时实检测网络上的数据包,当发现以太网数据帧中所承载的是PPPOE报文时(通过协议域的内容来区分),就会将其交给相应的模块去处理。

当收到初始化报文后,访问集中器会向该用户回应一个报文。

如果网络上存在很多这样的访问集中器且都收到了用户侧发送的初始化报文时,它们也都会向用户侧会送一个确认报文,如果该用户收到这个报文后,则会依据报文中所携带的内容或本端的一些配置来选择一个唯一的访问集中器进行会话。

到此时已完成了前两步了,那么剩下的两步则是协商一些所提供的服务选项和获取PPPOE会话阶段所必须的会话ID值。

在这个阶段,前面在讲述以太网帧格式时也特别强调了,所有数据报文是被承载在以太网的数据域中的,而且以太网数据帧的协议域始终为0

×

8863。

下面我们结合具体的数据报文的内容,来具体的讲解这四步的过程。

5.PPPOE数据报文中Tag(标记)的格式

对于发现阶段的PPPOE数据报文而言,它的净载荷可能包含零个或多个Tag(标记),实际上这些标记的意义非常类似于PPP配置参数选项,它同样也是要经过协商的。

对于PPPOE协议而言,没有像PPP的配置参数选项那样定义了很多细节,而只是一个初略的定义,因此在实际当中实现这个过程会依据不同厂商的设备有不同。

首先还是让我们看一下承载在PPPOE报文数据域中的标记封装格式:

从上图中可以看出,标记的封装格式采用的是大家所熟知的TLV结构,也即是(类型+长度+数据)。

标记的类型域为2个字节,下表列出了各种标记类型的含义:

标记类型

标记说明

0000

表示PPPOE报文数据域中一串标记的结束,为了保证版本的兼容性而保留,在有些报文中有应用。

0101

服务名,主要用来表明网络侧所能提供给用户的一些服务。

0102

访问集中器名,当用户侧接收到了AC的回应的PADO报文时,就可获从所携带的标记中获知访问集中器的名子,而且还可以据此来选择相应的访问集中器。

0103

主机唯一标识,类似于PPP数据报文中的标识域,主要是用来匹配发送和接收端的,因为对于广播式的网络中会同时存在很多个PPPOE的数据报文。

0104

AC-Cookies,主要被用来防止恶意性DOS功击。

0105

销售商的标识符。

0110

中继会话ID,对于PPPOE的数据报文也同样可以像DHCP报文一样被中断到另外的AC上终结,这个字段则是用来维护另一个连接的。

0201

服务名错误,当请求的服务名不被对端所接受时,会在响应的报文中携带这个标记。

0202

访问集中器名出错。

0203

一般性错误。

∙标记的长度域为2个字节,它用来指明标记数据域的长度。

∙标记的数据域中用来放置不同类型标记所对应的相关数据。

PADI(PPPOEActiveDiscoveryInitiation)报文

PPPOE发现阶段的第一步,也即是由用户侧首先发送这样一个报文。

用户主机是以广播的方式发送这个报文,所以该报文所对应的以太网帧的目的地址域应填充为全1,而源地址域填充用户主机的MAC地址。

广播包可能会被多个访问集中器接收到,后面会讲到对于接收到PADI报文的访问集中器会使用PADO报文来回应用户主机。

我们来看一下PADI报文中几个域的填充情况,前面已强调过版本域和类型域固定填充0×

01,因为两个域各占4位,所以合并为1个字节后应为0×

11。

PADI报文的代码域填充0×

09,会话ID填充0×

0000。

PADI报文必须含一个由用户侧请求的正确服务名标记,当然还可能携带一些其它的标记,而一个完整的PADI报文(包括PPPOE头)不能超过1484个字节,以便能留下足够的空间给中继代理增加一个中继的会话ID标记。

例1:

PADI数据报文

这个报文中包括两个标记:

一个是主机的只唯一标识,另一个则是服务名标记,从上面这个报文中可以看出服务名没有具体实际的内容,说明对于用户主机可以接受任何由访问集中器所提供的服务。

PADO(PPPOEActiveDiscoveryOffer)报文

PPPOE发现阶段的第二步,也即是由访问集中器回应各用户主机发送的PADI报文,此时该报文所对应的以太网帧的源地址填充访问集中器的MAC地址,而目的地址则填充从PADI中所获取的用户主机的MAC地址。

我们来看一下PADO报文几个域的填充情况,版本域和类型域不变固定填充0×

01,代码域填充0×

07,会话ID填充0×

PADO报文中必须包含一个访问集中器名这个标记,同时还要包含对PADI报文中服务名标记的确认标记和对其它标记的一些确认标记。

这个过程有点类似于PPP协议中链路建立过程中的Config-Ack报文,当然如果用户主机所申请的服务访问集中器不支持的话,则访问集中器就不会回应PADO报文。

例2:

PADO数据报文

这个报文中包括4个标记,在PADI所提供的标记的基础上又增加了两个标记,一个是访问集中器名,下划线部分即表示访问集中器名(MD5500),而且还包含一个标记结束标记。

PADR(PPPOEActiveDiscoveryRequest)报文

PPPOE发现阶段的第三步,也即是由用户主机向访问服务器发送单播的请求报文。

当用户主机收到PADO报文后,会从这些报文中挑选一个访问集中器作为后续会话的对象。

由于用户主机在收到PADO报文后,就获知了访问集中器的MAC地址,因此PADR报文所以应的以太网帧的源地址填充用户主机的MAC地址,而以太网的目的地址填充为访问集中器的MAC地址。

我们来看一下PADR报文几个域的填充情况,版本域和类型域不变固定填充0×

19,会话ID域填充0×

此时PADR报文必须准确地包含一个服务名的标记,指示用户主机申请的服务和其它的标记类型。

例3:

PADR数据报文

当收到访问集中器的PADO报文后,用户主机会发送PADR报文,该报文所含的标记域与PADI报文中的一致,但些时用户主机已获知了访问集中器名。

PADS(PPPOEActiveDiscoverySession-confirmation)报文

PPPOE发现阶段的第四步,也即是最后一步,此时访问集中器当收到PADR报文时,就准备进入开始一个PPP的会话了,而此时访问集中器会为在这个会话分配一个唯一的会话进程ID,并在发送给主机的PADS报文中携带上这个会话ID。

当然如果访问集中器不满足用户所申请的服务的话,则会向用户发送一个PADS报文,而其中携带一个服务名错误的标记,而且此时该PADS报文中的会话ID填充0×

我们来看一下PADS报文几个域的填充情况,版本域和类型域不变固定填充0×

65,会话ID必须设为给这个PPPOE进程所分配的唯一值。

例4:

PADS数据报文

其中下划线部分为访问集中器给这个PPPOE会话分配的唯一会话ID。

PADT(PPPOEActiveDiscoveryTerminate)报文

PADT报文可能在会话进行开始之后的任意时间内被发送,主要是用来终止一个PPPOE会话的止。

它可以由主机或访问集中器发送,目的地址填充为对端的以太网的MAC地址

我们来看一下PADT报文几个域的填充情况,版本域和类型域不变固定填充0

01,代码域填充0xA7,会话ID是那个需要被终止的进程,报文中不需要携带任何标记。

当收到PADT的时候,不允许再使用当前这个进程发送PPP数据流量。

在收到或发送PADT后甚至正常的PPP终止报文也不能被发送。

例5:

PADT数据报文

PPPOE的会话阶段

一旦PPPOE进入到会话阶段,则PPP的数据报文就会被填充在PPPOE的净载荷中被传送,这时两者所发送的所有以太网包均是单目地址。

PPPOE会话阶段以太网帧的协议域填充为0×

8864,代码域填充0×

00,整个会话的过程就是PPP的会话过程,但在PPPOE数据域内的PPP数据帧是从协议域开始的。

例6:

PPPOE会话阶段的数据报文

PPPOE协议分析图:

PPPOE个人理解

 以前总是对PPPOE不理解,如在拔号的时候,modem会去掉mac帧吗?

他们是接入广域网,有公网的ip,寻址怎么可能是用mac?

只有以太网不是用mac吗?

有的人说modem也有mac?

难道modem会对数据包做处理?

现理解如下,看张自己做的图:

接入宽带服务器,我认为它整个黄色区域部分可以算做一个局域网,因为它们在底层是以mac寻址并交互数据包的,在osi参考模型下,以太网的数据链路层上面是pppoe协议与数据,只有局域网才是以mac寻址的,在考虑下pppoe协议出身背景,我们知道,它主要是控制用户接入,计时与计费,但是传统的以太网是不支持的,所以只好在OSI的数据链路层上层加入一层协议,用来控制网络使用,然而协商会话ppp的这种设备分别在用户pc机上,路由器上或是在有mac的猫上(其实有mac地址的猫,一定能通过web管理,因为它是modem与路由的混合体),服务商端当然就是宽带接入服务器NAS了,通过它们来实现一个访问网络权限,计时,计费的控制。

但是对上层是透明的,网络层以上,包括网络层。

我们每个用户终端得到的ip,虽然是公网的,这样做是为了让用户端封装数据包。

然后通过服务商的路由发送。

并且每个猫用户可以想像成互不通信,不在同一网段的的局域网用户。

..

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1