网络协议报文格式汇总.docx
- 文档编号:28751689
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:44
- 大小:261.68KB
网络协议报文格式汇总.docx
《网络协议报文格式汇总.docx》由会员分享,可在线阅读,更多相关《网络协议报文格式汇总.docx(44页珍藏版)》请在冰豆网上搜索。
网络协议报文格式汇总
1序、2
1.1协议的概念2
1.2TCP/IP体系结构2
2链路层协议报文格式2
2.1Ethernet报文格式2
2.2802.1qVLAN数据帧(4字节)3
2.3QinQ帧格式4
2.4PPP帧格式.4
2.5STP协议格式5
2.5.1语法5
2.5.2语义6
2.5.3时序8
2.6RSTP消息格式9
2.6.1语法9
2.6.2语义11
2.6.3时序13
3网络层协议报文14
3.1IP报文头.14
3.2ARP协议报文16
3.2.1语法16
3.2.2语义17
3.2.3时序17
3.3VRRP协议报文18
3.3.1语法18
3.4BGP协议报文19
3.4.1语法19
3.4.2语义
25
1序、
1.1协议的概念
协议由语法、语义和时序三部分组成:
语法:
规定传输数据的格式;
语义:
规定所要完成的功能;
时序:
规定执行各种操作的条件、顺序关系;
1.2TCP/IP体系结构
TCP/IP协议分为四层结构,每一层完成特定的功能,包括多个协议。
本课程实验中相关协议的层次分布如附图3-1所示。
图1-1TCP/IP协议层次
RIP、OSPF.FTP屮
TCP,UDP2
IP,ARP、ICXIP^底层协议(Ethernet〉#
这些协议之间的PDU封装并不是严格按照低层PDU封装高层PDU的方式进行的,附图3-2
显示了Ethernet帧、ARP分组、IP分组、ICMP报文、TCP报文段、UDP数据报、RIP报文、OSPF报文和FTP报文之间的封装关系。
图1-2各协议PDU间的封装关系
丁空报文段a,UDP数將报4
2链路层协议报文格式
2.1Ethernet报文格式
最新的IEEE802.3标准(2002年)中定义Ethernet帧格式如下:
6
2
光亠1500
*
目的X1AC地址2
源MAC地址+
类型长度丿
数据"
FCS#
其中,类型/长度值小于1536(0x0600)时表示数据字段的长度,大于等于1536(0x0600)
时表示数据字段的协议类型。
类型/长度值0x0800表示帧中封装的数据为IP分组,类
型值0x0806表示帧中封装的数据为ARP分组。
EthernetII类型以太网帧的最小长度为64字节(6+6+2+46+4)最大长度为1518
字节(6+6+2+1500+4)。
其中前12字节分别标识出发送数据帧的源节点MAC地址
和接收数据帧的目标节点MAC地址。
(注:
ISL封装后可达1548字节,802.1Q封装后
可达1522字节)
接下来的2个字节标识出以太网帧所携带的上层数据类型,如下:
IPv4:
0x0800
ARP:
0x0806
PPPoE:
0x8864
802.1Qtag:
0x8100
IPV6:
0x86DD
MPLSLabel:
0x8847
在不定长的数据字段后是4个字节的帧校验序列(Frame.CheckSequenee,FCS
2.2802.1qVLAN数据帧(4字节)
图2-2VLAN数据帧结构
目的XUC地址心
源MAC地址心
IQugQ
类型长度门
FCSq
Bits
3
1
-
类型门|优先级匸
CFk
VL7\Nlg
Bytes6
2
46-1500
Type:
长度为2字节,取值为0x8100,表示此帧的类型为802.1QTag帧。
PRI:
长度为3比特,可取0〜7之间的值,表示帧的优先级,值越大优先级越高。
该优先级主要为QoS差分服务提供参考依据(COS。
CFI字段标识MAC地址在不同的传输介质中是否以标准格式进行封装,长度为1bit,
取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装,缺省取值
为0
VLANIdentifier(VID):
长度12bits,可配置的VLANID取值范围为1〜4094。
通常vlan0和vlan4095预留,vlan1为缺省vlan,一般用于网管。
2.3QinQ帧格式
图2-3QinQ帧结构
Bytes6
4
$2
46-1500
目的MAC*地址「
瀰MAC地址『
SQ2.lQtag^
802.1Qtag^|类型长度「
数据Q|
FCSQ
2.4PPP帧格式
图2-4PPP帧格式
BitsS
S
■Vv
816
16
S+J
Flag+J
01111114
Address+J
11111112
6ritr(31+J
00000011^
ProtocoIp
8/16bitP
Infomialion*1
ldbhs^
Fl孔討
01111110^
LCP报文格式+
Code^IdentifiersLength**Data+J
Type*3
Length*1
Value-1
p
Type*21
Length*1
Valuer
p
…p
PPP报文的内容是指Address、Control、Protocol和Information四个域的内容。
各字
段的含义如下。
Flag域Flag域标识了一个物理帧的起始和结束,该字节为0x7E。
Address域PPP协议是被运用在点对点的链路上,它可以唯一标识对方。
因此使用PPP
协议互连的两个通信设备无须知道对方的数据链路层地址。
所以该字节已无任何意义,
按照协议的规定将该字节填充为全1的广播地址。
Control域同Address域一样,PPP数据帧的Control域也没有实际意义,按照协议的规定通信双方将该字节的内容填充为0x03。
Address和Control域一起表示了此报文
为PPP报文,即PPP报文头为FF03。
Protocol域协议域可用来区分PPP数据帧中信息域所承载的数据报文的内容。
悔後代码门
协谕类璽心
0021^
InternetProtocol^
8021P
InternetProtocolControlProtocol^
C02V
LinkControlProtocol*2
C02斧
PasswordAuthenticationProtocol*3
C223a
ChallengeHandshakeAuthenticationProtocols
信息域的最大长
Information域信息域最大长度是1500字节,其中包括填充域的内容。
度等于PPP协议中MR(MaximumReceiveUnit)的缺省值。
2.5STP协议格式
2.5.1语法
图2-6STP报文格式
Bvies:
6623
目的眼£地址4源躺&地址*J长度类型*LLQHMtieT*Payload有败载荷门*
Protocol10(2}^
Veraion(1>J
Type(i>
Flags
(1)*1
RoodID(8^
RootPath(4护
SenderBID砂
PortID(2>»
M-Age即
MaxAge(2弹
Hello即
FD(2Bytes)!
3
以太网报文头:
目的mac地址一目的地址是一个固定的桥的组播地址(0x0180c2000000)
源MAC地址一即发送该配置消息的桥MAC地址
长度/类型一这里表示帧长
LLCHeader—固定的链路头-0x424203
Payload—BPDU数据
BPDU数据:
ProtocolID—恒为0。
Version—恒为0。
Type—决定该帧中所包含的两种BPDU格式类型(配置BPDU或TCNBPDU。
Flags—标志活动拓朴中的变化,包含在拓朴变化通知(TopologyChange
Notifications)的下一部分中。
如下图:
STP只使用了第0和第7比特位。
RootBID—包括有根网桥的网桥ID。
会聚后的网桥网络中,所有配置BPDU中的该
字段都应该具有相同值(单个VLAN)。
NetXRay可以细分为两个BID子字段:
网桥
优先级和网桥MAC地址。
RootPathCost—通向有根网桥(RootBridge)的所有链路的积累资本。
SenderBID—创建当前BPDU的网桥BID。
对于单交换机(单个VLAN发送的所有BPDU而言,该字段值都相同,而对于交换机与交换机之间发送的BPDU而言,该字段值不
同)
PortID—每个端口值都是唯一的。
端口1/1值为0X8001,而端口1/2值为0X8002。
MessageAge—记录RootBridge生成当前BPDU起源信息的所消耗时间。
MaxAge—保存BPDU的最长时间,也反映了拓朴变化通知(TopologyChangeNotification)过程中的网桥表生存时间情况。
HelloTime—指周期性配置BPDU间的时间。
ForwardDelay—用于在Listening和Learning状态的时间,也反映了拓朴变化通
知(TopologyChangeNotification)过程中的时间情况。
2.5.2语义
常用概念:
根桥(RootBridge):
桥ID最小的网桥。
其中桥ID是由网桥的优先级和网桥的MAC组
成
根端口(RootPort):
这个端口到达根桥的路径是该端口所在网桥到达根桥的最佳路径。
全网中只有根桥是没有根端口的
指定端口(DesignatedPort):
每一个网段选择到根桥最近的网桥作为指定网桥,该网桥到这一网段的端口为指定端口
可选端口(AlternatePort):
既不是指定端口,也不是根端口的端口
Stp做了些什么:
STP在二层交换网络中选择一个根桥作为全部二层交换网络的逻辑中心(RootBridge)
STP为全网中每一个参与STP运算的交换机计算到达根桥的最短距离(PathCost)
检测二层交换网络中存在的冗余链路,并把他们置于阻断/备份状态
检测拓扑结构的变化并根据情况计算新的生成树
如何确定跟桥:
根桥一BID(网桥ID)最小的网桥定为根桥
BID—网桥的优先级+网桥MAC
网桥的优先级为可配置,缺省值为32768
在缺省情况下,根桥将由MAC地址最小的网桥担任
如何确认到根桥的PATHCOST
到根桥的PATHCOST==收到最优配置消息中的ROOTPATHCOST+攵到配置消息的该接口的开销
PathCost的两种定义标准
Speed
Linktype
802.1Dcost
802.1tcost
10Mbps
HalfDuplex
100
2,000,000
FullDuplex
95
1,999,999
Aggregatedlink
90
1,000,000
100Mbps
HalfDuplex
19
200,000
FullDuplex
18
199,999
AggregatedLink
15
100,000
1000Mbps
FullDuplex
4
20,000
AggregatedLink
3
10,000
如何决定BPDU配置消息的优劣:
比较RID(RootBridgeID),确定网络同步
RID相同,比较PathCost(到根桥距离),越小越优
RID/PathCost相同,比较指定桥的BID(DesignatedBridgeID),越小越优
RID/PathCost/DBID相同,比较指定端口的ID(DesignatedPortID),越小越优
确定网桥端口角色:
BPDC报文中总是携带网桥到根桥的最优值
通过BPDU配置消息来决定端口的角色
根端口:
网桥各个端口中到根桥最近的端口
指定端口:
网桥的端口发送的BPDC配置消息较接收的BPDC配置消息更优,则端口为指定端口
可选端口:
网桥的端口发送的BPDC配置消息较接收的BPDC配置消息更差,则端口为可选端口
STP端口状态:
disabled:
不收发任何报文
Blocking:
不接收或转发数据,接收但不发送BPDU不进行地址学习
Listening:
不接收或转发数据,接收并发送BPDC,不进行地址学习
Learning:
不接收或转发数据,接收并发送BPDU开始地址学习
Forwarding:
接收并转发数据,接收并发送BPDU进行地址学习
拓扑改变:
拓扑结构改变会使站点在生成树中的相对位置发生移动,那么网桥原来学习到的MAC也
址信息就可能变得不正确,所以学习的MAC地址信息也要有生存期,如果该时间内没
有证明地址的正确,则抛弃这条地址信息
MAC地址在STP中有两个生存期:
拓扑稳定的时候用较长的生存期
拓扑改变的时候用较短的生存期
网络拓扑发生改变的时候,并不是所有的网桥都能够发现这一变化,所以需要把拓扑改变的信息通知到整个网络
拓扑改变消息的传播:
拓扑改变的触发条件有两个:
当Forwarding端口转变为其他状态时
某端口变为Forwarding状态,且交换机具备DP(交换机为非独立交换机)
检测到拓扑变化的交换机以HelloTime为周期持续在根端口上向外发送TCN报文,至振
收到TCA为止
收到TCN后,RootBridge发送的BPDC报文中的TC位将被置位,维持时间为
ForwardDelay+MaxAge
2.5.3时序
BPDU勺结构:
STP通过BPDU(BridgeProtocolDataUnit)报文来学习网络拓扑结构;
BPDL报文的目标MAC地址为:
01-80-C2-00-00-00;
BPDC报文在直连的两个网桥或多个网桥内交换,不能被转发。
没有运行STP协议的网桥
将把BPDI报文当作普通业务报文转发;
STP定时器:
HelloTimer:
根桥生成BPDU配置消息的周期,缺省时间为2秒钟
ForwardDelay:
配置消息传播到全网的最大时延。
缺省为15秒钟
MessageAge:
从根桥生成BPDU配置消息开始,至U当前时间为止配置消息的存活时间
MaxMessageAge:
BPDU配置消息存活的最大时间
STP端口状态迁移:
图2-8STP端口迁移状态机
STP抓包截图:
图2-9STP报文抓包
□IEEE802.3EXhernet
庄Destination:
spanning-tree-(for-br1dges)_OO(01:
SO:
c2:
00:
00:
00)l±Source:
Hang2hou_07:
f2:
eO(00:
Of:
e2:
07:
f2:
:
eO)
“ngrh:
38Trailer:
0000000000000000
Framechecksequen匸电:
0x00000000[5ncorrect,shouldbe0x6bl更日五04日Logical-Link匚ontrol
dsap:
spanningTreebpdu(0x42)
IGBit:
Individual
ssap:
spanningTreebpdu(0x42)
crBit:
conrniand
[+Controlfield:
u,func=UI(0x03)
mspanningTreeProtocol
protocolidentifier:
spanningTreeProtocol(0x0000)
protocolversionidentifier:
spanningTree(0)bpduType:
匚onfiguration(0x00)
Bbpduflags:
0x00
0=Topology匚hangeAcknowledgmenr:
no
0=Topologyclnange:
no
l+jRootIdentifier:
32768/0/00:
Of:
e2:
4c:
83:
50RootPath匚ost:
0
SBridgeidentifier:
32768/0/00:
0f:
e2:
4c:
83:
50
Portidentifier:
0x8001
MessageAge:
0
MaxAge:
20
Hel1oTime:
2
ForwardDelay:
15
2.6RSTP消息格式
2.6.1语法
目的macit!
址沥取职.地址J长度类型沪LLCHeadersPayload有效载荷沪+■'
ProtocolID(2>
Version(1F
Type2
Flags(1}p
RoodID伸
RootPath(4)+j
SenderBID{&)*'
PortID(2戸
(2p
MaxAge(2^
Hello(2护
FD(2Bytes)*3
Bytes:
6
以太网报文头:
目的mac地址一目的地址是一个固定的桥的组播地址(0x0180c2000000)
源MAC地址一即发送该配置消息的桥MAC地址
长度/类型一这里表示帧长
LLCHeader—固定的链路头-0x424203
Payload—BPDU数据
BPDL数据:
ProtocolID—恒为0。
Version—恒为2。
Type—决定该帧中所包含的两种BPDU格式类型(配置BPDU或TCNBPDU。
Flags—标志活动拓朴中的变化,包含在拓朴变化通知(TopologyChange
Notifications)的下一部分中。
RootBID—包括有根网桥的网桥ID。
会聚后的网桥网络中,所有配置BPDU中的该
字段都应该具有相同值(单个VLAN)。
NetXRay可以细分为两个BID子字段:
网桥
优先级和网桥MAC地址。
RootPathCost—通向有根网桥(RootBridge)的所有链路的积累资本。
SenderBID—创建当前BPDU的网桥BID。
对于单交换机(单个VLAN发送的所有BPDU而言,该字段值都相同,而对于交换机与交换机之间发送的BPDU而言,该字段值不
同)
PortID—每个端口值都是唯一的。
端口1/1值为0X8001,而端口1/2值为0X8002。
MessageAge—记录RootBridge生成当前BPDU起源信息的所消耗时间。
MaxAge—保存BPDU的最长时间,也反映了拓朴变化通知(TopologyChangeNotification)过程中的网桥表生存时间情况。
HelloTime—指周期性配置BPDU间的时间。
ForwardDelay—用于在Listening和Learning状态的时间,也反映了拓朴变化通
知(TopologyChangeNotification)过程中的时间情况。
262语义
RSTP和STP的实现方式几乎相同,有个别地方做了改进,下面分别介绍RSTP的改进点
RSTP勺端口状态:
图2-11STP端口状态
STP端口状态小
RSTP端口状态Q
是否包括动态拓扑•
是否学习鳩兌地址*
Disabled^
Discardings
Ng
Blockings
Discarding*3
Ng
N0+3
List亡ning*3
Discardings
Nw
Learnings
Leaming41
YE畀
YE却
Forwarding*3
ForTvarding*3
YE歸
RSTP端口角色:
RootPort—根端口
DesignatedPort—指定端口
AlternatePort—可选端口
BackupPort—备份端口
相比STP的改进:
如果旧的根端口已经进入阻塞状态,而且新根端口连接的对端交换机的指定端口处于Forwarding状态,在新拓扑结构中的根端口可以立刻进入转发状态。
网络边缘的端口,即直接与终端相连,而不是和其它网桥相连的端口可以直接进入转发状态,不需要任何延时。
增加了网桥之间的协商机制一Proposal/Agreement。
指定端口可以通过与相连的网桥进
行一次握手,快速进入转发状态。
其中Proposal报文为正常的BPDL报文,且ProposalBit位置位。
Agreement报文为Proposal报文的拷贝,且以AgreementBit代替ProposalBit位置位。
协商必须在点对点链路上进行。
(全双工链路)
两种端口状态不受协商机制影响:
可选端口(AlternatedPort).
1、边缘端口(EdgePort).
RSTP的改进效果:
第一种改进的效果:
发现拓扑改变到恢复连通性的时间可达数毫秒,并且无需传递配置消息。
第二种改进的效果:
边缘端口的状态变化不影响网络连通性,也不会造成回路,所以进入转发状态无需延时。
第三种改进的效果:
网络连通性可以在交换两个配置消息的时间内恢复,即握手的延时;
最坏的情况下,握手从网络的一边开始,扩散到网络的另一边缘的网桥,网络连通性才能恢复。
比如当网络直径为7的时候,要经过6次握手。
RSTP拓扑改变消息的传播:
回顾STP的TC:
利用TCNBPDU各拓扑变化上报到根桥
根桥通过将FLAG中的TC比特置位(持续时间ForwardDelay+MaxAge),通知所有其它交换机
图2-13STP的TC传播
TCN
RSTP的TC报文:
拓扑改变检测:
只有非边缘端口转变为Forwarding状态时,产生拓扑改
变
检测到拓扑改变后的动作:
在两倍Hello时间内向所有其它指定端口和根
端口发送TC置位BPDU报文;清除除接收到TC报文的端口之外的所有指定端
口和根端口学习的MAC地址。
不再使用TCN报报文,报文传送更直接迅速。
图2-14RSTP的TC传播
TC
802.1W与802.1D相兼容:
STP协议
RSTP的端口在三秒钟定时器后接收到STP的报文,则端口协议将切换到
切换到STP协议
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 协议 报文 格式 汇总