文档库 最新最全的文档下载
当前位置:文档库 › 网络协议分析与编程-05_ Internet控制报文协议ICMP

网络协议分析与编程-05_ Internet控制报文协议ICMP

第5章Internet控制报文协议ICMP

要求:

1、掌握ICMP协议的作用和报文类型

2、掌握ICMP协议的回送、时戳、掩码请求与应答报文

3、掌握ICMP的路由器恳求与通告报文

4、掌握ICMP的差错报告报文

5、掌握Ping, Traceroute命令

6、了解拥塞控制和路径控制技术

如:配置错误导致选路回路。

四、ICMP协议与IP协议的关系

1. ICMP与IP同层,只是IP软件中的一个模块。(1)功能不独立,只是IP的补充;

(2)不是上层协议赖以存在的基础。

2. ICMP报文封装在IP数据报中传送,其

域指明为ICMP报文(代码为1)。

5.2 ICMP报文格式和类型

一、报文格式

数据区…

二、报文类型

通知类请求/应答类功能重定向(改变路由)源站抑制时戳应答时戳请求路由器通告路由器恳求地址掩码应答地址掩码请求回送应答回送请求数据报参数错误数据报超时目的站不可达ICMP 报文类型54

14

13

9

10

18

17

网络控制

8

12

11

差错报告3

类型值

ICMP 报文类型

5.3 请求/应答报文

一.检测可达性:回送请求与应答(Echo & Echo Reply)

说明:

1. 用Ping命令可以查看记录路由选项

UNIX:Ping –R,Windows:Ping –r

处理过程:Ping报文(ICMP Echo

中,每个处理该IP报文的路由器都把自己的

到IP首部的选项中。

这些地址被复制到封装回应报文(

的IP首部选项中,若选项中仍有空间,则返回路径上路由器的地址也被记录其中。

2. Ping命令可以指定自由源路由和松散源路由

Ping –j host list

Ping –k host list

四、自动获得默认路由并动态调整:恳求报文,寻找默认路由器。

路由器通告报文的使用时机:

2.路由器定期(通常为10分钟,而一条路由的生命期通常为30分钟)向相邻网络中各主机发通告报文,告诉(组播或有限广播)各主机可使用的路由器。

作用:

1. 主机可以不必配置默认网关。

2. 使用软状态技术,防止主机保持一个无效路由。

5.4 ICMP差错报告报文

一、ICMP差错报告的特点

对所请求的服务类型,主机不可达12对所请求的服务类型,网络不可达11

出于管理需要,禁止与目的主机通信10

出于管理需要,禁止与目的网络通信9

源主机被隔离8

目的主机未知7

目的网络未知6

源路由失败5

需要分片但DF 置位(不能进行分片)4

端口不可达(UDP 或TCP 报文中的端口无效)3

协议不可达(不能识别数据报中标识的上层协议)2

主机不可达(交付失败)1

网络不可达(选路失败)0

含义

代码值

ICMP 目的站不可达报文“代码”字段的取值及含义

二、超时报告:TTL = 0或分片重组超时

数据报首部+ 数据报首部的前64字节

5.5 ICMP控制报文

一、拥塞控制与源站抑制

拥塞:

源站抑制,即抑制信源发出数据报的速

二.路径控制和重定向报文:更新主机路由表

问题:

答案:

IP数据报首部+ 数据报首部的前64字节

一、域名报文

ICMP域名请求报文

是一个知名的安全协议套件,也是IPv6所使用的安

5.7 应用举例

一、Traceroute(Windows系统:tracert)

1、功能

(1)查看IP数据报所经过的路径

(2)可指定IP源路由选项

问题:有了IP记录路由选项和Ping命令,为何还需要Traceroute?

(1)不是所有的路由器都支持记录路由选项

(2)Ping记录下来的地址翻了一番(一来一回)

(3)IP首部中记录路由选项空间有限

2、traceroute工作原理

ICMP超时报文+ IP首部的TTL

(1) 发送IP数据报,TTL = 1,则到达第一个路由器后TTL = 0,该路由器向源端发送ICMP

文封装在IP数据报中,源端收到该报文后提取

的IP地址字段,则记录了第一个路由器。

(2) 发送IP数据报,TTL = 2,记录第二个路由器。……

如何判断何时到达目的主机?

实验五 IEEE 802.3协议分析和以太网

郑州轻工业学院本科 实验报告 题目:IEEE 802.3协议分析和以太网学生姓名:王冲 系别:计算机与通信工程学院 专业:网络运维 班级:网络运维11-01 学号:541107110123 指导教师:熊坤 2014 年10 月28 日

实验五IEEE 802.3协议分析和以太网 一、实验目的 1、分析802.3协议 2、熟悉以太网帧的格式 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为windows;Ethereal、IE等软件。 三、实验步骤 1.俘获并分析以太网帧 (1)清空浏览器缓存(在IE窗口中,选择“工具/Internet选项/删除文件”命令)。

(2)启动Ethereal,开始分组俘获。 (3)在浏览器的地址栏中输入: https://www.wendangku.net/doc/1614599029.html,/ethereal-labs/HTTP-ethereal-lab-file3.html,浏览器将显示冗长的美国权力法案。

(4)停止分组俘获。首先,找到你的主机向服务器https://www.wendangku.net/doc/1614599029.html,发送的HTTP GET报文的分组序号,以及服务器发送到你主机上的HTTP 响应报文的序号。其中,窗口大体如下。 选择“Analyze->Enabled Protocols”,取消对IP复选框的选择,单击OK。窗口如下

(5)选择包含HTTP GET 报文的以太网帧,在分组详细信息窗口中,展开EthernetII 信息部分。根据操作,回答1-5 题 (6)选择包含HTTP 响应报文第一个字节的以太网帧,根据操作,回答6-10 题2.ARP (1)利用MS-DOS命令:arp 或c:\windows\system32\arp查看主机上ARP缓存的内容。根据操作,回答11题。 (2)利用MS-DOS命令:arp -d * 清除主机上ARP缓存的内容。 (3)清除浏览器缓存。 (4)启动Ethereal,开始分组俘获。 (5)在浏览器的地址栏中输入: https://www.wendangku.net/doc/1614599029.html,/ethereal-labs/HTTP-ethereal-lab-file3.html,浏览器将显示冗长的美国权力法案。 (6)停止分组俘获。选择“Analyze->Enabled Protocols”,取消对IP复选框的选择,单击OK。窗口如下。根据操作,回答12-15题。 四、实验报告内容

网络协议报文格式大集合

可编辑 目录 1 序、 (2) 1.1 协议的概念 (2) 1.2 TCP/IP体系结构 (2) 2 链路层协议报文格式 (2) 2.1 Ethernet报文格式 (2) 2.2 802.1q VLAN数据帧(4字节) (3) 2.3 QinQ帧格式 (4) 2.4 PPP帧格式 (4) 2.5 STP协议格式 (5) 2.5.1 语法 (5) 2.5.2 语义 (6) 2.5.3 时序 (8) 2.6 RSTP消息格式 (9) 2.6.1 语法 (9) 2.6.2 语义 (11) 2.6.3 时序 (13) 3 网络层协议报文 (14) 3.1 IP报文头 (14) 3.2 ARP协议报文 (16) 3.2.1 语法 (16) 3.2.2 语义 (17) 3.2.3 时序 (17) 3.3 VRRP协议报文 (18) 3.3.1 语法 (18) 3.4 BGP协议报文 (19) 3.4.1 语法 (19) 3.4.2 语义 (25)

1 序、 1.1 协议的概念 协议由语法、语义和时序三部分组成: 语法:规定传输数据的格式; 语义:规定所要完成的功能; 时序:规定执行各种操作的条件、顺序关系; 1.2 TCP/IP体系结构 TCP/IP协议分为四层结构,每一层完成特定的功能,包括多个协议。本课程实验中相关协议的层次分布如附图3-1所示。 图1-1TCP/IP协议层次 这些协议之间的PDU封装并不是严格按照低层PDU封装高层PDU的方式进行的,附图3-2显示了Ethernet帧、ARP分组、IP分组、ICMP报文、TCP报文段、UDP数据报、RIP报文、OSPF报文和FTP报文之间的封装关系。 图1-2各协议PDU间的封装关系 2 链路层协议报文格式 2.1 Ethernet报文格式 最新的IEEE 802.3标准(2002年)中定义Ethernet帧格式如下:

计算机网络使用网络协议分析器捕捉和分析协议数据包样本

计算机网络使用网络协议分析器捕捉和分析协议数据包样 本 计算机网络使用网络协议分析器捕捉和分析协议数据包广州大学学生实验报告开课学院及实验室:计算机科学与工程实验室11月月28日学院计算机科学与教育软件学院年级//专业//班姓名学号实验课程名称计算机网络实验成绩实验项目名称使用网络协议分析器捕捉和分析协议数据包指导老师熊伟 一、实验目的 (1)熟悉ethereal的使用 (2)验证各种协议数据包格式 (3)学会捕捉并分析各种数据包。 本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。 文档如有不当之处,请联系本人或网站删除。 二、实验环境1.MacBook Pro2.Mac OS3..Wireshark 三、实验内容,验证数据帧、IP数据报、TCP数据段的报文格式。 ,,分析结果各参数的意义。 器,分析跟踪的路由器IP是哪个接口的。 对协议包进行分析说明,依据不同阶段的协议出分析,画出FTP 工作过程的示意图a..地址解析ARP协议执行过程b.FTP控制连接建立过程c.FTP用户登录身份验证过程本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。

文档如有不当之处,请联系本人或网站删除。 d.FTP数据连接建立过程 e.FTP数据传输过程 f.FTP连接释放过程(包括数据连接和控制连接),回答以下问题:a..当访问某个主页时,从应用层到网络层,用到了哪些协议?b.对于用户请求的百度主页(),客户端将接收到几个应答报文??具体是哪几个??假设从是本地主机到该页面的往返时间是RTT,那么从请求该主页开始到浏览器上出现完整页面,一共经过多长时间??c.两个存放在同一个服务器中的截然不同的b Web页(例如,,和d.假定一个超链接从一个万维网文档链接到另一个万维网文档,由于万维网文档上出现了差错而使超链接指向一个无效的计算机名,这时浏览器将向用户报告什么?e.当点击一个万维网文档时,若该文档除了次有文本外,,那么需要建立几次TCP连接和个有几个UDP过程?本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。 文档如有不当之处,请联系本人或网站删除。 析,分析ARP攻击机制。 (选做),事实上,TCP开始发送数据时,使用了慢启动。 利察用网络监视器观察TCP的传输和确认。 在每一确认到达之后,慢启动过程中发生了什么?(选做),,TCP 必须准备重发初始段(用于打开一个连接的一个段)。 TCP应等多久才重发这一段?TCP应重发多少次才能宣布它不能打开一个连接?为找到结果尝试向一个不存在的地址打开一个连接,并使用网络监视器观察TCP的通信量。

以太网协议

以太网协议 历史上以太网帧格式有五种: 1 E thernet V1:这是最原始的一种格式,是由Xerox P ARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在 1980年由DEC,Intel和Xerox标准化形成E thernet V1标准; 2 E thernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARP A。 这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DE C,Intel和Xerox在1982年公布其标准,主要更改了E thernet V1的电气特性和物理接口,在帧格式上并无变化;E thernet V2出现后迅速取代E thernet V1成为以太网事实标准;E thernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。 常见协议类型如下: 0800 IP 0806 ARP 0835 RARP 8137 Novell IPX 809b Apple Talk 如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是E thernet V2(ARP A)类型了,而是下面讲到的三种802.3帧类型之一;E thernet可以支持TCP/IP,Novell IP X/SP X,Apple Talk P hase I等协议;RFC 894定义了IP 报文在E thernet V2上的封装格式; 在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(P reamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的 作用是使接收节点进行同步并做好接收数据帧的准备。 ——P R:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010..... ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位 是11而不是10. ——DA:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF, 则是广播地址,广播地址的数据可以被任何网卡接收到. ——SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同样是6个字节. ----TYP E:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。如:0800H 表示数据为IP包,0806H 表示数据为ARP包,814CH是SNMP包,8137H为IP X/SP X包,(小于0600H的值是用于IEEE802 的,表示数据包的长度。) ----DATA:数据段,该段数据不能超过1500字节。因为以太网规定整个传输包的最大长度不能超过1514字节。 (14字节为DA,SA,TYP E)

以太网用什么协议-

竭诚为您提供优质文档/双击可除 以太网用什么协议? 篇一:以太网协议报文格式 tcp/ip协议族 ip/tcp telnet和Rlogin、Ftp以及smtpip/udp dns、tFtp、bootp、snmp icmp是ip协议的附属协议、igmp是internet组管理协议 aRp(地址解析协议)和RaRp(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换ip层和网络接口层使用的地址。 1、 以太帧类型 以太帧有很多种类型。不同类型的帧具有不同的格式和mtu值。但在同种物理媒体上都可同时存在。 标签协议识别符(tagprotocalidentifier,tpid):一组16位元的域其数值被设定在0x8100以用来辨别某个 ieee802.1q的帧为已被标签的,而这个域所被标定位置与乙

太形式/ 长度在未标签帧的域相同,这是为了用来区别未标签的帧。优先权代码点(prioritycodepoint,pcp):以一组3位元的域当作优先权的参考,从0(最低)到7(最高),用来对资料流(音讯、影像、档案等等)作传输的优先级。 标准格式指示(canonicalFormatindicator,cFi):1位 元的域。若是这个域的值 为1,则mac地指则为非标准格式;若为0,则为标准格式;在乙太交换器中他通常默认为0。在乙太和令牌环中,cFi用来做为两者的相容。若帧在乙太端中接收资料则cFi 的值须设为1,且这个端口不能与未标签的其他端口桥接。虚拟局域网识别符(Vlanidentifier,Vid):12位元的域,用来具体指出帧是属于 哪个特定Vlan。值为0时,表示帧不属于任何一个Vlan;此时,802.1q标签代表优先权。16位元的值0x000和0xFFF 为保留值,其他的值都可用来做为共4094个Vlan的识别符。在桥接器上,Vlan1在管理上做为保留值。这个12位元的域可分为两个6位元的域以延伸目的(destination)与源(source)之48位元地址,18位元的(triple-tagging)可和原本的48位元相加成为66位元的地址。 0、以太网的封装格式(RFc894)

TCPIP等协议报文格式

TCP/IP等协议报文格式 应用层(Application) HTTP、Telnet、FTP、SNMP、SMTP 传输层(transport) TCP、UDP 网间层(Internet) IP-ARP、RARP、ICMP 网络接口层(NETwork)Ethernet、X.25、SLIP、PPP 以太网数据报文封装格式 TCP报文 TCP数据区 TCP IP报文 IP数据区 IP 帧头 帧数据区

ETH 前导 目的地址 源地址 帧类型 数据 CRC 长度 8 6 6 2 46~1500 4 用户填充数据60~1514 8字节前导用于帧同步,CRC用于帧校验,此2类数据可由网卡芯片自动添加。目的地址和源地址是指网卡的物理地址,即MAC地址,多数情况下具有唯一性。帧类型或协议类型——0X0806为ARP协议,0X0800为IP协议。 ARP/RARP (地址解析/反向地址解析)报文格式 0~7

8~15 16~23 24~31 硬件协议 协议类型 硬件地址长度 协议地址长度 操作 发送者硬件地址(字节0~3) 发送者硬件地址(字节4~5) 发送者IP地址(字节0~1) 发送者IP地址(字节2~3) 目的硬件地址(字节0~1) 目的硬件地址(字节2~5) 目的IP地址(字节0~3) 硬件类型——发送者本机网络接口类型(以太网=1) 协议类型——发送者所提供/请求的高级协议地址类型(IP协议=0x0800)操作——ARP请求=1,ARP响应=2,RARP请求=3,RARP响应=4

IP数据报头格式如下表0~3 4~7 8~11 12~15 16~18 19~31 4位 版本 4位 包头长度 8位 服务类型(TOS) 16位 总长度 16位 标识号(ID号) 3位 Flag 13位 片偏移 8位 生存时间 8位 协议类型 16位

常见网络协议报文格式汇总

附件:报文格式 1.1Ethernet数据包格式(RFC894) 1、DstMac的最高字节的最低BIT位如果为1,表明此包是以太网组播/广播包, 送给CPU处理。 2、将DstMac和本端口的MAC进行比较,如果不一致就丢弃。 3、获取以太网类型字段Type/Length。 0x0800→IP 继续进行3层的IP包处理。 0x0806→ARP 送给CPU处理。 0x8035→RARP 送给CPU处理。 0x8863→PPPoE discovery stage 送给CPU处理。 0x8864→PPPoE session stage 继续进行PPP的2层包处理。 0x8100→VLAN 其它值当作未识别包类型而丢弃。 1.2PPP数据包格式 1、获取PPP包类型字段。 0x0021→IP 继续进行3层的IP包处理。 0x8021→IPCP 送给CPU处理。 0xC021→LCP 送给CPU处理。 0xc023→PAP 送给CPU处理。 0xc025→LQR 送给CPU处理。 0xc223→CHAP 送给CPU处理。 0x8023→OSICP 送给CPU处理。 0x0023→OSI 送给CPU处理。 其它值当作未识别包类型而丢弃。

1.3 ARP 报文格式(RFC826) |←----以太网首部---->|←---------28字节ARP 请求/应答 ------ 1.4 IP 报文格式(RFC791)(20bytes) TOS 1.5 PING 报文格式(需IP 封装)(8bytes) 1.6 TCP 报文格式(需IP 封装)(20bytes)

紧急指针有效 ACK 确认序号有效 PSH 接收方应该尽快将这个报文交给应用层 RST 重建连接 SYN 同步序号用来发起一个连接 FIN 发端完成发送认务 1.7 UDP 报文格式(需IP 封装)(8bytes) 1.8 MPLS 报文格式 MPLS 报文类型: 以太网中 0x8847(单播) 0x8848(组播) PPP 类型上 0x8281(MPLSCP)

以太网协议的规则

以太网协议 2007-08-25 16:45:54| 分类:默认分类|字号订阅 历史上以太网帧格式有五种: 1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准; 2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco 名称为:ARPA。 这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox 在1982年公布其标准,主要更改了Ethernet V1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代Ethernet V1成为以太网事实标准;Ethernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。 常见协议类型如下: 0800 IP 0806 ARP 0835 RARP 8137 Novell IPX 809b Apple Talk 如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是Ethernet V2(ARPA)类型了,而是下面讲到的三种802.3帧类型之一;Ethernet可以支持TCP/IP,Novell IPX/SPX, 在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(Preamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。 ——PR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M 的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010..... ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位是11而不是10.

网络协议:传输层协议报文信息分析

网络协议实验报告 实验名称:传输层协议报文承载信息分析 实验目的:进一步熟悉协议分析工具软件使用,分析传输层报文承载的信息,掌握传输层协议工作的基本原理。 实验内容: 1、熟练应用与传输层有关的程序命令netstat、telnet; 2、截取浏览网页时和即时通讯时的数据报文,分析是基于UDP还是基于TCP(即时通讯程序可选择QQ、MSN),并分析每种应用各自的端口号(分客户端和服务端); 3、通过协议分析软件分析TCP和UDP的报文格式;分析MSS和MTU 的关系,认识TCP报文中携带MSS的时机。 4、截取有关数据报文,分析TCP建立连接时“三次握手”的过程。可通过telnet应用程序帮助建立的TCP连接,也可对基于TCP的应用程序工作时的TCP连接进行截取数据报。 5、截取有关数据报文,分析TCP断开连接时“四次握手”的过程。 6、在进行大量的数据上传或下载时(比如基于HTTP或FTP的较大文件的上传),通过协议分析观察是否有流量和拥塞控制的表征。 实验日期:2010-12-09 实验步骤: (1)学习使用netstat 和telnet 命令 在命令窗口中输入 netstat /?即可得到所有命令(如图下)

当前网络的TCP、UDP连接状态(如图)

(2)telnet 命令(如图) 使用telnet https://www.wendangku.net/doc/1614599029.html, 80 远程登录中国矿业大学服务器,使用三次TCP连接(如图) (3)截取浏览网页时和即时通讯时的数据报文,分析是基于UDP还是基于TCP (即时通讯程序可选择QQ、MSN),并分析每种应用各自的端口号(分客户端和服务端); A、捕获浏览器浏览网页时的数据报文是基于TCP 其对应的源端口号:客户端是:3575 服务端是:80 (如图)

以太网协议报文格式

T C P/I P协议族

IP/TCP Telnet和R login、FTP以及SMTP IP/UDP DNS 、TFTP、BOOTP、SNMP ICMP是IP协议的附属协议、IGMP是Internet组管理协议 ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换I P层和网络接口层使用的地址。 1、以太帧类型 以太帧有很多种类型。不同类型的帧具有不同的格式和MTU值。但在同种物理媒体上都可同时存在。

?标签协议识别符(Tag Protocal Identifier, TPID): 一组16位元的域其数值被设定在0x8100以用来辨别某个IEEE 802.1Q的帧为已被标签的,而这个域所被标定位置与乙太形式/长度在未标签帧的域相同,这是为了用来区别未标签的帧。 ?优先权代码点(Priority Code Point, PCP): 以一组3位元的域当作IEEE 802.1p 优先权的参考,从0(最低)到7(最高),用来对资料流(音讯、影像、档案等等)作传输的优先级。 ?标准格式指示(Canonical Format Indicator, CFI): 1位元的域。若是这个域的值为1,则MAC地指则为非标准格式;若为0,则为标准格式;在乙太交换器中他通常默认为0。在乙太和令牌环中,CFI用来做为两者的相容。若帧在乙太端中接收资料则CFI的值须设为1,且这个端口不能与未标签的其他端口桥接。?虚拟局域网识别符(VLAN Identifier, VID): 12位元的域,用来具体指出帧是属于哪个特定VLAN。值为0时,表示帧不属于任何一个VLAN;此时,802.1Q标签代表优先权。16位元的值0x000和0xFFF为保留值,其他的值都可用来做为共4094个VLAN的识别符。在桥接器上,VLAN1在管理上做为保留值。这个12位元的域可分为两个6位元的域以延伸目的(Destination)与源(Source)之48位元地址,18位元的三重标记(Triple-Tagging)可和原本的48位元相加成为66位元的地址。 0、以太网的封装格式(RFC 894) IEEE 802.2/802.3(RFC 1042)

http协议数据包格式

竭诚为您提供优质文档/双击可除http协议数据包格式 篇一:数据包格式 tcp/ip协议族包括诸如internet协议(ip)、地址解析协议(aRp)、互联网控制信息协议(icmp)、用户数据报协议(udp)、传输控制协议(tcp)、路由信息协议(Rip)、telnet、简单邮件传输协议(smtp)、域名系统(dns)等协议。tcp/ip 协议的层次结构如图3所示。 图3tcp/ip协议层次结构 (1)应用层应用层包含一切与应用相关的功能,相当于osi的上面三层。我们经常使用的http、Ftp、telnet、smtp 等协议都在这一层实现。 (2)传输层传输层负责提供可靠的传输服务。该层相当于osi模型中的第4层。在该层中,典型的协议是 tcp(transmissioncontrolprotocol)和 udp(userdatagramprotocol)。其中,tcp提供可靠、有序的,面向连接的通信服务;而udp则提供无连接的、不可靠用户数据报服务。 (3)网际层网际层负责网络间的寻址和数据传输,其功

能大致相当于osi模型中的第3层。在该层中,典型的协议是ip(internetprotocol)。 (4)网络接口层最下面一层是网络接口层,负责数据的实际传输,相当于osi模型中的第1、第2层。在tcp/ip协议族中,对该层很少具体定义。大多数情况下,它依赖现有的协议传输数据。 tcp/ip与osi最大的不同在于osi是一个理论上的网络通信模型,而tcp/ip则是实际运行的网络协议。tcp/ip实际上是由许多协议组成的协议簇。图4示出tcp/ip的主要协议分类情况。 整个过程: 1.dhcp请求ip地址的过程 l发现阶段,即dhcp客户端寻找dhcp服务器的阶段。客户端以广播方式发送dhcpdiscoVeR包,只有dhcp服务器才会响应。 l提供阶段,即dhcp服务器提供ip地址的阶段。dhcp 服务器 接收到客户端的dhcpdiscoVeR报文后,从ip地址池中选择一个尚未分配的ip地址分配给客户端,向该客户端发送包含租借的ip地址和其他配置信息的dhcpoFFeR包。 l选择阶段,即dhcp客户端选择ip地址的阶段。如果有多台dhcp服务器向该客户端发送

IGMP报文格式及协议分析

1、多播:用于向多个目的地址传送数据。 多播地址:地址由固定的4位1110 + 28位多播组ID构成,范围从224.0.0.0到239.255.255.255。 2、主机组:能够接收发往一个特定多播组地址数据的主机集合。一些多播组地址被IANA 确定为知名地址,他们也被当作永久主机组。例如:224.0.0.1代表“该子网内的所有系统组”,224.0.0.2代表“该子网内的所有路由器组”。多播地址224.0.1.1用作网络时间协议NTP。 3、多播组地址到以太网地址的转换 IANA(互联网数字分配机构)拥有一个以太网地址块,即高位24bit为00:00:5e,这意味着该地址块所拥有的地址范围从00:00:5e:00:00:00到00:00:5e:ff:ff:ff。IANA将其中的一半分配为多播地址。为了指明一个多播地址,任何一个以太网地址的首字节必须是01,这意味着与IP多播相对应的以太网地址范围从01:00:5e:00:00:00到01:00:5e:7f:ff:ff。 将多播地址的低23位映射到以太网地址的低23位,高25位为固定的24位的01:00:5e 加1位0。这样就从多播组ip地址得到了对应的多播组mac地址。 由于多播组地址的高5位(即1110的后5位)在映射过程中被忽略,因此每个以太网多播地址对应的多播组不是唯一的,由于地址映射不是唯一的,所有需要设备驱动程序或IP 层对数据报进行过滤。 4、IGMP:internet组管理协议 用于让一个物理网络上的所有系统知道主机当前所在的多播组。多播路由器使用IGMP 报文来记录与该路由器相连网络中组成员的变化情况,首先,主机发送加入组播组报文到组播组,为了可靠,可以采取定时发送的方式向组播组发送加入报告报文。同时组播组也会定发送查询报文,收到查询报文后回复报告报文。如果主机已经离开了组播组则在收到查询报文后不发送报告报文。IGMP被当做IP层的一部分,IGMP报文通过IP数据报进行传输。其数据格式如下: 20字节的IP首部+8字节的IGMP报文

Wireshark的数据包截获及协议分析

Wireshark的数据包截获与协议分析 1 引言 在数据包的截获方面,Winpcap 是一个可在 Windows 环境下运行的包俘获结构,它由三部分组成:一个数据包截获驱动程序、一个底层动态链接库(Packet.dll)和一个高层静态链接库(wpcap.lib)。它的核心部分是数据包俘获驱动程序,在 Windows NT/2000 系统中,它实现为一个内核驱动程序(packet.sys),在 Windows 95/98 系统中是一个虚拟设备驱动程序 (packet.vxd), 包俘获驱动程序通过NDIS(Network Driver Interface Specification)同网络适配器的驱动程序进行通信,NDIS 是网络代码的一部分,它负责管理各种网络适配器以及在适配器和网络协议软件之间的通信。在库的高层是一个动态链接库(packet.dll)和一个静态链接库 (wpcap.lib),这两个库的作用是将俘获应用程序同包俘获驱动程序相隔离,屏蔽低层的实现细节,避免在程序中直接使用系统调用或 IOCTL 命令,为应用程序提供系统独立的高层接口(API 函数),从而在 Windows9x、Windows2000/XP 系统下,对驱动程序的系统调用都是相同的。 使用 Winpcap,我们可以编写出用于网络协议实验分析、故障诊断、网络安全和监视等各种应用程序,这方面的一个典型例子就是可在 Windows 系统下运行的 Wireshark,Wireshark 和 Winpcap 都可从网上下载,通过 Wireshark 我们可以从网上拦截数据包并对

数据包进行网络协议分析,下面介绍一个分析实例。

网络协议报文格式大集合

目录 1序、 (2) 1.1 协议的概念 (2) 1.2 TCP/IP体系结构 (2) 2链路层协议报文格式 (2) 2.1 Ethernet报文格式 (2) 2.2 802.1q VLAN数据帧(4字节) (3) 2.3 QinQ帧格式 (4) 2.4 PPP帧格式 (4) 2.5 STP协议格式 (5) 2.5.1 语法 (5) 2.5.2 语义 (6) 2.5.3 时序 (8) 2.6 RSTP消息格式 (9) 2.6.1 语法 (9) 2.6.2 语义 (11) 2.6.3 时序 (13) 3网络层协议报文 (14) 3.1 IP报文头 (14) 3.2 ARP协议报文 (16) 3.2.1 语法 (16) 3.2.2 语义 (17) 3.2.3 时序 (17) 3.3 VRRP协议报文 (18) 3.3.1 语法 (18) 3.4 BGP协议报文 (19) 3.4.1 语法 (19) 3.4.2 语义 (25)

1 序、 1.1 协议的概念 协议由语法、语义和时序三部分组成: 语法:规定传输数据的格式; 语义:规定所要完成的功能; 时序:规定执行各种操作的条件、顺序关系; 1.2 TCP/IP体系结构 TCP/IP协议分为四层结构,每一层完成特定的功能,包括多个协议。本课程实验中相关协议的层次分布如附图3-1所示。 图1-1TCP/IP协议层次 这些协议之间的PDU封装并不是严格按照低层PDU封装高层PDU的方式进行的,附图3-2显示了Ethernet帧、ARP分组、IP分组、ICMP报文、TCP报文段、UDP数据报、RIP报文、OSPF报文和FTP报文之间的封装关系。 图1-2各协议PDU间的封装关系 2 链路层协议报文格式 2.1 Ethernet报文格式 最新的IEEE 802.3标准(2002年)中定义Ethernet帧格式如下:

ARP协议的报文格式

ARP协议的报文格式 结构ether_header定义了以太网帧首部;结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答;ether_arp结构除了包含arphdr结构外,还包含源主机和目的主机的地址。 定义常量 #define EPT_IP 0x0800 /* type: IP */ #define EPT_ARP 0x0806 /* type: ARP */ #define EPT_RARP 0x8035 /* type: RARP */ #define ARP_HARDWARE 0x0001 /* Dummy type for 802.3 frames */ #define ARP_REQUEST 0x0001 /* ARP request */ #define ARP_REPLY 0x0002 /* ARP reply */ 定义以太网首部 typedef struct ehhdr { unsigned char eh_dst[6]; /* destination ethernet addrress */ unsigned char eh_src[6]; /* source ethernet addresss */ unsigned short eh_type; /* ethernet pachet type */ }EHHDR, *PEHHDR; 定义以太网arp字段 typedef struct arphdr { //arp首部 unsigned short arp_hrd; /* format of hardware address */ unsigned short arp_pro; /* format of protocol address */ unsigned char arp_hln; /* length of hardware address */ unsigned char arp_pln; /* length of protocol address */ unsigned short arp_op; /* ARP/RARP operation */

(完整版)协议分析--数据报格式

两种不同的MAC帧格式 常用的以太网MAC帧格式有两种标准,一种是DIX Ethernet V2标准,另一种是IEEE的802.3标准。如下图所示,为便于理解,图中假定网络层使用的是IP协议。实际上使用其他的协议也是可以的。 现在MAC帧最常用的是以太网V2的格式,它较为简单,由5个字段组成。前两个字段分别为6字节长的目的地址和源地址字段。第三个字段是2字节的类型宇段,用来标志上一层使用的是什么协议,以便把收到的MAC 帧的数据上交给上一层的这个协议。施乐公司负责管理这个类型字段的代码分配。例如,当类型字段的值是0x0800时,就表示上层使用的是IP数据报。 若类型字段的值为0x8137,则表示该帧是由Novell IPX发过来的。第四个字段是数据字段,但它的正式名称是MAC客户数据宇段,其长度在46到1500字节之间。最后一个字段是4字节的帧检验序列FCS。 当数据字段的长度小于46字节时,MAC子层就会在数据字段的后面加入一个整数字节的填充字段,以保证以太网的MAC帧长不小于64字节。我们应当注意到,MAC帧的首部并没有指出数据字段的长度是多少。在有填充字段的情况下,接收端的MAC子层在剥去首部和尾部后就将数据字段和填充字段一起交给上层协议。 然而IEEE 802.3标准规定的MAC帧则较为复杂。它和以太网V2的MAC

帧的区别是: (1)第三个字段是长度/类型字段。根据长度/类型字段的数值大小,这个字段可以表示MAC帧的数据字段长度(请注意:不是整个MAC帧的长度),也可以等同于以太网V2的类型字段。具体地讲: 若长度/类型字段的数值小于MAC帧的数据字段的最大值1500(字节),这个字段就表示MAC帧的数据字段长度。 若长度/类型字段的数值大于0x0600(相当于十进制的1536),那么这个数值就不可能表示以太网有效的数据字段长度,因而这个字段就表示类型。 当长度/类型字段表示类型时,802.3的MAC帧和以太网V2的MAC帧一样。当长度/类型字段表示长度时,MAC帧就必须装入802.2标准定义的LLC子层的LLC帧。 从图中可看出,在传输媒体上实际传送的要比MAC帧还多8个字节。这是因为当一个站在刚开始接收MAC帧时,由于尚未与到达的比特流达成同步,因此MAC帧的最前面的若干个比特就无法接收,结果使整个的MAC 成为无用的帧。为了达到比特同步,从MAC子层向下传到物理层时还要在帧的前面插入8字节(由硬件生成),它由两个字段构成。第一个字段共7个字节,称为前同步码(1和0交替的码)。前同步码的作用是使接收端在接收MAC帧时能够迅速实现比特同步。第二个字段是帧开始定界符,定义为10101011,表示在这后面的信息就是MAC帧了。在MAC子层的FCS的检验范围不包括前同步码和帧开始定界符。顺便指出,在广域网点对点通讯中使用同步传输的HDLC规程时则不需要用前同步码,因为在同步传输时收发双方的比特同步总是一直保持着的。 802.3标准规定凡出现下列情况之一的即为无效的MAC帧: (1)MAC客户数据字段的长度与长度字段的值不一致; (2)帧的长度不是整数个字节; (3)用收到的帧检验序列FCS查出有差错; (4)收到的帧的MAC客户数据字段的长度不在46—1500字节之间。考虑到MAC帧首部的长度是18字节,可以得出有效的MAC帧长度为64~1518字节之间。 对于检查出的无效MAC帧就简单地丢弃。以太网不负责重传丢弃的帧。 当MAC客户数据字段的长度小于46字节时,则应加以填充(内容不限)。这样,整个MAC帧(包含14字节首部和4字节尾部)的最小长度是64字节,或512bit。 MAC子层的标准还规定了帧间最小间隔为9.6us,相当于96bit的发送时间。这就是说,一个站在检测到总线开始空闲后,还要等待9.6us才能发送

网络协议数据报文格式

协议数据报文格式 1、TCP/IP 协议层次 TCP/IP 协议分为四层结构,每一层完成特定的功能,包括多个协议。本课程实验中相关协议的层次分布如附图3-1所示。 附图3-1 TCP/IP 协议层次 这些协议之间的PDU 封装并不是严格按照低层PDU 封装高层PDU 的方式进行的,附图3-2显示了Ethernet 帧、ARP 分组、IP 分组、ICMP 报文、TCP 报文段、UDP 数据报、RIP 报文、OSPF 报文和FTP 报文之间的封装关系。 附图3-2 各协议PDU 间的封装关系 2、Ethernet 帧格式 最新的IEEE 802.3标准(2002 年)中定义Ethernet 帧格式如下: 其中,类型/长度值小于1536(0x0600)时表示数据字段的长度,大于等于1536 (0x0600)时表示数据字段的协议类型。类型/长度值0x0800表示帧中封装的数据为IP 分组,类型值0x0806表示帧中封装的数据为ARP 分组。 3、IP 分组格式(RFC 791) 4、ARP 分组格式(RFC 826) 操作代码值1表示ARP 请求分组,操作代码值2表示ARP 响应分组。 Ethernet 帧 标志(3 bits ): 不分片(D ): 0=可以分片 1=不能分片 还有分片(M ): 0=最后的分片 1=还有更多分片 协议:1=ICMP 89=OSPF 6=TCP 17=UDP 底层协议(Ethernet ) IP 、ARP 、ICMP TCP 、UDP RIP 、OSPF 、FTP

5、ICMP 报文格式(RFC 792) ICMP 回送请求和回送应答报文: ICMP 目的不可达报文: ICMP 超时报文: 6、TCP 报文段格式(RFC 793) 7、RIP 报文格式(版本1-RFC 1058,版本2-RFC2453) RIP 请求报文在某些RIP 路由表项超时或路由器刚接入互联网时发送,请求报文可 以询问特定路由或所有路由。路由器在回应请求报文时发送携带被询问路由信息的RIP 响应报文,也可以定期(30秒)发送携带整个路由表信息的RIP 响应报文。 控制比特: ACK 确认字段有效 PSH 请求推操作 RST 连接复位 SYN 同步序号 FIN 终止连接 代码: 0 TTL 超时 1 分片重组超时 31 bits 8 16 代码: 0 网络不可达 4 需分片但被禁止 1 主机不可达 5 源路由失败 2 协议不可达 6 目的网络未知 3 端口不可达 7 目的主机未知 类型: 0 回送应答 8 回送请求 31 bits 硬件类型: 0x0001=以太网 0x0800=IP 协议

tcpip协议报文格式

1、IP报文格式 IP协议是TCP/IP协议族中最为核心的协议。它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制。在局域网环境,IP协议往往被封装在以太网帧(见本章1.3节)中传送。而所有的TCP、UDP、ICMP、IGMP数据都被封装在IP数据报中传送。如图2-3所示: 图2-3TCP/IP报文封装 图2-4是IP头部(报头)格式:(RFC 791)。 图2-4IP头部格式 其中: ●版本(Version)字段:占4比特。用来表明IP协议实现的版本号,当前一般为IPv4,即0100。 ●报头长度(Internet Header Length,IHL)字段:占4比特。是头部占32比特的数字,包括可选项。普通IP数据报(没有任何选项),该字段的值是5,即160比特=20字节。此字段最大值为60字节。 ●服务类型(Type of Service ,TOS)字段:占8比特。其中前3比特为优先权子字段(Precedence,现已被忽略)。第8比特保留未用。第4至第7比特分别代表延迟、吞吐量、可靠性和花费。当它们取值为1时分别代表要求最小时延、最大吞吐量、最高可靠性和最小费用。这4比特的服务类型中只能置其中1比特为1。可以全为0,若全为0则表示一般服务。服务类型字段声明了数据报被网络系统传输时可以被怎样处理。例如:TELNET 协议可能要求有最小的延迟,FTP协议(数据)可能要求有最大吞吐量,SNMP协议可能要求有最高可靠性,NNTP(Network News Transfer Protocol,网络新闻传输协议)可能要求最小费用,而ICMP协议可能无特殊要求(4比特全为0)。实际上,大部分主机会忽略这个字段,但一些动态路由协议如OSPF(Open Shortest Path First Protocol)、IS-IS (Intermediate System to Intermediate System Protocol)可以根据这些字段的值进行路由决策。 ●总长度字段:占16比特。指明整个数据报的长度(以字节为单位)。最大长度为65535字节。

分析IP协议数据包格式

实验名称: 分析IP协议数据包格式 实验目的: 掌握IP协议的作用和格式; 理解IP数据包首部各字段的含义; 掌握IP数据包首部校验和的计算方法。 实验器材: 计算机及以太网环境。 实验内容(步骤): 1.打开Wireshark软件,选择菜单命令“Capture” “Interfaces…”子菜单项。弹 出“Wireshark: Capture Interfaces”对话框。单击“Options”按钮,弹出“Wireshark: Capture Options”对话框。单击“Start”按钮开始网络数据包捕获。 2.浏览外部网站,确保协议分析软件能够捕获足够的网络数据包,单击“Stop”按 钮,中断网络协议分析软件的捕获进程,主界面显示捕获到的数据包。 几乎所有的高层协议都使用IP协议进行网络传输,只有ARP和RARP报文不被封装在IP数据报中。 3.观察协议树区中IP数据包各个字段的长度与值,是否符合IP报文格式。

对帧61的IP数据包进行分析 Internet Protocol互联网协议( IP )源:61.135.163.233,目标:192.168.1.2 Version(版本):一个4字节的字段。表示当前正运行的IP版本信息。上图中版本的信息是IPv4。 Header length IP(报头长度):一个4字节的字段,表示以32比特为单位的信息中数据包报头的长度。这是所有报头信息的总长度。上图为20字节 Differentiated services Filed(服务的类别):一个8字节的字段,表示一个特定的上层协议所分配的重要级别。 Differentiated Services Codepoint(差分服务代码点6位):默认的DSCP值是0,相当于尽力传送。 two-bit Explicit Congestion Notification field(2位明确的拥塞通知字段) ECN-Capable Transport:(ECN Explicit Cogestion Notification -Capable Transport):显式拥塞指示能力传输字段,该ECN-Capable Transport (ECT) bit将被数据发送者设置,以表明传输协议的末端节点有ECN的能力。 ECT bit设置为“ 0 ”表明该传输协议将忽略ignore CE bit。这是ECT bit的默认值。 ECT bit设置为“ 1 ”表示该传输协议愿意willing并and能够参与在ECN。

相关文档