STP概述

交换网络环路的产生:

广播风暴的形成

多帧复制

MAC地址紊乱

生成树协议(STP)与MSTP_理论


广播风暴:三个交换机两两相连,互相广播,无限转发,产生广播风暴。

多帧复制:PC1发送的数据可以从SW1经过SW3再到SW2传达给PC2,也可以从SW1到SW2再到PC2,导致PC2收到两次数据帧。

MAC地址紊乱:产生环路后,PC1发送数据SW1向SW3进行广播使得SW3F0/1记录下PC1的MAC地址,SW1传到SW2,SW2再向SW3进行广播,导致SW3F0/2又记录了PC1的MAC地址,来回重复绑定MAC地址。


STP简介

STP - Spanning Tree Protocol(生成树协议)

1.逻辑上断开环路,防止广播风暴的产生

2.当线路故障时,阻塞接口被激活,恢复通信,起到备份作用


生成树协议(STP)与MSTP_理论_02



如图,将SW1当成树根,数据从SW1向上传输,比如我们在SW2与SW3之间进行逻辑阻塞,SW3不会广播SW2再广播到SW1,SW1不会广播到SW2再广播SW3,防止了广播风暴的产生。

如果SW1与SW2之间的线路出现故障,会激活SW2与SW3之间的逻辑阻塞,使得SW1的数据可以经过SW3再传输至SW2,恢复通信,起到备份作用。

如果是物理上进行阻塞,将线路断开或端口阻塞,当其他线路出现故障时就无法通信了。


生成树算法

生成树算法分为三个步骤

1.选择根网桥(交换机)

2.选择根端口

3.选择指定端口

排除根端口和指定端口,剩下的就是阻塞端口


1.选择根网桥

生成树协议(STP)与MSTP_理论_03

 

     如图,网桥ID由网桥优先级和网桥MAC地址组成,网桥MAC地址就是交换机MAC地址

为什么网桥ID是唯一的,因为MAC地址是全球唯一的。

      首先,先去对比网桥优先级,优先级的值越小,越优先。

      优先级取值范围:0~65535

      缺省值(默认值):32768

如果优先级一致,就去看网桥MAC地址,值越小,越优先。


2.选择根端口

1.到根网桥最低的路径成本

2.直连网桥ID最小

3.端口ID最小

生成树协议(STP)与MSTP_理论_04

根路径成本=网桥到根网桥的路径上所有链路的成本之和


带宽与路径成本之间的关系:

生成树协议(STP)与MSTP_理论_05


带宽越低,成本越高,带宽越大,成本越低


根网桥上的端口都不是根端口,而是指定端口

在每个网段上都要选择一个指定端口


3.选择指定端口

非根网桥的指定端口,选择顺序:

1.根路径成本较低

2.所在的交换机的网桥ID值较小

3.端口ID的值较小


生成树协议(STP)与MSTP_理论_06


     如图,SW1为根网桥,那么SW1上的两个端口F0/23、F0/24都是指定端口,SW2 F0/24与SW3  F0/23到达根网桥路径成本相同,所以两个都是根端口,SW2  与 SW3直接通过选择因路径成本相同,比较网桥IDSW2小,所以SW2 F0/23接口为指定端口,SW3 F0/24为阻塞段口。


选择顺序:

1.根路径成本较低

2.所在的交换机的网桥ID值较小

3.端口ID的值较小。那么SW1与SW3之间的指定端口为SW3.2,SW1.2就是阻塞端口。



BPDU(桥协议数据单元)

Bridge Protocol Data Unit - 桥协议数据单元

使用组播通信

概念:BPDU是个传输载体,用来交换机之间交换网桥ID,根路径成本等信息。


BPDU类型

配置BPDU

拓扑变更通告(TCN)BPDU


BPDU报文字段

根网桥ID , 根路径成本 ,发送网桥ID , 端口ID


STP利用BPDU选择根网桥

当交换机启动时,假定自己是根网桥,在向外发送的BPDU中根网桥ID字段填写自己的网桥ID

生成树协议(STP)与MSTP_理论_07

交换机刚启动时,每个都认为自己是根网桥,它们会把自己的网桥ID填写在BPDU根网桥字段中,然后互相发送,经过比较网桥ID最小的,为根网桥,这是一个互相确认的过程,最后协商完成进入稳定状态称为:收敛状态。


STP的收敛

交换机端口的STP状态 : 此图自下往上看

生成树协议(STP)与MSTP_理论_08

     刚开机时禁用状态,之后进入阻塞状态,只接受BPDU,正常环境下,一般不会同时打开所有交换机,第一台开的过一定时间接收不到BPDU就会进入侦听状态,构建活动拓扑表示这时它不但会接收BPDU还具有转发BPDU的功能,之后就进入学习状态,会构建网桥表,就是MAC地址表,也会进行转发和接收BPDU,之后进入转发状态,会接收转发用户数据,也会进行转发和接收BPDU,如果网络链路发生故障,它会解开相应的阻塞端口,恢复通信。


VLAN与STP关系

IEEE通用生成树(CST)不考虑VLAN

经过STP计算,会有一条链路被断开


MSTP多生成树协议华为命令

可为每个VLAN或者多个VLAN为一组构造一个生成树,实现网络的负载分担(均衡)


 将SW1、 SW2分別做vlan10、 vlan20的根网桥


[SW1]stp mode mstp     将交换机配置成MSTP模式,MSTP兼 容STP/RSTP。

[SW1]stp region-configuration     进入MSTP域视图MSTP配置模式

[ SW1-mst-region] region-name huawe 1    配置MSTP域的域名为huawei1,缺省为交换设备主控板上管理网口的MAC地址。

[ SW1- -mst- -region] revision-level 1   配置MSTP域的MSTP修订级别的1,缺省情况下MSTP域的MSTP修订级别0,需要将各设备的MSTP修订级别修改为一致


配置多生成树实例和VLAN的映射关系,同一vlan的数据只能对应一个实例,而一个实例可以对应多个vlan(instance1vlan2to10)


[ SW1 -mst-region] instance 1 vlan 10       将vlan 10加入实例1中

[ SW1-mst-region] instance 2 vlan 20     将vlan 20加入实例2中

[ SW1 -mst-region] check region-configuration     查看MSTP域配置参数

[ SW1 -mst-region] active region-configuration    激活MSTP域的配置(必须配置)

[ SW1-mst-region]quit        退出配置模式

[SW1]stp instance 1 root primary       配置此交换机实例1的主根桥

[SW1]stp instance 2 root secondary      配置此交换机为实例2的备份根桥

[SW1] stp enable    在交换机上启用MSTP


同样配置SW2

[SW2]stp mode mstp

[SW2]stp region-configuration1

[ SW2 -mst- region] region-name huawei1

[ SW2 -mst- region] revision-level 1

[ SW2-mst-region] instance 1 vlan 10

[ SW2-mst-region]instance 2 vlan 20

[SW2- mst- reg1on] active reg1on- configuration

[ SW2 -mst- region] quit

[SW2]stp instance 1 root secondary      配置sw1交换机为实例1的备份根桥

[SW2]stp instance 2 root primary    配置sw2交换机为实例2的主根桥

[SW2] stp enable    在交换机上启用MSTP


配置SW3

[SW3]stp mode mstp

[SW3]stp region-conf iguration

[ SW3-mst- region] region-name huawei 1

[SW3-mst-region]revision-level 1

[ SW3-mst-region] instance 1 vlan 10

[SW3-mst - region] instance 2 vlan 20

[SW3 -mst- region]active region-configuration

[SW3] stp enable    在交换机上启用MSTP

[SW3]dis stp brief    查看STP接口角色及状态信息