最新消息:

生成树加速之RSTP

Cisco admin 3898浏览 0评论

生成树加速之RSTP        原创:wildlee

在拓扑发生改变的时候STP的收敛时间要用30s到50s,对于一些敏感的网络应用,这种情况难以让人接受。为了使网络拓扑发生改变能够更快的收敛从而转发数据,必须使用一种新的技术。针对此情况RSTP技术而生,其IEEE标准为802.1w。RSTP技术并非一种新的技术,而是对原有的STP技术进行了修改与补充.RSTP可以与STP相兼容,但是会失去RSTP快速收敛的特性。STP端口状态的切换必须被动的等待计时器的超时。而RSTP端口状态的切换却是一种主动的协商。 STP中的非根网桥只能被动的中继BPDU。而RSTP中的非根网桥对BPDU的中继具有一定的主动性。

RSTP端口角色

根端口[root port]

继承了STP中的根端口这一角色与选举规则。

指定端口[Designated Port]

继承了STP中的指定端口这一角色与选举规则。

替代端口[Alternate Port]

非根网桥上的具有到达根网桥次佳路径成本的端口或者是被对端交换机发出的更优的BPDU抑制的端口。该端口提供了到根网桥的替代路径。

备份端口[Backup Port]

如果一个网段的指定网桥有多个端口连到这一网段,其中Port ID最小的端口成为指定端口,次小的端口成为备份端口。该端口提供了指定端口的备份,一旦指定端口失效,备份端口立即转变为Forwarding状态。 [现在交换网络中基本没有了备份端口,备份端口产生条件是一条线路在交换机上打环或是两个端口同时连接到集线器]

边缘端口[Edge Port]

此类端口连接到终端设备,该端口不会造成二层环路,配置为此类型端口接口up后直接过渡到转发状态,端口收敛时间是毫秒级的。而在STP中连接终端的端口也要经过30S才可以转发数据,这是一个RSTP重要特性。但收到BPDU则会放弃快速收敛的特性进行STP的正常选举和收敛。

链路类型

在RSTP中还有链路类型这一概念,其工作于半双工端口被分类为共享端口,而工作于全双工的端口被分类为点到点端口。点对点链路具有快速过渡特性,由于现在交换机都为全双工,故不做重点在细说。

 

RSTP端口状态

丢弃状态[Discarding]

接受发送BPDU,不转发用户流量也不学习MAC地址

学习状态[Learning]

接受发送BPDU,不转发用户流量但是学习MAC地址

转发状态[Forwarding]

接受发送BPDU,既转发用户流量又学习地址

 

RSTP报文结构

RSTP报文继承了STP报文结构,但是修改了部分字段。RSTP协议号字段为2,版本字段为2. 另一个变化是在Flag字段,把原来保留的中间6位使用起来。

端口角色

00 未知

01 Alternate / Backup

10 根端口

11 指定端口

 

RSTP的P/A协商快速收敛机制

首先,通过对交换机之间交互的配置BPDU进行比较选出根网桥、根端口和指定端口以及阻塞端口等角色,从而达到在物理冗余网络中避免数据转发循环的目的。 在STP中,当一个端口被选举成为了指定端口之后,该端口还要等待至少一个Forward Delay(Learning)时间才会迁移到forwarding状态。 在RSTP中,被选举为指定端口的端口会先进入Discarding状态,然后马上通过Proposal/Agreement协商机制快速的进入Forwarding状态。这种机制必须在点到点链路上(全双工)使用。 RSTP正是通过BPDU中的建议位与回应位来进行主动协商,从而保证RSTP协议的快速收敛。RSTP到底是如何主动协商的呢,我们接下来看一下RSTP的P/A协商,RSTP采用了分段收敛机制。

RSTP的P/A协商过程

1. 当一个网桥的指定端口进入Discarding或Learniing状态时,由这个端口发送出去的BPDU报文的Proposal位被置位。

2. 收到Proposal位置位的BPDU的网桥,首先检查收到这个BPDU的端口是否为根端口,如果是,则要执行SYNC操作。对于备份端口,端口状态不变,对于边缘端口,端口状态不变,对于指定端口,端口状态变为Discarding。

3. SYNC操作完成,从根端口发送Agreement 位置位的BPDU出去,通知对端的指定端口可以立即转为Forwarding状态。

4. 进入到Discarding状态的端口继续与下游网桥进行P/A协商。

 

RSTP拓扑变更

在RSTP中,只有当非边缘端口进入转发状态的时候才能导致拓扑变更 。拓扑一但变更,RSTP采用TC置位的配置BPDU来加快网络中各个交换机MAC收敛:

1. 本交换机的所有非边缘指定端口及根端口启动一个TC While Timer,该计时器值是Hello Time的两倍。这个时间也是通知到全网交换机网络拓扑变更所需的时间。

2. 在这个时间内,交换机清空这些端口上学来的MAC地址;同时,由这些端口向外发送TC置位的BPDU。一旦TC While Timer超时,则停止发送TC BPDU。

3. 收到TC BPDU的交换机会清空所有端口(收到TC BPDU的端口除外)学来的MAC地址。然后也为所有自己的非边缘指定端口和自己的根端口启动TC While Timer,重复上述的过程。

注意:TC是在发现拓扑结构改变以后再发出的,也就是说STP的网络实际上已经稳定了。TC的作用只是刷新MAC地址表而已。

 

RSTP配置

spanning-tree mode mstp | rstp | stp

全局下配置生成树模式

spanning-tree link-type point-to-point | shared

接口模式下配置链路类型

spanning-tree portfast default

全局模式下配置所有接口为边缘端口

spanning-tree portfast disable

在特定接口下禁用边缘端口特性

 

wildlee博客

转载请注明:爱开源 » 生成树加速之RSTP

您必须 登录 才能发表评论!