公司动态
路由交换技术——生成树协议STP及案例讲解
路由交换技术——生成树协议STP及案例讲解一、STP生成树协议基础1. 为什么需要STP交换网络中为了提高链路可靠性会部署冗余链路但冗余链路会带来两大问题二层环路广播帧在环路内无限转发产生广播风暴。MAC地址表震荡交换机从不同端口收到同一源MACMAC表频繁抖动设备CPU占用飙升。STPSpanning Tree Protocol生成树协议作用在逻辑上阻塞部分冗余端口把物理环路修剪成无环树型网络当活动链路故障被阻塞端口自动打开实现链路备份。2. STP版本版本说明STP(802.1D)传统生成树收敛慢秒级RSTP(802.1w)快速生成树收敛快毫秒级兼容STPMSTP(802.1s)多实例生成树实现VLAN负载分担企业主流3. STP核心角色选举依靠BPDU桥协议数据单元交互BPDU分为配置BPDU、TCN拓扑变更BPDU。选举四要素桥ID、根端口、指定端口、阻塞端口根桥Root Bridge整个网络的树的根。桥ID 桥优先级(0‑65535默认32768) MAC地址优先级越小越优优先级相同MAC小的优先。修改桥优先级可以人为指定哪台交换机成为根桥。根端口RP(Root Port)非根桥交换机上去往根桥开销最小的端口每个非根桥有且只有1个根端口状态转发。指定端口DP(Designated Port)每一条链路两端选一个指定端口负责转发该链路流量转发状态。链路两端比较BPDU桥ID优的一侧端口成为DP。替代端口AP(Alternate Port)既不是RP也不是DP逻辑阻塞不转发用户流量接收BPDU作为备份链路。端口状态802.1DDisabled→Blocking→Listening→Learning→Forwarding4. 链路开销千兆链路开销4百兆19十兆100。带宽越大开销越小。二、实验案例STP基础实验拓扑描述文字拓扑可直接导入eNSP/Huawei模拟器画图拓扑3台二层交换机S1、S2、S3物理构建环路。S1配置为根桥S2、S3为非根桥S1(G0/0/1) ↔ S2(G0/0/1)S1(G0/0/2) ↔ S3(G0/0/1)S2(G0/0/2) ↔ S3(G0/0/2)物理链路形成环路S1‑S2‑S3‑S1。STP会自动阻塞其中一个端口打破环路。拓扑简图S1(根桥) G0/0/1 G0/0/2 │ │ ▼ ▼ S2 ─────── S3 G0/0/21. 选举过程推演选举根桥S1优先级最小成为根桥。根桥所有端口都是指定端口DP全部转发。S2比较去往S1的路径开销G0/0/1直连S1开销最小 →G0/0/1为根端口RP转发。S3G0/0/1直连S1开销最小 →G0/0/1为根端口RP转发。S2与S3之间链路S2(G0/0/2)‑S3(G0/0/2)该链路需要选出DP。S2桥ID优于S3所以S2的G0/0/2成为DP转发。S3的G0/0/2既不是RP也不是DP →被STP阻塞不转发业务报文只监听BPDU。最终逻辑无环S3‑G0/0/2阻塞其余端口转发。故障场景S1‑S2链路断开S2收不到根桥BPDUS3的G0/0/2端口解除阻塞切换转发链路备份生效。2.华为交换机配置命令S1配置为主根桥# 开启STP华为默认MSTPstp mode mstp stp root primary# 设置为主根桥优先级自动变为0S2备用根桥stp mode mstp stp root secondaryS3无需特殊配置默认参与生成树计算查看验证命令display stp brief# 查看各端口角色、状态最常用display stp root# 查看根桥信息display stp interface GigabitEthernet0/0/2# 查看端口详细stpdisplay stp brief输出示例PortRoleSTP StateProtectionG0/0/1ROOTFORWARDINGNONEG0/0/2ALTEDISCARDINGNONEALTE替代端口DISCARDING丢弃用户报文RSTP/MSTP把Blocking改叫DISCARDING。3.故障模拟验证断开S1‑S2之间G0/0/1链路。S2丢失根端口重新计算S3上被阻塞的G0/0/2端口快速切换为转发网络恢复。传统STP收敛时间30‑50sRSTP/MSTP几秒完成收敛。三、MSTP多实例生成树案例场景需求两台交换机之间双链路VLAN10业务走链路1VLAN20业务走链路2实现负载分担同时互为备份。拓扑S1、S2双链路互联G0/0/1、G0/0/2。MST实例1映射VLAN10实例1根桥S1MST实例2映射VLAN20实例2根桥S2配置要点所有交换机MST域名、修订号、VLAN‑实例映射必须完全一致否则属于不同MST域。S1配置stp mode mstp stp region-configuration region-name MST-TEST revision-level1instance1vlan10instance2vlan20active# 设置实例1根桥stp instance1root primary stp instance2root secondaryS2配置stp mode mstp stp region-configuration region-name MST-TEST revision-level1instance1vlan10instance2vlan20active stp instance1root secondary stp instance2root primary查看命令display stp mst‑configuration效果实例1(VLAN10)S1‑G0/0/1转发G0/0/2阻塞实例2(VLAN20)S2‑G0/0/2转发G0/0/1阻塞两条链路同时分担不同VLAN流量任意链路断网自动切换。四、常见STP故障点BPDU丢失链路不稳定端口频繁震荡STP反复计算。两端MST域配置不一致导致MSTP退化成RSTP负载分担失效。接入终端接交换机端口接入端口收到BPDU会参与生成树计算引发环路风险建议开启stp edged‑port边缘端口PC/服务器接入端口。边缘端口不参与STP计算收到BPDU会自动关闭边缘端口防止非法交换机接入。边缘端口配置interface g0/0/3 stp edged-portenableBPDU防护stp bpdu-protection全局开启边缘端口收到BPDU直接shutdown端口安全防护。五、知识点总结STP核心目的解决二层冗余链路环路实现链路备份。选举顺序选根桥→每个非根桥选根端口→每条链路选指定端口→剩余端口阻塞。MSTP是企业主流支持多实例VLAN负载分担RSTP提升收敛速度。终端接入端口配置边缘端口BPDU防护提升网络安全。