网工的日常修养---STP(生成树协议)(HCIA)

一、前言

环形组网:BUM数据帧无休止泛洪

  1. 广播风暴:泛洪的数据帧无休止在设备中传递,设备性能下降直至死机
  2. MAC地址表震荡造成数据无法进行转发影响业务

需要开发一种手段or机制来消除环路,保证网络的可靠性

二、基本定义

STP(Spanning-Tree Protocal)协议:将某些端口置为"逻辑"的阻塞状态,处于阻塞状态的端口,平时无法进行数据的接受与发送,但是网络中环路消除后,此时,端口可以自动将状态切换为"转发"状态。
BPDU(Bridge Protocal Data Unit):桥协议数据单元,用于确定STP所有信息、角色状态的一种报文
STP中的专有名词:
(1)BID(Bridge ID):桥ID号,桥优先级(0-65535,缺省32768,优先级必须是4096的倍数)+桥MAC地址构成,桥优先级为高16为位,MAC地址为低48位,越小越优
(2)RID(Root ID):根的BID信息,填充根的BID参数,永远是根桥的BID
(3)PID(Port ID):端口ID,端口优先级(0-255,缺省128,优先级必须是16的倍数)+端口号构成,由STP生成的,越小越优
(4)RPC(Root Path Cost):根路径开销,填充设备与根桥之间的距离;根桥始发为0,因为该设备的端口到根桥没有距离;报文中的RPC只会考虑接收端口的cost。
(5)根桥:生成树里面的‘老大’,桥id最小
(6)备份根桥:生成树里面的“二把手”,老大挂了的时候,我当老大,桥ID第二小。
(7)非根交换机:干活的小弟,都有一个根端口
(8)根端口:离根桥最近的端口
(9)指定端口:根桥所有参与生成树选举的端口,都一定是指定端口
(10)非根非指定端口:被阻塞的端口—备用链路的端口

三、STP操作流程

生成树选举办法:

  1. 根桥交换机,备份根桥交换机,非根交换机
  2. 根端口,指定端口,非根非指定端口(阻塞端口/预备端口)

生成树选举因素:

  1. 第一种根桥选举因素:优先级,MAC地址
  2. 第二种端口选举因素:路径开销 > 桥ID > 对端端口ID > 本端端口ID
  3. 如果我们要改变根桥直连端口的接口属性,要修改路径开销。
    STP流程1、根桥选举:
    (1)刚启动STP时,每台交换机都认为自己是根桥,
    (2)根桥所有参与生成树选举的端口,都一定是指定端口
    (3)根桥交换机指定端口直连的交换机端口,都一定是指定端口
    (4)**根桥:**在参与生成树选举的网络里面 桥id肯定是最小的
    (5)**备份根桥:**在参与生成树选举的网络里面 桥id肯定是次优的存在
    影响根桥选举的因素:
    (1)优先级(交换机默认优先级是32768)越小越优先,0的优先级最高。
    (2)优先级一样,看MAC地址表,最小的就是根桥
    (3)两种方式:优先级最小、MAC地址最小

2、根端口(RP)选举: 根端口在非根桥设备上选择,距离根桥最近的端口
(1)比较开销值,越小越优
(2)比较端口接收BPDU的BID,选优先级高的
(3)比较端口接收BPDU的PID,选优先级高的
(4)比较自身设备的·PID参数,选优先级高的
根端口选择
3、指定端口(DP)选举: 在每一条链路上选择,每一条链路只会选一个DP端口
(1)比较路径开销,越小越优
(2)比较彼此的BID,选择优先级高的
(3)比较自身的PID,选择优先级高的
指定端口选择
4、阻塞端口(DP)选举: 除了根端口和指定端口外的端口
阻塞端口选择

四、STP端口开销计算标准

STP端口开销计算标准

五、STP端口五种状态

1、Disabled
禁用状态;端口未启用,不接受不发送STP BPDU报文
端口为shutdown
2、Blocking
阻塞状态;只接受STP,不发送STP,不学习MAC,不转发用户数据
端口启用STP,还没被选为根端口或指定端口;或者端口为AP端口也会为此状态
3、Listening
聆听状态;接受、转发STP,不学习MAC,不转发用户数据
端口被选为根端口或指定端口
4、Learning
学习状态;接受、转发STP,学习MAC,不转发用户数据
端口 Forward delay计时器超时
5、Forwarding
转发状态;接受、转发STP,学习MAC,转发用户数
端口 Forward delay计时器超时
状态转变时间 Forward delay
阻塞 → 聆听 0s~20s时间
聆听 → 学习 15s时间
学习 → 转发 15s时间
所以,STP从开启到转发,最少需要30s,最大需要50s

六、常用命令

//查看STP的详细信息
Display stp 
//查看STP的端口角色及状态
Display stp brief 
//查看设备的背板MAC地址
Display bridge mac-address 
//修改设备的STP模式
Stp mode stp 
//修改设备接口的端口Cost值
Interface g0/0/0
stp cost xxx 

六、STP报文详情

报文参数
基本参数:

  1. PID:protocol ID:STP协议的ID号 固定为0
  2. PVI:STP-0、RSTP-2、MSTP-3
  3. BPDU Type:BPDU的类型(配置BPDU:config-bpdu;协议拓扑变化通知BPDU:TCN-bpdu)
  4. Flags:TC/TCA—>TCN-BPDU 搭配使用
    选举参数:
  5. RID:根桥的BID system-id-extension:MSTP实例号
  6. RPC:自己设备离根桥的距离
  7. BID:自己设备的BID设备 [发送该BPDU设备的BID参数]
  8. PID:端口ID 当前发送BPDU的端口的ID号 [端口优先级+端口编号] ///用于选举///
    端口优先级:默认128 0x80==>8*16=128
    端口编号:STP每一个端口生成端口号 G0/0/1 G0/0/2 -> STP 逻辑编号
  9. 消息参数:修改–>根桥修改
  10. Message age:STP-根桥始发为0 每经过一个设备+1 最大为20 大于20才会丢弃 如果等于20 不会丢弃
  11. Max-age:最大跳数 20
  12. Hello-time:2s ;2s发送一次BPDU 20S–>失效时间
  13. FWD-Delay::15S

七、STP拓扑信息改变

MAC地址老化时间
TCN-BPDU:实现全网的MAC地址表清空
TCA—消息 由配置BPDU 封装
TCN:加速MAC地址表的老化。

上游设备:
1.由DP端口回复TCA消息 通知下游设备停止发送TCN-BPDU
2.由RP端口向上游发送TCN-BPDU,发送至根桥设备。

根桥(上游设备):
1.自DP端口收到TCN-BPDU后,会回复TC+TCA的配置BPDU.
TCN:拓扑改变通知 是一个单独的BPDU
TC:拓扑改变消息 收到该TC信息的设备 需要清空MAC地址表 是包含在Config-BPUD中
TCA:拓扑改变确认 上游设备收到TCN之后 向下游设备回复的确认消息,通知下游设备不需要再次发送TCN报文–> 是包含在Config-BPUD中
报文发送流程

三级标题

四级标题
五级标题
六级标题
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值