生成树.docx
《生成树.docx》由会员分享,可在线阅读,更多相关《生成树.docx(49页珍藏版)》请在冰豆网上搜索。
生成树
BPDU桥协议数据单元2s
BID、路径开销、端口ID、ROOTID
BID(桥ID)=设备优先级+MAC
设备优先级:
是一个数字,取值范围0-61440,交换机上默认是32768
MAC:
showversion中间的BaseethernetMACAddress:
000D.BD24.EB8E
路径开销cost:
用来衡量当前设备到达根桥之间的距离,基于带宽。
实际计算当前设备各个端口它到达根桥之间的路径开销之总和。
端口ID=端口优先级+端口号
端口优先级:
是一个数字,取值范围0-240,各个端口默认是128
ROOTID=设备优先级+MAC
表示当前网络里的树根那个设备的信息
生成树的计算:
1谁是根桥(ROOT)?
(全网只有一个根桥)
根桥的计算是比较BridgeID,先比优先级,如果优先级一样,在比较MAC地址,取最小的
谁最小谁就是我们的根桥。
2根端口(各台交换机计算自己的根端口)流量转发端口
路径开销:
先比各个端口到达根桥的总路径开销,谁的路径开销小谁成为根端口
相邻设备的BID:
在比较于各个端接口相连设备的BID,谁连接的设备BID小,谁成为根端口。
PORTID:
比较链路上各个端口的PORTID,谁的小,谁成为我们的根端口。
3指定端口计算(相对于流量的)流量转发端口
路径开销:
网络中可以帮忙转发流量的各个端口各自到达到根桥的总路径开销,取最小的
哪个端口的路径开销小,哪个端口成为指定端口。
BID:
比较各端口所在设备的BID,哪个端口所在设备的BID小,哪个端口成为指定端口。
端口ID:
比较相连端口的端口ID,哪个端口的端口ID小,哪个端口成为指定端口。
根桥设备的所有端口都是指定端口。
查看根桥:
ROOT#showspanning-treevlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address0001.4359.3E50
Thisbridgeistheroot
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority32769(priority32768sys-id-ext1)
Address0001.4359.3E50
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime20
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/2DesgFWD19128.2P2p
Fa0/1DesgFWD19128.1P2p
查看其他设备:
Switch#showspanning-treevlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address0001.4359.3E50
Cost19
Port1(FastEthernet0/1)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority32769(priority32768sys-id-ext1)
Address00D0.D358.A8DB
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime20
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/2DesgFWD19128.2Shr
Fa0/1RootFWD19128.1P2p
Fa0/3DesgFWD19128.3P2p
Fa0/5AltnBLK19128.5Shr
Fa0/4DesgFWD19128.4P2p
公共生成树端口类型:
根端口:
具备流量转发能力
指定端口:
具备流量转发能力
非指定端口(阻塞):
不能转发流量。
如果在连续的20秒内没有接收到对端的BPDU,会自动向转发状态过渡(指定端口),会经历三个状态的变化:
监听(15秒)、学习(15秒)、转发。
公共生成树的五个状态:
侦听:
15秒,发送和接受BPDU数据包,不会基于当前接口构建MAC地址表,但是不转发流量。
(设备刚刚接入,阻塞端口连续20秒没有收到BPDU)
学习:
15秒,发送和接受BPDU数据包,准备进行流量转发,开始学习MAC地址
转发:
转发流量,发送和接受BPDU数据包,可以学习和维护CAM表
阻塞:
可以接收BPDU,最大维持20秒,20秒内每次接收到BPDU则计时器值恢复为0.
禁用:
不参与生成树
公共生成树端口状态切换:
测试一:
阻塞端口转换到转发端口
测试设备SW3,我们关闭SW3上ROOTPORT直连链路,shutdownSW4的F0/24
SW3(config)#servicetimestampsdebugdatetimemseclocaltime
SW3#debugspanning-treeevents
SpanningTreeeventdebuggingison
SW4(config)#intf0/24
SW4(config-if)#shutdown
SW4(config-if)#exit
SW4(config)#
SW3#
*Mar1819:
40:
27.637:
STP:
VLAN0001newrootportFa0/19,cost38
*Mar1819:
40:
27.637:
STP:
VLAN0001Fa0/19->listening
*Mar1819:
40:
29.637:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/19
*Mar1819:
40:
42.637:
STP:
VLAN0001Fa0/19->learning
*Mar1819:
40:
57.637:
STP:
VLAN0001Fa0/19->forwarding
SW3#shspanvlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost38
Port19(FastEthernet0/19)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority32769(priority32768sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime300
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19RootFWD19128.19P2p
F0/24接口恢复的日志:
2w3d:
%LINK-3-UPDOWN:
InterfaceFastEthernet0/24,changedstatetoup
*Mar1819:
43:
11.241:
setportid:
VLAN0001Fa0/24:
newportid8018
*Mar1819:
43:
11.241:
STP:
VLAN0001Fa0/24->listening
*Mar1819:
43:
11.249:
STP:
VLAN0001newrootportFa0/24,cost38
*Mar1819:
43:
11.249:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/24
*Mar1819:
43:
11.249:
STP:
VLAN0001Fa0/19->blocking
2w3d:
%LINEPROTO-5-UPDOWN:
LineprotocolonInterfaceFastEthernet0/24,changedstatetoup
*Mar1819:
43:
26.241:
STP:
VLAN0001Fa0/24->learning
*Mar1819:
43:
41.241:
STP:
VLAN0001Fa0/24->forwarding
SW3#
结果:
端口状态转换用时30秒
优化:
SW3(config)#spanning-treeuplinkfast
*Mar1821:
43:
09.121:
settingbridgeid(which=1)prio49153priocfg49152sysid1(on)idC001.0011.bb66.1880
配置在各台设备上的,只对当前设备有效,打开uplinkfast之后,优先级变为49152,当前设备的cost自动向上+3000
SW3#showspanning-treevlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost3038
Port24(FastEthernet0/24)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority49153(priority49152sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime300
Uplinkfastenabled
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19AltnBLK3019128.19P2p
Fa0/24RootFWD3019128.24P2p
优化测试:
SW4(config)#intf0/24
SW4(config-if)#shutdown
SW4(config-if)#exit
SW4(config)#
SW3#
*Mar1821:
47:
40.837:
STP:
VLAN0001newrootportFa0/19,cost3038
2w3d:
%SPANTREE_FAST-7-PORT_FWD_UPLINK:
VLAN0001FastEthernet0/19movedtoForwarding(UplinkFast).
2w3d:
%LINEPROTO-5-UPDOWN:
LineprotocolonInterfaceFastEthernet0/24,changedstatetodown
*Mar1821:
47:
42.837:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/19
2w3d:
%LINK-3-UPDOWN:
InterfaceFastEthernet0/24,changedstatetodown
SW3#
SW3#shspanvl1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost3038
Port19(FastEthernet0/19)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority49153(priority49152sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime15
Uplinkfastenabled
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19RootFWD3019128.19P2p
SW3F0/24端口恢复的过程
2w3d:
%LINK-3-UPDOWN:
InterfaceFastEthernet0/24,changedstatetoup
*Mar1821:
49:
49.773:
setportid:
VLAN0001Fa0/24:
newportid8018
*Mar1821:
49:
49.773:
STP:
VLAN0001Fa0/24->listening
2w3d:
%LINEPROTO-5-UPDOWN:
LineprotocolonInterfaceFastEthernet0/24,changedstatetoup
*Mar1821:
49:
51.157:
STP:
VLAN0001Fa0/24:
rootportdelaytimeractive
*Mar1821:
49:
51.157:
STP:
VLAN0001Fa0/24->blocking
SW3#
SW3#shspanvl1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost3038
Port19(FastEthernet0/19)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority49153(priority49152sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime15
Uplinkfastenabled
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19RootFWD3019128.19P2p
Fa0/24AltnBLK3019128.24P2p
SW3#
*Mar1821:
50:
26.157:
STP:
VLAN0001newrootportFa0/24,cost3038
*Mar1821:
50:
26.157:
STP:
VLAN0001Fa0/19->blocking(uplinkfast)
2w3d:
%SPANTREE_FAST-7-PORT_FWD_UPLINK:
VLAN0001FastEthernet0/24movedtoForwarding(UplinkFast).
*Mar1821:
50:
26.157:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/24
SW3#
SW3#shspanvl1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost3038
Port24(FastEthernet0/24)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority49153(priority49152sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime15
Uplinkfastenabled
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19AltnBLK3019128.19P2p
Fa0/24RootFWD3019128.24P2p
测试二:
阻塞端口转换到转发端口
测试设备SW3,我们关闭SW3上ROOTPORT相关的非直连链路,shutdownSW2的F0/19
SW3#shspanvlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost38
Port24(FastEthernet0/24)
HelloTime2secMaxAge20secForwardDelay15sec
BridgeIDPriority32769(priority32768sys-id-ext1)
Address0011.bb66.1880
HelloTime2secMaxAge20secForwardDelay15sec
AgingTime300
InterfaceRoleStsCostPrio.NbrType
------------------------------------------------------------------------
Fa0/19AltnBLK19128.19P2p
Fa0/24RootFWD19128.24P2p
SW2(config)#intf0/19
SW2(config-if)#shutdown
SW3#
*Mar1819:
46:
02.413:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
04.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
06.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
08.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
10.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
12.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
14.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
16.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
18.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
20.245:
STP:
VLAN0001newrootportFa0/19,cost38
*Mar1819:
46:
20.245:
STP:
VLAN0001Fa0/19->listening
*Mar1819:
46:
20.409:
STP:
VLAN0001heardroot32769-000e.d785.5300onFa0/24
*Mar1819:
46:
20.409:
STP:
VLAN0001TopologyChangercvdonFa0/24
*Mar1819:
46:
20.409:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/19
*Mar1819:
46:
35.245:
STP:
VLAN0001Fa0/19->learning
*Mar1819:
46:
50.245:
STP:
VLAN0001sentTopologyChangeNoticeonFa0/19
*Mar1819:
46:
50.245:
STP:
VLAN0001Fa0/19->forwarding
结果:
端口状态转换用时50秒
SW3#showspanning-treevl
SW3#showspanning-treevlan1
VLAN0001
Spanningtreeenabledprotocolieee
RootIDPriority32769
Address000a.8a22.4400
Cost38
Port19(FastEthernet0/19)
Hel