组网技术 | STP(生成树协议)

STP(生成树协议)


产生背景

为了增加局域网的冗余性,我们常常会在网络中引入冗余链路,然而这样却会引起交换 环路。交换环路会带来三个问题:广播风

暴、同一帧的多个拷贝、交换机 CAM 表不稳定。

交换机工作原理:根据MAC地址表转发数据帧,如果地址未知,则广播。如果交换机接收到广播帧也会向所有端口发送。

广播风暴:当网络中存在物理环路,会产生广播风暴。广播风暴最终会导致网络资源耗尽,交换机死机。

STP工作流程

选举一个根网桥

在每一个非根网桥选举一个根端口

在每一个网段上选一个指定端口

阻塞非根网桥、非指定端口

选举一个根网桥

交换机通电启动后,还不知道网络中有没有别人,所以认为自己是根桥,并把这个消息通过BPDU通告出去,

每台交换机也会受到来自其他交换机的BPDU,比较一个BID就可以选举出根桥。

在每一个非根网桥选举一个根端口

根桥选出后,其他交换机都可以叫指定桥。指定桥不再主动发出BPDU,只会转发根桥的BPDU。根桥每间隔Hello Time(默认2秒)时间周期性发出BPDU。

根端口(Root Port RP)是指除了根桥交换机外的交换机去往根桥交换的最优的端口。

(根桥无根端口,非根桥交换机只有一个根端口)

选举时需要比较谁的RPC(Root Path Cost)最小

img

如图,SWB上两个端口中,E0/1端口到Root的RPC为10,E0/2的RPC为50,所以E0/1为根端口

同理,SWC的E0/1也为RP。

如果开销相同的话,则比较给你发BPDU的交换机的桥ID谁更优

如果桥ID还一样的话,比较发送BPDU的交换机(对端交换机)Port-ID,越小越优先。Port-ID=端口优先级+端口

在每一个网段上选一个指定端口

指在每两台交换机之间选择一个指定端口(DP)

选择指定端口(DP)的步骤:根网桥的上的端口全部为指定端口

非根桥上的指定端口,选择顺序:

  • 根路径成本较低(对比端口到根路径的成本)
  • 所在的交换机的网桥ID的值最小
  • 端口ID的值较小

阻塞非根网桥、非指定端口

交换机上什么都没被选上的端口被阻塞,起到了备份的作用。一旦阻塞,环路从逻辑上被断开了,避免广播风暴的产生,其它链路有故障时,这个接口自动激活。

桥ID(Bridge ID)

包括网桥优先级和MAC地址

优先级的取值范围:0-65535 默认值是32768,且取值必须为4096的整数倍

首先判断桥ID,优先级小的成为跟网桥,如果优先级相等则比MAC地址

根桥ID (Root Bridge ID )

根路径开销(Root Path Cost)

PVST+(Per Vlan STP)

对于802.1D,所有vlan都用一个生成树,当网络上有多个 VLAN 时,PVST(Per Vlan STP)会为每个 VLAN 构建一棵 STP 树.

好处是可以独立地为每个 VLAN 控制哪些接口要转发数据,从而实现负载平衡

缺点是如果 VLAN 数量很多,会给交换机带来沉重的负担。

Cisco 交换机默认的模式就是 PVST。

MAC地址缩减方案:将优先级分成两个部分,一个表示优先级,一个sysID表示所处的vlan

image-20201006094654770

posted @ 2020-11-15 17:47  cjz12138  阅读(701)  评论(0)    收藏  举报