RSTP+MSTP
STP协议的缺点、存在的问题
1.协议工作的时候收敛的时间较长,响应速度慢-----RSTP
2.原始的802.1d(stp)不支持多个vlan----(PVST===把一个单独的 vlan 添加为一个实例)—MSTP
RSTP 快速生成树协议
STP的问题
RP :root port 跟端口 DP:指定端口 BP:阻塞端口
1.慢
设备从初始化,到收敛完成,最少要经历30s的时间
为了防止临时环路的出现,采用被动等待的计时器
STP的计算,必须要等待固定的时长
2.交换机BP(blocked) 端口,切换到RP的时候,至少要经历两个转发延时(15*2)
3.交换机没有BP端口,RP端口down掉了,DP端口至少要等待50s才能进行切换
4.交换机连接终端的端口,切换时间过长,30-50s
5.STP的拓扑变更机制,复杂,而且效率低下
6.端口角色划分不充分
没有指定面向用户/终端的端口
没有备份的根端口/指定端口(30-50)
7.端口的状态有些重复、而且增加了转发延时
RSTP对STP技术的改进:端口角色,状态
新增了两种角色:都是用来做备份的,本质上也是被阻塞的(非block状态)
去掉了阻塞端口
backup 端口:指定端口的备份
alternate端口:根端口的备份
端口切换不需要尽力等待转发延时,相当于STP的uplink-fast
状态由5种缩减为三种
discarding:不转发用户流量,不学习MAC地址— disable blocking listening
learning:不转发用户流量,学习MAC地址
forwarding:转发用户流量,学习MAC地址
RSTP的配置
[Swtich]stp enable
[Swtich]stp mode rstp
RSTP的其他操作
快速收敛机制
P/A(proposal/agreement sync机制 ) 一般都是秒级
让一个指定端口,尽快进入转发状态,同时避免环路的发送
三种报文格式:P A SYNC
端口的快速切换机制
AP— ---针对与交换机没有BP端口,RP端口down掉了,DP端口至少要等待50s才能进行切换
backup — 针对于交换机BP(blocked) 端口,切换到RP的时候,至少要经历两个转发延时(15*2)
次等BPDU的处理机制
当一个接口接收到一个次等BPDU之后,马上把自身储存的(最优)BPDU返回给源端口,然后启动P/A机制
可以实现接口的秒级切换
边缘端口的引入
相当于Port-fast,可以让edge-port 不参加RSTP的任何活动,激活后之后就变成了转发状态
如果边缘端口接口到了BPDU,就丧失了边缘端口的属性(相当于STP的BPDU-filter)
拓扑变更机制的优化
STP:逐级通报的过程
RSTP:扁平化管理,RSTP的所有的交换机 都可以发送BPDU(TC)
如果出现了拓扑变更,RSTP会第一时间通知上下级交换机,清空CAM表
TC while timer 2个hello时间
RSTP和STP之间的兼容性
RSTP能够向下兼容
RSTP协议与STP协议完全兼容
1.SW1支持RSTP,发送的报文是STP报文 SW2仅支持STP 发送的报文是STP报文 ===STP
2.SW1支持RSTP,发送的报文是STP报文 SW3支持RSTP,发送的报文是STP报文 ===STP
3.SW1支持RSTP,发送的报文是RSTP报文 SW#支持RSTP,发送的报文是RSTP报文 ===RSTP
RSTP的特性
1.BPDU保护
配置边缘端口的目的
-希望这些端口 以后组网的时候,连接的都是终端设备
-即使边缘端口连接了交换机,也需要先把这个交换机进行BPDU参数的调试(BID,端口cost值),当交换机接入网络,即使存在STP的计算, 不会再次造成网络的震荡
-如果边缘端口 硬性规定为 不允许连接交换机,在这些端口上来配置BPDU-protection。
2.根桥防护
场景1.客户网络和 运营商网络 进行二层对接 === 根桥防护主要配置在运营商网络上
场景2.由于维护人员的错误配置或网络中的恶意攻击,网络中合法根桥有可能会收到优先级更高的RST BPDU
实现原理:一旦启用Root保护功能的指定端口收到优先级更高的RST BPDU时,端口状态将进入Discarding状态,不再转发报文。在经过一段时间,如果端口一直没有再收到优先级较高的RST BPDU,端口会自动恢复到正常的Forwarding状态。
Root保护功能只能在指定端口上配置生效
3.TC-BPDU泛洪保护
场景:黑客在边缘端口接入一台计算机不断伪造和发送TC-BPDU (对于边缘端口来说,不希望收到BPDU报文)
解决方法1:强制规定该端口为边缘端口,禁止这个端口接收BPDU—》BPDU-protection
解决方法2:(如果允许边缘端口接收BPDU),黑客想这个端口发送TC-bpdu,
在单位时间内,交换设备处理TC-BPDU报文的次数可配置,设备只会处理阈值指定的次数
如果TC-BPDU 超过了阈值设置,交换机将不在对这些TC-BPDU进行处理.
MSTP
多实例生成树协议MSTP(Multiple Spanning Tree Protocol)是IEEE802.1s中定义的生成树协议,通过生成多个生成树,来解决以太网环路问题。
PVST
perVLAN的意思是,一个VLAN对应一棵生成树,如此一来交换机将基于VLAN计算生成树,我们可以通过对单独的VLAN生成树调节优先级等相关参数,从而影响生成树的计算,最终实现合理的链路带宽利用
1.PVST 最初是Cisco,每vlan生成树, PVST相当于PVST + RSTP的结合版
2.PVST 它要维护每个vlan的生成树,交换机存在多个vlan,就会给交换机的CPU带来很大的压力
MSTP,公有协议。多实例生成树。
实例:instance
核心理念:把每个逻辑拓扑相同的vlan,放到统一的一个实例里面来进行管理
它是基于RSTP来开发的,底层就是RSTP,有相同的角色、拓扑变更机制和收敛机制