思科模拟器:STP案例分析
目录
一、观察...
二、配置网络...
2.1 配置核心层...
2.2 配置接入层...
2.3 各层连接及层间配置...
三、STP.
3.1 正常收敛...
3.2 模拟单点故障的拓扑变更的各种情况...
3.2.1 模拟非根桥交换机的非根非指定端口单点故障...
3.2.2 模拟有阻塞端口的非根桥交换机的根端口单点故障...
3.2.3 模拟无阻塞端口的非根桥交换机的根端口单点故障...
3.2.4 模拟有阻塞端口的非根桥交换机的指定端口单点故障...
3.2.5 模拟无阻塞端口的非根桥交换机的指定端口单点故障...
3.3 总结...
一、观察
观察网络,根据三层网络架构进行分层
二、配置网络
2.1 配置核心层
先配置核心/汇聚层的二层链路聚合
配置交换机Switch0和Switch1
配置后检查是否配置成功,链路无阻塞端口,证明链路聚合配置成功
2.2 配置接入层
接下来配置接入层,主要是配置基于端口的vlan和端口的access类型
配置Switch2和Switch3的接入端口
2.3 各层连接及层间配置
配置完接入层,接下来连接各层(接入层和核心层)
之后配置层间互联端口为trunk类型:对四台交换机的层间端口类型都进行配置
配置完层间端口,等待30秒(两个FowardDelay时间)后网络完全收敛,之后检查网络连通状态;同时配置主机层的各主机IP地址,并注释到图中:
三、STP
3.1 正常收敛
之后打开仿真,不断捕获/转发分组,直到找到一台交换机上输出层BPDU的根ID和桥ID这两个字段相同,这个就是根桥,之后不断捕获/转发分组,逐步确定端口角色并注释在图中,直到注释完所有的端口角色。最终结果如图:
(RP端口:根端口,DP端口:指定端口)
3.2 模拟单点故障的拓扑变更的各种情况
3.2.1 模拟非根桥交换机的非根非指定端口单点故障
1.shutdown命令,关闭Switch3的f0/4端口(非根非指定端口)
2.在仿真模式下不断捕获/转发分组,观察拓扑变更过程
根桥SW2通过指定端口向SW0和SW1发送BPDU,SW1再转发给SW0和SW3
3.结论:非根非指定端口单点故障,会关闭故障链路上的指定端口,但不会发生拓扑变更和重新收敛
3.2.2 模拟有阻塞端口的非根桥交换机的根端口单点故障
1.shutdown命令,关闭Switch3的f0/3端口(根端口)
进行仿真直到网络重新收敛,观察端口角色和拓扑的变更情况
收敛后注释出端口角色的变化,并说明拓扑变更的情况
收敛过程中,可以观察到在30秒左右这台非根交换机的阻塞端口进入转发状态(经历了两次15s超时的状态迁移才进入转发态,所以是30s)。
3.2.3 模拟无阻塞端口的非根桥交换机的根端口单点故障
shutdown命令,关闭Switch1的f0/4端口(根端口)
未收敛时网络状态
进行仿真直到网络重新收敛,观察端口角色和拓扑的变更情况
首先看到Switch1向其他所有非故障端口转发根BPDU
查看从Switch1的f0/3端口向Switch3的f0/3发送的BPDU
有阻塞端口的非根交换机,它的根端口和阻塞端口都可以收到根ID来自根桥BPDU,而无阻塞端口的非根交换机,只有它的根端口才能收到来自根桥的BPDU。STP网络收敛后,若无阻塞端口的非根交换机的根端口单点故障,则此时这个交换机不能收到来自根桥根ID的BPDU,此时这个交换机会认为根桥故障,而不是自己的根端口故障。此时这个交换机会认为自己是新的根桥,然后向其他所有端口发送用自己的BID作为RID的BPDU。因为这个交换机的BID优先级一定低于原根桥的BID,所以此时,其他所有收到这个交换机的根BPDU的交换机,都会比较得出优先级,这个故障桥BPDU的RID字段要小于原根桥BPDU的BID(RID)字段。但是其他交换机,在发现故障桥的优先级更低时,不会立即通知故障桥关于根桥RID的BPDU,而是开启一个计时器,等待网络中是否还有其他优先级的待选举的根桥。此时,其他非根桥交换机会通知除了故障桥外的所有非根桥交换机根桥RID的BPDU,而且,对于这个故障桥的所有BPDU都不会进行转发。在这个计时器超时前,故障桥一直无法收到来自根桥RID的BPDU,他会一直向其他所有端口转发自己BID作为RID的BPDU。而到计时器超时,此时,开启计时器的交换机认为,已经没有其他RID的存在了,此时它将会向自己的非根端口,转发原根桥RID的BPDU(因为他认为,经过一个计时器时间,它已经学习完整个网络的根ID了),此时故障桥终于收到了来自根桥的RID优先级更高的BPDU。之后这个故障桥将作为非根交换机,开启端口角色的选举,通过比较BID、跟路径开销来选举出自己各个端口的端口角色;而开启计时器的交换机也将重新进行端口角色的选举。这些端口的角色选举,将经历两个状态转换计时器的时间,也就是两个15s。
所以这个单点故障,从故障开始到网络完全收敛一共经历了3个计时器时间,第一个计时器时间上面没有说明,这个计时器的时间叫最大老化时间,一共20s,也就是10个Hello时间;而后两个计时器时间就是两个15s的端口状态转换时间,所以整个收敛时间是50s,50s后,网络完全收敛,此时网络拓扑为:
3.2.4 模拟有阻塞端口的非根桥交换机的指定端口单点故障
shutdown命令,关闭Switch0的f0/4端口(根端口)
后续结果同情况1
3.2.5 模拟无阻塞端口的非根桥交换机的指定端口单点故障
shutdown命令,关闭Switch1的f0/3端口(根端口)
后续结果同情况2
3.3 总结
情况4、5结果同2、3,在这过程中可以发现,指定端口所在的链路另一端一定是根端口或者阻塞端口,所以阻塞端口故障和两种根端口的故障可以代表指定端口所有的故障情况。
进一步推理,根桥所有端口都是指定端口,所以问题又变成了根端口和阻塞端口故障的情况
所以单点故障只有阻塞端口所在链路故障、有阻塞端口的非根桥交换机的根端口所在链路故障、无阻塞端口的非根桥交换机的根端口所在链路故障等。