1.技术背景
为什么要有冗余:
解决单点故障
2.减少单点故障,增加网络可靠性产生交换环路,会导致:
广播风暴:(浪费占用带宽)
在工程现场,交换机接口指示灯 疯狂闪烁--》产生广播风暴
多帧复制:单播的数据帧被多次复制传送到目的站点
MAC地址表抖动:相同的帧的拷贝在交换机的不同端口上被接收而引起的Mac地址表不稳定
3.既想要冗余保证网络可靠性,又想要消除环路带来的影响?
使用一种自动化的方式来实现---》 STP 协议
物理上有冗余(环路)
4.生成树协议概述
IEEE 802.1d
STP(生成树协议,Spanning-TreeProtocol)协议:
使冗余端口置于“阻塞状态”
网络中的计算机在通信时,只有一条链路生效
当这个链路出现故障时,将处于“阻曩状态端亡董新打并,从而确保网络连接稳定可靠
5.STP的操作
1.每个广播域选择一个根桥
2.每个非根桥上选择一个根端口
3.每个段选择一个指定端口
4.选择一个非指定端口
6.生成树协议的BPDU
交换机或者网桥之间周期性地发送STP的桥接协议数据单元(Bridge Protocol Data Unit , BPDU),用于实现STP的功能
每2秒发送一次的二层报文
组播发送,组播地址为:01-80-C2-00-00-00
BPDU的传播
BPDU(更小的Root BID或者更小的Root Path CoSTP刚启动时,每台交换机都认为自己是根网桥,向外泛洪BPDU
当交换机的一个端口收到高优先级的BPDU)就在该端口保存这些信息,同时向所有端口更新并传播信息
如果收到比自己低优先级的BPDU,交换机就丢弃该信息
7.STP工作原理(选举过程)
桥==交换机
1.选举根网桥 查看dis stp
依据网桥BlD(网桥Bid=网桥优先级(默认32769 范围0-65535 越小越优先)+网桥Mac)选举根网桥,ID值最小者当选
根网桥每2s发送一次BPDU
2.选举根端口(负责接收根端口发送的BPDU)
在非根交换机上选举根端口
选举依据:
根路径成本最小
到达根桥路径开销值100M 19
10M 100
1GB 4
10GB 2
发送网桥BID最小 桥优先级+MAC地址 优先级的范围0-65535
根桥是从所有的交换机中选举出来的,BID优先级越小越优先,如果优先级相同,比较MAC地址,越小越优先
发送端口PID最小 由优先级+端口编号组成
优先级的范围(0-255,默认128), 优先级和端口编号都是越小越优先
本地端口PID最小
3.选举指定端口(负责转发BPDU)
每个网段中选取一个指定端口
用于向根交换机发送流量和从根交换机接收流量
选举依据:
根路径成本最小
所在交换机的网桥BID最小
端口PID最小
4.选举 非指定端口 阻塞端口(不转发BPDU,只对指定端口转发的BPDU进行侦听)
剩下的端口就是被阻塞的端口
tips:
交换机和hub的区别
交换机内部存在一个有高带宽的线路板,交换模块,交换机所有的接口都在一个广播域下,交换机内部可以实现 终端的单播通信(CAM表)
HUB的内部就是一根总线,所有的接口处于一个冲突域,HUB传递的信息都是广播的形式:工作模式: CSMA/C----》载波侦听多路访问/碰撞检测
dis stp查看
stp root primary优先级变为0
stp priority ?设置交换机的桥优先级 《0-61440》 设置优先级的值是4096的倍数
直接指定交换机为主根桥(优先级是0)/备根桥(优先级4096)
display stp brief查看stp端口角色
ROOT根端口
DESI指定端口
ALTE阻塞端口
8.STP状态机
阻塞状态(Blocking)
不能接收或者传输数据,不能把MAC地址加入地址表,只能接收BPDU
20s老化时间
监听状态(Listening)
不能接收或者传输数据,也不能把MAC地址加入地址表,但可以接收和发送BPDU
完成各个角色的选举(找到阻塞端口)
15s的转发延时
学习状态(Learning)
等选举结束 网络无环稳定之后,为数据转发做准备,丰富各个交换机的CAM表
不能传输数据,但可以发送和接收BPDU,也可以学习MAC地址
15s的转发延时
转发状态(Forwarding)
CAM表丰富后,具备转发数据帧的功能
能够发送和接收数据、学习MAC地址、发送和接收BPDU
9.拓扑变更
TCN BPDU---》top change notice
由感知到拓扑变更的交换机,从根端口发出,由
TCN BPDU概述
当网络拓扑出现变更的时候,最先意识到变化的交换机将发送TCN BPDU。在发生以下时间时,交换机发送TCN:
对于处于转发和监听状态的接口,过渡到Block状态(链路故障的情况)
端口进入转发状态,并且网桥已经拥有指定端口
非root网桥在它的指定端口收到TCN
10.STP特性
1.PORT FAST
在交换机上,将连接主机的接口配置为portfast
Portfast接口可绕过listening和learning状态直接进入forwarding状态
》interface interface-ID
》stp edged-port enable配置边缘端口
2.BPDUguardbpdu保护
该接国在收到BPDU报文后,会立即切换到err-disable 状态
常搭配 portfast特性在接口上一起使用,用于连接主机
可在接口模式上激活,也可在全局模式上配置,两者有所不同。
在接口模式下配置,该接口收到 BPDU报文后,立即切换到err-disable状态∶
》stp bpdu-protection //收到bpdu报文会自动 shutdown
边缘端口down掉之后,两种恢复方式:
手动恢复
》interface GigabitEthernet 0/0/1
》undo shutdown
自动恢复:会自动执行undo shutdown
》error-down auto-recovery cause bpdu-protection interval 30
1/30秒自动恢复
验证命令:
》display stp
1!验证整个交换机全局是否开启BPDU保护,默认是disable ;
》display stp interface g0/0/1l/查看接口是否开启了边缘端口特性以及BPDU保护特性;
3.BPDUFilter
可以在全局模式下配置,也可以在接口模式下配置,区别如下:
全局配置[Switch]stp bpdu-filter default
a)启用了portfast的接口将激活bpdufilter特性
b)上述接口在link up后瞬间会发送BPDL(a few),此后不在发送任何BPDU
c)上述接口在收到BPDU后立即丢失portfast及bpdufilter特性,成为一个普通的spanning-tree接口
接口配置[Switch-GigabitEthernet0/0/1]stp bpdu-filter enable
d)该接口将不会发送BPDU,也忽略接收到的BPDU
e)Enabling BPDU fitering on an interface is the same as disabling spanning tree on it and can result in spanning-tree loops.f)在接口上配置,不一定必须portfast特性,可独立实施。当然,建议搭配portfast特性使用。
4.Uplinkfast
配置Uplinkfast的交换机需为末梢交换机,或者网络三层结构中的接入层交换机,不能为根桥
在激活Uplinkfast特性后,交换机会自动调整—些参数:
交换机的默认桥优先级会增加到一个比缺省值更高的值( 32768->49152),以使得该交换机不会成
为Root
交换机的所有端口的默认COST值会增加3000,以使得该交换机的端口不被选举为指定端口
非默认的(手工配置的非默认) priority 与cost不变
5.backbone fast
BackboneFast是对UplinkFast的一种补充,
UplinkFast能够检测直连链路的失效,
BackboneFast是用来检测间接链路的失效。
当启用了BackboneFast的交换机检测到间接链路失效之后,会马上使阻塞的端口进入监听状态,少了20S的老化时间。
6.RootGuard
如果新接入的交换机优先级更低,将抢占原有的根网桥
Root Guard是一种强制的根保护措施,它的作用是防止意外(或者非法)加入的交换机成为网络中的根桥