路由交换:STP(一)

2020-12-09  本文已影响0人  周山

二层环路导致的问题:

1、广播风暴:

交换机转发BUM报文的机制造成的,数据帧没有防环机制,导致交换机环路无法消除
B:boradcast广播
U:未知的MAC单播帧
M:组播

2、mac地址表震荡:

交换机端口学习机制,后学习到的会把之前学习到的覆盖,使得交换机生成错误的表项,导致转发出现错误。

3、多帧复制,重复数据帧接收:

如果存在大量的广播帧,导致网络性能下降甚至不可用,终端设备也会消耗大量CPU资源处理广播

STP:

原理解析

1、选举一个根桥:
一个广播域中有且仅有一个根桥。
2、每个非根交换机选举一个根端口:
在一个广播域中,非根桥有多少个,根端口就有多少个
3、每个存活链路选举一个指定端口:
交换机的每一个端口所连接着的链路都可以称作一个网段即冲突域,交换机可以隔离冲突域
4、选非根、非指定端口作为阻塞端口:
标准的STP(802.1D)Dlock prot
华为STP阻塞端口称为AP,AP源自于RSTP

应知应会

STP协议的所有角色都是通过比较BPDU的参数选举出来的
STP协议定义了每个交换机都有一个BID来标识自己
BID=pri+mac
pri取值有两个标准
pri默认值是32768
1、0~65535
2、0~61440 HW,但优先级取值必须是4096的倍数,实际上是16个值,而cisco两套标准都可以用

名词解释

ROOT桥:发送最好BPDU的交换机
RP(根端口):非根桥上接收最好BPDU的端口
DP(指定端口):链路上发送最好BPDU的端口
AP(备用端口):既不是RP又不是DP的端口,被Block
DP要么对着RP,要么对着AP


image.png 远程抓取数据.png

什么是最好的BPDU?

BPDU中四个选举参数

RID:根桥的BID
RPC(Root Path Cost):
对于根桥来说RPC永远等于0
对于非根桥来说RPC是自己到根桥路径的开销之和
BID:交换机自己的BID
PID:由端口pri+端口id组成,优先级的取值为0-240,默认值是128,取16的倍数

最好的BPDU选举机制:

1、比较RID,RID越小越优先
2、继续比较RPC路径和,越小越优先
3、继续比较BID,越小越优先
4、比较PID,越小越优先
5、比较自身PID(有Hub情况下才会出现这种情况)

小提示:非根桥根据根端口的配置消息(RP的BPDU参数)计算指定端口的消息(DP的BPDU参数),计算结果如果比DP本身的BPDU参数好,则该端口为DP端口,否则为AP。

STP协议的模式

  [S3]dis stp
-------[CIST Global Info][Mode STP]------- STP协议的模式
CIST Bridge         :32768.4c1f-cc32-052a  交换机自身的BID
Config Times        :Hello(BPDU发送周期) 2s MaxAge 20s FwDly(转发延时) 15s MaxHop(最大跳数) 20 当前配置的时间参数值
Active Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20 交换机实际工作时候的各类配置值
CIST Root/ERPC(外部路径开销外部RPC)      :32768.4c1f-cc32-052a / 0 根桥的BID,如果该值和自身的BID相同,则该交换机为根桥。在STP模式下,ERPC为根端口到根桥的RPC
CIST RegRoot/IRPC(内部路径开销内部RPC)   :32768.4c1f-cc32-052a / 0 对于STP来说无意义,用于MSTP中
CIST RootPortId     :0.0 根端口
BPDU-Protection     :Disabled
TC or TCN received  :17
TC count per hello  :0
STP Converge Mode   :Normal 
Time since last TC  :0 days 0h:0m:42s
Number of TC        :10
Last TC occurred    :GigabitEthernet0/0/2
----[Port1(GigabitEthernet0/0/1)][FORWARDING]----

查看STP模式下的接口状态


<S5>dis stp bri
 MSTID  Port                        Role  STP State     Protection
   0    GigabitEthernet0/0/1        ROOT(根端口)  FORWARDING      NONE
   0    GigabitEthernet0/0/4        DESI (指定端口) FORWARDING      NONE

<S6>dis stp bri
 MSTID  Port                        Role  STP State     Protection
   0    GigabitEthernet0/0/3        ROOT  FORWARDING      NONE
   0    GigabitEthernet0/0/23       ALTE  DISCARDING      NONE

STP State

端口状态分类

forwarding:转发数据,学习mac地址,处理BPDU报文
learning:不转发数据,学习mac地址,处理BPDU报文
listening:不转发数据,不学习mac地址,处理BPDU报文
blocking:不转发数据,不学习mac地址,处理BPDU报文
disable:接口被禁用
稳定STP网络只有两种状态,即forwding和blocking

端口状态转换

image.png

1、端口初始化或生成树协议感知到端口使能
2、端口被选为根端口或者指定端口
3、端口不再是根端口或者指定端口
4、forward delay计时器超时
5、端口禁用或链路失效
结论:
一个blocking状态的DP/RP至少需要30秒进入到forwarding
非根桥的RP失效并存在AP时,AP成为新的RP,经历30s进入fording状态(从blocking到listening 15s,从listening到forwarding 15s)
非根桥的RP失效但是不存在AP时,此时交换机认为自己失去了到根桥的所有路径,于是该交换机将自身作为根桥,发送以自己为根的BPDU报文,下游交换机需要等待20s将之前的BPDU老化,在处理该BPDU,此时需要50s恢复网络。(次级BPDU的处理机制)

上一篇下一篇

猜你喜欢

热点阅读