各大网站推广平台,wordpress imgedit,为什么要做一个营销型网站,手游推广渠道企业内部网络怎么防止网络出现环路#xff1f;学会STP生成树技术就可以解决啦。 STP简介
在二层交换网络中#xff0c;一旦存在环路就会造成报文在环路内不断循环和增生#xff0c;产生广播风暴#xff0c;从而占用所有的有效带宽#xff0c;使网络变得无法正常通信。
在…企业内部网络怎么防止网络出现环路学会STP生成树技术就可以解决啦。 STP简介
在二层交换网络中一旦存在环路就会造成报文在环路内不断循环和增生产生广播风暴从而占用所有的有效带宽使网络变得无法正常通信。
在这种环境下生成树协议应运而生生成树协议是一种二层管理协议它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的同时具备链路备份功能。
生成树协议和其他协议一样是随着网络的不断发展而不断更新换代的。最初被广泛应用的是IEEE802.1D-1998 STPSpanning Tree Protocol生成树协议随后以它为基础产生了IEEE 802.1w RSTPRapid Spanning Tree Protocol快速生成树协议和IEEE 802.1s MSTPMultiple Spanning Tree Protocol多生成树协议。
三种生成树协议特点比较 生成树协议 特点 应用场景 STP 形成一棵无环路的树解决广播风暴并实现冗余备份。收敛速度较慢。 无需区分用户或业务流量所有VLAN共享一棵生成树。 RSTP 形成一棵无环路的树解决广播风暴并实现冗余备份。收敛速度快。 MSTP 形成多棵无环路的树解决广播风暴并实现冗余备份。收敛速度快。 多棵生成树在VLAN间实现负载均衡不同VLAN的流量按照不同的路径转发。 需要区分用户或业务流量并实现负载分担。不同的VLAN通过不同的生成树转发流量每棵生成树之间相互独立。
STP实现说明
华为实现说明
STP在交换机所有版本所有形态都支持。
华为交换机默认STP模式是MSTP。需要运行STP或RSTP模式时必须要手动配置。华为交换机在STP模式下使用的端口角色和RSTP是一样的也就是说支持下面5种端口角色指定端口、根端口、Alternate端口、Backup端口和边缘端口。华为交换机在STP模式下支持下面4种保护功能BPDU保护、Root保护、环路保护和防TC-BPDU攻击保护。版本差异说明
从V100R006版本开始华为X7交换机全局默认使能STP功能。V200R001版本及之后版本开始支持边缘端口属性自动探测功能。即如果端口从未收到过BPDU报文则边缘端口属性自动生效端口下不会自动生成stp edged-port enable配置。V200R001版本及之后版本如果端口已经配置stp edged-port enable可以再配置根保护和环路保护而其他版本会提示Error。 其他厂商实现
H3C
H3C交换机STP相关命令配置与S系列交换机基本没有差异。H3C交换机默认采用legacy标准来计算路径开销而S系列交换机默认为dot1t。在与S系列交换机对接时建议配置相同的计算标准。某些H3C老形态设备全局不使能STP或全局使能端口不使能STP时端口收到BPDU报文后可以当做普通组播数据报文在VLAN内转发。S系列交换机端口默认会丢弃。
Cisco
Cisco交换机所支持的生成树协议类型分别有PVSTPer VLAN Spanning Tree、PVSTPer VLAN Spanning Tree Plus、Rapid-PVSTRapid Per VLAN Spanning Tree Plus和MSTMultiple Spanning Tree。这几种生成树协议的某些BPDU报文采用其私有的报文格式与IEEE标准的BPDU报文格式不一样。
当Cisco交换机运行私有的PVST或Rapid-PVST生成树协议时与S系列交换机能否互通取决于Cisco侧的端口链路类型
如果端口链路类型为trunk且退出VLAN 1与S系列交换机无法实现互通。Cisco侧端口在非VLAN 1中发送其私有的BPDU报文S系列交换机默认不会处理该报文当做普通组播数据报文进行转发可以通过配置l2protocol-tunnel进行透传。S系列盒式交换机通过l2protocol-tunnel透传PVST报文时全局需要配置bpdu mac-address 0100-0ccc-cccd。如果端口链路类型为trunk而且加入VLAN 1只可以在VLAN 1中与S系列交换机互通。如果端口链路类型为access可以与S系列交换机互通。
当Cisco交换机运行MST协议时可以理解为标准的MSTP模式可以与S系列交换机互通。但是需要注意在使用MSTP协议的S系列交换机与使用MST的Cisco交换机采用相同的域配置域名、修订级别、VLAN与实例的映射关系的情况下要想实现域内互通需要在S系列交换机端口配置摘要侦听功能stp config-digest-snoop。这是两者由于采用不同的密钥来生成MSTP的摘要信息因此端口发送的BPDU报文中的摘要信息不同。由于摘要信息不同则属于不同的MST域会进行域间互通。
注意以下介绍的STP是狭义的STP即IEEE 802.1D-1998 中定义的STP 协议。
STP原理
协商原则
STP协议是根据4个维度进行选举协商的设备之间通过发送BPDU报文经过4个维度的比较最终会阻塞综合能力最差的端口。
选举维度(桥ID累计根路径开销发送设备BID发送端口PID) 维度 定义 作用 桥ID BIDBridge ID是由16位的桥优先级Bridge Priority与桥MAC地址构成。BID桥优先级占据高16位其余的低48位是MAC地址。 确定根桥。桥ID最小的设备会被选举为根桥。 累计根路径开销 某端口到根桥累计的路径开销就是所经过的各个桥上的各端口的路径开销累加而成。 选举根端口、指定端口和阻塞端口时使用。 发送设备BID 发送BPDU报文的桥ID。 选举根端口、指定端口和阻塞端口时使用。 发送端口PID 发送BPDU报文的端口ID。 PID由两部分构成的高4位是端口优先级低12位是端口号。 只在存在Backup端口时使用。
角色和状态
经过4个维度的比较最终会协商出端口的角色和状态确定报文流量的转发路径。STP角色的定义如图所示。 根桥就是桥ID最小的设备。桥ID是由16位的桥优先级与桥MAC地址构成。BID桥优先级占据高16位其余的低48位是MAC地址。华为交换机默认桥优先级都是32768。所以在不修改桥优先级时MAC地址最小的设备就是根桥。指定端口就是负责转发BPDU报文的端口。根桥上的端口都是指定端口。该端口可以正常转发流量。
根端口就是去往根桥路径开销最小的端口。该端口可以正常转发流量。
阻塞端口就是禁止转发流量的端口。
从上面的官方定义可以看出STP协商完成后端口要么被阻塞要么正常转发报文。其实在STP进行协商的过程中是有一些中间状态的。 端口状态 目的 说明 Forwarding 端口既转发用户流量也处理BPDU报文。 只有根端口或指定端口才能进入Forwarding状态。 Learning 设备会根据收到的用户流量构建MAC地址表但不转发用户流量。 过渡状态增加Learning状态防止临时环路。 Listening 确定端口角色将选举出根桥、根端口和指定端口。 过渡状态。 Blocking 端口仅仅接收并处理BPDU不转发用户流量。 阻塞端口的最终状态。
报文格式
STP协议报文是通过BPDU报文封装的目的MAC是组播MAC01-80-C2-00-00-00封装格式是IEEE 802.3。 BPDU报文处理流程
BPDU报文的分类 配置BPDU报文根据Flags标记位分为3类 第一类配置BPDU报文: Flags的TCA和TC位都置为0的配置BPDU报文 第二类配置BPDU报文: Flags的TCA和TC位都置为1的配置BPDU报文 第三类配置BPDU报文:Flags的TCA位置为0TC位置为1的配置BPDU报文 TCN BPDU报文 BPDU Type为0x80的BPDU报文叫做TCN BPDU报文
BPDU报文的处理流程 BPDU报文格式
配置BPDU报文BPDU Type为0x00的BPDU报文都叫做配置BPDU报文
第一类配置BPDU报文: Flags的TCA和TC位都置为0的配置BPDU报文
该报文用于STP状态的协商和维持。具体报文格式如下 第二类配置BPDU报文: Flags的TCA和TC位都置为1的配置BPDU报文
该报文用于通知下游设备停止发送TCN BPDU报文。具体报文格式如下 第二类配置BPDU报文: Flags的TCA位置为0TC位置为1的配置BPDU报文
该报文用于通知下游设备删除MAC地址表项。具体报文格式如下 TCN BPDU报文BPDU Type为0x80的BPDU报文叫做TCN BPDU报文用于通知上游设备网络拓扑变更。具体报文格式如下
使用注意事项
盒式交换机需要通过“bpdu enable”使能BPDU报文上送CPU处理的功能才能使STP报文上送CPU处理否则STP状态无法收敛。
V100R005及之前版本在S2700系列设备检查全局是否配置bpdu enable其他系列盒式交换机检查物理端口、Eth-trunk接口下是否配置bpdu enable。
V100R006及后续版本对应形态设备全局或端口默认使能bpdu enable。
Eth-Trunk接口使能STP时建议修改Eth-Trunk接口的cost值使其小于物理端口的cost值使其不易协商为备份端口。一是因为Eth-Trunk接口的开销为单个成员接口的开销除以成员接口数量当成员口状态变化时Eth-trunk接口的cost值会变化二是cost值越小说明链路质量越高。通过命令“display stp brief”查看端口状态时只会显示使能STP且UP的端口。可以通过修改路径开销和发送者的BID选择阻塞指定的端口。
配置举例
组网需求 如图所示当前网络中SwitchA、SwitchB、SwitchC和SwitchD通过环形组网备份链路。希望通过运行生成树协议阻塞端口将环形网络结构修剪成无环路的树形网络结构。
在主链路故障时对切换到备份链路的时间要求不高要求配置简单所以这里使用STP模式。SwitchA设备的性能较高希望作为根桥SwithB为备份根桥。SwtichC和SwitchD设备连接用户希望阻塞SiwtchC和SwitchD之间的链路。SwitchC和SwitchD连接用户的接口GE0/0/3不要参与STP计算。
配置思路
采用如下的思路配置STP
配置模式是STP模式。配置SwitchA为根桥SwitchB为备份根桥。统一使用默认路径开销。华为交换机默认的路径开销计算标准使用的是标准的dot1t。GE接口默认路径开销是20000而Ethernet接口默认路径开销是200000。注意eNSP模拟器中STP的路径开销默认是1。SwitchC和SwitchD的GE0/0/3端口去使能STP协议。SwitchA、SwitchB、SwitchC和SwitchD使能STP协议。
操作步骤
步骤1配置模式为STP模式。 HUAWEI system-view [HUAWEI] sysname SwitchA [SwitchA] stp mode stp HUAWEI system-view [HUAWEI] sysname SwitchB [SwitchB] stp mode stp HUAWEI system-view [HUAWEI] sysname SwitchC [SwitchC] stp mode stp HUAWEI system-view [HUAWEI] sysname SwitchD [SwitchD] stp mode stp
步骤2配置SwitchA为根桥SwitchB为备份根桥。 [SwitchA] stp root primary //也可以使用命令stp priority 0 配置优先级为0和stp root primary的作用是一样的。 [SwitchB] stp root secondary //也可以使用命令stp priority 4096 配置优先级为4096和stp root secondary的作用是一样的。
步骤3去使能SwitchB和SwitchC设备GE0/0/3端口的STP功能。 [SwitchC] interface gigabitethernet0/0/3 [SwitchC-GigabitEthernet0/0/3] stp disable [SwitchC-GigabitEthernet0/0/3] quit [SwitchD] interface gigabitethernet 0/0/3 [SwitchD-GigabitEthernet0/0/3] stp disable [SwitchD-GigabitEthernet0/0/3] quit
步骤4全局使能STP功能。
华为X7系列交换机默认是使能该步骤可以省略。 [SwitchA] stp enable [SwitchB] stp enable [SwitchC] stp enable [SwitchD] stp enable
步骤5验证配置结果。 查看STP简要信息通过STP简要信息可以快速的看出端口的角色和状态。 配置文件
SwitchA的配置文件 # sysname SwitchA # stp mode stp stp instance 0 root primary # return
SwitchB的配置文件 # sysname SwitchB # stp mode stp stp instance 0 root secondary # return
SwitchC的配置文件 # sysname SwitchC # stp mode stp # interface GigabitEthernet0/0/3 stp disable # return
SwitchD的配置文件 # sysname SwitchD # stp mode stp # interface GigabitEthernet0/0/3 stp disable # return
联系我们