PPPoE协议抓包分析

课程设计成绩评价表

成都信息工程学院

课程设计

课程名称:网络协议实践

设计题目:PPPoE协议数据包分析

班级:网络工程网络083班

学号:2008121093

姓名:白玉强

指导老师:刘云本提交日期:2011-12-17

摘要

网络协议的定义:为计算机网络中进行数据交换而建立的规则、标准或约定的集合。例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符。当然,对于不相容终端,除了需变换字符集字符外。其他特性,如显示格式、行长、行数、屏幕滚动方式等也需作相应的变换。

网络协议是网络上所有设备(网络服务器、计算机及交换机、路由器、防火墙等)之间通信规则的集合,它规定了通信时信息必须采用的格式和这些格式的意义。大多数网络都采用分层的体系结构,每一层都建立在它的下层之上,向它的上一层提供一定的服务,而把如何实现这一服务的细节对上一层加以屏蔽。

一台设备上的第n层与另一台设备上的第n层进行通信的规则就是第n层协议。

在网络的各层中存在着许多协议,接收方和发送方同层的协议必须一致,否则一方将无法识别另一方发出的信息。网络协议使网络上各种设备能够相互交换信息。常见的协议有:TCP/IP协议、IPX/SPX协议、NetBEUI协议等。

物理层:以太网·调制解调器·电力线通信(PLC)·SONET/SDH·G.709·光导纤维·同轴电缆·双绞线等

数据链路层:Wi-Fi(IEEE802.11)·WiMAX(IEEE

802.16)·ARP·RARP·ATM·DTM·令牌环·以太网·FDDI·帧中继·GPRS·EVDO·HSPA·HDLC·PPP·L2TP·PPTP·ISDN·STP等

网络层协议:IP(IPv4·IPv6)·ICMP·ICMPv6·IGMP·IS-IS·IPsec等

传输层协议:TCP·UDP·TLS·DCCP·SCTP·RSVP·OSPF等

关键词:协议TCP

目录

摘要 (2)

一、课题背景 (4)

1.1、任务介绍 (4)

1.2、达到目标 (4)

二、协议介绍 (4)

2.1、PPPoE协议简介 (4)

2.2、PPPoE协议详解 (5)

2.2.1、发现阶段 (6)

2.2.2、会话阶段 (7)

三、数据包分析 (10)

3.1、发现阶段数据包 (10)

3.2、会话阶段数据包 (15)

3.2.1、LCP协商阶段 (15)

3.2.2、认证阶段 (17)

3.2.3、IPPC协商阶段 (18)

四、结论 (21)

一、课题背景

1.1、任务介绍

老师给出PPPoE相关的数据包,学生对其进行详细分析,对整个过程进行解析,描述所用协议以及包的作用。

1.2、达到目标

通过本次的课程设计,应能对PPPoE协议整个过程有个清晰的认知,能掌握该协议的每个阶段的作用。还应能对此过程中产生的包进行详细分析,说出各个包的作用。

二、协议介绍

2.1、PPPoE协议简介

PPPoE是point-to-point protocol over ethernet的简称,可以使以太网的主机通过一个简单的桥接设备连到一个远端的接入集中器上。通过PPPoE协议,远端接入设备能够实现对每个接入用户的控制和计费。

与传统的接入方式相比,PPPoE具有较高的性能价格比,它在包括小区组网建设等一系列应用中被广泛采用,目前流行的宽带接入方式ADSL 就使用了PPPoE协议。

modem接入技术面临一些相互矛盾的目标,既要通过同一个用户前置

接入设备连接远程的多个用户主机,又要提供类似拨号一样的接入控制,计费等功能,而且要尽可能地减少用户的配置操作。PPPOE的目标就是解决以上问题。

2.2、PPPoE协议详解

建立一个以太网上点对点协议会话包括两个阶段:

(1).PPPoE发现(Discovery)阶段。在Discovery过程中用户主机以广播方式寻找可以连接的所有的接入集线器,并获得其以太网MAC地址。然后选择需要连接的主机并确定所要建立的PPP会话识别标号。

(2).PPPoE会话(Session)阶段。用户主机与接入集线器根据在发现阶段所协商的PPP会话连接参数进行PPP会话。

因此对应于这两种过程,以太网上点对点协议帧格式也包括两种类型:发现阶段的以太网帧中的类型字段为0x8863;PPP会话阶段的以太网帧中的类型字段为0x8864,它们均已得到IEEE的认可。PPPoE包中的版本(VER)字段和类型(TYPE)字段长度均为4比特,在当前版本PPPoE建议中这两个字段值都固定为0x1。代码(CODE)字段长度为8比特,根据两阶段中各种数据包的不同功能而值不同。版本标识号码(SESSION_ID)字段长度为16比特,在一个给定的PPP会话过程中它是固定不变的。值0xffffff为保留值。长度(LENGTH)字段为16比特长,指示PPPoE净荷长度。发现阶段PPPoE载荷可以为空或由多个标记(TAG)组成,每个标记都是TLV(类型-长度-值)的结构;PPP会话阶段PPPoE载荷为标准的点对点协议包。PPPoE帧格式如下图:

PPPOE报文数据域中的标记封装格式如下图:

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

2.2.1、发现阶段

一个典型的发现阶段共包括4个步骤:

(1)、主机发出PPPoE有效发现启动(PADI)包。以太网目的地址为广播地址0xffffffffffff,CODE字段为0x09,SESSION_ID为0x0000。PADI包必须至少包含一个服务名称类型的标签(标签类型字段为0x0101),向接入集线器提出所要求提供的服务。

(2)、接入集线器收到在服务范围内的PADI包后,发送PPPoE有效发现提供(PADO)包以响应请求。其CODE字段为0x07,SESSION_ID仍为0x0000。PADO包必须包含一个接入集线器名称类型的标签(标签类型字段为0x0102)以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。

(3)、主机在可能收到的多个PADO包中选择一个合适的,然后向所选择的接入集线器发送PPPoE有效发现请求(PADR)包。其CODE字段为0x19,

SESSION_ID仍为0x0000。PADR包必须包一个服务名称类型标签,确定向接入集线器请求的服务种类。

(4)、接入集线器收到PADR包后准备开始PPP会话,它发送一个PPPoE有效发现会话确认(PADS)包。其CODE字段为0x65,SESSION_ID为接入集线器所产生的一个唯一的PPPoE会话标识号码。PADS包也必须包含一个接入集线器名称类型的标签确认向主机提供的服务。当主机收到PADS包确认后,双方就进入PPP会话阶段。

还有一种PPPoE有效发现终止(PADT)包,在一个PPP会话建立后它随时可由主机或接入集线器中任何一方发送,指示PPP会话已终止。PADT包不需要任何标签,其CODE字段为0xa7,SESSION_ID为需要终止的PPP会话的会话标识号码。

2.2.2、会话阶段

一旦PPPoE进入到会话阶段,则PPP的数据报文就会被填充在PPPoE的净载荷中被传送,这时两者所发送的所有以太网包均是单目地址。此时, ETHER_TYPE值为0x8864,代码为0x00,SESSION-ID在整个会话过程中保持不变.PPPoE净载荷里包含一个无标志、地址、控制域的PPP数据报文.

PPP帧格式如下:

2个字节协议域:区分PPP数据帧中信息域所承载的数据报文的内容常见取值:

0x0021——信息字段是IP数据报

0xc021——信息字段是链路控制数据LCP

0x8021——信息字段是网络控制数据NCP

0xc023——信息字段是安全性认证PAP

0xc025——信息字段是LQR

0xc223——信息字段是安全性认证CHAP

信息域:当信息字段中出现和标志字段一样的比特0x7E时,就必须采取一些措施。具体的做法是将信息字段中出现的每一个0x7E字节转变成2字节序列(0x7D,0x5E)。若信息字段中出现一个0x7D的字节,则将其转变成2字节序列(0x7D,0x5D)。若信息字段中出现ASCII码的控制字符,则在该字符前面要加入一个

0x7D字节。这样做的目的是防止这些表面上的ASCII码控制字符被错误地解释

为控制字符。

PPP协议中有三个阶段:创建阶段、认证阶段和网络协商阶段。

阶段1:创建PPP链路

(1).LCP负责创建链路。对基本的通讯方式进行选择。

(2).链路两端设备通过LCP向对方发送配置信息报文(Configure Packets)。

(3).配置成功信息包(Configure-Ack packet)被发送且被接收,进入了LCP 开启状态。

阶段2:用户验证

(1).客户端会将自己的身份发送给远端的接入服务器。

(2).使用安全验证方式避免第三方窃取数据或冒充远程客户接管与客户端的连接。

(3).在认证完成之前,禁止从认证阶段前进到网络层协议阶段。

(4).如果认证失败,认证者应该跃迁到链路终止阶段。

在这一阶段里,只有链路控制协议、认证协议,和链路质量监视协议的packets 是被允许的。在该阶段里接收到的其他的packets必须被静静的丢弃。其中最常用的认证协议有口令验证协议(PAP)和挑战握手验证协议(CHAP)。

阶段3:调用网络层协议

认证阶段完成之后,PPP将调用在链路创建阶段(阶段1)选定的各种网络控制协议(NCP)。选定的NCP解决PPP链路之上的高层协议问题,例如,在该阶段IP控制协议(IPCP)可以向拨入用户分配动态地址。

2.2.2.1、LCP协议详解

作用:用来建立、配置、维护、终止一条点对点链路

帧格式:

代码域中有:1Configure-Request、2Configure-Ack、3Configure-Nak 4Configure-Reject、5Terminate-Request、6Terminate-Ack、7Code-Reject 8Protocol-Reject、9Echo-Request、10Echo-Reply、11Discard-Request 可分为3大类:

类型域中有:

三、数据包分析

3.1、发现阶段数据包

1、PADI发现初始报文

PPPoE发现阶段的第一步。用户主机以广播的方式发送PADI数报包,请求建立链路。6个字节的目的地址0xffffffffffff,6个字节的源地址0x00248cb3a141,2个字节的类型字段0x8863,4位的版本号和4位的类型号0x11,1个字节的Code域为0x09,2个字节会话ID域必须置为0x0000,2个字节长度0x0010,0x0101为服务名,0x0000表示无具体实际内容,0x0103为Host-Uniq,0x0008指有8个字节,0x0100000001000000为Host-Uniq内容。

2、PADO发现提供报文

PPPoE发现阶段的第二步。访问集中器(AC)以单播的方式发送一个PADO数据包对主机的请求做出应答。6个字节的目的地址0x00248cb3a141,6个字节的源地址0xca07044c0000,2个字节的类型字段0x8863,4位的版本号和4位的类型号0x11,1个字节的Code域为0x07,2个字节会话ID0x0000,2个字节长度0x0035,0x0101为服务名,0x0000表示无具体实际内容,0x0103为Host-Uniq,0x0008指有8个字节,0x0100000001000000为Host-Uniq 内容,0x0102为AC-Name,0x000d指有其长度有15个字节,0x6c7962655f5050506f455f4578为其内容,0x0104为AC-Cookie,后面的为其长度和内容。

3、PADR发现请求报文

PPPoE发现阶段的第三步。因为PADI数据包是广播的,所以主机可能收到不止一个的PADO报文。主机在收到报文后,会根据AC-Name或者PADO所提供的服务来选择一个AC,然后主机向选中的AC单播一个PADR数据包。6个字节的目的地址0xca07044c0000,6个字节的源地址0x00248cb3a141,2个字节的类型字段0x8863,4位的版本号和4位的类型号0x11,1个字节的Code 域为0x19,2个字节会话ID0x0000,2个字节长度0x0024,0x0101为服务名,0x0000表示无具体实际内容,0x0103为Host-Uniq,0x0008指有8个字节,0x0100000002000000为Host-Uniq内容。0x0104为AC-Cookie,0x0010指长度16个字节,后面的为其内容。

4、PADS发现会话确认报文

PPPoE发现阶段最后一步。当AC在收到PADR报文时,就准备开始一个PPP 的会话了。它为PPPoE会话创建一个唯一的会话ID并用单播一个PADS数据包来给主机做出响应。6个字节的目的地址0x00248cb3a141,6个字节的源地址0xca07044c0000,2个字节的类型字段0x8863,4位的版本号和4位的类型号0x11,1个字节的Code域为0x65,0x0001是指访问集中器给这个PPPOE 会话分配的唯一会话ID,2个字节长度0x0024,0x0101为服务名,0x0000表示无具体实际内容,0x0103为Host-Uniq,0x0008指有8个字节,0x0100000002000000为Host-Uniq内容。0x0104为AC-Cookie,0x0010指长度16个字节,后面的为其内容,最后4个字节的Ox00000000为填充字节。

3.2、会话阶段数据包

3.2.1、LCP协商阶段

此数据包为AC向主机发出的请求,前6个字节为目的地址,接着6个为源地址,接下来为会话阶段固定值,0x0014为净荷长度,0xc021指LCP协议,0x01指code为1,即configure_request,0x01指标识符为1,0x0012指长度,0x01指类型域为MRU(可接受最大传输单元),0x04为长度,0x05d4为其内容,0x03指AP(要求对端验证的协议),0x04指长度,0xc023指PAP认证,0x05指魔术字,06为长度,070f1a5b为内容

此数据包为主机向AC发出的请求,0x0013为净荷长度,0xc021指LCP协议,0x01指code为1,即configure_request,0x00指标识符为0,0x0011指长度,0x01指类型域为MRU(可接受最大传输单元),0x04为长度,0x05c8为其内容,0x05指魔术字,06为长度,5bed67fc为内容。

此数据包为主机对AC发送确认配置成功的信息包,0x0014为净荷长度,0xc021指LCP协议,0x02指code为2,即Configure-Ack,0x01指标识符为1,0x0012指长度,0x01指类型域为MRU(可接受最大传输单元),0x04为长度,0x05d4为其内容,0x03指AP(要求对端验证的协议),0x04指长度,0xc023指PAP认证,0x05指魔术字,06为长度,070f1a5b为内容

此数据包指主机发送的请求中配置不正确,AC向主机发送Reject包,让主机重

发Request包,此code为0x04

3.2.2、认证阶段

此数据包为被认证方主机向AC发送认证请求,如果认证通过了,才可以进行下面的网络层的协商。0xc023指PAP认证,01指code为1即Authenticate-Request,0x00为标识符,0x000e指长度,0x04指4个字节的peer-id,id号为0x6c796265,即lybe,0x04指密码,内容与id相同

此数据包为AC对主机进行认证,0xc023指PAP认证,0x02指code为2,即Authenticate-Ack,0x00为标识符,0x0005指长度。

3.2.3、IPPC协商阶段

此数据包为主机向AC进行IP请求。0x8021指协议域为IPCP,0x01指code 为1,Configuration Request,07为标识符,0x0022为长度,后面的为选项内容。对ip地址的申请。

此数据包为AC向主机宣告自己的ip地址,前面的同上。0x03060a0a0a0a指IP address:10.10.10.10

此数据包为主机对AC的确认,指自己已经知道了AC的ip地址为10.10.10.10

此数据包为AC对主机说明IP地址0.0.0.0是不合法的,让其用100.1.1.1。0x8021指协议域为IPCP,0x03为code:Configuration Nak,08为标识符,10为长度,0x030664010101指:IP address:100.1.1.1

网络协议分析题库

第一章练习 1 OSI和ISO分别代表什么含义?它们是什么关系? 2 OSI/RM模型没有被最终采用的原因是什么? 3下面哪些协议属于应用层协议?( B ) A. TCP和UDP B. DNS和FTP C. IP D. ARP 4 Internet最早是在( C ) 网络的基础上发展起来的? A. ANSNET B. NSFNET C. ARPANET D. MILNET 5 当网络A上的主机向网络B上的主机发送报文时, 路由器要检查( B ) 地址 A.端口 B. IP C.物理 D.上述都不是 6.下面哪一个是应用层提供的服务? ( D ) A.远程登录服务 B.文件传送 C.邮件服务 D.上述都是 7要将报文交付到主机上的正确的应用程序, 必须使用( A )地址 A.端口 B. IP C.物理 D.上述都不是 8. 网络应用访问操作系统的常用接口是,实现IP地址到物理地址映射的协议是。 9. 在TCP/IP协议族中,能够屏蔽底层物理网络的差异,向上提供一致性服务的协议是;实现异构网络互联的核心设备是。 10. 在TCP/IP网络中,UDP协议工作在层,DNS协议工作在层。 11判断对错:TCP/IP是一个被广泛采用的网际互联协议标准,仅包含TCP和IP两个协议。() 第二章练习 1 PPP协议是什么英文的缩写?用于什么场合? 2 ISP验证拨号上网用户身份时,可以使用哪些认证协议? 3.PPP协议的通信过程包括哪几个阶段? 4.LCP的用途是什么? 5.PPP是Internet中使用的(1),其功能对应于OSI参考模型的(2),它 使用(3)技术来解决标志字段值出现在信息字段的问题。 (1)A. 报文控制协议 B. 分组控制协议 C. 点到点协议 D. 高级数据链路控制协议 (2)A. 数据链路层 B. 网络层 C. 传输层 D. 应用层

网络协议分析——抓包分析

计算机网络技术及应用实验报告开课实验室:南徐学院网络实验室

第一部分是菜单和工具栏,Ethereal提供的所有功能都可以在这一部分中找到。第二部分是被捕获包的列表,其中包含被捕获包的一般信息,如被捕获的时间、源和目的IP地址、所属的协议类型,以及包的类型等信息。 第三部分显示第二部分已选中的包的每个域的具体信息,从以太网帧的首部到该包中负载内容,都显示得清清楚楚。 第四部分显示已选中包的16进制和ASCII表示,帮助用户了解一个包的本来样子。 3、具体分析各个数据包 TCP分析:

源端口 目的端口序号 确认号 首部长度窗口大小值

运输层: 源端口:占2个字节。00 50(0000 0000 1001 0000) 目的端口:占2个字节。C0 d6(1100 0000 1101) 序号:占四个字节。b0 fe 5f 31(1011 0000 0101 1110 0011 0001) 确认号:占四个字节。cd 3e 71 46(1100 1101 0011 1110 0110 0001 0100 0110) 首部长度:共20个字节:50(0101 0001) 窗口大小值:00 10(0000 0000 0001 00000) 网络层: 不同的服务字段:20 (0010 0000)

总的长度:00 28(0000 0000 0010 10000) 识别:81 28(1000 0001 0010 10000) 片段抵消:40 00(0100 0000 0000 0000) 生存时间:34 (0011 0100) 协议: 06(0000 0110)

网络协议分析习题解答参考思路

《网络协议分析与实现》习题解答参考思路 第1章习题解答参考思路 习题1: 该题考查对异构网络互联概念、异构网络涉及的问题以及解决方法的理解程度。其中涉及的问题包括地址问题、包格式转换问题、路由问题等,其中1.1.3节还列举了很多其他的问题。 习题2: 该题可参考教材中所讲述的用户A和用户B的数据转换和传输过程进行解答。 习题3: 该题主要考查网上查找资料的能力。在https://www.360docs.net/doc/c314723362.html,/上可以查到所有的RFC信息。 习题4: TCP/IP模型和OSI参考模型之间的层次对应关系及各层协议参见教材中的图1-5。 习题5: 该题主要考查动手能力,可以使用Wireshark(曾称为Ethereal)、Sniffer Portable 等软件进行抓包,然后针对一些具体报文进行分析。注意分析通信中的多路复用和多路分解过程,说出通信双方的物理地址、IP地址和端口地址。 习题6: 该题主要考查阅读代码的能力,这部分代码是对数据结构课程中队列操作的一个实现。该队列是一个基于优先级排序的队列,主要的数据结构是qinfo: struct qinfo { Bool q_valid; int q_type; /* mutex type */ int q_max; int q_count; int q_seen; int q_mutex; int *q_key;

char **q_elt; }; 具体操作如下: int enq(int q, void *elt, int key); /*入队列操作,根据key的大小插到队列中的合适位置*/ void * deq(int q);/*出队列操作*/ void * headq(int q);/*获取队列头部元素*/ void * seeq(int q);/*按顺序取队列元素*/ int newq(unsigned size, unsigned mtype); /*分配一个新的队列,并返回队列的索引位置*/ int freeq(int q);/*释放队列*/ int lenq(int q);/*获取队列长度*/ static int initq();/*初始化队列*/

wireshark抓包分析了解相关协议工作原理

安徽农业大学 计算机网络原理课程设计 报告题目wireshark抓包分析了解相关协议工作原理 姓名学号 院系信息与计算机学院专业计算机科学与技术 中国·合肥 二零一一年12月

Wireshark抓包分析了解相关协议工作原理 学生:康谦班级:09计算机2班学号:09168168 指导教师:饶元 (安徽农业大学信息与计算机学院合肥) 摘要:本文首先ping同一网段和ping不同网段间的IP地址,通过分析用wireshark抓到的包,了解ARP地址应用于解析同一局域网内IP地址到硬件地址的映射。然后考虑访问https://www.360docs.net/doc/c314723362.html,抓到的包与访问https://www.360docs.net/doc/c314723362.html,抓到的包之间的区别,分析了访问二者网络之间的不同。 关键字:ping 同一网段不同网段 wireshark 协议域名服务器 正文: 一、ping隔壁计算机与ping https://www.360docs.net/doc/c314723362.html,抓到的包有何不同,为什么?(1)、ping隔壁计算机 ARP包:

ping包: (2)ing https://www.360docs.net/doc/c314723362.html, ARP包:

Ping包: (3)考虑如何过滤两种ping过程所交互的arp包、ping包;分析抓到的包有

何不同。 答:ARP地址是解决同一局域网上的主机或路由器的IP地址和硬件地址的映射问题,如果要找的主机和源主机不在同一个局域网上,就会解析出网 关的硬件地址。 二、访问https://www.360docs.net/doc/c314723362.html,,抓取收发到的数据包,分析整个访问过程。(1)、访问https://www.360docs.net/doc/c314723362.html, ARP(网络层): ARP用于解析IP地址与硬件地址的映射,本例中请求的是默认网关的硬件地址。源主机进程在本局域网上广播发送一个ARP请求分组,询问IP地址为192.168.0.10的硬件地址,IP地址为192.168.0.100所在的主机见到自己的IP 地址,于是发送写有自己硬件地址的ARP响应分组。并将源主机的IP地址与硬件地址的映射写入自己ARP高速缓存中。 DNS(应用层): DNS用于将域名解析为IP地址,首先源主机发送请求报文询问https://www.360docs.net/doc/c314723362.html, 的IP地址,DNS服务器210.45.176.18给出https://www.360docs.net/doc/c314723362.html,的IP地址为210.45.176.3

PPPoE协议工作原理

4.3.2 PPPoE协议工作原理 PPPoE协议的工作流程包含发现和会话两个阶段,发现阶段是无状态的,目的是获得PPPoE 终结端(在局端的ADSL设备上)的以太网MAC地址,并建立一个唯一的PPPoESESSION_ID。发现阶段结束后,就进入标准的PPP会话阶段。 当一个主机想开始一个PPPoE会话,它必须首先进行发现阶段,以识别局端的以太网MAC 地址,并建立一个PPPoESESSION_ID。在发现阶段,基于网络的拓扑,主机可以发现多个接入集中器,然后允许用户选择一个。当发现阶段成功完成,主机和选择的接入集中器都有了他们在以太网上建立PPP连接的信息。直到PPP会话建立,发现阶段一直保持无状态的Client/Server(客户/服务器)模式。一旦PPP会话建立,主机和接入集中器都必须为PPP虚接口分配资源。 PPPoE协议会话的发现和会话两个阶段具体进程如下: 1. 发现(Discovery)阶段 在发现(Discovery)阶段中用户主机以广播方式寻找所连接的所有接入集线器(或交换机),并获得其以太网MAC地址。然后选择需要连接的主机,并确定所要建立的PPP会话识别标号。发现阶段有四个步骤,当此阶段完成,通信的两端都知道PPPoESESSION_ID和对端的以太网地址,他们一起唯一定义PPPoE会话。这四个步骤如下: (1)主机广播一个发起分组(PADI),分组的目的地址为以太网的广播地址0xffffffffffff,CODE (代码)字段值为0x09,SESSION_ID(会话ID)字段值为0x0000。PADI包必须至少包含一个服务名称类型的标签(标签类型字段值为0x0101),向接入集中器提出所要求提供的服务。(2)接入集中器收到在服务范围内的PADI包分组,发送PPPoE有效发现提供包(PADO)分组,以响应请求。其中CODE字段值为0x07 ,SESSION_ID字段值仍为0x0000。PADO分组必须包含一个接入集中器名称类型的标签(标签类型字段值为0x0102),以及一个,或多个服务名称类型标签,表明可向主机提供的服务种类。 (3)主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组(PADR)。其中CODE字段为0x19 ,SESSION_ID字段值仍为0x0000。PADR分组必须包含一个服务名称类型标签,确定向接入集线器(或交换机)请求的服务种类。当主机在指定的时间内没有接收到PADO,它应该重新发送它的PADI 分组,并且加倍等待时间,这个过程会被重复期望的次数。 (4)接入集中器收到PADR包后准备开始PPP会话,它发送一个PPPoE有效发现会话确认(PADS)分组。其中CODE字段值为0x65 ,SESSION_ID字段值为接入集中器所产生的一个惟一的PPPoE会话标识号码。PADS分组也必须包含一个接入集中器名称类型的标签确认向主机提供的服务。当主机收到PADS包确认后,双方就进入PPP会话阶段。 【注意】如果主机正在等待接收PADS分组,应该使用具有主机重新发送PADR的相似超时机制。在重试指定的次数后,主机应该重新发送PADI分组。 2. PPP会话阶段 用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行PPP会话。一旦PPPoE会话开始,PPP数据就可以以任何其它的PPP封装形式发送。所有的以太网帧都是单播的。PPPoE会话的SESSION_ID一定不能改变,并且必须是发现阶段分配的值。 PPPoE还有一个PADT分组,它可以在会话建立后的任何时候发送,来终止PPPoE会话,也就是会话释放。它可以由主机或者接入集中器发送。当对方接收到一个PADT分组,就不再允许使用这个会话来发送PPP业务。PADT包不需要任何标签,其CODE字段值为0xa7 ,SESSION_ID字段值为需要终止的PPP会话的会话标识号码。在发送或接收PADT后,即使正

网络协议分析与仿真

****** 网络协议分析与仿真 课程设计报告书 院系名称:计算机学院实验内容:网络流量分析学生姓名:*** 专业名称:网络工程班级:**** 学号:********* 时间:20**年**月**日

网络协议分析与仿真课程设计报告 网络流量分析 一、课程设计目的 加深对IP、DSN 、TCP、UDP、HTTP等协议的理解; 掌握流量分析工具的使用,学习基本的流量分析方法。 二、课程设计内容 流量分析 工具:Wireshark(Windows或Linux),tcpdump(Linux) 要求:使用过滤器捕获特定分组;用脚本分析大量流量数据(建议用perl)。 内容:Web流量分析 清除本机DNS缓存,访问某一网站主页,捕获访问过程中的所有分组,分析并回答下列问题(以下除1、3、8、11外,要求配合截图回答): (1)简述访问web页面的过程。 (2)找出DNS解析请求、应答相关分组,传输层使用了何种协议,端口号是多少? 所请求域名的IP地址是什么? (3)统计访问该页面共有多少请求IP分组,多少响应IP分组?(提示:用脚本编程实现) (4)找到TCP连接建立的三次握手过程,并结合数据,绘出TCP连接建立的完整过程,注明每个TCP报文段的序号、确认号、以及SYN\ACK的设置。 (5)针对(4)中的TCP连接,该TCP连接的四元组是什么?双方协商的起始序号是什么?TCP连接建立的过程中,第三次握手是否带有数据?是否消耗了一个 序号? (6)找到TCP连接的释放过程,绘出TCP连接释放的完整过程,注明每个TCP报文段的序号、确认号、以及FIN\ACK的设置。 (7)针对(6)中的TCP连接释放,请问释放请求由服务器还是客户发起?FIN报文段是否携带数据,是否消耗一个序号?FIN报文段的序号是什么?为什么是 这个值? (8)在该TCP连接的数据传输过程中,找出每一个ACK报文段与相应数据报文段的对应关系,计算这些数据报文段的往返时延RTT(即RTT样本值)。根据课本 200页5.6.2节内容,给每一个数据报文段估算超时时间RTO。(提示:用脚本 编程实现) (9)分别找出一个HTTP请求和响应分组,分析其报文格式。参照课本243页图6-12,在截图中标明各个字段。

完整word版pppoe原理协议详解

PPPoE(Point to Point Protocol over Ethernet,基于以太网的点对点协议)的工作流程包含发现(Discovery)和会话(Session)两个阶段,发现阶段是无状态的,目的是获得PPPoE 终端(在局端的ADSL设备上)的以太网MAC 地址,并建立一个惟一的PPPoE SESSION-ID。发现阶段结束后,就进入标准的PPP会话阶段 1.发现阶段(PPPoED:PPPoE Discovery) ) Initiation PADI(PPPoE Active Discovery1.1 主机广播发起分组,分组的目的地址为以太网的广播地址 0xffffffffffff,CODE(代码)字段值为0×09(PADI Code),SESSION-ID(会话ID)字段值为0x0000。PADI分组必须至少包含一个服务名称类型的标签(Service Name Tag,字段值为0x0101),向接入集中器提出所要求提供的服务。) Offer(PPPoE Active Discovery1.2 PADO接入集中器收到在服务范围内的PADI 分组,发送PPPoE有效发现提供包分组,以响应请求。其中CODE字段值为0×07(PADO Code),SESSION-ID字段值仍为0x0000。PADO分组必须包含一个接入集中器名称类型的标签(Access Concentrator Name Tag,字段值为0x0102),以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。PADO和PADI的值相同。Host-Uniq Tag ) Request PADR(PPPoE Active Discovery1.3主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组。其中CODE字段为0x19(PADR Code),SESSION_ID字段值仍为0x0000。PADR分组必须包含一个服务名称类型标签,确定向接入集线器(或交换机)请求的服务种类。当主机在指定的时间内没有接收到PADO,它应该重新发送它的PADI分组,时间,这个过程会被重复期望的次数。并且加倍等待)-confirmation(PPPoE Active Discovery Session1.4 PADS接入集中器收到PADR分组后准备开始PPP会话,它发送一个PPPoE有效发现会话确认PADS分组。其中CODE字段值为0×65(PADS Code),SESSION-ID字段值为接入集中器所产生的一个惟一的PPPoE 会话标识号码。PADS分组也必须包含一个接入集中器名称类型的标签以确认向主机提供的服务。当主机收到PADS 分组确认后,双方就进入PPP会话阶段。PADS值相同。的和PADRHost-Uniq Tag )PPPoES:PPPoE Session会话阶段(2. 数据包来配置和测试数据通信链路。PPP会话的建立,需要两端的设备都发送LCP 会话。一PPP用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行

IPV6抓包协议分析

IPV6协议抓包分析 一、实践名称: 在校园网配置使用IPv6,抓包分析IPv6协议 二、实践内容和目的 内容:网络抓包分析IPv6协议。 目的:对IPv6协议的更深层次的认识,熟悉IPv6数据报文的格式。 三、实践器材: PC机一台,网络抓包软件Wireshark 。 四、实验数据及分析结果: 1.IPv6数据报格式: 2. 网络抓包截获的数据:

3. 所截获的IPv6 的主要数据报为:? Internet Protocol Version 6?0110 .... = Version: 6?. (0000) 0000 .... .... .... .... .... = Traffic class: 0x00000000?.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 93 Next header: UDP (0x11)?Hop limit: 1?Source: fe80::c070:df5a:407a:902e (fe80::c070:df5a:407a:902e) Destination: ff02::1:2 (ff02::1:2) 4. 分析报文: 根据蓝色将报文分成三个部分:

第一部分: 33 33 00 01 00 02,目的组播地址转化的mac地址, 以33 33 00表示组播等效mac;00 26 c7 e7 80 28, 源地址的mac地址;86 dd,代表报文类型为IPv6 (0x86dd); 第二部分: 60,代表包过滤器"ip.version == 6"; 00 00 00,Traffic class(通信类别): 0x00000000; 00 5d,Payload length(载荷长度,即报文的最后一部分,或者说是报文携带的信息): 32; 11,Next header(下一个封装头): ICMPv6 (17); 01,Hop limit(最多可经历的节点跳数): 1; fe 80 00 00 00 00 00 00 c0 70 df 5a 40 7a 90 2e,源ipv6地址; ff 02 00 00 00 00 00 00 00 00 00 00 00 01 00 02,目的ipv6地址; 第三部分(报文携带的信息): 02,表示类型为Neighbor Solicitation (2); 22,表示Code: 38; 02 23是Checksum(校验和): 0x6faa [correct]; 00 5d 36 3a,Reserved(保留位): 00000000; fe 80 00 00 00 00 00 00 76 d4 35 ff fe 03 56 b0,是组播地址中要通信的那个目的地址; 01 01 00 23 5a d5 7e e3,表示

详解PPP及PPPoE协议,文章写得通俗易懂

PPP(Point-to-Point Protocol点到点协议),一种二层协议,通常部署在专线网和按需电路网上面,PPP 有很多丰富的可选特性,如支持多协议、提供可选的身份认证服务、可以以各种方式压缩数据、支持动态地址协商、支持多链路捆绑等等。这些丰富的选项增强了PPP的功能。同时,不论是异步拨号线路还是路由器之间的同步链路均可使用。因此,应用十分广泛 当然,在专线网上我们也可以使用HDLC二层协议,但用的并不多,原因有三: 1.不支持验证,一层通二层就通 2.不支持多种上层协议(ip/ipx/appletalk等),而PPP帧中专门有一个字段用来标示上层协议类型 3.HDLC协议为厂商私有协议,各个厂商互不兼容,但HDLC是cisco产品的默认广域网封装方式, 要使用PPP协议需要encapsulation ppp 命令改变接口封装协议 我们家庭拨号上网就是通过PPP协议在用户端和运营商的接入服务器之间建立通信链路。目前,宽带接入已基本取代拔号接入,在宽带接入技术日新月异的今天,PPP也衍生出新的应用。典型的应用是在ADSL(非对称数据用户环线,Asymmetrical Digital Subscriber Loop)接入方式当中,PPP与其他的协议共同派生出了符合宽带接入要求的新的协议,如PPPoE(PPP over Ethernet),PPPoA(PPP over ATM)。 利用以太网(Ethernet)资源,在以太网上运行PPP来进行用户认证接入的方式称为PPPoE。PPPoE 即保护了用户方的以太网资源,又完成了ADSL的接入要求,是目前ADSL接入方式中应用最广泛的技术标准。 同样,在ATM(异步传输模式,Asynchronous Transfer Mode)网络上运行PPP协议来管理用户认证的方式称为PPPoA。它与PPPoE的原理相同,作用相同;不同的是它是在ATM网络上,而PPPoE是在以太网网络上运行,所以要分别适应ATM标准和以太网标准 好的,下面我们就以点到点专线上的PPP协议和以太网上的PPPoE协议为例,详细介绍它们的工作原理、验证过程及其配置方法 一、点到点专线上的PPP协议 PPP特性有很多,但主要的特性是具备验证技术,所以在此我们主要是讨论PPP的验证。PPP的验证方式分为两种:PAP和CHAP PAP( 密码验证协议):客户端向服务器端发送验证信息,包含用户名和密码。如果用户名和密码与服务器里保存的一致,那就通过验证,否则就不能通过(通过两次握手)。 CHAP(挑战握手验证协议):CHAP首先是由服务器发起的,它向客户端发送含有random值(随机生成)、id号、用户名和密码的数据,客户端收到数据后提取random、id和用户所对应的密码使用MD5算法进行哈希(hash)得到hash值。然后再把自己保存的用户名连同id和刚得到的hash值一起发送给服务器。服务器再收到数据后也进行以上操作得到hash值,再把算得的hash值与从客户端得到的hash 值进行比较:两值相同服务器就发送一个通过的信息;两值不同服务器就发送一个拒绝的信息。可以看出,CHAP在整个验证过程中是不发送密码的,所以是一种安全的认证。 好的,下面我们就以实例来演示PAP和CHAP的配置过程 1、实验拓朴 2、配置步骤 首先我们来做个PAP认证

网络协议分析最终版

中南林业科技大学 实验报告 课程名称:网络协议与分析 姓名:项学静学号:20104422 专业班级:2010级计算机科学与技术 系(院):计算机与信息工程学院 实验时间:2013年下学期 实验地点:电子信息楼602机房

实验一点到点协议PPP 一、实验目的 1.理解PPP协议的工作原理及作用。 2.练习PPP,CHAP的配置。 3.验证PPP,CHAP的工作原理。 二、实验环境 1.安装windows操作系统的PC计算机。 2.Boson NetSim模拟仿真软件。 三、实验步骤 1、绘制实验拓扑图 利用Boson Network Designer绘制实验网络拓扑图如图1-1。 本实验选择两台4500型号的路由器。同时,采用Serial串行方式连接两台路由器,并选择点到点类型。其中DCE端可以任意选择,对于DCE端路由器的接口(Serial 0/0)需要配置时钟信号(这里用R1的Serial 0/0作为DCE端)。 2、配置路由器基本参数

绘制完实验拓扑图后,可将其保存并装入Boson NetSim中开始试验配置。配置时点击Boson NetSim程序工具栏按钮eRouters,选择R1 并按下面的过程进行路由器1的基本参数配置: Router>enable Router#conf t Router(config)#host R1 R1(config)#enable secret c1 R1(config)#line vty 0 4 R1(config-line)#password c2 R1(config-line)#interface serial 0/0 R1(config-if)#ip address 192.168.0.1 255.255.255.0 R1(config-if)#clock rate 64000 R1(config-if)#no shutdown R1(config-if)#end R1#copy running-config startup-config 点击工具栏按钮eRouters,选择R2并按下面过程进行路由器的基本参数配置:Router>enable Router#conf t Router(config)#host R2

PPPOE协议工作原理

协议的工作流程包含发现和会话两个阶段,发现阶段是无状态的,目的是PPPoE 地址,并建立一个唯一的以太网MACADSL设备上)获得PPPoE终结端(在局端的的PPPoESESSION-ID。发现阶段结束后,就进入标准的PPP会话阶段。 当一个主机想开始一个PPPoE会话,它必须首先进行发现阶段,以识别局端的以太网MAC地址,并建立一个PPPoESESSION-ID。在发现阶段,基于网络的拓扑,主机可以发现多个接入集中器,然后允许用户选择一个。当发现阶段成功完成,主机和选择的接入集中器都有了他们在以太网上建立PPP连接的信息。直到PPP会话建立,发现阶段一直保持无状态的Client/Server(客户/服务器)模式。一旦PPP会话建立,主机和接入集中器都必须为PPP虚接口分配资源。 PPPoE协议会话的发现和会话两个阶段具体进程如下。 1.发现(Discovery)阶段 在发现(Discovery)阶段中用户主机以广播方式寻找所连接的所有接入集中器(或),并获得其以太网MAC地址。然后选择需要连接的主机,并确定交换机所要建立的PPP会话标识号码。发现阶段有4个步骤,当此阶段完成,通信的两端都知道PPPoESESSION-ID和对端的以太网地址,他们一起唯一定义PPPoE会话。这 4个步骤如下。 (1)主机广播发起分组(PADI) 主机广播发起分组(PADI),分组的目的地址为以太网的广播地址0× ffffffffffff,CODE(代码)字段值为0×09,SESSION-ID(会话ID)字段值为0×0000。PADI分组必须至少包含一个服务名称类型的标签(标签类型字段值为0×0101),向接入集中器提出所要求提供的服务。 (2)接入集中器 接入集中器收到在服务范围内的PADI分组,发送PPPoE有效发现提供包(PADO)分组,以响应请求。其中CODE字段值为 0×07,SESSION-ID字段值仍为0×0000。PADO分组必须包含一个接入集中器名称类型的标签(标签类型字段值为0×0102),以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。 (3)主机选择一个合适的PADO分组 主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组(PADR)。其中 CODE字段为0×19,SESSION_ID字段值仍为0×0000。PADR分组必须包含一个服务名称类型标签, 当主机在指定的时间内没有接收请求的服务种类。)或交换机(确定向接入集线器.到PADO,它应该重新发送它的PADI分组,并且加倍等待时间,这个过程会被重复期望的次数。 (4)准备开始PPP会话 接入集中器收到PADR分组后准备开始PPP会话,它发送一个PPPoE有效发现会话确认PADS分组。其中CODE字段值为 0×65,SESSION-ID字段值为接入集 中器所产生的一个唯一的PPPoE会话标识号码。PADS分组也必须包含一个接入 集中器名称类型的标签以确认向主机提供的服务。当主机收到PADS分组确认后,双方就进入PPP会话阶段。 2.PPP会话阶段 用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行PPP 会话。一旦PPPoE会话开始,PPP数据就可以以任何其他的PPP封装形式发送。所有的以太网帧都是单播的。PPPoE会话的SESSION-ID一定不能改变,并且必

(完整word版)网络协议抓包分析

中国矿业大学《网络协议》 姓名:李程 班级:网络工程2009-2 学号:08093672

实验一:抓数据链路层的帧 一、实验目的 分析MAC层帧结构 二、准备工作 本实验需要2组试验主机,在第一组上安装锐捷协议分析教学系统,使用其中的协议数据发生器对数据帧进行编辑发送,在第二组上安装锐捷协议分析教学系统,使用其中的网络协议分析仪对数据帧进行捕获分析。 三、实验内容及步骤 步骤一:运行ipconfig命令

步骤二:编辑LLC信息帧并发送 步骤三:编辑LLC监控帧和无编号帧,并发送和捕获:步骤四:保存捕获的数据帧 步骤五:捕获数据帧并分析 使用iptool进行数据报的捕获: 报文如下图: 根据所抓的数据帧进行分析: (1)MAC header 目的物理地址:00:D0:F8:BC:E7:06 源物理地址:00:16:EC:B2:BC:68 Type是0x800:意思是封装了ip数据报 (2)ip数据报

由以上信息可以得出: ①版本:占4位,所以此ip是ipv4 ②首部长度:占4 位,可表示的最大十进制数值是15。此ip数据报没有选项,故它的最大十进制为5。 ③服务:占8 位,用来获得更好的服务。这里是0x00 ④总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为16位,所以数据报的最大长度为216-1=65 535字节。 此数据报的总长度为40字节,数据上表示为0x0028。 ⑤标识(Identification):占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号, 因为IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 在这个数据报中标识为18358,对应报文16位为47b6 ⑥标志(Flag):占3 位,但目前只有2位有意义。标志字段中的最低位记为MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。这个报文的标志是010,故表示为不分片!对应报文16位为0x40。 ⑦片偏移:因为不分片,故此数据报为0。对应报文16位为0x00。 ⑧生存时间:占8位,生存时间字段常用的英文缩写是TTL (Time To Live),其表明数据报在网络中的寿命。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1 秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。经分析,这个数据报的的TTL为64跳!对应报文16位为0x40。 ⑨协议:占8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。这个ip数据报显示使用得是TCP协议对

网络数据包的协议分析程序的设计开发—毕业设计论文

毕业设计(论文)网络数据包的协议分析程序的设计开发 论文作者姓名: 申请学位专业: 申请学位类别: 指导教师姓名(职称): 论文提交日期:

网络数据包的协议分析程序的设计开发 摘要 本文设计与实现了一个基于Linux下Libpcap库函数的网络数据包协议分析程序。程序的主要功能包括网络数据包捕获和常用网络协议分析。程序由输入/输出模块、规则匹配模块、数据捕获模块、协议分析模块组成。其中数据捕获模块和协议分析模块是本程序最关键、最主要的模块。 本文的主要内容如下:首先介绍了网络数据包协议分析程序的背景和概念。其次进行了程序的总体设计:确定了程序的功能,给出了程序的结构图和层次图,描述了程序的工作流程,对实现程序的关键技术做出了分析。接着,介绍完数据包捕获的相关背景和Libpcap函数库后,阐述了如何利用Libpcap函数库实现网络数据包捕获模块。然后对协议分析流程进行了详细的讲解,分析了常用网络协议。最后进行了程序的测试与运行:测试了程序能否按照预期的效果正确执行,印证了预期结果。 关键词:Libpcap;Linux;数据包捕获;应用层;协议识别

The Design and Development of Network Packet Protocol Analyzing Program Abstract The thesis is an attempt to introduce an implementation of network protocol analyzing program which is based on Libpcap, a famous network packet capture library on Linux. It has a rich feature set which includes capturing network packets and analyzing popular network protocols on Internet. The program is made up of an input/output module, a rules matching module, a packet capturing module and a protocol analyzing module. And the last two modules are key modules. The research work was described as followed. firstly, we introduce the background and concepts about network protocol analyzing programs; and we make an integrated design on the program, define functions of it, figure out its structure and hierarchical graphs, describe the workflow of it, and analyze the key techniques used in it; Secondly, after elaborating on the background of packet capture and the Libpcap library, we state a approach to implement a packet capture module with Libpcap; Thirdly, we explain the workflow about protocol analysis, and analyze common network protocols; Finally, we test our program to see whether it works as expected, fortunately, it does. Key words: Libpcap; Linux; Network packet capturing; Application layer; Protocol identification

TCP-IP协议抓包分析实验报告

TCP协议分析实验 学号: 姓名: 院系: 专业:

一.实验目的 学会使用Sniffer抓取ftp的数据报,截获ftp账号及密码,并分析TCP 头的结构、分析TCP的三次“握手”和四次“挥手”的过程,熟悉TCP 协议工作方式。 二.实验(软硬件以及网络)环境 利用VMware虚拟机建立网络环境,并用Serv-U FTP Server在计算机上建立FTP服务器,用虚拟机进行登录。 三.实验工具 sniffer嗅探器,VMware虚拟机,Serv-U FTP Server。 四.实验基本配置 Micrsoft Windows XP操作系统 五.实验步骤 1.建立网络环境。 用Serv-U FTP Server在计算机上建立一台FTP服务器,设置IP地址 为:,并在其上安装sniffer嗅探器。再并将虚拟机作为一台FTP客户 端,设置IP地址为:。设置完成后使用ping命令看是否连通。 2.登录FTP 运行sniffer嗅探器,并在虚拟机的“运行”中输入,点确定后出现 如下图的登录窗口: 在登录窗口中输入:用户名(hello),密码(123456)【在Serv-U FTP Server中已设定】,就登录FTP服务器了。再输入“bye”退出FTP 3.使用sniffer嗅探器抓包 再sniffer软件界面点击“stop and display”,选择“Decode”选 项,完成FTP命令操作过程数据包的捕获。 六.实验结果及分析 1.在sniffer嗅探器软件上点击Objects可看到下图:

再点击“DECODE(反解码)”按钮进行数据包再分析,我们一个一个的分析数据包,会得到登录用户名(hello)和密码(123456)。如下图: 2. TCP协议分析 三次握手: 发报文头——接受报文头回复——再发报文(握手)开始正式通信。

PPPoE协议(RFC2516)中文

A Method for Transmitting PPP Over Ethernet (PPPoE) 在以太网上传输PPP的方法 RFC2516

目录 1.前言 (3) 2.简介 (3) 3.协议总述 (3) 4.Payloads 有效载荷 (4) 5.Discovery阶段 (5) 5.1. PPPoE Active Discovery Initiation数据包(PADI) (6) 5.2. PPPoE Active Discovery Offer 数据包(PADO) (6) 5.3. PPPoE Active Discovery Request 数据包(PADR) (6) 5.4. PPPoE Active Discovery Session-confirmation 数据包(PADS) (6) 5.5. The PPPoE Active Discovery Terminate数据包(PADT) (7) 6.PPP会话阶段 (7) 7.LCP方面的考虑 (7) 8.其它方面的考虑 (8) 9.安全方面的考虑 (8) 10.参考文献 (8) 附录 A -- TAG_TYPE和TAG_VALUE (8) 附录B -- 数据包的几个例子: (10)

1.前言 点到点协议(PPP,参考文献[1])提供在点到点连路上传送多协议数据报的标准方法。 本文档描述在以太网上建立PPP会话以及封装PPP数据报的方法。 可行性 本说明书试图提供PPP所定义的工具,如链路控制协议(Link Control Protocol,LCP), 网络层控制协议(Network-layer Control Protocols, NCP),认证以及其它机制。这 些功能要求在通信双方之间存在点到点的关系,而不是在以太网和其他多访问环境 中所出现的多点关系。 本规范可用于同一个以太网上的多个主机通过一个或多个跨接(桥接)调制解调器 向多个目的主机建立PPP会话。主要用于采用提桥接以太网拓扑结构的宽带远程 访问技术中,由服务提供商维护PPP会话。 本文档描述的PPPoE是RedBack Networks, RouterWare, UUNET 及其它厂商所采 用的在以太网上封装PPP的方法。 2.简介 现代接入技术需要面对有几个互相冲突的设计目标。人们希望通过同一个家庭接入设备来连接到远程站点上的多个主机,同时(又希望在使用习惯上)提供与拨号上网(使用PPP)类似的访问控制和计费功能。在很多接入技术中,把多个主机连接到家庭接入设备的最经济的方法就是通过以太网。另外,还想尽量保持设备的低成本同时要求不改变或很少改变其配置。 以太网上的PPP(PPPoE)提供了通过简单桥接接入设备把一个网络的多个主机连接到远程接入集线器的功能。使用该模型,每一个主机使用自己的PPP协议栈,呈现给用户的还是熟悉的用户接口。访问控制、计费以及业务类型都能基于每一个用户,而不是基于站点。 为了提供以太网上的点到点连接,每一个PPP会话必须知道对端的以太网地址,并建立一个唯一的会话标识符。PPPoE包含一个(以太网地址)发现协议来提供这个功能。 3.协议总述 PPPoE分为两个阶段,即Discovery(地址发现)阶段和PPP会话阶段。当某个主机希望发起一个PPPoE会话时,它必须首先执行Discovery来确定对方的以太网MAC地址并建立起一个PPPoE会话标识符SESSION_ID。虽然PPP定义的是端到端的对等关系,Discovery却是天生的一种客户端-服务器关系。在Discovery的过程中,由主机(作为客户端)来发现接入集线器(Access Concentrator,作为服务器)。根据网络的拓扑结构,可能存在不止一个能和主机进行通信的接入集线器。Discovery阶段允许主机发现所有的接入集线器并从中选择一个。当Discovery阶段成功完成之后,主机和接入集线器两者都具备了用于在以太网上建立点到点连接所需的所有信息。

OSI七层模型的每一层都有哪些协议、PPPOE机制

OSI七层模型协议 谈到网络不能不谈OSI参考模型,OSI参考模型(OSI/RM)的全称是开放系统互连参考模型(Open System Interconnection Reference Model,OSI/RM),它是由国际标准化组织ISO 提出的一个网络系统互连模型。虽然OSI参考模型的实际应用意义不是很大,但其的确对于理解网络协议内部的运作很有帮助,也为我们学习网络协议提供了一个很好的参考...... 第一层:物理层: 物理层规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传输数据的物理媒体。只是说明标准 在这一层,数据的单位称为比特(bit)。 属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45、fddi 令牌环网等。 第二层:数据链路层802.2、802.3ATM、HDLC、FRAME RELAY 数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。 在这一层,数据的单位称为帧(frame)。 数据链路层协议的代表包括:ARP、RARP、SDLC、HDLC、PPP、STP、帧中继等。 第三层:网络层IP、IPX、APPLETALK、ICMP 网络层负责对子网间的数据包进行路由选择。网络层还可以实现拥塞控制、网际互连等功能。在这一层,数据的单位称为数据包(packet)。加密解密是在网络层完成的. 网络层协议的代表包括:IP、IPX、RIP、OSPF等。 第四层:传输层TCP、UDP、SPX 传输层是第一个端到端,即主机到主机的层次。传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。 在这一层,数据的单位称为数据段(segment)。 传输层协议的代表包括:TCP、UDP、SPX等。 第五层:会话层RPC、SQL、NFS 、X WINDOWS、ASP 会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。 第六层:表示层ASCII、PICT、TIFF、JPEG、MIDI、MPEG 表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。 第七层:应用层HTTP,FTP,SNMP等 应用层为操作系统或网络应用程序提供访问网络服务的接口。 应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等。

相关文档
最新文档