当前位置:文档之家› 网络协议报文格式大集合

网络协议报文格式大集合

可编辑目录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帧格式如下:图2-1以太网报文格式●其中,类型/长度值小于1536(0x0600)时表示数据字段的长度,大于等于1536(0x0600)时表示数据字段的协议类型。

类型/长度值0x0800表示帧中封装的数据为IP分组,类型值0x0806表示帧中封装的数据为ARP分组。

●Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4)最大长度为1518字节(6+6+2+1500+4)。

其中前12字节分别标识出发送数据帧的源节点MAC地址和接收数据帧的目标节点MAC地址。

(注:ISL封装后可达1548字节,802.1Q封装后可达1522字节)●接下来的2个字节标识出以太网帧所携带的上层数据类型,如下:IPv4: 0x0800ARP:0x0806PPPoE:0x8864802.1Q tag: 0x8100IPV6: 0x86DDMPLS Label:0x8847●在不定长的数据字段后是4个字节的帧校验序列(Frame. Check Sequence,FCS)2.2 802.1q VLAN数据帧(4字节)图2-2VLAN数据帧结构●Type:长度为2字节,取值为0x8100,表示此帧的类型为802.1Q Tag帧。

●PRI:长度为3比特,可取0~7之间的值,表示帧的优先级,值越大优先级越高。

该优先级主要为QoS差分服务提供参考依据(COS)。

●CFI 字段标识MAC 地址在不同的传输介质中是否以标准格式进行封装,长度为1bit,取值为0 表示MAC 地址以标准格式进行封装,为1 表示以非标准格式封装,缺省取值为0●VLAN Identifier (VID): 长度12bits,可配置的VLAN ID取值范围为1~4094。

通常vlan0和vlan 4095预留,vlan1为缺省vlan,一般用于网管。

2.3 QinQ帧格式图2-3QinQ帧结构2.4 PPP帧格式图2-4PPP帧格式PPP报文的内容是指Address、Control、Protocol和Information四个域的内容。

各字段的含义如下。

●Flag域Flag域标识了一个物理帧的起始和结束,该字节为0x7E。

●Address域PPP协议是被运用在点对点的链路上,它可以唯一标识对方。

因此使用PPP协议互连的两个通信设备无须知道对方的数据链路层地址。

所以该字节已无任何意义,按照协议的规定将该字节填充为全1的广播地址。

●Control域同Address域一样,PPP数据帧的Control域也没有实际意义,按照协议的规定通信双方将该字节的内容填充为0x03。

Address和Control域一起表示了此报文为PPP报文,即PPP报文头为FF03。

●Protocol域协议域可用来区分PPP数据帧中信息域所承载的数据报文的内容。

图2-5Protocol协议域●Information域信息域最大长度是1500字节,其中包括填充域的内容。

信息域的最大长度等于PPP协议中MRU(Maximum Receive Unit)的缺省值。

2.5 STP协议格式2.5.1 语法图2-6STP报文格式以太网报文头:●目的mac地址―目的地址是一个固定的桥的组播地址(0x0180c2000000)●源MAC地址―即发送该配置消息的桥MAC地址●长度/类型―这里表示帧长●LLC Header ―固定的链路头-0x424203●Payload ― BPDU数据BPDU数据:●Protocol ID ―恒为0。

●Version ―恒为0。

●Type ―决定该帧中所包含的两种 BPDU 格式类型(配置 BPDU 或 TCN BPDU)。

●Flags ―标志活动拓朴中的变化,包含在拓朴变化通知(Topology ChangeNotifications)的下一部分中。

如下图:STP只使用了第0和第7比特位。

图2-7STP报文的flags字段●Root BID ―包括有根网桥的网桥 ID。

会聚后的网桥网络中,所有配置 BPDU 中的该字段都应该具有相同值(单个 VLAN)。

NetXRay 可以细分为两个 BID 子字段:网桥优先级和网桥 MAC 地址。

●Root Path Cost ―通向有根网桥(Root Bridge)的所有链路的积累资本。

●Sender BID ―创建当前 BPDU 的网桥 BID。

对于单交换机(单个 VLAN)发送的所有BPDU 而言,该字段值都相同,而对于交换机与交换机之间发送的 BPDU 而言,该字段值不同)●Port ID ―每个端口值都是唯一的。

端口1/1值为0×8001,而端口1/2 值为0×8002。

●Message Age ―记录 Root Bridge 生成当前 BPDU 起源信息的所消耗时间。

●Max Age ―保存 BPDU 的最长时间,也反映了拓朴变化通知(Topology ChangeNotification)过程中的网桥表生存时间情况。

●Hello Time ―指周期性配置 BPDU 间的时间。

●Forward Delay ―用于在 Listening 和 Learning 状态的时间,也反映了拓朴变化通知(Topology Change Notification)过程中的时间情况。

2.5.2 语义常用概念:●根桥(Root Bridge):桥ID最小的网桥。

其中桥ID是由网桥的优先级和网桥的MAC组成●根端口(Root Port):这个端口到达根桥的路径是该端口所在网桥到达根桥的最佳路径。

全网中只有根桥是没有根端口的●指定端口(Designated Port):每一个网段选择到根桥最近的网桥作为指定网桥,该网桥到这一网段的端口为指定端口●可选端口(Alternate Port):既不是指定端口,也不是根端口的端口Stp做了些什么:●STP在二层交换网络中选择一个根桥作为全部二层交换网络的逻辑中心(Root Bridge)●STP为全网中每一个参与STP运算的交换机计算到达根桥的最短距离(Path Cost)●检测二层交换网络中存在的冗余链路,并把他们置于阻断/备份状态●检测拓扑结构的变化并根据情况计算新的生成树如何确定跟桥:●根桥—BID(网桥ID)最小的网桥定为根桥●BID—网桥的优先级+网桥MAC●网桥的优先级为可配置,缺省值为32768●在缺省情况下,根桥将由MAC地址最小的网桥担任如何确认到根桥的PATH COST:如何决定BPDU配置消息的优劣:●比较RID(Root Bridge ID),确定网络同步●RID相同,比较Path Cost(到根桥距离),越小越优●RID/Path Cost相同,比较指定桥的BID (Designated Bridge ID),越小越优●RID/Path Cost/DBID相同,比较指定端口的ID (Designated Port ID),越小越优确定网桥端口角色:●BPDU报文中总是携带网桥到根桥的最优值●通过BPDU配置消息来决定端口的角色●根端口:网桥各个端口中到根桥最近的端口●指定端口:网桥的端口发送的BPDU配置消息较接收的BPDU配置消息更优,则端口为指定端口●可选端口:网桥的端口发送的BPDU配置消息较接收的BPDU配置消息更差,则端口为可选端口STP端口状态:●disabled:不收发任何报文●Blocking: 不接收或转发数据,接收但不发送BPDU,不进行地址学习●Listening:不接收或转发数据,接收并发送BPDU,不进行地址学习●Learning:不接收或转发数据,接收并发送BPDU,开始地址学习●Forwarding:接收并转发数据,接收并发送BPDU,进行地址学习拓扑改变:●拓扑结构改变会使站点在生成树中的相对位置发生移动,那么网桥原来学习到的MAC地址信息就可能变得不正确,所以学习的MAC地址信息也要有生存期,如果该时间内没有证明地址的正确,则抛弃这条地址信息●MAC地址在STP中有两个生存期:●拓扑稳定的时候用较长的生存期●拓扑改变的时候用较短的生存期●网络拓扑发生改变的时候,并不是所有的网桥都能够发现这一变化,所以需要把拓扑改变的信息通知到整个网络拓扑改变消息的传播:●拓扑改变的触发条件有两个:●当Forwarding端口转变为其他状态时●某端口变为Forwarding状态,且交换机具备DP(交换机为非独立交换机)●检测到拓扑变化的交换机以HelloTime为周期持续在根端口上向外发送TCN报文,到接收到TCA为止●收到TCN后,Root Bridge 发送的BPDU报文中的TC位将被置位,维持时间为ForwardDelay+MaxAge2.5.3 时序BPDU的结构:●STP通过BPDU(Bridge Protocol Data Unit)报文来学习网络拓扑结构;●BPDU报文的目标MAC地址为:01-80-C2-00-00-00;●BPDU报文在直连的两个网桥或多个网桥内交换,不能被转发。

相关主题