6.3.1.1 生成树原理
1:关于生成树
stp(spanning tree protocol)是生成树协议的英文缩写。该协议可应用于环路网络,通过一定的算法实现路径冗余,同时将环路网络修剪成无环路的树型网络,从而避免报文在环路网络中的增生和无限循环。
网络中的交换机为了让其它的交换机知道它的存在而向它们传送信息包。这些信息包称为bpdu(bridge protocol data unit,网桥协议数据单元)。该信息包内主要内容是网络拓扑信息。交换机接收到这个bpdu后,便利用sta(spanning tree arithmetic,生成树算法)的数学公式进行计算。通过sta计算,网桥就可以知道网络上是否存在环路。如果存在环路,网桥就作出备份端口应该被阻塞的决定,最终去出环路。
端口状态共有五种端口状态:
1) 阻塞状态(blocking)---------只侦听bpdu包,不进行数据帧转发。
2) 侦听状态(listening)--------只侦听数据帧,不进行转发。
3)学习状态(learning)---------学习地址信息,不进行转发。
4) 转发状态(forwarding)-------学习地址信息,并进行转发。
5) 无效状态(disabled)---------不进行转发,不侦听bpdu包。因设备故障或者网络管理员的操作而导致。
通常情况下,交换机端口的状态是按照如下顺序进行转换。阻塞状态→侦听状态→学习状态→转发状态。转发状态和阻塞状态可以处于维持状态,而侦听状态和学习状态是过渡状态,最终会转换为转发状态或阻塞状态。
生成树的主要工作过程:
6) 竞选根桥:启动生成树协议后,交换机之间通过传递bpdu包来交换信息。bpdu包中有一项重要信息,交换机id。它是由8个字节组成,两个字节的优先级和6个字节的交换机的mac地址所组成。由于mac地址的唯一性,同样能保证交换机id的唯一性。
7252nsm交换机的优先级出厂缺省值为32768,这个数值可由网络管理员修改。因此,网路管理员可以通过控制优先级的大小来选择那个设备为根桥。网络中交换机启动生成树协议,交换机通过比较网桥id的大小选举根网桥。协议规定,交换机id最小的为根桥,根桥只能有一个。
7)竞选根端口:根端口是指在每个非根桥上被选择的唯一处于转发状态的端口。这个端口满足到根桥所花费的代价最小。这里所说的代价是指端口所连接的网段成本(如:全双工、半双工、10mbps网段、100mbps网段)。
8)选指定网段端口:这个过程是在每个网段上选择唯一一个指定端口。选择原则是比较网段中各端口到根桥所花费的成本,满足最小成本的端口为指定端口。其实,阶段二和阶段三是确定到根桥的最佳通路的一个过程。并且,由于三个阶段的唯一性。这样生成树协议将去掉多台交换机形成的环路。
2:生成树相关参数
1)最大时限(max. age):最大时限的可选数值范围是6秒到40秒。在最大时限将到时,如果还没有收到根桥发出的bpdu,那么,你的交换机将开始发送它自己的bpdu到其他所有的交换机,
2)申请成为根桥。如果你的交换机的桥标识符确实是最低的,那么,它将成为根桥。
3)呼叫时间(hello time):呼叫时间的可选数值范围是1秒到10秒。这是根桥发送两个bpdu的时间间隔,告知其他所有交换机它是根桥(root bridge)。如果你为你的交换机设置了呼叫时间,但是它还不是根桥,那么,当你的交换机成为根桥之后,此呼叫时间就会有用处。
4)注意:呼叫时间不能比最大老化时间(max. age)长,否则将会出现配置错误(configuration error)的信息。
5)转发延迟时间(forward delay timer):转发延迟时间的可选数值范围是4秒到30秒。这是交换机上的端口从阻塞状态变为转发状态所需的时间。
当设置上述参数时,请一定注意下述公式:
最大老化时间≤2×(转发时延-1秒)
最大老化时间≥2×(呼叫时间+1秒)
6)桥优先级(bridge priority):交换机的优先权可选数值范围是0到65535。0表示最高的优先权。
7)端口通路成本(port cost):端口通路成本的可选数值范围是1 到65535。数值越小,相应的端口越可能被选定转发数据包。
8)端口优先级(port priority):端口优先级的可选数值范围是0到255。数值越小,相应的端越可能成为根端口。
3:生成树举例
例如在一个环路中有三台交换机,如图6.15所示。在此例中,如果不使用生成树技术,你可以预见到可能发生的一些网络故障。例如,如果交换机a 向交换机b 发出一个广播包,那么,交换机 b 将把此数据包广播给交换机c,而交换机c 又会将此数据包广播回给交换机a。随后会一直将如此反复,广播包将会在这个环路中被循环往复地传递,从而导致严重的网络故障。
为了避免网络环路的发生,可以如图6.16所示采用生成树(stp)解决。生成树将阻断交换机b 与交换机c 之间的连接,以打破环路的形成。生成树算法将根据计算出来的各桥和端口之间的数值,来决定断开哪一条连接。现在,如果交换机a 向交换机c 发出一个广播包,那么,交换机c 将在端口2处将此数据包丢弃,那么此广播将结束。生成树的算法较复杂,所以,建议尽量不要改动其出厂默认设置值。生成树将自动任命根桥/根端口,并避免环路的形成。

6.3.1.2 netcore 7252nsm二层交换机生成树参数设置
1:生成树参数配置
1 开启生成树,将生成树默认状态设置为“enable”。
2 各项生成树指标
最大时限(max age): (6 - 40 sec)出厂默认为 20秒
hello time: (1 - 10sec)出厂默认为2
转发延迟(forward delay): (4 -30 sec) 出厂默认为15
桥优先级(bridge priority): (0 - 61440) 出厂默认为32768
用户可以根据实际状况,自行修改各项指标值。

2:生成树信息
查看当前生成树各项信息。

3:生成树端口参数配置
1 在“生成树端口 参数配置”栏中,在“端口列表”中设定交换机端口号,设定是否打开快速端口,并输入端口的优先权、通路成本两项参数。
2 在“生成树端口状态”页面中查看netcore 7252nsm交换机各端口的快速端口,通路成本,优先权三个参数的值。

友情提示
快速端口(fast port span)特性指为了加快直接连接在用户终端(如pc 机)或文件服务器的端口的生成树状态收敛(阻塞、侦听、学习、转发)时间,当端口的连接状态从lindown变为linkup时,该端口的生成树状态马上变迁为转发状态,不需要经过侦听/学习过程。但如果该端口在linkup后收到bpdu,则需要参与生成树协议。而且聚合端口是不能设置为快速端口的。