ENSP一课一得


初识生成树协议
在网络中部署生成树后,交换机之间会进行生成树协议报文的交互并进行无环拓扑计算,最终将网络中的某个(或某些)接口进行阻塞(Block),从而打破环路。
运行生成树协议
运行生成树协议
运行生成树协议
生成树协议报文
SW1
(树根)
SW1
SW2
SW3
SW2
SW3
接口被阻塞

生成树能够动态响应网络拓扑变化调整阻塞接口
交换机上运行的生成树协议会持续监控网络的拓扑结构,当网络拓扑结构发生变化时,生成树能感知到这些变化,并且自动做出调整。
因此,生成树既能解决二层环路问题,也能为网络的冗余性提供一种方案。
接口被阻塞
链路故障
SW1
SW2
SW3
SW1
SW2
SW3
接口被恢复
1
2
3

问答:二层及三层环路
• 常见根因:路由环路;
• 动态路由协议有一定的防环能力;
• IP报文头部中的TTL字段可用于防止报文被无止尽地转发。
• 常见根因:网络中部署了二层冗余环境,或人为的误接线缆导致;
• 需借助特定的协议或机制实现二层防环;
• 二层帧头中并没有任何信息可用于防止数据帧被无止尽地转发。
二层环路(Layer 2 Loop)
三层环路(Layer 3 Loop)

生成树协议在园区网络中的应用位置
……
……
……
Internet
三层网络
二层网络
生成树工作在这里

STP概述
• STP是一个用于局域网中消除环路的协议。
• 运行该协议的设备通过彼此交互信息而发现网络中的环路,并对某些接口进行阻塞以消除环路。
• STP在网络中运行后会持续监控网络的状态,当网络出现拓扑变更时,STP能够感知并且进行自动响应,从而使得网络状态适应新的拓扑结构,保证网络可靠性。
• 由于局域网规模的不断增长,生成树协议已经成为了当前最重要的局域网协议之一。

目录
1. 生成树技术概述
2. STP的基本概念及工作原理
3. STP的基础配置
4. RSTP对STP的改进
5. 生成树技术进阶

STP的基本概念:桥ID
桥ID(Bridge ID,BID)
• IEEE 802.1D标准中规定BID由16位的桥优先级(BridgePriority)与桥MAC地址构成。
• 每一台运行STP的交换机都拥有一个唯一的BID。
• BID桥优先级占据高16bit,其余的低48bit是桥MAC地址。
• 在STP网络中,BID最小的设备会被选举为根桥。
SW1
SW2
4096.4c1f-aabc-102a
4096.4c1f-aabc-102b
4096.4c1f-aabc-102c
SW3
备注:此处网桥(Bridge ),或者桥也就是交换机。
桥优先级 桥MAC地址
桥ID 根桥 Cost RPC Port ID BPDU

STP的基本概念:根桥
根桥(Root Bridge)
• STP的主要作用之一是在整个交换网络中计算出一棵无环的“树”(STP树)。
• 根桥是一个STP交换网络中的“树根”。
• STP开始工作后,会在交换网络中选举一个根桥,根桥是生成树进行拓扑计算的重要“参考点”,是STP计算得出的无环拓扑的“树根”。
• 在STP网络中,桥ID最小的设备会被选举为根桥。
在BID的比较过程中,首先比较桥优先级,优先级的值越小,则越优先,拥有最小优先级值的交换机会成为根桥;如果优先级相等,那么再比较MAC地址,拥有最小MAC地址的交换机会成为根桥。
SW1
SW2
4096.4c1f-aabc-102a
4096.4c1f aabc 102b
4096.4c1f aabc 102c
SW3
根桥
桥ID 根桥 Cost RPC Port ID BPDU
第15页 版权所有© 2020 华为技术有限公司
STP的基本概念:Cost
开销(Cost)
• 每一个激活了STP的接口都维护着一个Cost值,接口的Cost主要用于计算根路径开销,也就是到达根的开销。
• 接口的缺省Cost除了与其速率、工作模式有关,还与交换机使用的STP Cost计算方法有关。
• 接口带宽越大,则Cost值越小。
• 用户也可以根据需要通过命令调整接口的Cost。
SW1
SW2
SW3
Cost=500
Cost=500
Cost=20000
Cost=20000
Cost=20000
Cost=20000
桥ID 根桥 Cost RPC Port ID BPDU
第16页 版权所有© 2020 华为技术有限公司
STP的基本概念:Cost计算方法
接口速率
接口模式
STP开销(推荐值)
IEEE 802.1d-1998标准 IEEE 802.1t标准
华为计算方法
100Mbps
Half Duplex
19
200,000
200
Full Duplex
18
199,999
199
Aggregated Link 2 Ports
15
100,000
180
1000Mbps
Full Duplex
4
20,000
20
Aggregated Link 2 Ports
3
10,000
18
10Gbps
Full Duplex
2
2000
2
Aggregated Link 2 Ports
1
1000
1
40Gbps
Full Duplex
1
500
1
Aggregated Link 2 Ports
1
250
1
100Gbps
Full Duplex
1
200
1
Aggregated Link 2 Ports
1
100
1
……
接口Cost是已经激活了STP的接口所维护的一个开销值,该值存在默认值,与接口的速率有关联,并且设备使用不同的算法时,相同的接口速率对应不同的Cost值。
桥ID 根桥 Cost RPC Port ID BPDU
第17页 版权所有© 2020 华为技术有限公司
STP的基本概念:RPC
根路径开销(Root Path Cost)
• 在STP的拓扑计算过程中,一个非常重要的环节就是“丈量”交换机某个接口到根桥的“成本”,也即RPC。
• 一台设备从某个接口到达根桥的RPC等于从根桥到该设备沿途所有入方向接口的Cost累加。
• 在本例中,SW3从GE0/0/1接口到达根桥的RPC等于接口1的Cost加上接口2的Cost。
SW1
SW2
SW3
Cost=500 Cost=500
Cost=20000
Cost=20000
Cost=20000
Cost=20000
1
2
RPC=500+20000
桥ID 根桥 Cost RPC Port ID BPDU
根桥
第18页 版权所有© 2020 华为技术有限公司
STP的基本概念:Port ID
接口ID(Port ID,PID)
• 运行STP的交换机使用接口ID来标识每个接口,接口ID主要用于在特定场景下选举指定接口。
• 接口ID由两部分构成的,高4 bit是接口优先级,低12 bit是接口编号。
• 激活STP的接口会维护一个缺省的接口优先级,在华为交换机上,该值为128。用户可以根据实际需要,通过命令修改该优先级。
SW1
SW2
SW3
PID=128.24 PID=128.24
PID=128.23
PID=128.21
PID=128.23
PID=128.22
桥ID 根桥 Cost RPC Port ID BPDU
第19页 版权所有© 2020 华为技术有限公司
STP的基本概念:BPDU
配置BPDU
BPDU(Bridge Protocol Data Unit,网桥协议数据单元)
• BPDU是STP能够正常工作的根本。BPDU是STP的协议报文。
• STP交换机之间会交互BPDU报文,这些BPDU报文携带着一些重要信息,正是基于这些信息,STP才能够顺利工作。
• BPDU分为两种类型:
• 配置BPDU(Configuration BPDU)
• TCN BPDU(Topology Change Notification BPDU)
• 配置BPDU是STP进行拓扑计算的关键;TCN BPDU只在网络拓扑发生变更时才会被触发。
SW1
SW2
SW3
桥ID 根桥 Cost RPC Port ID BPDU
第20页 版权所有© 2020 华为技术有限公司
配置BPDU的报文格式
字节 字段
描述
2
PID 协议ID ,对于STP而言,该字段的值总为0
1
PVI 协议版本ID,对于STP而言,该字段的值总为0
1
BPDU Type 指示本BPDU的类型,若值为0x00,则表示本报文为配置BPDU;若值为0x80,则为TCN BPDU
1
Flags
标志,STP只使用了该字段的最高及最低两个比特位,最低位是TC(Topology Change,拓扑变更)标
志,最高位是TCA(Topology Change Acknowledgment,拓扑变更确认)标志
8
Root ID 根网桥的桥ID
4
RPC
根路径开销,到达根桥的STP Cost
8
Bridge ID BPDU发送桥的ID
2
Port ID BPDU发送网桥的接口ID(优先级+接口号)
2
Message
Age
消息寿命,从根网桥发出BPDU之后的秒数,每经过一个网桥都加1,所以它本质上是到达根桥的跳数
2
Max Age 最大寿命,当一段时间未收到任何BPDU,生存期到达最大寿命时,网桥认为该接口连接的链路发生故
障。默认20s
2
Hello Time 根网桥连续发送的BPDU之间的时间间隔,默认2s
2 Forward Delay 转发延迟,在侦听和学习状态所停留的时间间隔,默认15s
桥ID 根桥 Cost RPC Port ID BPDU
PID PVI BPDU Type Flags Root ID RPC Bridge ID Port 
ID
Message
Age
Max Age Hello 
Time
Forward 
Delay
第21页 版权所有© 2020 华为技术有限公司
配置BPDU的比较原则
字段
协议ID
协议版本ID
类型
标志
根桥ID
根路径开销
网桥ID
接口ID
消息寿命
最大寿命
Hello时间
转发延迟
对于STP而言,最重要的工作就是在交换网络中计算出一个无环拓扑。在拓扑计算的过程中,一个非常重要的内容就是配置BPDU的比较。在配置BPDU中,有四个字段非常关键,它们是“根桥ID”、“根路径开销”、“网桥ID”以及“接口ID”,这四个字段便是交换机进行配置BPDU比较的关键内容。
STP按照如下顺序选择最优的配置BPDU:
1. 最小的根桥ID
2. 最小的RPC
3. 最小的网桥ID
4. 最小的接口ID
在这四条原则中(每条原则都对应配置BPDU中的相应字段),第一条原则主要用于在网络中选举根桥,后面的原则主要用于选举根接口及指定接口。
桥ID 根桥 Cost RPC Port ID BPDU

配置BPDU的转发过程
SW1
SW2
SW3
4096.4c1f aabc 102a
4096.4c1f aabc 102b
4096.4c1f aabc 102c
PortID=128.24
PortID=128.23
Cost=20000
Cost=20000
配置BPDU
……
根桥ID=4096.4c1f aabc 102a
路径开销=0
桥ID=4096.4c1f aabc 102a
接口ID=128.24
……
配置BPDU
……
根桥ID=4096.4c1f aabc 102a
路径开销=0+20000
桥ID=4096.4c1f aabc 102b
接口ID=128.23
……
桥ID 根桥 Cost RPC Port ID BPDU

STP的计算过程 (1)
在交换网络中选举一个根桥
• STP在交换网络中开始工作后,每个交换机都会向网络中发送配置BPDU。配置BPDU中包含交换机自己的桥ID。
• 网络中拥有最小桥ID的交换机成为根桥。
• 在一个连续的STP交换网络中只会存在一个根桥。
• 根桥的角色是可抢占的。
• 为了确保交换网络的稳定,建议提前规划STP组网,并将规划为根桥的交换机的桥优先级设置为最小值0。
配置BPDU
SW1
SW2
SW3
4096.4c1f-aabc-102a
4096.4c1f-aabc-102b
4096.4c1f-aabc-102c
选举根桥 选举根接口 选举指定接口 阻塞非指定接口
根桥

STP的计算过程 (2)
在每台非根桥上选举一个根接口
• 每一台非根桥交换机都会在自己的接口中选举出一个接口。
• 非根桥交换机上有且只会有一个根接口。
• 当非根桥交换机有多个接口接入网络中时,根接口是其收到最优配置BPDU的接口。
• 可以形象地理解为,根接口是每台非根桥上“朝向”根桥的接口。
选举根桥 选举根接口 选举指定接口 阻塞非指定接口
SW1
SW2
SW3
4096.4c1f-aabc-102a
4096.4c1f-aabc-102b
4096.4c1f-aabc-102c
配置BPDU R 根接口
R
R

STP的计算过程 (3)
在每条链路上选举一个指定接口
• 根接口选举出来后,非根桥会使用其在该接口上收到的最优BPDU进行计算,然后将计算得到的配置BPDU与除了根接口之外的其他所有接口所收到的配置BPDU进行比较:
• 如果前者更优,则该接口为指定接口;
• 如果后者更优,则该接口为非指定接口。
• 一般情况下,根桥的所有接口都是指定接口。
配置BPDU 根接口 D 指定接口
选举根桥 选举根接口 选举指定接口 阻塞非指定接口
SW1
SW2
SW3
4096.4c1f-aabc-102a
4096.4c1f-aabc-102b
4096.4c1f-aabc-102c
D
D
D
R
R
R

STP的计算过程 (4)
非指定接口被阻塞
• 一台交换机上,既不是根接口,又不是指定接口的接口被称为非指定接口。
• STP操作的最后一步是阻塞网络中的非指定接口。这一步完成后,网络中的二层环路就此消除。
选举根桥 选举根接口 选举指定接口 阻塞非指定接口
配置BPDU R 根接口 D 指定接口
SW1
SW2
SW3
R
R
D
D
D
接口被阻塞

思考题1:识别以下拓扑中的根桥及各种接口角色
SW2 4096.4c1f-aabc-0002
SW3 4096.4c1f-aabc-0003
SW1 4096.4c1f-aabc-0001
1000M
GE0/0/0
GE0/0/1
GE0/0/2
GE0/0/1
GE0/0/2
GE0/0/1

思考题2:识别以下拓扑中的根桥及各种接口角色
SW1 4096.4c1f-aabc-0001
SW2 4096.4c1f-aabc-0002
SW3 4096.4c1f-aabc-0003
SW4 4096.4c1f-aabc-0004
GE0/0/0
GE0/0/1
GE0/0/2
GE0/0/1
GE0/0/2
GE0/0/1
GE0/0/2

思考题3:识别以下拓扑中的根桥及各种接口角色
4096.4c1f-aabc-0001
4096.4c1f-aabc-0002
GE0/0/1
GE0/0/1
GE0/0/2
GE0/0/2
SW1
SW2

STP的接口状态
状态名称
状态描述
禁用(Disable)
该接口不能收发BPDU,也不能收发业务数据帧,例如接口为down
阻塞(Blocking)
该接口被STP阻塞。处于阻塞状态的接口不能发送BPDU,但是会持续侦听BPDU,而且不能收发业务数据帧,也不会进行MAC地址学习
侦听(Listening)
当接口处于该状态时,表明STP初步认定该接口为根接口或指定接口,但接口依然处于STP计算的过程中,此时接口可以收发BPDU,但是不能收发业务数据帧,也不会进行MAC地址学习
学习(Learning)
当接口处于该状态时,会侦听业务数据帧(但是不能转发业务数据帧),并且
在收到业务数据帧后进行MAC地址学习
转发(Forwarding) 处于该状态的接口可以正常地收发业务数据帧,也会进行BPDU处理。接口的角
色需是根接口或指定接口才能进入转发状态

STP的接口状态迁移
禁用或Down
阻塞
侦听
学习
转发
1
2
3
3
5
5
5
5
4
4
4
1 接口初始化或激活,自动进入阻塞状态
2 接口被选举为根接口或指定接口,自动进入侦听状态
3 转发延迟计时器超时且接口依然为根接口或指定接口
4 接口不再是根接口或指定接口或指定状态
5 接口被禁用或者链路失效
拓扑变化 - 根桥故障
根桥故障恢复过程
1. SW1根桥发生故障,停止发送BPDU报文。
2. SW2等待Max Age计时器(20 s)超时,从而导致已经收到的BPDU报文失效,又接收不到根桥发送的新的BPDU报文,从而得知上游出现故障。
3. 非根桥会互相发送配置BPDU,重新选举新的根桥。
4. 经过重新选举后,SW3的A端口经过两个Forward Delay(15 s)时间恢复转发状态。
• 非根桥会在BPDU老化之后开始根桥的重新选举。
• 根桥故障会导致50 s左右的恢复时间。
SW1
SW2
SW3
A
4096.4c1f-aabc-102a
4096.4c1f-aabc-102b
4096.4c1f-aabc-102c
1
2
3
4

  • 25
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王德伟20230606158

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值