原理:
STP是用来避免数据链路层出现逻辑环路的协议,使用BPDU传递网络信息计算出一根无环的树状网络结构,并阻塞特定端口。
在网络出现故障的时候,STP能快速发现链路故障,并尽快找出另外一条路径进行数据传输。
交换机上运行的STP通过BPDU信息的交互,选举根交换机,然后每台非根交换机选择用来与根交换机通信的根端口,之后每个
网段选择用来转发数据至根交换机的指定端口,最后剩余端口则被阻塞。
在STP工作过程中,根交换机的选举,根端口、指定端口的选举都非常重要。华为VRP提供了各种命令来调整STP的参数,用
以优化网络。例如,交换机优先级、端口优先级、端口代价值等。
例子:
公司购置了4台交换机,组建网络。考虑到网络的可靠性,将4台交换机如图4-1所示拓扑搭建。由于默认情况下,交换机之间运
行STP后,根交换机、根端口、指定端口的选择将基于交换机的MAC地址的大小,因此带来了不确定性,极可能由此产生隐患。
公司网络规划,需要S1作为主根交换机,S2作为S1的备份根交换机。同时对于S4交换机,E0/0/1接口应该作为根端口。对于S2和
S3之间的链路,应该保证S2的E0/0/3接口作为指定端口。同时在交换机S3上,存在两个接口E 0/0/10、E 0/0/11连接到测试PC,测试
PC经常上下线网络,需要将交换机S3与之相连的对应端口定义为边缘端口,避免测试电脑上下线对网络产生的影响。
拓扑图:
MAC地址:
1.基本配置
根据地址进行配置,在交换机上启用STP(华为交换机默认启用MSTP),将交换机的STP模式改成普通生成树STP。
(S2,S3,S4同理配置)
配置完后,我们等待30s生成树重新计算时间,再display stp命令查看一下生成树状态。
我们发现S1的E0/0/1端口为转发状态、端口角色为根端口,E0/0/2端口为丢弃状态,端口角色Alternate,即替代端口。
还可以使用 display stp brief命令仅查看摘要信息。
2.配置网络中的交换机
根交换机在网络中的位置是非常重要的,如果选择了一台性能较差的交换机,或者是部署在接入层的交换机作为根交
换机,会影响到整个网络的通信质量及数据传输。所以确定根交换机的位置极为重要。根交换机选举依据是根交换机ID,
值越小越优先,交换机默认的优先级为32768,当然该值是可以修改的。
现在将S1配置为主根交换机,S2为备份根交换机,将S1的优先级改为0,S2的优先级改为4096。
配置完了,看一下S1和S2的STP的状态。
发现了S1的优先级变成了0,是根交换机;S2的优先级变为4096,为备份根交换机。
还有另外配置主根交换机和备份根交换机的方法:
要先删再配置
我们可以用display命令再看看,这里我就不再看了,自己可以试试。
3.理解根端口的选举
生成树在选举出根交换机之后,将在每台非根交换机上选举根端口。选举时首先比较该交换机_上每个端口到达根交换机的
根路径开销,路径开销最小的端口将成为根端口。如果根路径开销值相同,则比较每个端口所在链路上的上行交换机ID,如果该交
换机ID也相同,则比较每个端口所在链路上的上行端口ID。每台交换机上只能拥有一个根端口。
根据上述的配置信息,我们看一下S4上生成树信息。
可以看到,S4的 E0/0/2为根端口为转发状态。S4经过S3到S1与S2到S1的开销值相同,S2目前的优先级为4096,S3默认为32768,
所以与S2连接的E0/0/2接口为根端口。
看一下S4的E0/0/2接口的开销值
接口路径采用的是Dot1T的计算方法,Config是指手工配置的路径开销,Active是实际使用的路径开销,开销值为1。
配置S4的E0/0/2接口的代价值为2000,即增加该接口默认的代价值。