RSTP 机制原理详解

本期给大家分享RSTP机制原理详解。

一、RSTP相关概念

1. RSTP产生背景

传统STP(802.1D)的不足:

收敛速度慢:端口从阻塞状态进入转发状态必须经历两倍的Forward Delay时间,网络拓扑变化后需要至少两倍的Forward Delay时间(30-50s),才能恢复连通性拓扑变化可能导致不必要的收敛:连接用户PC的端口频繁up/down,引起的拓扑变化,引起网络不必要的收敛

因此,为了解决STP的不足,进一步发展为RSTP(快速生成树协议):

从传统生成树协议(802.1D)发展而来,具备它的所有功能,实现的基本思想、选举结果一致。相对于传统生成树协议,引入新的机制,加快网络收敛速度,尽可能快的恢复网络的连通性。2. RSTP改进一

端口角色增加:把堵塞的端口细分为Alternate端口和Backup端口

STP端口类型

RSTP端口类型

描述

Root   Port

Root   Port

根端口。离根交换机“最近”的端口,收敛后处于forwarding状态。

Designated   Port

Designated   Port

指定端口。该端口发送的BPDU优于接收的BPDU,收敛后处于forwarding状态。

Blocked  Port

(阻塞端口)

Alternate   Port

替代端口,该端口发送的BPDU比从对端交换机接收的BPDU更差,收敛后处于discarding状态,根端口的备份,根端口失效,该端口立刻变为根端口

Backup   Port

备份端口,该端口发送的BPDU比从本交换机其他端口发送的BPDU更差,收敛后处于discarding状态,指定端口的备份,指定端口失效,该端口立刻变为指定端口。

Disabled

Disabled

端口失效

2. RSTP改进二

端口状态减少,由5种状态减少到3种:Forwarding、Learning、Discarding

STP端口状态

RSTP端口状态

描述

Blocking

Discarding

不学习MAC地址

不转发用户流量

Listening

Learning

Learning

学习MAC地址

不转发用户流量

Forwarding

Forwarding

学习MAC地址

转发用户流量

3. RSTP改进三

(1) 主动发送BPDU加快收敛

(2) 引入P/A(Proposal/Agreement)机制主动协商端口角色及状态

(3) 引入边缘端口(Edge Port)

不接收处理配置BPDU,不参与RSTP运算,即拓扑发生变化不影响边缘端口流量转发连接主机的端口可以配置为边缘端口边缘端口可以直接从Discarding状态切换到Forwarding状态收到BPDU会变成STP普通端口重新计算生成树,网络发生震荡

注:图为RSTP配置BPDU的Flags字段

二、RSTP报文格式

RSTP报文类型和STP一样也有“配置BPDU”和“TCN BPDU”两种,功能实现基本一致,只不过相关字段上有区别。

1. RSTP的配置BPDU

RSTP的配置BPDU叫做RST BPDU。在BPDU的格式上,除了保证和STP格式基本一致之外,RSTP变化如下:

Type字段为0x02版本号为2Flag字段中间6位由保留变为可用

通过“协议版本号标识”,运行STP的交换机收到该类BPDU时会丢弃。

RSTP配置BPDU帧格式如下:

上图是RSTP BPDU帧格式,包含Flags字段参数说明。

2. RSTP的TCN BPDU

RSTP的TCN BPDU总长度只有4个字节,如下:

字段说明:

Protocol Identifier:协议号为0Protocol Version Identifier:协议版本号为2,表示为RSTPBPDU Type:类型字段均是固定值0x80,表示为TCN BPDU

三、RSTP工作原理

RSTP协议工作原理我们基于以下动画的方式,能更简单清楚地讲明白其工作原理:

RSTP改进一:新增端口角色RSTP改进二:P/A快速协商机制

THE END