H3C stp配置
一个局域网通常由多台交换机互连而成,为了避免广播风暴,我们需要保证在网络中不存在路径回环,也就是说所有链路应该组成一颗无回环的树,交换机上的STP协议(生成树协议)就实现了这样的功能。
生成树协议有三种模式:
STP: STP不能快速迁移。即使是在点对点链路或边缘端口,也必须等待2倍的Forward delay的时间延迟,端口才能迁移到转发状态。
RSTP: RSTP可以快速收敛,但是和STP一样存在以下缺陷:局域网内所有网桥共享一棵生成树,不能按VLAN阻塞冗余链路,所有VLAN的报文都沿着一棵生成树进行转发。
MSTP: MSTP可以弥补STP和RSTP的缺陷,它既可以快速收敛,也能使不同VLAN的流量沿各自的路径分发,从而为冗余链路提供了更好的负载分担机制。
MSTP设置VLAN映射表(即VLAN和生成树的对应关系表)把VLAN和生成树联系起来。同时它把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。MSTP将环路网络修剪成为一个无环的树型网络,避免报文在环路网络中的增生和无限循环,同时还提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的负载均衡。
生成树协议STP端口状态:
Disabled:
Blocking:
Listening:
Learning:
Forwarding:
生成树协议RSTP端口状态:
Disabled:
Discard:
Forwarding:
生成树协议配置消息(BPDU):
BPDU配置消息是以以太网数据帧的格式进行传递的,它采用一个周知的多播MAC地址01-80-C2-00-00-00作为目的MAC地址,网络中所有的网桥收到该地址后都能够判断出该报文是生成树协议报文。源MAC地址域中填的是本网桥的MAC。数据链路层报头中的SAP值是01000010(0x42)
树根ID(以以太网交换机的优先级表示),根路径开销,指定交换机ID(以以太网交换机的优先级表示),指定端口ID(以端口号表示)
(RootID,PortPathCost,DesignatedBridgeID,PortPriority)
RootID: 主要以交换机的优先级表示。BridgePriority. BridgeMacAddress
BridgePriority: 默认(32768),根(0),步长(4096)
树根注意由BridgePriority决定。当优先级相同时,以BridgeMacAddress小的为根。
PortPathCost: 端口对应链路的路径开销(注意到根的开销)。
Port Cost : Config=auto / Active=200(默认100m)此参数可决定环路断点。
DesignatedBridgeID:主要以交换机的优先级表示。BridgePriority BridgeMacAddress
CIST Bridge : 4096.00e0-fc5d-4d6e此参数可决定环路断点。
PortPriority: 主要以交换机的端口优先级表示。PortPriority. Portindex
Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.2
PortPriority: 默认(128)。当交换机相连时,此参数可决定环路断点。
0 && p_w_picpath.height>0){if(p_w_picpath.width>=700){this.width=700;this.height=p_w_picpath.height*700/p_w_picpath.width;}}" border=0>
配置消息的比较原则是:
l 树根ID较小的配置消息优先级高;
l 若树根ID相同,则比较根路径开销,比较方法为:用配置消息中的根路径开销加上本端口对应的路径开销之和(设为S),则S较小的配置消息优先级较高;
l 若根路径开销也相同,则依次比较指定交换机ID、指定端口ID、接收该配置消息的端口ID等。
配置交换机的时间参数:
交换机有三个时间参数:Forward Delay、Hello Time和Max Age
缺省情况下,Forward Delay时间为1500厘秒(即15秒),Hello Time时间为200厘秒(即2秒),Max Age时间为2000厘秒(即20秒)。
根交换机的Hello Time、Forward Delay以及Maximum Age三个时间参数取值之间应该满足如下公式,否则网络会频繁震荡:
2 × (forward-delay -1 second) >= maximum-age
maximum-age >= 2 × (hello time 1 second)
边缘端口:
对于直接与终端相连的端口,请将该端口设置为边缘端口,同时启动BPDU保护功能。这样既能够使该端口 快速迁移到转发状态,也可以保证网络的安全。
说明:用户如果将某个端口指定为边缘端口,那么当该端口由堵塞状态向转发状态迁移时,这个端口可以实现快速迁移,而无需等待延迟时间。用户只能将与终端链接的端口设置为边缘端口。在交换机没有使能BPDU保护的情况下,如果被设置为边缘端口的端口上收到来自其它端口的BPDU报文,则该端口会重新变为非边缘端口。如果交换机使能了BPDU保护,则该端口会被关闭。该参数对所有生成树实例有效,也就是说,当端口被配置为边缘端口或非边缘端口时,该端口在所有生成树实例上都被设置为边缘端口或非边缘端口。在交换机没有使能BPDU保护的情况下,当端口收到BPDU后,即使用户设置为边缘端口,实际运行值也会变为非边缘端口。
缺省情况下,交换机所有以太网端口均被配置为非边缘端口。
配置交换机的保护功能:
支持MSTP的交换机提供BPDU保护功能、Root保护功能和环路保护功能。
对于接入层设备,接入端口一般直接与用户终端(如PC机)或文件服务器相连,此时接入端口被设置为边缘端口以实现这些端口的快速迁移;当这些端口接收到配置消息(BPDU报文)时系统会自动将这些端口设置为非边缘端口,重新计算生成树,引起网络拓扑的震荡。这些端口正常情况下应该不会收到生成树协议的配置消息。如果有人伪造配置消息恶意***交换机,就会引起网络震荡。BPDU保护功能可以防止这种网络***。
生成树的根交换机及备份交换机应该处于同一个域内,特别是对于CIST的根交换机和备份交换机,由于网络设计时一般会把CIST的根交换机和备份交换机放在一个高带宽的核心域内。但是由于维护人员的错误配置或网络中的恶意***,网络中的合法根交换机有可能会收到优先级更高的配置消息,这样当前根交换机会失去根交换机的地位,引起网络拓扑结构的错误变动。这种不合法的变动,会导致原来应该通过高速链路的流量被牵引到低速链路上,导致网络拥塞。Root保护功能可以防止这种情况的发生。
依靠不断接收上游交换机发送的BPDU,交换机可以维持根端口和其他阻塞端口的状态。但是由于链路拥塞或者单向链路故障,这些端口会收不到上游交换机的BPDU。此时交换机会重新选择根端口,根端口会转变为指定端口,而阻塞端口会迁移到转发状态,从而交换网络中会产生环路。环路保护功能会抑制这种环路的产生。在启动了环路保护功能后,根端口的角色不会迁移,阻塞端口会一直保持在Discarding状态,不转发报文,从而不会在网络中形成环路。
可以通过下面的命令来配置交换机的保护功能。
交换机上启动了BPDU保护功能以后,如果边缘端口收到了配置消息,系统就将这些端口关闭,同时通知网管这些端口被MSTP关闭。被关闭的端口只能由网络管理人员恢复。
对于设置了Root保护功能的端口,其在所有实例上的端口角色只能保持为指定端口。一旦这种端口上收到了优先级高的配置消息,即其将被选择为非指定端口时,这些端口的状态将被设置为侦听状态,不再转发报文(相当于将此端口相连的链路断开)。当在足够长的时间内没有收到更优的配置消息时,端口会恢复原来的正常状态。
在对一个端口进行配置的时候,在Loop保护功能,Root保护功能或者边缘端口设置三个配置中,同一时刻只能有一个配置生效。
缺省情况下,交换机不启动BPDU保护功能、Root保护功能和环路保护功能。
总之,直接与终端相连的端口设为边缘端口,根交换机设为Root保护功能,次汇聚交换机设为环路保护功能。
例1:有三台交换机相连,形成环路,启用STP,没做任何配置。如何选择根?
默认交换机优先级为32768,交换机MAC小的为根。可以通过改变优先级来指定root.
例2:有三台相同交换机(指端口速度)相连,形成环路,启用STP。如何指定Discarding端口?
根交换机选定后,主要依据PortPathCost来确定根端口和指定端口。Cost值大(到根交换机的Cost的和)的端口为Discarding端口。
例3:有三台相同交换机(指端口速度)相连,形成环路,启用STP。RoodID,Cost相同,如何指定Discarding端口?
当RoodID,Cost相同,交换机MAC大的端口为Discarding端口。
如果,RoodID,Cost,DesignatedBridgeID相同,说明是两个交换机间有两根以上的线相连。
例4:有三台相同交换机(指端口速度)相连,形成环路,启用STP。
<H3C>dis stp -------[CIST Global Info][Mode MSTP]------- CIST Bridge :0.000f-e28c-f2c7 Bridge Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20 CIST Root/ERPC :0.000f-e28c-f2c7 / 0 CIST RegRoot/IRPC :0.000f-e28c-f2c7 / 0 CIST RootPortId :0.0 BPDU-Protection :disabled Bridge Config- Digest-Snooping :disabled TC or TCN received :37 Time since last TC :0 days 4h:17m:50s
----[Port1(GigabitEthernet1/0/1)][FORWARDING]---- Port Protocol :enabled Port Role :CIST Designated Port Port Priority :128 Port Cost(Legacy) :Config=auto / Active=200 Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.1 Port Edged :Config=disabled / Active=disabled Point-to-point :Config=auto / Active=true Transmit Limit :10 packets/hello-time Protection Type :None MST BPDU Format :Config=auto / Active=legacy Port Config- Digest-Snooping :disabled Rapid transition :true Num of Vlans Mapped :1 PortTimes :Hello 2s MaxAge 20s FwDly 15s MsgAge 0s RemHop 20 BPDU Sent :9431 TCN: 0, Config: 0, RST: 0, MST: 9431 BPDU Received :178 TCN: 0, Config: 0, RST: 0, MST: 178
----[Port2(GigabitEthernet1/0/2)][FORWARDING]---- Port Protocol :enabled Port Role :CIST Designated Port Port Priority :128 Port Cost(Legacy) :Config=auto / Active=200 Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.2 Port Edged :Config=disabled / Active=disabled Point-to-point :Config=auto / Active=true Transmit Limit :10 packets/hello-time Protection Type :None MST BPDU Format :Config=auto / Active=legacy Port Config- Digest-Snooping :disabled Rapid transition :true Num of Vlans Mapped :1 PortTimes :Hello 2s MaxAge 20s FwDly 15s MsgAge 0s RemHop 20 BPDU Sent :9095 TCN: 0, Config: 0, RST: 0, MST: 9095 BPDU Received :10 TCN: 0, Config: 0, RST: 0, MST: 10 ----[Port3(GigabitEthernet1/0/3)][DOWN]----
<H3C>dis stp -------[CIST Global Info][Mode MSTP]------- CIST Bridge :0.000f-e28c-f2c7 Bridge Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20 CIST Root/ERPC :0.000f-e28c-f2c7 / 0 CIST RegRoot/IRPC :0.000f-e28c-f2c7 / 0 CIST RootPortId :0.0 BPDU-Protection :disabled Bridge Config- Digest-Snooping :disabled TC or TCN received :37 Time since last TC :0 days 4h:19m:27s
----[Port1(GigabitEthernet1/0/1)][FORWARDING]---- Port Protocol :enabled Port Role :CIST Designated Port Port Priority :128 Port Cost(Legacy) :Config=auto / Active=200 Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.1 Port Edged :Config=disabled / Active=disabled Point-to-point :Config=auto / Active=true Transmit Limit :10 packets/hello-time Protection Type :None MST BPDU Format :Config=auto / Active=legacy
<H3C>dis stp brief MSTID Port Role STP State Protection 0 GigabitEthernet1/0/1 DESI FORWARDING NONE 0 GigabitEthernet1/0/2 DESI FORWARDING NONE <H3C>dis stp root MSTID Root Bridge ID ExtPathCost IntPathCost Root Port 0 0.000f-e28c-f2c7 0 0
[H3C]dis stp ? abnormal-port Display abnormal ports brief Brief information down-port Port infomation of protocol down history Root or alternate port history instance Spanning tree instance interface Specify interface region-configuration Region configuration root Display status and configuration of the root bridge tc Port TC count <cr>
<Quidway>dis stp bri MSTID Port Role STP State Protection 0 Ethernet0/1 ROOT FORWARDING NONE 0 Ethernet0/2 ALTE DISCARDING NONE <Quidway>dis stp -------[CIST Global Info][Mode MSTP]------- CIST Bridge :32768.000f-e222-b649 Bridge Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20 CIST Root/ERPC :0.000f-e28c-f2c7 / 200 CIST RegRoot/IRPC :32768.000f-e222-b649 / 0 CIST RootPortId :128.1 BPDU-Protection :disabled Bridge Config Digest Snooping :disabled TC or TCN received: 62
----[Port1(Ethernet0/1)][FORWARDING]---- Port Protocol :enabled Port Role :CIST Root Port Port Priority :128 Port Cost :Config=auto / Active=200 Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.1 Port Edged(Admin) :disabled Point-to-point :Config=auto / Active=true Transit Limit :3 packets/hello-time Protection Type :None Port Config Digest Snooping :disabled Num of Vlans Mapped :1 PortTimes :Hello 2s MaxAge 20s FwDly 15s RemHop 0 BPDU Sent :178 TCN: 0, Config: 0, RST: 0, MST: 178 BPDU Received :9524 TCN: 0, Config: 0, RST: 0, MST: 9524
----[Port2(Ethernet0/2)][DISCARDING]---- Port Protocol :enabled Port Role :CIST Alternate Port Port Priority :128 Port Cost :Config=auto / Active=200 Desg. Bridge/Port :4096.00e0-fc5d-4d6e / 128.2 Port Edged(Admin) :disabled Point-to-point :Config=auto / Active=true Transit Limit :3 packets/hello-time Protection Type :None Port Config Digest Snooping :disabled Num of Vlans Mapped :1 PortTimes :Hello 2s MaxAge 20s FwDly 15s RemHop 1 BPDU Sent :1600
[Quidway]dis stp inst ? INTEGER<0-16> Identifier of spanning tree instance
[Quidway]dis stp inst 0 ? brief Brief information interface Specify interface slot Slot Number <cr>
[Quidway]dis stp inst 0 -------[CIST Global Info][Mode MSTP]------- CIST Bridge :32768.000f-e222-b649 Bridge Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20 CIST Root/ERPC :0.000f-e28c-f2c7 / 200 CIST RegRoot/IRPC :32768.000f-e222-b649 / 0 CIST RootPortId :128.1 BPDU-Protection :disabled Bridge Config Digest Snooping :disabled TC or TCN received: 62
----[Port1(Ethernet0/1)][FORWARDING]---- Port Protocol :enabled Port Role :CIST Root Port Port Priority :128 Port Cost :Config=auto / Active=200 Desg. Bridge/Port :0.000f-e28c-f2c7 / 128.1 Port Edged(Admin) :disabled Point-to-point :Config=auto / Active=true Transit Limit :3 packets/hello-time Protection Type :None Port Config