锐捷工程师培训2生成树协议原理及配置.ppt
1,冗余设计-设计出强壮的网络架构,trunk,trunk,单星型拓扑容易出现单点故障,可靠性较差。,解决方案,硬件,设备,链路:,热备,冷备,双设备,双模块,双星型拓扑可靠性较高,达到五个九的高可用性。,软件/协议冗余设计:VRRP、聚合端口、路由协议的实施,2,生成树协议原理及配置,技术培训中心,3,教学目标,通过本章学习使学员能够:1.掌握STP及RSTP技术原理2.掌握STP及RSTP基本配置3.掌握RSTP在实际网络中的应用4.掌握MSTP的原理和实施技术,4,课程议题,生成树起源,5,生成树综述,LAN 1,LAN 2,存在单点故障,冗余的设计又会带来环路,导致广播风暴,生成树协议的产生背景,6,生成树综述,生成树协议的分类生成树协议的分类,按照产生的时间先后顺序为STP、RSTP、MSTP生成树协议所遵循的IEEE标准 三种生成树所遵循的IEEE标准分别为STP-IEEE 802.1d,RSTP-IEEE802.1W,MSTP-IEEE 802.1S,7,学习目标,1、掌握STP、RSTP、MST原理及配置实施技术2、理解二层交换网络的收敛与生成树协议有关3、理解数据在二层交换网络中走的路径与生成树协议有关,8,课程议题,一、STP技术原理,9,STP议题,1、STP协议的作用与应用场景2、STP工作原理3、配置消息(BPDU)的报文格式4、网络拓扑变化时STP的收敛过程5、STP的配置与实施,10,1、什么是STP协议,它的作用是什么,STP(spanning-tree-protocol)是交换机通过某种特定算法来逻辑阻塞物理冗余网络中某些接口,以达到避免数据转发循环,生成无环路拓扑的一种二层协议。,11,LAN 1,LAN 2,该链路处于阻塞状态,该链路重新被激活,STP是怎样处理环路呢?,12,STP的应用场景,双星型结构单星型结构,13,2、STP工作原理,基本思想:在网桥之间传递配置消息(BPDU),比较其中的参数,根据STP算法打开好的端口,阻塞差的端口,从而打破物理环路,建立一个无循环的逻辑拓扑。网桥利用收到的配置消息做以下动作:,确定最小的根网桥ID(网桥优先级背板MAC地址),确定最小路径开销cost,确定最小发送网桥ID,确定最小发送端口ID,14,最短路径的选择,比较开销选择路径比较本交换机到达根交换机路径的开销,选择开销最小的路径,15,STP初始化收敛,选择根网桥在非根网桥上选择根端口在每一个网段上选择一个指定端口阻塞剩余端口,16,3、BPDU报文结构,L/T:帧长,LLC Header:BPDU帧固定的链路头。值为:0 x424203,Payload:BPDU数据,0 x01-80-c2-00-00-00,17,端口状态,生成树端口的四种状态Blocking 接收BPDU,不学习MAC地址,不转发数据帧Listening 接收BPDU,不学习MAC地址,不转发数据帧,但交换机向其他交换机通告该端口,参与选举根端口或指定端口Learning接收BPDU,学习MAC地址,不转发数据帧Forwarding正常转发数据帧一个启用了STP的交换机的端口收敛时间问题,18,端口状态迁移,19,4。那么当拓扑发生变化,STP怎么处理呢?,20,拓扑变化交换机二层端口收敛导致用户业务可能中断,A,B,C,1,2,3,Link 1 down 收敛时间,Link 2 down 收敛时间,Link 3 down 收敛时间,30秒,C产生TCN次佳BPDU 10秒30秒,C产生TCNB产生TCN,21,TCN BPDU(Topology Change Notification),当有以下几种情况出现时交换机发送TCN BPDU报文处于转发状态或监听状态的端口,状态变为阻塞 处于未启用状态的端口进入转发状态,并且交换机上有其他的转发端口 交换机从指定端口收到TCN BPDU报文 简单的来说就是端口的up/down就会导致交换机发TCN BPDU发给上游交换机,发到根桥那里去,22,TCN BPDU的作用加快mac表的超时以更新转发表项,当网络拓扑发生变化时,交换机会从自己的根端口向外发送TCN BPDU报文接收到TCN BPDU报文的交换机向发送者发送TCA报文标识对TCN的确认根交换机接收到TCN BPDU报文向网络中发送TC BPDU标识拓扑变化收到TC BPDU的交换机将MAC地址表清空,23,5、生成树协议的配置,Spanning-tree,Switch(config)#,no Spanning-tree,Switch(config)#,Spanning-tree mode stp/rstp/mstp,Switch(config)#,开启生成树协议锐捷默认生成树协议是关闭的关闭生成树协议锐捷默认生成树协议是关闭的配置生成树协议的类型锐捷全系列交换机默认使用MSTP协议,24,配置交换机优先级“0”或“4096”的倍数、共16个,缺省32768。恢复到缺省值配置交换机端口的优先级Switch(config)#interface interface-type interface-numberSwitch(config-if)#spanning-tree port-priority number,生成树协议的配置(续),spanning-tree priority,Switch(config)#,nospanning-tree priority,Switch(config)#,25,生成树协议的配置(续),spanning-tree port-priority number,Switch(config-if)#,配置交换机端口的优先级端口优先级可配置范围为0或16的整数倍,共16个,最大值为240,默认优先级为128。,26,生成树协议的配置(续),配置交换机优先级和端口优先级范例,27,生成树协议的配置(续),Spanning Tree 的缺省配置:关闭STPSTP Priority 是32768STP port Priority 是128STP port cost 根据端口速率自动判断Hello Time 2秒Forward-delay Time 15秒Max-age Time 20秒可通过spanning-tree reset 命令让spanning tree参数恢复到缺省配置,28,配置Hello Time配置Forward-Delay Time,生成树协议的配置(续),spanning-tree hello-time seconds,Switch(config)#,根交换机发送BPDU报文的默认时间是2秒,通过配置可修改,取值范围是1-10秒。,spanning-tree forward-time seconds,Switch(config)#,Forward-Delay Time为BPDU报文扩散到全网中的时间,默认时间是15秒,通过配置可修改,取值范围是4到30秒,29,配置Max-Age Time,生成树协议的配置(续),spanning-tree max-age seconds,Switch(config)#,Max-Age Time 为BPDU报文的最大生存时间,默认值是20秒,可以通过配置修改,取值范围是6到40秒,30,配置bpdu-guard,生成树协议的配置(续),spanning-tree bpduguard enable,Switch(config-if)#,Bpdu-guard特性防止非法交换机的接入,保护拓扑.如果在配置了该特性的接口上收到了BPDU,则接口会进入Error-disabled状态,可通过手工配置errdisable recovery命令恢复接口,31,配置portfast,生成树协议的配置(续),spanning-tree portfast,Switch(config-if)#,Portfast特性会使端口直接进入Forwarding,但会因为收到BPDU而使该特性时效,从而使端口进行正常的STP算法后进入Forwarding,通常结合BPDUGUARD特性使用.,32,STP回顾,STP工作原理配置消息(BPDU)的报文格式STP的端口收敛校园网中STP的部署要点,33,课程议题,二、RSTP技术原理,34,RSTP议题,RSTP的三个改进之处RSTP的向后兼容问题,35,STP的不足,端口从阻塞状态进入转发状态必须经历两倍的 Forward Delay时间,所以网络拓扑结构改变之后需要至少两倍的Forward Delay时间,才能恢复连 通性 如果网络中的拓扑结构变化频繁,网络会频繁的失去连通性,这样用户将无法忍受。,36,RSTP协议概述,RSTP(快速生成树协议)是从STP发展而来,实现的基本思想一致;RSTP具备STP的所有功能;RSTP改进的目的就是当网络拓扑结构发生变化时,尽可能快的恢复网络的连通性。,37,RSTP的端口状态与端口角色,端口角色,Root Port:与STP中的根端口概念一致。,Designated Port:与STP中的指定端口概念一致。,Alternate Port:到根网桥的替代路径。根端口的备份,backup Port:指定端口的备份,到网段的备份,38,RSTP端口的状态,39,RSTP改进一,根端口,指定端口,阻塞端口,RootBridge,当拓扑发生改变时,在新拓扑中的根端口可以立刻进入转发状态,40,RSTP改进一,RootBridge,根端口,指定端口,替换端口,新的端口角色的引入替换端口(AlternatePort):根端口的备份口,一旦根端口失 效,该口就立刻变为根端口。,41,RSTP改进一,RootBridge,根端口,指定端口,替换端口,备份端口,新的端口角色的引入备份端口(BackupPort):DesignatePort的备份口,当一个网桥有两个端口都连在一个LAN上,那么高优先级的端口为DesignatedPort,低优先级的端口为Backup Port。,42,RSTP改进二,SW1,SW2,proposal,agree,根端口,指定端口,指定端口可以通过与相连的网桥进行一次握手,快速进入转发状态。,43,RSTP改进三,边缘端口,不可能产生环路,网络边缘的端口,即直接与终端相连,而不是和其他网桥相连的端口可以直接进入转发状态,不需要任何等待时延。,44,RSTP的性能,第一种改进的效果:发现拓扑改变到恢复连通性的时间可达数毫秒,并且无需传递配置消息。第二种改进的效果:网络连通性可以在交换两个配置消息的时间内恢复,即握手的延时。第三种改进的效果:边缘端口的状态变化不会影响网络连通性,也不会造成环路,因此进入转发状态无延时。,若非根网桥在连续的三个Hello time内接受不到根的BPDU则立即产生和发送自己的BPDU,以加快间接感知网络拓扑变化的时间。,45,RSTP与STP的区别,协议版本不同端口状态转换方式不同配置消息报文格式不同拓扑改变消息的传播方式不同注意,RSTP也是在整个交换网络应用单生成树实例,不能解决由于网络规模增大带来的性能降低问题。建议网络直径最好不要超过7,46,RSTP交换机与STP交换机的互操作,正常情况下,RSTP交换机不理解STP交换机的BPDU,STP交换机也不理解RSTP交换机的BPDU。,在连续的两个Hello time内RSTP交换机均收到STPBPDU,则RSTP的接收端口会进入STP的兼容模式,即回到STP协议下。接收和处理STP BPDU。,仅仅只是RSTP交换机上接收STP BPDU报文的端口会回退。而不是整个交换机,注意:在进行生成树协议迁移时,所有端口会重新收敛。,47,RSTP与STP的兼容,SW1(RSTP),SW2(STP),STP BPDU,RSTP BPDU,RSTP 协议可以与STP 协议完全兼容RSTP 协议会根据收到的BPDU 版本号来自动判断与之相连的网桥是支持STP 协议还是支持RSTP 协议,如果是与STP 网桥互连就只能按STP 的forwarding 方法,过30 秒再forwarding,无法发挥RSTP 的最大功效,48,RSTP与STP的兼容,SW1(RSTP),SW2(STP),STP BPDU,STP BPDU,SW1(RSTP),SW3(RSTP),STP BPDU,STP BPDU,SW2换成了支持RSTP的SW3,但由于SW1仍然发送STP BPDU,导致两台支持RSTP的交换机运行着STP。,49,RSTP与STP的兼容,SW1(RSTP),SW3(RSTP),RSTP BPDU,RSTP BPDU,RSTP提供了protocol-migration 功能来强制发RSTP BPDU,这样 SW1 强制发了RSTPBPDU,SW3 就发现与之互连的网桥是支持 RSTP 的,于是两台交换机开始运行RSTP,clear spanning-tree detected-protocols interface interface-id,50,RSTP回顾,RSTP的三个改进之处RSTP的向后兼容问题,51,课程议题,三、MSTP技术原理,52,RSTP的不足,Vlan10Vlan20,Vlan10Vlan20,Vlan10Vlan20,在实际工程中,如果使用RSTP只能做到冗余备份,无法做到按照VLAN流量来进行负载均衡.,53,1、MSTP的定义(multiple),定义和特点MSTP可以将具有相同转发路径的VLAN映射到一个生成树中,无需每个VLAN一个生成树。可以根据用户不同的数据转发路径创建相应的生成树实例。,MSTP得到各个厂商设备的支持,其国际标准为IEEE802.1S,54,2、MST的工作原理,1、收敛2、MST域3、MST的实例,55,MSTP的工作原理,MSTP区域概念,为抑制生成树覆盖范围从而加快生成树的收敛,在MSTP的操作机制中,引入了区域的概念。,我们将具有相同MSTP配置名称,MSTP配置修订号,VLAN与生成树实例的映射关系的交换机的集合称为一个MSTP的区域。,56,MSTP的工作原理,MSTP实例,IST实例,内部生成树实例,是MSTP区域内缺省的生成树实例。编号为0(instance 0)。缺省时,MSTP交换机上所有的VLAN都映射到IST中。,其他生成树实例的BPDU被包含于IST的BPDU中进行传递。,IST实例是代表整个交换网络的CST的子集。它接收并向CST实例发送BPDU。通过IST能够将整个MST区域表示为到达外部网络CST虚拟网桥。,57,MSTP的工作原理,MSTP实例,MST实例,MSTI是MSTP区域中由管理员手工定义的生成树实例,对于锐捷设备而言最多可达64个,编号为164。,MST实例只具有本地意义。,58,MSTP的BPDU,59,60,61,3、MST的配置实施,下面举例来说明如何进入MST 模式,将VLAN 3,5-10 映射到MST Instance 1。Ruijie(config)#spanning-tree mst configurationRuijie(config-mst)#instance 1 vlan 3,5-10Ruijie(config-mst)#name region 1Ruijie(config-mst)#revision 1Ruijie(config-mst)#showMST configurationName region1Revision 1Instance Vlans Mapped-0 1-2,4,11-40941 3,5-10-Ruijie(config-mst)#exitRuijie(config)#,62,配置调试案例,参考教材P52掌握的调试命令SW1#sh spanning-tree mst 0SW1#debug mstp?,63,课程议题,四、工程实施,第64页,环路预防,接入层交换机上连线出现环路,会影响到其他交换机的正常运行以及下联用户的正常上网.,广播风暴,第65页,环路预防,开启生成树之后,当交换机上检测到环路发生,就会自动将一个端口置为阻塞状态,防止环路的发生.,第66页,环路预防,当接入层交换机下联的普通交换机时,如果该交换机出现了环路,也会产生广播风暴,那么仅仅靠生成树协议还是不够的,所以在实际工程中,我们经常在接入层交换机的下联口上启用BPDUGuard,以防止下面的普通交换机发生环路,造成对网络的危害.,第67页,环路预防,开启了生成树的接入层交换机每隔2s发送一次BPDU,当接入层交换机下联的普通交换机发生环路时,接入层交换机会收到自己发出的BPDU,当开启了BPDUGuard功能时,会自动将收到BPDU的端口disable掉,从而防止了环路的发生.,BPDU,端口上开启了BPDUGuard,当该端口收到BPDU时,就将该端口自动disable掉,第68页,环路预防,实际应用:开启生成树协议,防止接入层交换机上发生环路上联口起用BPDUFilter,以防止BPDU被发送到其他交换机下联口开启BPDUGuard,防止下联普通交换机发生环路下联口开启Portfast,设置连接PC的边缘端口,开启生成树协议,建议RSTP,上联口开启BPDUFilter,以阻止BPDU报文发送到其他接入层交换机,下联口开启BPDUGuard功能,下联口开启Portfast功能,第69页,与 VRRP结合使用,MSTP与VRRP配合使用,达到冗余备份与负载均衡的双重效果,无论是链路出现故障,还是设备出现故障都能够在极短的时间内恢复网络的连通性,此模型多见于金融网络.,第70页,利用STP实现流量负载均衡的条件,1、物理冗余链路2、多个VLAN3、多个生成树实例同时满足以上三个条件才可以具体部署时可以改网桥ID、cost、发送端口ID来影响STP的选举结果,第71页,校园网中STP部署要点,参考教材173页为了防止二层网络环路的产生,需要在交换机上启用生成树。当汇聚层与核心层设备以三层路由口互联时(推荐模式),在核心层设备上不需要启用生成树。只需要考虑在接入与汇聚层交换机上启用生成树的情况。在核心与汇聚三层路由口互联的前提下,如果接入层到汇聚层都是单链路连接时,汇聚层不需要启用生成树;如果接入层到汇聚层有多条链路,那么汇聚层需要启用生成树。当只需要在接入层启用生成树时,生成树模式使用RSTP即可。注意:设备默认生成树关闭,模式为MSTP。在接入层上行连接汇聚层的接口上启用BPDU Filter,因为汇聚不启用生成树,没有收到BPDU 报文的必要;接入层设备直联PC 端口启用BPDU PortFast与BPDU Guard功能,这样可以防止下行环路产生。在规划时注意,如果在汇聚设备层设备上启用生成树,那么要通过调低生层树保障生层树的根网桥交换机是汇聚层交换机,负载均衡的配置,此外要注意与VRRP的主设备,OSPF的DR设备状态保持一致。,72,Thank You!,