STP学习
STP生成树当二层交换机意外成环路的时候会发生1.广播风暴当广播帧进入环路时会被不断复制并传输导致网络中的广播流量急剧增加消耗大量的网络带宽降低网络性能形成广播风暴。2.MAC地址表的漂移偏移不稳定每一次数据帧在环路中循环交换机的MAC地址表记录可能会不断更新导致MAC地址表不稳定。3.多帧复制在二层网络中由于环路的存在导致同一数据帧被多次复制并传输到目的设备的现象比如如图所示环路数据帧从PC1发出向LSW3LSW3广播向LSW1、2数据帧再从LSW1、2广播向LSW3LSW3会向除了接收数据帧的接口再次广播其余接口这是由PC1发出的数据帧就发回了PC1由此除非环路解除不然PC1回一直接收这段数据帧。破解环路最简单的办法就是截断某些链路所以恭喜你发现生成树stp工作原理stp生成树将原来的环形拓扑结构转换为最短路径生成树通过逻辑上阻塞一些接口以生成最短路径生成树在达到解决环形拓扑的目标继续实时监控整个拓扑环境是否发生改变若改变则自动将原本阻塞接口重新打开再次生成最短路径生成树。stp的分类STP---生成树协议PVST PVST----思科是一种思科专有的生成树协议扩展它允许在同一个交换机上为每个VLAN运行一个独立的生成树实例。这意味着每个VLAN都可以有自己的根桥和拓扑结构从而提高了网络的灵活性和性能。Rstp---快速生成树Mstp---多生成树stp传递的报文---BPDU1.配置BPDU协商参数的报文2.TCN-BPDU实时的监听整个拓扑环境是否发生改变一旦检测到变化会发出通告TCN-BPDU【生成树所有协商的参数均为越小越优先】补充PVI--协议版本号STP--0RSTP--2MSTP--3TCN-BPDUTCN-BPDU--作用1.通告网络发生变化2.用来刷新MAC地址表中的错误记录--存在逐级上报的机制避免重复刷新MAC地址表。TCN-BPDU报文的应用当某一端的设备检测到自身的网络结构发生改变时会主动向所有运行STP设备发送TCN-BPDU其他设备接收到之后会回复TCA标志位为1的配置BPDU用以向该设备确认然后会逐级向上转发一直到根桥设备之后根桥设备会主动发送TC标志位拓扑发生改变的标志位为1的配置BPDU最终会传递到交换网络的所有设备当这些收到TC标志位为1的报文会将自身的MAC地址表老化时间设置为15s用以刷新错误信息角色选举【当生成树生成后只有根桥设备才会主动发送配置BPDU其他非根桥设备仅转发由根桥设备发送的配置BPDU】生成树一共要选举四种角色根网桥RB根端口RP指定端口DP非指定端口NDP根网桥RB根网桥RB--整个交换网络必须选择唯一的一个根桥设备。通过比较BID最小的设备成为根桥设备BID--网桥ID作用1.用来标识和区分不同的运行stp的交换机设备身份2.用来协商生成树角色组成前16位二进制是优先级后48位二进制是设备的MAC地址比较规则1.比较优先级2.比较MAC地址[LSW1]display stp-------[CIST Global Info][Mode MSTP]-------CISTBridge:32768.4c1f-cc1f-4349//BIDConfig Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20Active Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20CIST Root/ERPC :32768.4c1f-cc1f-4349 / 0CIST RegRoot/IRPC :32768.4c1f-cc1f-4349 / 0CIST RootPortId :0.0BPDU-Protection :DisabledTC or TCN received :3TC count per hello :0STP Converge Mode :NormalTime since last TC :0 days 0h:0m:24sNumber of TC :3Last TC occurred :GigabitEthernet0/0/2----[Port1(GigabitEthernet0/0/1)][FORWARDING]----Port Protocol :EnabledPort Role :Designated PortPort Priority :128Port Cost(Dot1T ) :Configauto / Active20000Designated Bridge/Port :32768.4c1f-cc1f-4349 / 128.1Port Edged :Configdefault / ActivedisabledPoint-to-point :Configauto / ActivetrueTransit Limit :147 packets/hello-timeProtection Type :None根端口RP根端口RP--所有非根设备必须选择唯一一个端口成为根端口用来接收根桥发送的配置BPDU。RPC--根路径开销--设备接口到达根桥的开销值--类似cost。生成树RPC开销的计算公式--等于沿途所有入接口的开销值累加和接口的开销值。[LSW3]stp pathcost-standard ?dot1d-1998 IEEE 802.1D-1998dot1t IEEE 802.1Tlegacy Legacy比较规则1.会比较接口的入向RPC值会选择入向RPC值更小的接口作为根端口【入向RPC值----接口收到的配置BPDU中携带的开销值】2.如果IRPC一致那么会比较收到的配置BPDU中对端设备的BID大小会选择BID更小的所对应的接口3.如果对端设备BID一致那么会比较对端设备的PID选择更小PID对应的接口4.如果对端设备PID一致那么会比较自身设备的PID选择更小PID对应的接口指定端口DP指定端口DP---设备用来转发根网桥发送的配置BPDU的接口每段链路都需 要选择一个接口成为指定端口1.选择接口出向RPC值最小的端口作为根端口【出向RPC---设备发出的配置BPDU中携带的RPC值】2.会比较自身本地的配置BPDU中携带的BID选择数值更小的3.当本地bid一致那么会比较发出接口的pid选择接口pid小的接口作为指定端口4.当收到的配置BPDU报文pid一致那么会直接阻塞该接口。非指定端口NDP非指定端口NDP--剩下所有没有角色的端口就是非指定端口最终需要被阻塞的端口。STP的接口状态阻塞状态所有运行STP协议的接口最先进入的状态为了避免此时协议刚起到还没有彻底收敛就已经出现环路问题。【初次收敛时因为所有设备的接口都是阻塞状态会导致没有任何设备发送BPDU报文无法协商参数所以设备会自动关联最大寿命如果20S没有收到任何BPDU报文那么会视为根桥故障会自动进入侦听状态主动发送BPDU报文】侦听状态STP进行角色选举的状态一旦接口被选举未根端口或者指定端口均会进入下一个状态会经过15S的选举时间为了让所有设备所有接口均完成角色选举避免临时环路---一些设备任处于选举过程中角色没有选完自然不会阻塞接口如果接口被选举未非指定端口那么该接口最终回退到阻塞状态被阻塞。学习状态STP为了尽量避免初次访问时产生大量的广播报文影响通讯质量尽量记录本设备用户的MAC地址信息。STP首次收敛至少50S才能完成收敛收敛速度很慢[LSW1]undo stp enable直接关闭协议Warning: The global STP state will be changed. Continue? [Y/N]yInfo: This operation may take a few seconds. Please wait for a moment...done.[LSW1]Apr 4 2025 21:23:31-08:00 LSW1 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25.191.3.1 configurations have been changed. The current change number is 5, thechange loop count is 0, and the maximum number of records is 4095.[LSW1]display stpProtocol Status:DisabledProtocol Standard :IEEE 802.1sVersion :3CIST Bridge Priority :32768MAC address :4c1f-cc1f-4349Max age(s) :20Forward delay(s) :15Hello time(s) :2Max hops :20[LSW1]Apr 4 2025 21:23:42-08:00 LSW1 %%01PHY/1/PHY(l)[0]: GigabitEthernet0/0/2: change status to downApr 4 2025 21:23:43-08:00 LSW1 %%01PHY/1/PHY(l)[1]: GigabitEthernet0/0/2: change status to up[LSW3-GigabitEthernet0/0/1]undo stp enable关闭单个接口stp协议[LSW3-GigabitEthernet0/0/1]display this#interface GigabitEthernet0/0/1stp disable#returnstp的重新收敛就是当运行STP的设备网络结构发生改变而进行重新选举角色将原本的非指定端口开放1.根桥故障【需要50s进行重新收敛】2.根桥直连链路故障【需要30s进行重新选举角色】非根桥设备检测到自身的根端口所在链路发生故障但是其他端口可以收到根桥发送的配置BPDU此时会将自身被阻塞的端口打开并进入侦听状态重新选举角色但是不需要选举根桥3.根桥非直连链路故障【需要50s重新收敛】设备检测到自身根端口所在链路故障但是不能通过其他端口收到根桥发出的配置BPDU那么只有等待身背最大寿命20s后进行重新选举。需要经过15s的侦听喝15s学习状态。STP配置[LSW1]stp enable //开启设备stp协议Warning: The global STP state will be changed. Continue? [Y/N]yInfo: This operation may take a few seconds. Please wait for a moment...done.[LSW1]stp mode ? //所有设备需要确保协议一致华为设备默认开启STP协议mstp Multiple Spanning Tree Protocol (MSTP) moderstp Rapid Spanning Tree Protocol (RSTP) modestp Spanning Tree Protocol (STP) mode[LSW1]stp mode stpInfo: This operation may take a few seconds. Please wait for a moment...done.[LSW1]display stp briefMSTID Port Role STP State Protection0 GigabitEthernet0/0/1 DESI FORWARDING NONE0 GigabitEthernet0/0/2 DESI FORWARDING NONE[LSW1]display stp-------[CIST Global Info][Mode STP]-------CIST Bridge :32768.4c1f-cc1f-4349Config Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20Active Times :Hello 2s MaxAge 20s FwDly 15s MaxHop 20CIST Root/ERPC :32768.4c1f-cc1f-4349 / 0CIST RegRoot/IRPC :32768.4c1f-cc1f-4349 / 0CIST RootPortId :0.0BPDU-Protection :DisabledTC or TCN received :24TC count per hello :0STP Converge Mode :NormalTime since last TC :0 days 0h:0m:31sNumber of TC :27Last TC occurred :GigabitEthernet0/0/2----[Port25(GigabitEthernet0/0/1)][FORWARDING]----Port Protocol :EnabledPort Role :Designated PortPort Priority :128Port Cost(Dot1T ) :Configauto / Active20000Designated Bridge/Port :32768.4c1f-cc1f-4349 / 128.25Port Edged :Configdefault / ActivedisabledPoint-to-point :Configauto / ActivetrueTransit Limit :147 packets/hello-timeProtection Type :NoneApr 5 2025 19:34:59-08:00 LSW1 %%01PHY/1/PHY(l)[0]: GigabitEthernet0/0/2: change status to downApr 5 2025 19:35:00-08:00 LSW1 %%01PHY/1/PHY(l)[1]: GigabitEthernet0/0/2: change status to up Port STP Mode :STP[LSW1]stp priority 28672 //修改BID32768-4096【修改设备BID需要安4096为步 调加减[LSW1]stp root primary //将某设备配置为根桥本质上是将该设备优先级改为0[LSW1]stp root secondary //将某设备配置为备份根桥本质将该设备优先级改为4096MSTP多生成树802.M树--链路利用率MSTP提出可以将多个VLAN绑定在一起提出实例instance的概念实例的实质是12位二进制范围是0~4095其中默认存在实例0初始所有VLAN均属于实例0所有VLAN为一棵树。单域MSTP的配置要求[LSW3-mst-region]display stp region-configuration[LSW2-mst-region]display stp region-configurationOper configurationFormat selector :0Region name :4c1fcc427b2c //默认设备存在名称初始为设备的MAC地址必须确保单域的name一致Revision level :0 //修订等级多域才会用必须一致单域随意Instance VLANs Mapped //实例喝VLAN对应关系必须一致0 1 to 4094[LSW3-mst-region]配置完成实例[LSW3-mst-region]display stp region-configurationOper configurationFormat selector :0Region name :aaRevision level :10Instance VLANs Mapped0 21 to 40941 1 to 102 11 to 20[LSW3-mst-region]配置过程与解析[LSW3]stp enable //启动协议[LSW3]stp mode mstp[LSW3]stp region-configuration[LSW3-mst-region]region-name aa //注意区别大小写[LSW3-mst-region]revision-level 10[LSW3-mst-region]instance 1 vlan 1 to 10 //根据需求配置VLAN喝实例的对应关系[LSW3-mst-region]instance 2 vlan 11 to 20[LSW3-mst-region]active region-configuration //激活配置Info: This operation may take a few seconds. Please wait for a moment...done.[LSW3-mst-region]display this#stp region-configurationregion-name aarevision-level 10instance 1 vlan 1 to 10instance 2 vlan 11 to 20active region-configuration#return[LSW3-mst-region]q[LSW3]stp instance 1 root primary //将该设备配置为实例1的主根[LSW3]stp instance 2 root secondary //将该设备配置为实例2的备份根桥[LSW3]display this#sysname LSW3#vlan batch 2 to 20#stp instance 1 root primarystp instance 2 root secondary#cluster enablentdp enablendp enable#drop illegal-mac alarm#return[LSW3]stp region-configuration[LSW3-mst-region]display stp region-configurationOper configurationFormat selector :0Region name :aaRevision level :10Instance VLANs Mapped0 21 to 40941 1 to 102 11 to 20[LSW3-mst-region]RSTP快速生成树802.W树--收敛速度RSTP的改进点1.变更端口角色STP的端口角色根端口指定端口非指定端口RSTP/MSTP的端口角色根端口替代端口备份端口替代端口作为根端口的替代由于收到对端设备发送到饿配置BPDU儿导致参数不优最终被阻塞的端口。【作用作为根端口的备份当根端口出现故障时设备会从自身所有的替代端口中找出参数最优的直接成为新的根端口。】备份端口【back】作为指定端口的备份由于收到自身发送的配置BPDU从而参数不优而阻塞的端口一个设备可能有多个备份端口。【作用作为指定端口的备份当指定端口出现故障时设备会从自身所有的备份端口中找出参数最优的直接成为新的指定端口。】2变更了端口状态STP的端口状态禁用状态阻塞状态侦听状态学习状态转发状态RSTP/MSTP将状态进行合并1.丢弃状态DISCARDING--该接口只能处理BPDU报文不能收发数据流量不能记录MAC 地址表2.学习状态3.转发状态3.修改了配置BPDU报文的一些参数RST-BPDU---P/A---RSTP利用该机制将STP的收敛速度从分钟级优化到秒级主要针对指定端口的快速收敛机制在选举过程中将选举本身改为一段链路一段链路的选举当端口被选举为指定接口首先会由该端口主动发送P位标志位置为1的RST-BPDU报文当对端设备收到该报文之后将自身切换为“同步“状态协议状态同步状态下会将自身所有剩下的接口状态切换为丢弃状态逻辑上阻塞之后会回复A位置为1的RST-BPDU报文对端接受到之后会直接将指定接口切换为转发状态在这个过程中被选举为替代和备份的端口依然处于丢弃状态。4.加快了生成树的失效判断时间优化根桥失效判断时间--将原本为MAX-Age默认20s在RSTP协议下位3个hello时间--6s5.快速收敛机制1.根端口的快速切换2.设置边缘接口需要配置可以将所有连接PC用户的接口配置为边缘接口[LSW3-GigabitEthernet0/0/2]stp edged-port enable //边缘接口1.如果将连接PC的接口配置为边缘接口那么该接口不需要进行STP选举直接进入到转发状态。2.如果边缘接口收到BPDU报文那么会变成普通接口重新协商。防止将连接设备的接口配置为边缘接口3.一般连接PC的接口不需要接收STP的bpdu报文所以会和边缘接口配置结合使用。[LSW3]stp bpdu-protection //BPDU保护建议配置如果边缘接口收到BPDU报文则会直接物理关闭该接口防止PC使用BPDU攻击[LSW3-GigabitEthernet0/0/2]stp bpdu-filter enable //过滤接口发出的BPDU报文3.P/A机制 。6.拓扑结构发生改变的处理机制1.所有设备均可主动发送配置BPDU报文2.当拓扑结构发生变化所有设备均会主动发送TCN-BPDU也会主动发送TC位1的配置BPDU
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2495353.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!