以太网协议报文格式

合集下载

常见报文格式汇总

常见报文格式汇总

附件:报文格式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)TOS1.5 PING 报文格式(需IP 封装)(8bytes)1.6 TCP 报文格式(需IP 封装)(20bytes)紧急指针有效ACK 确认序号有效PSH 接收方应该尽快将这个报文交给应用层RST 重建连接SYN 同步序号用来发起一个连接FIN 发端完成发送认务1.7UDP报文格式(需IP封装)(8bytes)1.8MPLS报文格式MPLS报文类型:以太网中0x8847(单播) 0x8848(组播) PPP类型上0x8281(MPLSCP)1.9MTU1.10TCP与UDP应用2以太网帧,TCP/IP数据报文详解其实也不是很详细,详细起来要很厚一本书,但是都是针对主要的写的以太网2的帧格式前导码:8个字节,这个主要是给信号同步的,给信号的开始传输的第一个bit定位的目的地址:6个字节,目的的MAC地址源地址:6个字节,是自己的MAC地址类型长度:2字节,辨别上层协议的数据:46-1500字节,就是上层的所有数据帧校验FCS:4字节,数据发过去的时候,会随机给个值,对端需要验证这个值,如果值不对,就说明这段数据干扰,或某种原因被修改。

modbus tcp协议报文解析

modbus tcp协议报文解析

modbus tcp协议报文解析Modbus TCP协议报文解析引言:Modbus是一种通信协议,用于在自动化系统中传输数据。

Modbus TCP是Modbus协议的一种变体,它基于TCP/IP协议栈,使用以太网作为物理传输介质。

本文将对Modbus TCP协议报文进行解析,以帮助读者理解该协议的工作原理及数据传输过程。

一、Modbus TCP协议概述Modbus TCP协议是一种以太网上的应用层协议,用于在客户端和服务器之间进行通信。

它基于TCP/IP协议栈,使用标准的以太网帧格式进行数据传输。

Modbus TCP协议支持多种功能码,包括读取和写入数据、查询设备状态等。

二、Modbus TCP协议报文格式Modbus TCP协议报文由6个部分组成,分别是事务标识符、协议标识符、长度字段、单元标识符、功能码和数据字段。

下面对每个部分进行详细解析:1. 事务标识符:事务标识符用于唯一标识一个事务,它由客户端生成,并由服务器原样返回。

事务标识符通常是一个16位的无符号整数,用于确保通信的可靠性。

2. 协议标识符:协议标识符用于表示Modbus TCP协议的版本。

它通常是一个16位的无符号整数,常用的值为0x0000。

3. 长度字段:长度字段表示整个Modbus TCP报文的字节数,包括长度字段本身。

长度字段通常是一个16位的无符号整数。

4. 单元标识符:单元标识符用于标识服务器的地址。

它通常是一个8位的无符号整数,取值范围为1-247。

客户端使用单元标识符来确定与之通信的服务器。

5. 功能码:功能码用于表示Modbus TCP报文的操作类型。

常用的功能码包括读取离散输入、读取线圈状态、读取保持寄存器、写单个寄存器等。

6. 数据字段:数据字段包含了具体的读写数据或查询结果。

数据字段的格式取决于功能码的类型,可以是一个或多个字节。

三、Modbus TCP协议报文解析示例下面以读取保持寄存器的功能码为例,对Modbus TCP协议报文进行解析:1. 客户端发送请求报文:事务标识符:0x0001协议标识符:0x0000长度字段:0x0006单元标识符:0x01功能码:0x03起始地址:0x0000寄存器数量:0x00012. 服务器返回响应报文:事务标识符:0x0001协议标识符:0x0000长度字段:0x0005单元标识符:0x01功能码:0x03字节数:0x02数据:0x00 0x10在该示例中,客户端发送了一个读取保持寄存器的请求报文,起始地址为0x0000,寄存器数量为1。

以太网帧格式、IP报文格式、TCPUDP报文格式

以太网帧格式、IP报文格式、TCPUDP报文格式

以太⽹帧格式、IP报⽂格式、TCPUDP报⽂格式1、ISO开放系统有以下⼏层:7应⽤层6表⽰层5会话层4传输层3⽹络层2数据链路层1物理层2、TCP/IP ⽹络协议栈分为应⽤层(Application)、传输层(Transport)、⽹络层(Network)和链路层(Link)四层。

通信过程中,每层协议都要加上⼀个数据⾸部(header),称为封装(Encapsulation),如下图所⽰不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在⽹络层叫做数据报(datagram),在链路层叫做帧(frame)。

数据封装成帧后发到传输介质上,到达⽬的主机后每层协议再剥掉相应的⾸部,最后将应⽤层数据交给应⽤程序处理。

其实在链路层之下还有物理层,指的是电信号的传递⽅式,⽐如现在以太⽹通⽤的⽹线(双绞线)、早期以太⽹采⽤的的同轴电缆(现在主要⽤于有线电视)、光纤等都属于物理层的概念。

3、集线器(Hub)是⼯作在物理层的⽹络设备,⽤于双绞线的连接和信号中继(将已衰减的信号再次放⼤使之传得更远)。

交换机是⼯作在链路层的⽹络设备,可以在不同的链路层⽹络之间转发数据帧(⽐如⼗兆以太⽹和百兆以太⽹之间、以太⽹和令牌环⽹之间),由于不同链路层的帧格式不同,交换机要将进来的数据包拆掉链路层⾸部重新封装之后再转发。

路由器是⼯作在第三层的⽹络设备,同时兼有交换机的功能,可以在不同的链路层接⼝之间转发数据包,因此路由器需要将进来的数据包拆掉⽹络层和链路层两层⾸部并重新封装。

4、⽹络层的IP 协议是构成Internet 的基础。

IP 协议不保证传输的可靠性,数据包在传输过程中可能丢失,可靠性可以在上层协议或应⽤程序中提供⽀持。

传输层可选择TCP 或UDP 协议。

TCP 是⼀种⾯向连接的、可靠的协议,有点像打电话,双⽅拿起电话互通⾝份之后就建⽴了连接,然后说话就⾏了,这边说的话那边保证听得到,并且是按说话的顺序听到的,说完话挂机断开连接。

IEEE802.3ah协议介绍

IEEE802.3ah协议介绍

1 、以太网OAM简介以太网技术诞生几十年来,以其简单、低廉的特点逐步成为局域网(Local Area Network)的主导技术。

随着业务和网络技术发展,设备制造商和标准化组织开始致力于将这一技术向城域网(MAN)和广域网(WAN)方向拓展。

但最大的障碍是缺乏较好的运营管理维护机制。

OAM:将网络的管理工作划分为3 大类,操作(Operation)、管理(Administration)和维护(Maintenance),简称OAM。

以太网OAM是一种监控网络问题的工具。

它工作在数据链路层,利用设备之间定时交互OAMPDU(OAM Protocol Data Units,OAM 协议数据单元)来报告网络的状态,使网络管理员能够更有效地管理网络。

2 、以太网OAM标准化过程W orking WorkingMaking it➢IEEE–IEEE 802.1ag CFM–IEEE 802.3ah EFM-OAM–IEEE 802.1AB LLDP–IEEE 802.1ap VLAN桥接的MIB➢ITU-T–ITU-T SG 13 Y.1730 以太网OAM的需求–ITU-T SG 13 Y.1731以太网OAM功能和机制➢MEF–MEF 7 EMS-NMS 信息模型–MEF15网元管理需求–MEF16以太网本地管理接口(E-LMI)–MEF17业务级OAM需求与框架电信级以太网为了实现与传统电信级传送网相同的服务水平,以太网OAM 是研究的重点之一。

IEEE、ITU-T、MEF 等各研究团体和标准组织都在积极进行技术研究和标准制定,目前这些组织所制定的标准对应的以太网OAM 层次,如上图。

IEEE 802.3ah 协议已经标准化,此协议主要用于以太网“最后一公里”上的设备管理和链路管理;802.1ag 关注于以太网端到端的故障管理;ITU-T Y.1731 在设计思路上与802.1ag 高度一致,它定义了类似的管理功能,同时对性能管理的功能和实现方法给出了定义。

TCP&UDP报文格式

TCP&UDP报文格式

TCP/UDP报文格式TCP 协议为终端设备提供了面向连接的、可靠的网络服务,UDP 协议为终端设备提供了无连接的、不可靠的数据报服务。

从上图我们可以看出,TCP 协议为了保证数据传输的可靠性,相对于UDP 报文,TCP 报文头部有更多的字段选项。

首先让我们来看一下TCP 的报文头部主要字段:每个TCP 报文头部都包含源端口号(source port)和目的端口号(destination port),用于标识和区分源端设备和目的端设备的应用进程。

在TCP/IP 协议栈中,源端口号和目的端口号分别与源IP 地址和目的IP 地址组成套接字(socket),唯一的确定一条TCP 连接。

序列号(Sequence number)字段用来标识TCP 源端设备向目的端设备发送的字节流,它表示在这个报文段中的第一个数据字节。

如果将字节流看作在两个应用程序间的单向流动,则TCP 用序列号对每个字节进行计数。

序列号是一个32bits 的数。

既然每个传输的字节都被计数,确认序号(Acknowledgement number,32bits)包含发送确认的一端所期望接收到的下一个序号。

因此,确认序号应该是上次已成功收到的数据字节序列号加1。

TCP 的流量控制由连接的每一端通过声明的窗口大小(windows size)来提供。

窗口大小用数据包来表示,例如Windows size=3, 表示一次可以发送三个数据包。

窗口大小起始于确认字段指明的值,是一个16bits 字段。

窗口大小可以调节。

校验和(checksum)字段用于校验TCP 报头部分和数据部分的正确性。

最常见的可选字段是MSS(Maximum Segment Size,最大报文大小)。

MSS指明本端所能够接收的最大长度的报文段。

当一个TCP 连接建立时,连接的双方都要通告各自的MSS 协商可以传输的最大报文长度。

我们常见的MSS有1024(以太网可达1460 字节)字节。

PPPOE拨号流程解析

PPPOE拨号流程解析

PPPOE拨号流程PPPoE(PPP overEthernet)是在以太网上建立PPP连接,由于以太网技术十分成熟且使用广泛,而PPP协议在传统的拨号上网应用中显示出良好的可扩展性和优质的管理控制机制,二者结合而成的PPPoE协议得到了宽带接入运营商的认可并广为采用。

PPPoE不仅有以太网的快速简便的特点,同时还有PPP的强大功能,任何能被PPP封装的协议都可以通过PPPoE传输。

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

以太网帧头包括:1. 目的MAC地址(该阶段为ffffffffffff的广播地址)2. 源MAC地址(客户端MAC地址)3. 以太网协议类型(该阶段为0x8863,表示为发现阶段)。

PPPoE数据报文的格式:1.PPPoE数据报文最开始的4位为版本域(Version),协议中给出了明确的规定,这个域填充的内容为0x01.2. 版本域后是4位的类型域(Type),根据协议规定,这个域填充的内容也是0x01.3. 代码域(Code)占用一个字节,对于PPPoE的不同阶段这个域内容也不一样。

4. 会话ID(Session ID)占用两个字节,当访问集中器(AccessConcentrator)还没有分配唯一的会话ID给用户主机的话,改域的内容必须填充为0x0000;一旦主机获取了会话ID后,那么在后续的所有报文里面必须填充那个唯一的会话ID。

5.PPPoE的Payload长度(Length)占两个字节。

PPPoE的Payload可以由多个TLV组成,每个包括Tag_Type,Tag_Length,Tag_Vlaue。

PPPoE建立过程可以分为Discovery阶段和PPP会话阶段。

Discovery阶段是一个无状态的阶段,该阶段主要是选择接入服务器,确定所要建立的PPP会话标识符SessionID,同时获得对方点到点的连接信息;PPP会话阶段执行标准的PPP过程一、发现阶段(Discovery)PPPoE的发现阶段一共分为4步,分别是:PADI(PPPoE Active DiscoveryInitiation),PADO(PPPoE Active Discovery Offer),PADR(PPPoE ActiveDiscovery Request),PADS(PPPoE Active DiscoverySession-confirmation)。

PPPoE协议的基本功能以及报文格式

PPPoE协议的基本功能以及报文格式

PPPoE协议调研by 00848223 刘盾PPPoE是一种在以太网上进行PPP点对点拨号连接的协议。

因为以太网属于专网,网络是直接连接的,不用拨号,所以物理层上的连接是没有问题的。

但为了确保连接安全,并且只允许合法用户连接,所以采取了类似电话拨号方式的身份验证,此时所拨的不是电话号码,而是用户的账户,属于数据链路层的协议。

PPPoE虽然是目前应用最广的一种ADSL网络协议,但它不是随着ADSL技术的出现而出现的,它是在1998年才开发出来的,主要目的是为了解决公网IP地址不足的问题。

所谓虚拟拨号是指用ADSL接入Internet时同样需要输入用户名与密码才能进行连接,与传统的模拟电话线路+MODEM、数字电话线路+ISDN Ta的接入方式不同,ADSL不是对具体的电话号码进行拨号,而是直接在局端以太网上进行身份验证。

因为事实上在没有拨号前物理网络是连通的,只是通过相应账户的身份验证登录网络系统,所以称之为“虚拟拨号”。

PPPoE技术最早是由Redback 网络公司、客户端软件开发商RouterWare公司以及Worldcom子公司“UUNET Technologies”公司,于1998年后期在IETF RFC基础上联合开发的。

通过把最经济的以太局域网和点对点协议的可扩展性和管理控制功能结合在一起,网络服务提供商和电信运营商便可利用可靠、熟悉的技术来加速部署高速互联网业务。

它使服务提供商在通过DSL、Cable MODEM或WLAN(无线局域网)等方式,提供支持多用户的宽带接入服务时更加简便易行。

而在以前,在传统的以太网模型中,我们是不存在所谓的用户计费的概念,要么用户能获取IP 地址上网,要么用户就无法上网。

IETF 的工程师们在秉承窄带拨号上网的运营思路的基础上,制定出了在以太网上传送PPP 数据包的协议——PPPoE。

这个协议出台后,各网络设备制造商也相继推出自己品牌的宽带接入服务器(BAS),使得PPPoE这种灵活的ADSL接入方式迅速得到了广泛应用。

TCPIP几种协议数据报格式简介

TCPIP几种协议数据报格式简介
z TCP 报文格式如下图:
TCP 是面向连接的可靠数据传输协议,因此比较复杂,在此仅作简单介绍。“序号”指数据在发送端数据流中 的位置。“确认号”指出本机希望下一个接收的字节的序号。与 IP 校验不同的是 TCP,UDP 校验采用伪头标加整个 报文一同校验的方法。TCP 协议工作原理另行介绍。
TCP 数据报中依次包括以下信息:
协议采用分层结构,因此,数据报文也采用分层封装的方法。下面以应用最广泛的以太网为例说明其数据报 文分层封装,如下图所示:
任何通讯协议都有独特的报文格式,TCP/IP 协议也不例外。对于通讯协议编程,我们首先要清楚其报文格式。 由于 TCP/IP 协议采用分层模型,各层都有专用的报头,以下就简单介绍以太网下 TCP/IP 各层报文格式。
1、 16 位源端口 Source Port。该部分占 16 个 BIT。通过此值,可以看出发起连接的计算机源端口号。
2、 16 位目的端口 Destination Port。该部分占 16 个 BIT。通过此值,可以看出要登录的目的端口号。
3、 32 位序列号 Initial Sequence Number。表示初始连接的请求号,即 SEQ 值。该部分占 32 个 BIT。
4、 32 位确认号 Next Expected SEQ Numbe。对方返回的 ACK 值。该部分占 32 个 BIT。
5、 4 位数据偏移 Data Offset。表示数据偏移的大小。该部分占 4 个 BIT。
6、 6 位保留位 Reserved Bites:保留位,此处不用。该部分占 6 个 BIT。
的 16 次方减 1,即:65535 个字节。因此,在以太网中能够传输的最大 IP 数据包为 65535 个字节。
5、 16 位标识号 Identification。该部分占 16 个 BIT,以十进制数表示。

报文结构

报文结构

1.以太网的报文结构DA SA TYPE DATA CRC6 6 2 46-1500 4(单位:Bytes) DA:目的Mac地址SA:源Mac地址Type:指示Mac层的上层协议类型DA TA:数据字段CRC:校验字段Vlan的帧格式DA SA Tag TYPE DA TE CRC6 6 4 2 46-1500 4(单位:Bytes)Tag:包括TPID(Tag Protocol Identifier--是IEEE定义的新的类型,表明这是一个加了802.1Q 标签的帧)和TCI(含帧的控制信息,包括Priority-优先级;CFI-值为0说明是规范格式,1为非规范格式;Vlan ID)2.HUB解决的问题共享带宽的设备,可以实现多台电脑同时使用一条数据总线来上网或组成局域网3.交换机接的的问题HUB产生的广播问题4.Vlan解决的问题Vlan是为解决以太网的广播问题和安全性而提出的,它在以太网帧的基础上增加了Vlan头,用Vlan ID把用户划分为更小的工作组,限制不同工作组间的用户二层互访,每个工作组就是一个虚拟的局域网。

虚拟局域网的好处是可以限制广播范围,并能够形成虚拟工作组,攻台管理网络5.路由器和二层交换机的区别路由工作在第三层,交换机工作在第二层路由有包交换过滤功能。

所有端口分别属于不同的广播和冲突域交换机没有包交换和过滤功能。

所有端口共享一个广播域,每个端口是一个冲突域6.OSPF的几种报文HELLO:周期性发送,用来发现和维持OSPF的邻居关系DD:描述了本地LSDB的摘要信息,用于两台路由器进行数据同步LSR:向对方请求所需的LSA,只有在双方成功交换DD报文后才会向对方发出LSR报文LSU:向对方发送其所需的LSALSAck:用来对收到的LSA进行确认7.OSPF的几种LSARouter LSA:(Type=1)每个路由器都会产生,描述了路由器的链路状态和花费,在所属区域内传播Network LSA:(Type=2)由DR产生,描述本网段的链路状态,在所属区域内传播Network Summary:(Type=3)由ABR产生,描述区域内某个网段的路由,并通告给其他区域ASBR Summary:(Type=4)由ABR产生,描述到ASBR的路由,通告给相关区域AS External LSA:(Type=5)由ASBR产生,描述到AS外部的路由,通告给除了STUB区域和NSSA区域的所有区域NSSA LSA(Type=7)由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播8.OSPF为什么划分区域如果一个区域的路由器太多,会造成LSDB过大,从而对路由器资源提出了更高的要求并会延缓了收敛的时间。

华为OptiX系列ETH PWE3特性报文格式

华为OptiX系列ETH PWE3特性报文格式

在OSN3500设备也可以说在华为的OptiX系列的设备中,以太网帧封装成PWE3报文时,报文中包含MPLS标签、控制字(可选)和Payload。

报文格式
ETH PWE3报文的格式如图1所示,由MPLS标签、控制字和Payload三部分组成。

图1 ETH PWE3报文格式
MPLS标签
MPLS标签中包括Tunnel标签和PW标签,分别用于标识Tunnel和PW。

Tunnel 标签和PW标签的格式相同,具体请参见MPLS标签。

控制字
ETH PWE3报文的控制字是可选的,长度为4字节,包括如下字段:
∙0000:必须填充全0,长度为4bit。

∙Reserved:保留位,长度为12bit。

∙Sequence number:表示ETH PWE3报文发送的序列号,长度为16bit。

初始值随机产生,每发送一个报文增加1。

Payload
Payload表示ETH PWE3报文中封装的以太网帧,每个ETH PWE3报文中只能封装一个以太网帧。

具体的封装方式与设置的PW封装模式有关。

最详尽的各种协议报文及个字段分析

最详尽的各种协议报文及个字段分析

∙以太帧格式∙VLAN帧格式∙QinQ帧格式∙PPP帧格式∙PPPoE报文格式∙HDLC帧格式∙ATM信元格式∙STP/RSTP/MSTP帧格式∙RPR帧格式∙RRPP帧封装格式∙LACP报文格式∙以太OAM报文格式∙ERPS帧格式∙LLDP报文格式∙IS-IS报文格式以太帧格式∙Ethernet Ⅱ以太帧∙Netware以太帧格式∙802.3 SAP以太帧∙802.3 LLC SNAP以太帧格式∙ARP/RARP报文格式∙GRE报文格式∙ICMP报文格式∙ICMPv6报文格式∙IGMP报文格式∙IP in IP报文格式∙IP报文格式∙IPv6报文格式∙IPv6 in IP (6to4)报文格式∙MLD报文格式∙OSPF报文格式∙OSPFv3报文格式∙PIM报文格式∙RSVP报文格式∙VRRP报文格式Ethernet Ⅱ以太帧帧格式图1 Ethernet Ⅱ帧格式帧示例QinQ帧格式QinQ报文有固定的格式,就是在802.1Q的标签之上再打一层802.1Q标签,QinQ报文比802.1Q报文多四个字节。

VLAN帧最小帧长为68字节。

帧格式图1 QinQ帧格式帧示例图2 QinQ帧VLAN帧格式帧格式IEEE 802.1Q标准对Ethernet帧格式进行了修改,在源MAC地址字段和协议类型字段之间加入4字节的802.1Q Tag。

VLAN帧最小帧长为64字节。

图1 VLAN帧格式帧示例图2 VLAN帧STP/RSTP/MSTP帧格式STP帧格式图1 STP帧格式RSTP帧格式在BPDU的格式上,除了保证和STP格式基本一致之外,RSTP作了一些小的变化。

一个是在Type字段,配置BPDU类型不再是0而是2,版本号也变成了2。

所以运行STP的交换机收到该类BPDU时会丢弃。

另一个变化是在Flag字段,把原来保留的中间6位使用起来。

这样改变了的配置BPDU叫做RST BPDU。

RSTP Flag字段格式:∙Bit7:TCA∙Bit6:Agreement∙Bit5:Forwarding∙Bit4:Learning∙Bit3和Bit2:端口角色▪00:未知▪01:根端口▪10:Alternate / Backup▪11:指定端口∙Bit1:Proposal∙Bit0:TCMSTP帧格式多生成树协议MSTP是生成树协议的一种,用于消除网络环路,它兼容生成树协议STP和快速生成树RSTP协议,并且弥补了两者的缺陷。

以太网协议详情报文格式

以太网协议详情报文格式

以太网协议详情报文格式1.以太网帧首部(Ethernet Header):- 目的MAC地址(Destination MAC Address):6个字节,表示接收方的物理地址。

- 源MAC地址(Source MAC Address):6个字节,表示发送方的物理地址。

- 类型或长度(Type or Length):2个字节,表示数据的类型或长度。

2.有效载荷数据(Payload Data):- 数据(Data):46-1500个字节,表示待传输的数据。

3.填充(Padding):- 填充(Padding):0-46个字节,用于填充以太网帧的长度。

4.帧校验序列(Frame Check Sequence):-帧校验序列(FCS):4个字节,用于校验以太网帧的完整性。

在以太网协议中,各个字段的含义如下:1.目的MAC地址:表示帧的接收方的物理地址。

每个网络接口都有一个唯一的MAC地址。

2.源MAC地址:表示帧的发送方的物理地址。

同样,每个网络接口都有一个唯一的MAC地址。

3.类型或长度:标识有效载荷数据的类型或长度。

当该字段的值小于等于1500时,表示长度;当值大于1500时,表示数据的类型。

4.数据:是待传输的数据,可以是其他高层协议的报文,如IP数据报等。

5.填充:为了使帧达到最小长度而填充的虚拟数据。

以太网帧要求长度至少为64个字节,如果数据字段长度不足,则需要填充。

6.帧校验序列:用于检测帧中是否发生错误。

发送方在发送帧时,通过计算帧中除了FCS字段之外所有字段的CRC校验值,并将该值存储在FCS字段中。

接收方在接收到帧时,同样通过计算帧中的CRC校验值,并与FCS字段中的值进行比较,以确定帧是否被损坏。

以太网协议使用的是分组式交换技术,即将数据拆分为一系列的帧进行传输。

每个帧都独立传输且具有不同的目的MAC地址,在传输过程中可以经过多个设备,如交换机、路由器等。

每个设备根据帧中的目的MAC地址进行决策,以将帧转发到正确的接口。

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

常见网络协议报文格式汇总
UDP 8bytes UDP数据
IP首部 20bytes 源端口 16bits UDP长度 16bits
目的端口 16bits UDP检验和 16bits
8.
MPLS报文格式
MPLS标签(可以有多个) IP报文
二层头
Label value 20bits MPLS报文类型: 以太网中 0x8847(单播) PPP类型上 0x8281(MPLSCP) 协议名称 ICMP TCP UDP OSPF 1 数据包格式(RFC894)
源MAC地址 6 bytes 源MAC地址 6 bytes Type/Length 2 bytes Type/Length 2 bytes Payload 46-1500 bytes Payload FCS(CRC) 4 bytes FCS 4 bytes Ethernet Ⅱ 帧格式: 目的MAC地址 6 bytes VLAN帧格式: 目的MAC地址 6 bytes
EXP 3bits 0x8848(组播)
栈底标记 1bit
TTL 8bits
协议号
9.
MTU
网 络 MTU字节 65535 17914 4464 4352 1500 1492 576 296
超通道 16Mb/s令牌环(IBM) 4 Mb/s令牌环(IEEE 802.5) FDDI 以太网 IEEE 802.3/802.2 X.25 点对点(低时延)
10. TCP与UDP应用
UDP RIP 广播、多播 TFTP(S:69) BOOTP(S:67 D:68) SNMP (Admin:162 Proxy:161) TCP FTP(21) TELNET(23) Rlogin SMTP
2. 以太网帧,TCP/IP数据报文详解

tcpip协议报文格式

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)可以根据这些字段的值进行路由决策。

以太网协议封装格式

以太网协议封装格式

字号:大中小一、以太网链路层协议封装格式以太网数据在网络介质上传输需要遵循一定的机制,其中CSMA/CD介质访问控制机制约定了以太网在传输数据时,两帧之间需要等待一个帧间隙时间(IFG或IPG),为以太网接口提供了帧接收之间的恢复时间,该恢复时间最小值为传输96bit所花费的时间,对于10M线路,该时间为9.6uS,100M线路为960nS,1G的线路为96nS。

同时以太网数据帧在传输时还需要有7byte的前导字段和1byte的定界符。

因此以太网数据在传输过程中是由以下部分组成的:7byte(前导)+1byte(定界符)+以太网数据帧+12byte(IPG)。

在全双工工作模式下,如果CSMA/CD介质访问控制机制发现传输冲突时,则会放弃当前帧发送,改为发送一个48比特的噪声帧。

其中以太网数据帧限制为最小长度为64byte,最大长度为1518byte,其格式为:6byte(目的MAC地址)+6byte(源MAC地址)+2byte(类型字段)+数据字段+4byte(FCS校验字段)。

其中帧类型字段标识其后的数据类型。

这里值得注意的是区分Ethernet II帧格式和802.3帧格式的不同,我们有时可能会混用了这两个术语。

Ethernet II帧是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox在1982年公布标准,Ethernet II可以支持TCP/IP,Novell IPX/SPX,Apple Talk Phase I等协议,其比较常见的类型字段为:0X0800(IP 帧),0X0806(ARP请求/应答帧),0X8035(PARP请求/应答帧),0X8137(Novell IPX),0X809b(Apple Talk)。

RFC 894定义了IP报文在Ethernet II上的封装格式。

802.3帧将Ethernet II帧头中的类型字段替换为帧长度字段(取值范围为0X0000-0X05dc,不包括CRC检验码),因此对于接收到的帧,如果类型字段取值范围为0X0000-0X05dc,则可以判断其为802.3帧,而非Ethernet II帧。

BPDU报文分析

BPDU报文分析

BPDU报文分析
2009-09-02 15:04:38| 分类:Data communicati | 标签:|字号大中小订阅
1.报文格式
以太网帧头:包括DLC头部、LLC头。

接下来是BPDU字段。

最后是为了补齐60字节边界用的DLC填充(Padding)8字节(注意,BPDU帧也经常被封装在802.1Q头部后)。

2.BPDU协议报文结构
3.BPDU报文以太网帧头sniffer分析
●BPDU采用的是多播目标MAC地址:01-80-c2-00-00-00(Bridge_group_addr:网桥组多播地址)
●DLC后面所跟的802.3帧的总长度为38字节,是指除了DLC头、尾之外的所有内容的长度
4.BPDU报文sniffer分析
●协议标识符和协议版本都是固定的0。

●BPDU类型表明是一个配置BPDU
●BPDU标志字段表明这既不是一个拓扑变更帧也不是一个拓扑变更确认帧随后是根网桥标识,其中:
●优先级是0x8000,即10进制的32768(默认值)
●MAC基地址:00:04:28:d2:09:00
随后是根网桥代价:0(表示本交换机就是根网桥)
随后是发送网桥ID,其中:
●优先级是0x8000,即10进制的32768(默认值)
●MAC基地址:00:04:28:d2:09:00
●端口:发送此BPDU的交换机端口
最后是一些定时器的值:
●消息年龄:当前为0
●消息寿命:20秒(默认值)
●根hello时间:2秒(发送BPDU的时间间隔)
●转发延迟:15秒(交换机端口处于侦听、学习状态的时间)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

T C P/I P协议族IP/TCPTelnet和R login、FTP以及SMTPIP/UDPDNS 、TFTP、BOOTP、SNMPICMP是IP协议的附属协议、IGMP是Internet组管理协议ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换I P层和网络接口层使用的地址。

1、以太帧类型以太帧有很多种类型。

不同类型的帧具有不同的格式和MTU值。

但在同种物理媒体上都可同时存在。

72–1530 octets84–1542 octets▪标签协议识别符(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)一个0x0800的以太类型说明这个帧包含的是IPv4数据报。

同样的,一个0x0806的以太类型说明这个帧是一个ARP帧,0x8100说明这是一个IEEE 802.1Q帧,而0x86DD说明这是一个IPv6帧,而0x 8864有PPPoE 封装(其他以太网类型见附2)1、以太网PAUSE帧IEEE 802.3x是全双工以太网数据链路层的流控方法。

当客户终端向服务器发出请求后,自身系统或网络产生拥塞时,它会向服务器发出PAUSE帧,以延缓服务器向客户终端的数据传输。

有关交换机的流量控制机制:定义:流量控制用于防止在端口阻塞的情况下丢帧,这种方法是当发送或接收缓冲区开始溢出时通过将阻塞信号发送回源地址实现的。

流量控制可以有效的防止由于网络中瞬间的大量数据对网络带来的冲击,保证用户网络高效而稳定的运行。

两种控制流量的方式:1,在半双工方式下,即半双工背压控制,是通过反向压力(backpressure)即我们通常说的背压计数实现的,这种计数是通过向发送源发送jamming信号使得信息源降低发送速度。

2,在全双工方式下,流量控制一般遵循IEEE 802.3X标准,是由交换机向信息源发送“pause”帧令其暂停发送。

采用流量控制,使传送和接受节点间数据流量得到控制,可以防止数据包丢失。

PAUSE帧格式:MAC控制帧通过其唯一的类型域标识符(0x8808)识别。

pause格式:目的地址:组播地址(01-80-C2-00-00-01)源地址:类型:8808MAC控制操作码:2个字节0x0001 (Pause帧仅是MAC控制帧的一种,对于Pause帧,其在MAC控制帧中的操作码为00-01;)MAC控制操作参数域:2个字节代表要求对方停止的时间。

(MAC控制参数域,包含用于MAC控制相关的参数。

对于Pause帧,此处应填入要求对端设备暂停发送的时间长度,由两个字节 (16位)来表示该长度,每单位长度为物理层芯片发送512位数据的时间。

所以发送一次Pause帧,要求对端设备暂停发送的时间长度为:0-65535×(512/以太网传输速率)。

)保留域。

2、以太网VLAN帧格式一、IEEE 802.1Q 标签帧格式7B 1B 6B 6B 4B 2B 42-1496B 4BVlan tag:4字节,包含2个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI),TCI 字段具体又分为:priorty、CFI、Vlan ID,具体格式如下所示:2B 3b 1b 12b⏹TPID(标签协议标识):2字节,用于标识帧的类型,其值为0x8100时表示802.1Q/802.1P的帧。

设备可以根据这个字段判断对它接收与否。

⏹TCI(标签控制信息字段):2字节,包括用户优先级(User Priority)、规范格式指示器(Canonical Format Indicator)和VLAN ID。

●User Priority:3个bti,表示帧的优先级,取值范围0~7,值越大优先级越高,用于802.1p。

●CFI,1bit,值为0代表MAC地址是以太帧的MAC,值为1代表MAC地址是FDDI、令牌环网的帧。

●VID(VLAN ID):12bit,表示VLAN的值。

12bit共可以表示4096个VLAN,实际上,由于VID 0和4095被802.1Q协议保留,所以VLAN的最大个数是4094(1-4094)个(据说VID=0 用于识别帧优先级。

4095(FFF)作为预留值)二、IEEE 802.1ad(QinQ)帧格式基本概念IEEE 802.1ad的全称是“Virtual Bridged Local Area Networks Amendment 4: Provider Bridges”,该协议的目标是业务提供商在为客户提供业务时使客户间的服务相互独立,没有相互依赖关系,同时尽量做到业务提供商透明地为客户提供业务。

该标准描述了业务提供商(运营商)如何利用和扩展802.1Q在一个统一的网络中为相互独立的客户提供以太网业务。

QinQ技术〔也称Stacked VLAN 或Double VLAN〕。

标准出自IEEE 802.1ad,其实现将用户私网VLAN Tag封装在公网VLAN Tag中,使报文带着两层VLAN Tag穿越运营商的骨干网络(公网)。

在公网中报文只根据外层VLAN Tag(即公网VLAN Tag)传播,用户的私网VLAN Tag被屏蔽。

带双层VLAN Tag的报文结构,802.1ad的报文格式,基本同前面我们所讲的QinQ报文格式一致,主要的区别就是802.1ad中重新定义了TPID的值和把原来的CFI位修改为DEI (丢弃标识)位,如下图所示:• C-VLAN:Customer VLAN,是用户网络内部使用的VLAN;• S-VLAN:Service VLAN,服务提供商网络中使用的VLAN,该VLAN标识VPN用户或者是用户的业务;• Customer Bridge:Customer网络中的Bridge,只能识别C-VLAN;• Provider Bridge:服务提供商网络中的Bridge,根据处理内容的不同又分为S-VLAN Bridge 和Provider Edge Bridge。

其中S-VLAN Bridge只能识别S-VLAN; Provider Edge Bridge可以同时识别C-VLAN和S-VLAN;•C-VLAN Component:在Bridge内可识别、插入、删除C-VLAN的实体,每个端口一个,对C-VLAN的操作互相独立(两个端口上接收到相同的C-VLAN,但由于属于不同的客户最后的处理结果会不同);• S-VLAN Component:在Bridge内可识别、插入、删除S-VLAN的实体,由于在一个Bridge 内不存在相同的S-VLAN属于不同服务提供商的情况,因此在一个桥内只有一个S-VLAN 的实体。

QinQ技术上完全可以多层堆叠,没有限制,仅受Ethernet报文长度的限制,具有很好的扩充性。

对于QinQ,业界有多种不同的称呼,比如Tag in Tag、VLAN VPN、StackVLAN、SVLANQinQ每增加一层VLAN标签,就可以将所覆盖的用户VLAN数量增加4096倍,两层VLAN标签可以支持4K×4K VLAN,一般来说两层VLAN就可以满足绝大多数需求了。

相对基于MPLS的二层VPN,QinQ具有如下特点:为用户提供了一种更为简单的二层VPN隧道;不需要信令协议的支持,可以通过纯静态配置实现;由于QinQ的实现是基于802.1Q协议中的Trunk端口概念,要求隧道上的设备都必须支持802.1Q协议。

QinQ主要可以解决如下几个问题:缓解日益紧缺的公网VLAN ID资源问题;用户可以规划自己的私网VLAN ID,不会导致和公网VLAN ID冲突;为小型城域网或企业网提供一种较为简单的二层VPN解决方案;QinQ实现过程如图3 所示:图 3 QinQ功能示意图图3中CE交换机上行报文带有内层Vlan标签,报文到达汇聚交换机后,汇聚交换机可以根据不同的交换机端口给报文打上相应的外层标签,这样汇聚交换机每端口可以支持4KVlan 的接入。

QinQ报文封装QinQ的报文封装就是在原有802.1Q报文中的TAG头上再加上一层TAG封装,用来扩展VLAN的范围,如图1所示:图1 QinQ报文封装QinQ的报文转发过程在通过QinQ实现简单的二层VPN过程中报文是按如下方式转发:图2 QinQ报文转发过程图2中在运营商网中使用VLAN20来标识客户A、VLAN30标识客户B,当客户A的报文到达运营商的边缘交换机时,边缘交换机均给客户A的报文打上一个外层标签(VLAN20),然后在VLAN20中转发,不会转发到VLAN30,报文在离开运营商网络时再剥离掉外层的标签,转发到用户A的网络,从而实现一个简单二层VPN功能。

QinQ报文的TPID值可调功能TPID(Tag Protocol Identifier,标签协议标识)是VLAN Tag中的一个字段,IEEE 802.1Q 协议规定该字段的取值为0x8100。

IEEE 802.1Q协议定义的以太网帧的Tag报文结构如下:图3 IEEE 802.1Q报文结构通常在QinQ中设备的内外层标签的TPID值均采用协议规定的0x8100,但是某些厂商的设备将QinQ报文外层Tag的TPID值设置为0x9100或0x9200,为了和这些设备兼容,并提供较高的灵活性,我司支持QinQ功能的交换机基本上均提供了QinQ报文TPID值可调功能(需要注意有的设备整机支持,有的设备是端口支持),能修改QinQ设备的外层标签的TPID值。

相关文档
最新文档