生成树、快速生成树技术基础知识本章内容交换网络中的冗余链路生成树协议STP(SpannningTreeProtocol)-IEEE802.1d快速生成树协议RSTP(RapidSpannningTreeProtocol)配置STP、RSTP网络中存在的单点故障故障网络中的单点故障可导致网络的无法访问交换机网络中的冗余链路使用备份连接,可以提高网络的健全性、稳定性。VODServerPC2PC1SW1SW3SW2交换网络中的冗余链路故障在网络中提供冗余链路解决单点故障问题冗余链路出现的问题(1):广播风暴发送一个广播帧广播风暴冗余链路出现的问题(2):地址表不稳定VODServerPC2PC1SW1SW3SW2冗余链路出现的问题(3):多帧复制产生环路环路问题导致:广播风暴、多帧复制,MAC地址表不稳定等问题。PC2PC1SW1SW3VODServerSW2解决方法:环临时生成树思想临时关闭网络中冗余的链路。VODServerPC2PC1SW1SW3SW2生成树协议STP生成树协议STP的基本概念生成树协议(STP):IEEE802.1d标准主要思想是:网络中存在备份链路时,只允许主链路激活,如果主链路因故障而被断开后,备用链路才会被打开。主要作用:避免回路,冗余备份。生成树协议实现交换网络中,生成没有环路的网络,主链路出现故障,自动切换到备份链路,保证网络的正常通信。生成树协议的发展过程划分成三代第一代生成树协议:STP/RSTP(基于端口生成树)第二代生成树协议:PVST/PVST+(基于VLAN生成树,cisco专利技术)第三代生成树协议:MISTP/MSTP(基于实例instance生成树)生成树技术的发展BPDU的机制1.选择一个根交换机(RootBridge);2.确定到根交换机最短路径的端口根口(RootPort),;3.每个交换机都计算出了到根交换机的最短路径;4.每个LAN与根交换机之间,最短路径中相连的端口,称为指定端口(Designatedport);5.根口和指定端口进入转发Forwarding状态;6.其他的冗余端口就处于阻塞状态。生成树协议的工作过程switchAswitchCswitchB1、选举根交换机(RootBridge)BPDUA为根交换机2、所有非根交换机选择一条到达根交换机的最短路径3、所有非根交换机产生一个根端口根端口4、每个LAN确定指定端口指定端口5、将所有根端口和指定端口设为转发状态6、将其他端口设为阻塞状态路径开销1、比较本交换机到达根交换机路径开销,选择开销最小路径。带宽IEEE802.1dIEEE802.1w-------------------------------------10Mbps1002000000100Mbps192000001000Mbps420000路径开销的计算假设SwA为根交换机100100M路径开销为100MSwBSwASwCSwDSwE10M100M3810M最短路径的选择2、如果路径开销相同,则比较发送BPDU交换机BridgeIDMac:00d0f80000f1SwCSwBSwDSwAMac:00d0f80000d1Mac:00d0f80000f2最短路径的选择3、如果发送者BridgeID相同(即同一台),则比较发送者交换机portIDMac:00d0f80000f1SwCSwBSwDSwAMac:00d0f80000d1f0/1f0/2PortID:端口信息由1字节端口优先级和1字节端口ID组成生成树的比较规则生成树的选举过程中,应遵循以下优先顺序来选择最佳路径:1.比较Rootpathcost;2.比较Sender’sbridgeID;3.比较Sender’sportID;4.比较本交换机的portID。STP的缺点生成树经过一段时间(默认值是50秒左右)稳定之后,所有端口要么进入转发状态,要么进入阻塞状态。20秒15秒15秒时间Blocking(阻塞)Listening(侦听)Learning(学习)发送延迟Forwarding(发送)发送延迟端口状态Blocking接收BPDU,不学习MAC地址,不转发数据帧Listening接收BPDU,不学习MAC地址,不转发数据帧,但交换机向其他交换机通告该端口,参与选举根端口或指定端口Learning接收BPDU,学习MAC地址,以扩散flooding的方式转发数据帧Forwarding正常转发数据帧快速生成树协议RSTPIEEE802.1w快速生成树协议RSTP(RapidSpannningTreeProtocol)IEEE802.1wRSTP协议在STP协议基础上做了三点重要改进,使得收敛速度快得多(最快1秒以内)。改进第一点改进:为根端口和指定端口设置了快速切换用的替换端口(AlternatePort)和备份端口(BackupPort)两种角色,当根端口/指定端口失效的情况下,替换端口/备份端口就会无时延地进入转发状态。第二点改进:在只连接了两个交换端口的点对点链路中,指定端口只需与下游交换机进行一次握手就可以无时延地进入转发状态。第三点改进:直接与终端相连而不是把其他交换机相连的端口定义为边缘端口(EdgePort)。边缘端口可以直接进入转发状态,不需要任何延时。配置STP、RSTP打开、关闭SpanningTree协议Switch(config)#Spanning-tree如果您要关闭SpanningTree协议,可用nospanning-tree全局配置命令进行设置。配置SpanningTree的类型Switch(config)#Spanning-treemodeSTPSwitch(config)#Spanning-treemodeRSTP配置交换机优先级Switch(config)#spanning-treepriority0-61440(“0”或“4096”的倍数、共16个、缺省32768)如果要恢复到缺省值,可用nospanning-treepriority全局配置命令进行设置。STPport-prioritySwitch(config-if)#spanning-treeport-priority0-240(“0”或“16”的倍数、共16个、缺省128)如果要恢复到缺省值,可用nospanning-treeport-priority接口配置命令进行设置。STP、RSTP信息显示SwitchA#showspanning-tree!显示交换机生成树的状态SwitchA#showspanning-treeinterfacefastthernet0/1!显示交换机接口STP基本配置f0/1f0/1switch1switch2f0/2f0/2Switch1(config)#interfacefastethernet0/1Switch1(config-if)#switchportmodetrunkSwitch1(config)#interfacefastethernet0/2Switch1(config-if)#switchportmodetrunkSwitch1(config)#spanning-tree(开启生成树协议)Switch1(config)#spanning-treepriority0(设置交换机优先级别使其成为根交换机)Switch1(config)#spanning-treemodestp(确定生成树协议的模式为STP)Switch2#configSwitch2(config)#interfacefastethernet0/1Switch2(config-if)#switchportmodetrunkSwitch2(config)#interfacefastethernet0/2Switch2(config-if)#switchportmodetrunkSwitch2(config)#spanning-treeSwitch2(config)#spanning-treemodestpSTP主备链路切换时间理论时间为50秒。RSTP基本配置f0/1f0/1switch1switch2f0/2f0/2Switch1(config)#interfacefastethernet0/1Switch1(config-if)#switchportmodetrunkSwitch1(config)#interfacefastethernet0/2Switch1(config-if)#switchportmodetrunkSwitch1(config)#spanning-tree(开启生成树协议)Switch1(config)#spanning-treepriority0(设置交换机优先级别使其成为根交换机)Switch1(config)#spanning-treemoderstp(确定生成树协议的模式为RSTP)Switch2#configSwitch2(config)#interfacefastethernet0/1Switch2(config-if)#switchportmodetrunkSwitch2(config)#interfacefastethernet0/2Switch2(config-if)#switchportmodetrunkSwitch2(config)#spanning-treeSwitch2(config)#spanning-treemoderstpRSTP主备链路切换时间理论时间小于1秒。