STP生成树协议

二层环路产生的问题

        1、广播风暴 --- 广播帧在二层环路中会形成一个顺时针和一个逆时针的环路,并且会无限循环下去,最终导致设备宕机。

        2、MAC地址表翻摆(漂移)--- 因为数据帧环路的存在交换机的MAC地址表中会不断更新MAC地址和接口对应关系。

        3、多帧复制 --- 重复收到相同的数据帧

什么是生成树

        在二层交换网络中,逻辑上阻塞部分接口,实现从根交换机到所有节点的最短路径的拓扑结构,生成一个没有环路的拓扑。当其中最佳的路径出现故障时,则将个别阻塞的接口打开,实现链路资源的备份。

STP历史发展

        最早STP --- 标准生成树协议---802.1D标准

        PVST、PVST+ --- 思科私有的生成树协议

        802.1W --- RSTP ---快速生成树协议

        802.1S --- MSTP --- 多生成树协议

BPDU

  配置BPDU

        最常用最主要的BPDU,整个树形结构生成过程中,使用BPDU协商交流。

        协议版本ID --- 802.1D --- 0
                802.1W --- 2
        
                802.1S --- 3

     以下四个参数都会参与生成树的角色选举中

        1、 根桥ID(根网桥ID) --- 为根的交换机的身份ID --- 802.1D中,一个交换网络只有一棵树
        
        2、 网桥ID ---  BID --- 每一台交换机的身份标识 --- 8个字节构成
                        前两个字节--- 优先级
                        后六个字节 --- MAC地址
                        因为需要支持生成树协议,所以交换机至少需要一个MAC地址,则可以使用这个MAC地址作为BID中的MAC地址,但是如果是三层交换机,可能会有多个MAC地址,则会选择其中数值最小的作为BID中的MAC地址。
        3、 根路径开销 --- RPC --- 发出该BPDU设备到达根网桥的开销
        
        4、 接口ID --- 2个字节构成,用于区分和标识交换机不同的接口,发出该BPDU设备接口的ID。
                        前4位 --- 优先级
                        后12位 -- 接口的标识
         消息寿命 --- MAX HOP -- 20
        
        配置BPDU ---只有根网桥可以发送,在一开始,交换网络的初始阶段,所有设备都认为自己是根网桥,则都会从自己所有激活STP协议的接口发出配置BPDU,基于收到BPDU进行角色选
举,选出真正的根。之后,所有的非根网桥不再主动发送配置BPDU,仅转发根网桥的配置 BPDU,根网桥会每隔2S周期发送,20S老化时间。
        根路径开销在转法时的计算方法是将接收到的BPDU中的RPC加上进入接口的开销值

  TCN BPDU

        只在一种特殊的场景中存在,如果网络拓扑发生变化时,TCN BPDU需要把变化信息传递出去,相当于报信。
        TCN BPDU ---本地交换链路出现故障之后, STP重新收敛,为了快速刷新交换MAC地址表中的错误信息,当事机会首先发出TCN BPDU,对端收到之后,将回复一个TCA1的配置BPDU,之 后,再逐级上报TCN BPDU到根网桥。根网桥收到后,会下发一个TC1的配置BPDU,再逐级 下发到所有设备,所有收到TC1的配置BPDU的设备会临时将MAC地址的老化时间由360S减少 到15S.(和转发延迟同步)

STP的选举

  四个角色

        根网桥 :RB。发送周期--2s 老化时间--20s
        根端口:RP。所有的非根网桥都必须选取有且只有一个接口作为根端口,用于 接收根网桥发送到BPDU。(选择离根网桥最近的端口)
        指定端口 :DP。每一条链路上有且一个端口是指定端口。用于 转发根网桥发送的BPDU
        非指定端口:NDP。所有没有角色的端口,即需要被阻塞的端口。

  选举过程

        1、根网桥 --- 在802.1D中,一个交换网络一棵树,仅选择一个根网桥
                
              对比BID --- 8个字节 --- 前两个字节--- 优先级
                                                   后六个字节 --- MAC地址
                首先,先比较BID中优先级,优先选择优先级 数值小的作为根网桥。
                         优先级:取值范围理论上是0-65535,实际上取值范围0-61440,默认值为32768。

                                 

                         优先级只使用了前4位,后面12位称为 拓展系统ID,只有在802.1S中启用 --- 所以 优先级的修改需要按照4096的倍数来进行修改。
                如果优先级相同,则比较MAC地址,选择MAC地址数值 最小的作为根网桥。
        2、根端口 --- 所有非根网桥上有且仅有一个距离根网桥最近的端口,用来接受根网桥的
BPDU
        修改开销值的方法(注意:华为默认使用标准为802.1t)
        
                
                1,选择在接受根网桥BPDU是RPC 最小 的端口作为根端口。
                2,如果多个接口到达根网桥的开销值相同,则比较接口对端设备的BID ,优先选择 BID 的设备所对应的接口为根端口。
                3,如果对端的BID 也相同(连接在同一设备),则比较对端的 PID ,优先选择 PID 的接口对应的接口为根端口。
                        PID:2个字节---前4位为优先级
                                                  后12位为接口标识
                        先比较优先级,优先选择优先级数值小的
                        优先级取值范围0 -240,默认值为128,每一位代表16,修改优先级时也只能按照16的倍数修改
                        如果优先级相同,则比较接口标识
               4,如果对端的 PID 也相同,则比较本地接口的 PID ,选择 PID 的作为根端口
        3、指定端口 --- 每一条链路上有且仅有一个端口作为指定端口,用来发送或者转发根网桥的
BPDU。
              根网桥所有的接口都是指定端口,根端口的对端一定时是指定端口
                1,优先选择发出根网桥BPDU时RPC最小的端口作为指定端口。
                2,如果发出时的开销值相同,则比较接口链接设备的BID ,优先选择 BID 小的设备的接口作为指定端口
                3,如果本端的BID 也相同,则比较接口的 PID ,优先选择 PID 小的作为指定端口
                4,如果本端的PID 也相同,则直接阻塞
        4、非指定端口 --- 所有没有角色的端口都是非指定端口,需要被阻塞。 

接口状态

        1、禁用 --- 1.接口关闭       2.接口没有激活生成树
        2、阻塞 --- 接口激活生成树后第一个进入的状态,只能侦听BPDU,不能发送BPDU也不能处理数据帧
             设备20s没有侦听到BPDU,则认为根网桥不存在或者失效,则进入到下一个状态。
        3、侦听 --- 进行角色选举的状态。可以接受和发送BPDU,但是,不能处理业务帧。15后(转发延迟时间)将进入到下一个状态
        4、学习 --- 开始接收业务数据帧,但是只记录MAC地址和接口的休息,并不去转发业务数据帧,停留时间15s。
        5、转发 --- 可以进行BPDU的处理,也可以转发业务数据帧
        最终可能停留的状态:转发和阻塞
        侦听和学习是两个过渡状态
        首次收敛所需要时间为50s
        结果突变
                1、根网桥故障 --- 50s
                2、直连链路故障 --- 30s
                3、非直连链路故障 --- 50s
STP配置
        1、启动STP生成树协议
        
[sw1]stp  enable ----启动生成树---华为默认开启生成树
        2、选择生成树版本
[sw1]stp mode ?
mstp  Multiple Spanning Tree Protocol(MSTP) mode
rstp  Rapid Spanning Tree Protocol (RSTP) mode
stp   Spanning Tree Protocol (STP) mode
[sw1]stp mode stp 
注意:华为设备默认选择MSTP
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值