3.2、STP原理与配置

3.2、STP原理与配置

  • 前言
    • 为了提高网络可靠性,交换网络中通常会使用冗余链路。然而,冗余链路会给交换网络带来环路风险,并导致广播风暴以及MAC地址表不稳定等问题,进而会影响到用户的通信质量。生成树STP(Spanning Tree Protocol)可以在提高可靠性的同时又能避免环路带来的各种问题。
  • 环路引起的问题
    • 二层交换网络
      • 交换机之间通过多条链路相连,虽然能够提升网络可靠性,但同时也会带来环路问题
    • 广播风暴
      • 环路会引起广播风暴
      • 网络中的主机会受到重复数据帧
    • MAC地址表震荡
      • 环路会引起MAC地址表震荡
  • STP工作原理
    • STP的作用
      • STP通过阻塞端口来消除环路,并能够实现链路备份的目的
    • STP操作
      • 1、选举一个根桥
      • 2、每个非交换机选举一个根端口
      • 3、每个网段选举一个指定端口
      • 4、阻塞非根、非指定端口
    • 根桥选举
      • 每一台交换机启动STP后,都认为自己是根桥
      • 根桥的选举主要是依据桥ID来进行选举,每一个交换机都会有一个桥ID
        • 桥ID
          • 优先级
            • 可以配置
            • 取值范围
              • 0~65535
            • 默认值
              • 32768
            • 优先级的数值越低,优先级越高
              • 如果优先级一致,就比对交换机的MAC地址
                • 越小越优先
          • 48位MAC地址组成
    • 根端口选举
      • 非根交换机在选举根端口时分别依据该端口的根路径开销,对端BID、对端PID和本端PID
        • 根路径开销
          • 越小越优先
          • 交换机每一个端口都有端口开销,该参数表示该端口在STP中的开销值
          • 根路径的开销是该端口到根所有路径的总和开销
          • 如果根路径开销选举不出来?
        • 对端BID
          • BID
            • 桥ID
            • 越小越优先
          • 如果对端BID还是选举不出来?
        • 对端PID
          • PID
            • 由端口优先级和端口ID组成
              • 端口优先级
                • 默认128
              • 端口ID
                • 端口号
          • 如果对端PID选举不出来?
        • 本端PID
    • 指定端口选举
      • 非根交换机在选举指定端口时分别依据根路径开销、BID、PID
        • 根路径开销
          • 根交换机上端口开销为0
          • 根桥上的所有端口都是指定端口
        • BID
          • 桥ID
          • 如果BID选举不出指定端口
        • PID
          • 自环现象
            • 由于1端口PID较小
              • 1为指定端口
              • 2位非指定端口
      • 未被选举为根端口或指定端口的端口为预备端口,将会被阻塞
      • 注意
        • 根端口是在交换机上进行选举的
        • 指定端口是在网段上进行选举的
    • 端口状态转换
      • STP端口状态迁移机制
        • 1、Forwarding
          • 转发状态
            • 只有根端口和指定端口才能处于转发状态
            • 端口处于转发状态,既能转发用户流量,也能转发BPDU报文
              • BPDU报文
                • 选举过程中,选举根桥、选举根端口、选举指定端口都会通过BPDU报文含有的信息来进行选举
        • 2、Learning
          • 学习状态
            • 端口可以收到用户的流量和构建MAC地址表,但是不能转发用户流量
        • 3、Listening
          • 侦听状态
            • 端口可以转发BPDU报文,但是不能转发用户流量
        • 4、Blocking
          • 阻塞状态
            • 端口只能接收并处理BPDU,但是不能转发BPDU,也不能转发用户流量
          • 这个端口状态就是预备端口(阻塞端口)的最终状态
        • 5、Disabled
          • 禁用状态
            • 端口既不处理也不转发BPDU报文,也不转发用户的流量
      • 端口状态转换顺序
        • 选举过程中需要的参数都是通过BPDU报文进行传递
        • 1、端口初始化或使能
          • 刚开始所有端口状态都是Disabled状态
          • 初始化使能之后变为Blocking状态
        • 2、端口被选为根端口或指定端口
        • 3、端口不再是根端口或指定端口
          • 端口开始选举成为根端口或指定端口进入Listening状态
        • 4、Forward delay计时器超时
          • Listening状态过渡到Learning状态时,有一个定时器
            • 定时器为15s
              • 15s后状态才能切换为Listening状态
          • Learning状态转换为Forward也有一个定时器
            • 定时器为15s
              • 定时器超时后才能进入Forwarding状态
          • 即当端口从Disabled到Forwarding状态需要30s的等待时间
        • 5、端口禁用或链路失效
    • BPDU
      • BPDU包含桥ID、路径开销、端口ID、计时器等参数
        • Root ID
          • 桥ID
            • 根桥优先级
            • MAC地址
        • Bridge ID
          • 指定桥ID
            • 优先级
            • MAC地址
        • Port ID
          • 指定帧端口ID
            • 优先级
            • 端口ID
        • Message Age
          • BPUD在网络中生存最大生存周期
        • Max Age
          • 配置BPDU在设备中能够保存的最大的生存周期
        • Hello Time
          • 发送BPDU的周期
        • Fwd Delay
          • 端口状态迁移的延迟
      • BPDU类型
        • 配置BPDU
          • 平常使用的都是配置BPDU
        • TCN BPDU
          • 用于当拓扑发生变化的时候,发送的拓扑变化通知使用的是TCN BPDU
    • 计时器
      • Hello Time
        • BPDU间隔(2s)
      • Message Age
        • 根桥发送到当前交换机接收到BPDU的总时间
        • 配置BPDU报文每经过一个交换机,Message Age都加1
          • 限制拓扑网络中交换机的个数
          • 最大个数不能超过Max Age,否则该BPDU会被丢弃
      • Max Age
        • BPDU报文老化时间
          • 可改动
        • 如果Message Age大于Max Age,非根桥会丢弃该配置BPDU
  • STP拓扑变化
    • 根桥故障
      • 非根桥会在BPDU老化之后开始根桥重新选举
        • 在稳定的STP拓扑里,非根桥会定期收到来自根桥的BPDU报文,如果根桥发生了故障,它就会停止发送BPDU报文
        • 下游交换机如果无法收到来自根桥的BPDU,会等待一个MAX Age的定时器,如果定时器超时后,就会认为已经收到的BPDU的报文会失效,也就是20s
        • 非根交换机会互相发送配置BPDU来选举新的根桥,端口状态就会从Disabled转换成Forwarding状态,即等待30s的时间
        • 所以根桥故障会导致50s的恢复时间
          • 恢复时间=Max Age+2倍Froward delayy收敛时间
    • 直连链路故障
      • SWB检测到直连链路物理故障后,会将预备端口转换为根端口
      • SWB新的端口会在30s后恢复到转发状态
        • Blocking→Forwarding
    • 非直连链路故障
      • 非直连链路故障后,SWC的预备端口恢复到转发状态大约需要50s
        • 交换机B如果无法检测到出现故障,需要等待20s的老化时间
          • Eg
            • SWA和SWB中接入一台Hub
        • 20s后检测出现故障,SWB就开始重新进行选举,首先认为自己是根桥,然后向其他端口发送BPDU
        • 交换机SWC收到BPDU后,交换机SWC同时也收到了交换机SWA的BPDU
          • 而且交换机SWA的BPDU比交换机SWB优先,所以交换机SWC不理会交换机SWB的BPDU
          • 但是既然收到了BPDU,代表交换机SWC知道了交换机SWB出现了故障,然后将交换机SWB端的阻塞端口从Blocking→Forwarding,需要30s
    • 拓扑改变导致MAC地址表错误
      • MAC地址表项的默认老化时间是300秒。在这段时间里,SWB无法将数据从G0/0/2端口转发给主机B
      • 拓扑改变除了会引发延迟的时间,还会导致MAC地址表的错误
        • 平常SWB学习到主机B的MAC地址对应的端口是G0/0/1
        • 但是链路出现故障,恢复后主机B走的时候是下面的链路,即从G0/0/2的端口学习到主机B的MAC
        • 但是MAC地址表的有效时间是300s,此时还没有进行更新,所以主机A想要访问主机B走的依然是G0/0/1的端口,但是G0/0/1的端口到达不了,这时就导致了MAC地址表出现错误了
    • 拓扑改变代做MAC地址表变化
      • 当拓扑出现变化时,该变化的交换机会向上游发送一个TCN报文
        • 即让根桥知道出现问题了
      • 但是根桥一直到达不了,所以根据非根交换机进行传达
        • 当交换机B收到交换机C的TCN以后,向交换机C回应一个确认报文
          • TCA报文,告知以及收到了拓扑变化报文
        • 然后向根桥继续发送TCN报文
      • 当根桥收到TCN报文以后,会向下游发送一个TC报文,当交换机收到TC报文以后,它的MAC地址表的老化时间就从300s变为15s
        • 然后再15s后即可完成更改
  • STP配置
    • STP模式
      • 大多数交换机是默认开启MSTP
    • 配置交换机优先级
      • 通过修改交换机的优先级,可以配置交换机为根交换机
        • STP优先级的取值范围必须是4096的倍数
    • 配置路径开销
      • 配置路径开销
        • 根据改变路径开销来改变选取的根端口
          • 可以改变带宽取值
            • 路径开销根据公式进行计算
          • 配置路径开销标准
            • Dot1d-1998
            • Dot1t
            • legacy
              • 默认情况下是Dot1t(IEEE 802.1T)
          • 直接配置路径开销大小
            • Stp cost
    • 配置验证
    • 总结
      • 根桥产生故障后,其他交换机会被选举为根桥。那么原来的根桥恢复正常之后,网络又会发生什么变化呢?
        • 原来的根桥回复正常后,会重新进行选举
          • 谁优先,谁就是根桥
      • 端口开销和根路径开销的区别是什么?
        • 根路径开销
          • 到根桥路径的总开销
        • 端口开销
          • 交换机某个端口的开销
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值