生成树协议原理:
?在二层交换网络中,逻辑的阻塞部分接口,实现从根节点到所有节点唯一的路径的生成,成为一个没有环路的拓扑。当最佳路径数显故障时,个别被阻塞的接口将被打开,形成备份链路
冗余的方式有:
设备冗余,线路冗余,网关冗余,UPS冗余
? 当PC1首次想访问PC2时,LSW2会接收到一个请求未知MAC地址的数据帧;二层交换机会洪泛该数据帧(除了接收到该数据帧的接口),此时会出现两种情况(目的MAC地址的设备没有及时回应):
? 顺时针:当LSW1接收到该洪泛的数据帧时,因为LSW1的MAC地址表内也没有该MAC地址,因此也会洪泛该数据帧;LSW3接收到洪泛的数据帧时,同样也会洪泛出去,导致LSW2会再次接收到相同的数据帧,以此反复
? 逆时针:当LSW3接收到该洪泛的数据帧时,因为LSW3的MAC地址表内也没有该MAC地址,因此也会洪泛该数据帧;LSW1接收到洪泛的数据帧时,同样也会洪泛出去,导致LSW2会再次接收到相同的数据帧,以此反复
广播风暴
? 广播帧在二层环路中形成逆时针和顺时针转动的两层环路,并且无限循环,最终导致设备宕机,网络瘫痪
MAC地址表的翻摆(MAC地址表漂移)
? 同一个数据帧,顺时针接收后将记录MAC地址与接口的对应关系;之后,逆时针方向再次接收到相同的数据帧,因此会再次修改MAC地址与接口的对应关系,如此循环,导致MAC地址表内容一直在变动
多重复数据帧
? PC2会接收到多条相同的数据帧信息
最基础的三种解决环路的方案:
802.1D:是由 IEEE组织 颁布的公有协议 ----标准的STP协议
RSTP(802.1W):作为802.1D的补充
MSTP(802.1S):最常用的协议 ----可应用于跨运营商的网络
桥ID:
根桥(root):
?STP的主要作用之一就是在整个交换网络计算出一颗无环的树,而想要计算出该树,则需要先行确定树根的位置,即根网桥的位置
选举规则:网络中拥有最小桥ID的交换机将成为根桥
? 当人工未干预的情况下,MAC地址小的二层交换机将成为根桥
缺省情况下,桥优先级为32768 ----该数值可以进行修改,修改的范围为0-61440,且必须是4096的倍数
开销cost与根路径开销RPC
? 每一个激活了STP的接口都维护着一个cost值,接口的cost主要用于计算RPC,也就是计算到达根的开销
华为设备默认情况下使用 IEEE 802.1T 标准
? 在进行修改缺省COST时,应全网修改一致
接口ID(PID)
? 每一个运行了STP协议的交换机的接口会存在一个PID值,来标识该接口信息
? 接口ID长度是16bit,高4bit是接口优先级,低12bit是接口编号
?接口优先级默认为128,该数值可以进行修改,修改的范围为0-240,必须为16的倍数
BPDU:网桥协议数据单元
分为两大类:
?BPDU载荷被直接封装在以太网数据帧中,数据帧的目的MAC地址是组播MAC地址:0180-c200-0000
BPDU报文格式:
协议ID ----PID
? 对于STP而言,该字段的值总为0
协议版本ID ----PVI
? stp协议:0
? rstp协议:2
? mstp协议:3
BPDU类型字段 ----BPDU Type
? 指示本BPDU的类型,若值为0x00,则表示本报文为配置BPDU;若值为0x80,则为TCN BPDU
标志字段 ----Flags
? STP仅仅使用了最高位(TCA—拓扑变更确认标记)和最低位(TC ----拓扑变更标记)
根网桥的桥ID ----Root ID
? 代表根桥
根路径开销 ----RPC
? 到达根网桥的STP Cost
BPDU发送桥的ID(BID) ----Bridge ID
? 代表该BPDU报文是由哪一个设备发送的
接口ID值(PID) ----PortID
? BPDU发送网桥的接口ID(优先级+接口号)
消息寿命 ----Message Age
生存时间 ----Max Age
? 最大寿命,当一段时间未收到任何BPDU,生存期到达最大寿命时,网桥会认为该接口连接的链路发生故障。默认20s
Hello Time
根网桥连续发送的BPDU之间的时间间隔,默认2s
Forward Delay
转发延迟,在侦听和学习状态所停留的时间间隔,默认15s
? 该报文用于在网络拓扑发生变化时,向根桥通知变化的发生。该报文是为了修改全网交换机的MAC地址表信息而存在的,而非是为了改变STP的生成树结构
选举范围:整个交换网络
一个交换网络有且只有一个根网桥
选择最小BID:先比较桥优先级,后比较桥MAC地址
根网桥的地位是具有可抢占性的
? 可修改其设备优先级,使其成为根桥
根接口:是非根网桥上所有接口中收到最优BPDU报文的接口
选举范围:每一个非根网桥设备
? 每一个非根网桥设备上有且只有一个根接口
? 一般而言,根网桥的所有接口都是指定接口;在存在跟接口的链路上,对端必然是指定接口。
? 所有的不是根端口和指定端口都被称为非指定端口。而非指定端口会被交换机进行逻辑阻塞
? 被阻塞的接口既不会接收也不会转发业务数据,且该接口不会发送BPDU报文,但是可以接收BPDU报文(业务数据:除了BPDU报文外的所有流量)
? 在交换网络中,一般将网关所在地、流量汇聚地点以及STP根网桥三点合并在一起
基于计时器进行收敛
首次收敛 ----50S(阻塞20S + 2*转发延迟15S)
根桥故障 ----50S(最大寿命20S + 2*转发延迟15S)
直连链路故障 ----30S(2*转发延迟15S)
非直连链路故障 ----50S(最大寿命20S + 2*转发延迟15S)
启动STP协议,华为默认开启该协议
[sw1]stp enable
修改STP的工作模式,默认工作模式为MSTP
[sw1]stp mode stp
查看本地设备的MAC地址
[sw1]display bridge mac-address
查看某一个接口的STP协议的运行状况
[sw1]display stp interface GigabitEthernet 0/0/3
查看STP协议运行状况
[sw1]display stp
查看STP接口状态
[sw1]display stp brief
[sw1]display stp ----查看STP协议允许状况
需注意查看的为下图的公共区域信息
[sw1]display stp brief ----查看STP接口状态
DESI:指定接口
ROOT:根端口
ALTE:备份端口
修改交换机的优先级,干涉其选举根桥:
[sw1]stp root primary ----将交换机设定为根网桥,其本质是将优先级修改为0
[sw2]stp root secondary ----将交换机设定为备份根网桥,其本质是将优先级修改为4096
[sw3]stp priority 8192 ----将交换机优先级设定为8192
[sw1-GigabitEthernet0/0/1]stp port priority 数值(0-240)
修改接口优先级,干涉PID数值
[sw1]stp pathcost-standard dot1d/dot1t/legacy
修改本地开销值计算方法类型,全网均需要修改
dot1d-1998 IEEE 802.1D-1998
dot1t IEEE 802.1T
legacy Legacy
[sw1-GigabitEthernet0/0/1]stp cost 数值(1-200000000)
直接修改接口cost值,该参数可以修改的范围是根据开销值计算类型而定