一 、生成树协议产生的背景
1、局域网中出现的主要问题:
1) 网络互联 交换机和网线
2) 广播过多 分隔广播域 vlan
3) 局域网中终端设备较多,200台以上的计算机互通,需要多台交换机?
多台交换机之间如何连线?
交换机之间不互相连接-----------单点故障
交换机之间互相连接--------------链路备份
2、新问题:
换机之间呈环状连接,可以解决单点故障的问题,存在了冗余链路,但是因为交换机之间的拓扑结构为环状,所以会产生广播风暴。
交换机之间无环拓扑----------不存在广播风暴,但是存在单点故障问题;
交换机之间环状拓扑----------没有单点故障,存在广播风暴问题;
3、广播风暴:
交换机会向除了进口之外的所有端口广播查找目标主机的mac地,如果此mac地址不存在,交换机之间就会不断的进行广播查找,直到交换机资源耗尽,死机为止。
4、解决问题:
所有交换机物理上呈环状首尾连接(解决单点故障问题),然后,所有交换机开机运行生成树协议(STP),通过生成树协议交换机彼此之间决定阻塞某个或某些端口,从而形成逻辑无环拓扑(避免了广播风暴),当现有的链路出现问题时,之前被阻塞的端口可以从新启用,从而形成一个新的逻辑无环拓扑(备份链路)
1) 物理有环:逻辑无环;
2) 物理有环:物理上交换机互相连接
3) 逻辑无环:通过生成树协议阻塞某些端口,从而形成逻辑无环拓扑;
二、生成树协议选举过程
生成树协议: spanning tree protocol
含义:让交换机之间形成树状的无环拓扑
交换机之间通过生成树协议进行协商,最终决定阻塞哪个端口;
到底交换机之间是如何协商的?
协调阻塞端口的步骤及工作原理:
生成树算法分为3个步骤:
步骤1:确定交换机角色 (根交换机、非根交换机)
步骤2:确定交换机端口角色 (根端口、指定端口、非指定端口)
步骤3:确定交换机端口状态
每个广播域选择根交换机(Root Bridge)
每个非根交换机上选择根端口(Root Port)
每个链路上选择指定端口(Designated Port)
剩下没有被选中的就是非指定端口如图:
选择根网桥:网桥ID (BID)
网桥ID是唯一的(根网桥只有一个,其它网桥都是非根网桥;)
在交换机之间选择BID值最小的交换机作为网络中的根网桥
网桥ID=网桥优先级+网桥MAC地址
网桥优先级: 取值范围 0-65535 默认值 32768
修改的步长 4096 (单位)
如选举: 先比优先级 再比MAC地址
1)发现优先级都是3268
2)然后在对比MAC地址,mac地址小就是根网桥
选择根端口:选择根端口的依据
在每个非根网桥上,选举一个根端口;
此(参加选举)端口到达根网桥的路径成本之和最低
路径成本:每条链路的带宽
默认情况下:千兆(1000M )链路成本为20000
百兆(100M) 链路成本为200000
说明:他这里说根路径成本,也就是花费时间越少,最近的路,就可以达到最低的路径成本。
当成本路径一样的情况下在对比第二条
端口标识最小
端口标识(Port Identifier)
端口标识越小越优先,由端口优先级和端口号两部分组成,
端口优先级可配置,默认值128
直连的网桥ID最小
此(参加选举)端口所直连的交换机的网桥ID最小,故与根交换机直连的端口都是根端口
选择指定端口:
在每根网线上选举一个指定端口
每根网线必须有一个指定端口,而且只能有一个指定端口;
根网桥上的所有端口都是指定端口
--此端口所在交换机到底根网桥的路径成本之和最低
--此端口所在交换机的网桥ID最小
DESI 指定端口 ALTE阻塞端口 ROOT 根端口
4、生成树协议原理
1)BPDU bridge protocol data unit 桥协议数据单元
运行了生成树协议的交换机彼此之间用来交流生成树信息的数据包
类型:
配置BPDU :详细介绍生成树的基本信息
拓扑变更BPDU:把生成树的变化信息告诉别的交换机
内容:
根网桥的网桥ID、自己的网桥ID、到根网桥的成本、端口ID
2)stp端口状态
生成树选举需要一定的时间和过程:stp收敛
收敛:设备从不稳定到稳定的过程
禁用 disabled 强制关闭
阻塞 blocking 不能转发数据帧,可以接收BPDU;
侦听 listening 不能转发数据帧,可以发送和接收BPDU;
学习 leraning 构建MAC地址表
转发 forwarding 转发数据帧