雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 29472|回复: 87

STP之生成树的选举(转帖)

    [复制链接]
发表于 2009-3-31 15:13:13 | 显示全部楼层 |阅读模式
12.3  STP收敛

收敛是生成树的一个重要方面。所谓收敛就是整个网络达到一个稳定的状态:选举出根交换机,并决定出所有端口的角色,排除所有潜在的环路。当网络拓扑发生变化时,执行生成树算法,让网络重新收敛。

12.3.1生成树的选举(1

为了使采用STP的网络最终收敛为一个逻辑上没有环路的网络拓扑,需要通过以下4步实现。

每个广播域只能有一个根交换机。

每个非根交换机有且只能有一个根端口。

每个网段有且只能有一个指派端口。

既不是根端口,也不是指派端口的端口将被阻塞。

1.选举根交换机

交换机之间通过发送BPDUBridge Protocol Data Unit)来选举根交换机,拥有最小BID的交换机将成为根交换机。

2.选举根端口

每个非根交换机有且仅有一个根端口。非根交换机上的根端口是从非根交换机到根交换机的最低路径花费的端口。非根交换机可能会从多个端口接收到根交换机的BPDU,根端口的选举依照下面的顺序:

最低花费的端口成为根端口。

在花费相同的情况下,比较发送者的BID。在图12-3-1中,交换机SW4从端口1和端口2都能收到根交换机SW1BPDU,两边的花费相同,都是38。接下来比较的就是发送者的BID。假设SW2BID32768+2222.2222.2222SW3BID32768+3333.3333. 3333SW2BID小,则SW4的端口1成为根端口。



在发送者BID相同的情况下,比较发送者的PIDPort ID)。在图12-3-2中,SW1是根交换机,SW2Fa1/1Fa1/2到根交换机的花费相同,都是19,发送者的BID也相同(都是交换机SW1BID)。接下来比较的是发送者的PIDPID=端口优先级+端口号,端口优先级占用一个字节,默认是128,端口号在同一个模块上是顺序增加的,起始端口号和交换机的型号以及该模块所在的插槽有关。可以通过下面的命令更改交换机端口的优先级:



运行机架中的SW1SW2,然后在SW2上执行"show spanning-tree brief"命令,结果如图12-3-3所示。可以看到SW2交换机Fa1/1端口接收到的发送者PID128.43Fa1/2端口接收到的发送者PID128.42SW2的根端口是Fa1/2端口,根端口的状态是转发状态。






在发送者PID相同的情况下,比较接收者的PID。在图12-3-4中,SW1是根交换机,SW1Fa1/1端口连接着SW2Fa1/1Fa1/2,这样的拓扑往往是中间接了一台集线器。SW2上两个端口的花费一样,发送者的BID也一样(都是SW1BID),发送者的PID也一样(都是交换机SW1Fa1/1端口的PID)。接下来将比较接收者的PIDSW2Fa1/1端口的PID小于Fa1/2端口的PIDSW2Fa1/1端口是根端口。





3.选举指派端口


每个网段都有一个指派交换机,该交换机负责把网段的数据发往根交换机。指派交换机上的端口叫做指派端口。选举指派端口的过程其实是先选出指派交换机,如果指派交换机上有多个端口,再从多个端口中选出一个成为指派端口。指派端口的选举依照下面的顺序:


比较花费。在图12-3-5中,SW1是根交换机,SW2到根交换机的花费是4SW3到根交换机的花费是8,在SW2SW3之间的网段上,SW2是指派交换机,则SW2上的Gi2/3端口是SW2SW3之间的网段上指派端口。





比较BID。这里特别要提醒比较的是BID,不是发送者的BID,因为选举指派端口,首先要选出的是指派交换机,交换机的选举比较的则是BID。在下图12-2-1中,SW1是根交换机,SW2SW3到根交换机的花费相同。接下来比较的是交换机的BID,假如SW2BIDSW3BID小,则在SW2SW3之间的网段上,SW2是指派交换机,则SW2上的Fa1/3端口是SW2SW3之间的网段上指派端口。







比较PID。如果指派交换机上有多个端口连接到同一个网段,则具有最小PID的端口成为指派端口。


4.阻塞端口

既不是根端口也不是指派端口的端口将被阻塞。比如下图12-2-8SW3Fa1/2端口、图12-3-1SW4的端口2、图12-3-2SW2Fa1/2端口、图12-3-4SW2Fa1/2端口、图12-3-5SW3Fa1/1端口都将被阻塞。



实验:正确配置STP

运行机架中的SW1SW2SW3,不做任何配置,分析各个端口的角色和状态。


选举根交换机。在默认情况下,所有交换机的优先级都是32768SW1MAC地址<SW2MAC地址<SW3MAC地址。因此SW1MAC地址最小,SW1是根交换机。< P>

选举根端口。SW2Fa1/2SW3Fa1/1是根端口。

选举指派端口。SW1上的Fa1/1Fa1/2Fa1/3SW2上的Fa1/3,这4个端口都是指派端口。

阻塞端口。SW2上的Fa1/1SW3上的Fa1/2既不是根端口,也不是指派端口,将被阻塞。


STP收敛后的结果如图12-3-6所示,读者可以在每个交换机上使用"show spanning-tree brief"命令进行验证。


以下是笔者工作中遇到的一个实例。


    某单位网络拓扑如图12-3-7所示,在核心和汇聚层配置了两台思科6509交换机,两台交换机间使用千兆链路互连;接入层配置的是2950交换机,为了避免单链路故障,接入层使用两条百兆链路分别上连到两台6509交换机的Fa2/1端口;两台服务器均为千兆和思科6509交换机相连。公司员工反映网速很慢。经测试,发现两台服务器间的流量始终超过不了百兆。初步分析,可能是生成树的问题,在两台6509交换上使用"show spanning-tree brief"命令查看,发现所有交换机的优先级都是默认的32768,但2950生成的日期较早,有最小的MAC地址,交换机2950是根交换机。右边6509Gi1/1端口既不是根端口,也不是指派端口,被阻塞。至此,原因找到了,由于2950是根交换机,两台6509间的千兆链路被阻塞,Server 1Server 2的流量全部经2950中转,百兆是瓶颈,这台2950交换机反而成了单位的核心。





利用学到的知识,把两台6509交换机分别配置成根交换机和备份的根交换机,问题解决。
游客,如果您要查看本帖隐藏内容请回复


[ 本帖最后由 emery 于 2009-4-6 14:00 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
发表于 2009-3-31 16:03:09 | 显示全部楼层
比课本还详细啊
发表于 2009-3-31 17:06:59 | 显示全部楼层
楼主,辛苦万分,建议做成PDF文档,看起来直观,便于收藏


回复 3# kinron 的帖子
          谢谢建议,PDF文档已经上传了,大家需要的自己下载。

[ 本帖最后由 emery 于 2009-4-6 14:02 编辑 ]
发表于 2009-3-31 18:07:57 | 显示全部楼层
思路清楚而详细
发表于 2009-4-1 11:59:19 | 显示全部楼层
这样花花的比较不吸引人眼球哦!……
发表于 2009-4-10 23:19:46 | 显示全部楼层
学习一下
发表于 2009-4-20 22:15:16 | 显示全部楼层
学习下!!!!!!!
发表于 2009-5-24 14:57:29 | 显示全部楼层
dfghfghfghfghfgh
发表于 2009-5-24 20:08:17 | 显示全部楼层
来看看标准配置是啥
发表于 2009-6-5 15:06:55 | 显示全部楼层
看一看,呵呵
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-11-23 15:02 , Processed in 0.090198 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表