|
交换机是一个网桥,它必须运行生成树协议(STP)。Catalyst交换机对每个VLAN运行一个STP版本。我们还没有讨论如何创建VLAN,因为现在讨论还没有必要。第4章讨论了STP和它的相关参数。本章介绍如何设置这些参数。 根网桥是具有最低优先级的网桥。使用setspantreepriority命令更改网桥默认的优先级32768。 Cat5000>(enable)set spantree priority [网桥优先级] [vlan] 如果没有指定VLAN,就为VLAN1设定了网桥优先级。 警告在设定网桥优先级后通常会忘记指定VLAN。这会在你设置另一个VLAN的网桥优先级时发生错误。 示例 将交换机的VLAN10设为根网桥:
这里将网桥的优先级设得很低,使它为根网桥。对于VLAN10,如果存在另一个优先级为1的网桥,可使用MAC地址作为最终的决胜方法。 哪些端口置于转发状态由几个参数来确定。参数中的两个是端口优先级和端口成本。可以使用两个命令设置端口成本。如果要改变一个端口对所有VLAN的端口成本,可以使用set port cost命令;如果只改变对某一个VLAN的端口成本,可以使用set port vlan cost命令。端口默认成本的根据是它的带宽,一般是1000/带宽,但快速以太网除外。快速以太网的默认成本使用的是19而不是10。 设置端口对所有VLAN的成本: Cat5000>(enable)set spantree portcost [模块号/端口号] [成本] 设置对特定VLAN的成本: Cat5000>(enable)set spantree portvlancost [模块号/端口号] cost[成本] [VLAN] 示例 将端口1/1对所有VLAN的端口成本从默认值19设为10:

置于转发模式的端口也依赖于端口优先级。在默认状态下,所有端口设为优先级32(1-63)。优先级越低,端口被置为转发模式的机会就越多。正如端口成本一样,优先级也可以分别使用set spantree portvlan priority及set spantree priority命令对所有VLAN进行设置或对单个的VLAN进行设置。 设置端口对所有VLAN的优先级: Cat5000>(enable)set spantree portpri 模块号/端口号 优先级 [vlans] 设置端口对一个VLAN的优先级: Cat5000>(enable)set spantree portvlanpri 模块号/端口号 优先级 [vlans] 示例 将端口2/1对所有的VLAN的端口优先级设为1:

第2章中提到过,当端口和以太网进行信息交换时,端口在置于转发状态前必然会通过监听和获取状态,这一问题可以用set spantree portfast命令解决。此命令可以使端口在监听和获取信息的同时转发信息。因此,与端口相连的工作站可以在传输BPDU和STP计算时连接到适当的服务器。这并不打断STP!如果出现循环,交换机识别它并在错误端口对其进行阻塞。可能导致短暂的失去连接,我观察到这一时间少于10秒。 使端口处于监听和获取状态时能够转发信息: Cat5000>(enable)set spantree portfast [模块号/端口号] [enable或disable] 示例 如果端口2/1直接与工作站或服务器相连,在监听和获取模式下不必阻塞:

这当查找STP出现的错误时,这个屏幕显示的内容非常有用。根端口就是离根网桥最近的端口。在本例中为1/0端口。但是不存在1/0端口!这表明本交换机对于VLAN1为根网桥。但是,本交换机不可能是VLAN10的根网桥。这一显示窗口也给出了MAC地址和根网桥的优先级。如果要将交换机作为根网桥,需要查看交换机的优先级,这些信息对此非常重要。
|