首页 > 编程知识 正文

rstp定义了几种端口状态,rstp端口角色

时间:2023-05-05 00:49:59 阅读:220485 作者:4210

1、  STP的不足

 stp的原理:https://blog.csdn.net/weixin_40748006/article/details/80181898

STP要感知gddbb变化需要0-20s的时间,感知到变化后端口变为Forwarding状态需要经过两个Forward delay时间,也就是30s。这样STP要完成整个gddbb的收敛就需要30-50s的时间。收敛时间太长,因此需要一种机制来减少它的收敛时间。也就产生了RSTP快速生成树协议。

2、RSTP报文结构

RSTP与STP报文结构区别主要在协议版本、BPDU类型以及Flag字段上。RSTP协议版本字段值为:0x02,BPDU类型:0x02。主要区别在Flag字段上。STP只利用了Flag字段的0和7位。

RSTP的Flag字段结构

TCA

gddbb变化确认,交换机在收到TCN报文后会发送TCA置1的BPDU报文。告诉下游交换机已经知道gddbb发生变化了,不用再发送TCN了。和STP一样。

 

Agreement

和proposal位一起作用,形成P/A机制,完成端口的快速迁移

 

 

Forwarding

 

 

 

 

Learning

Forwarding

Learning

 

0

0

端口状态为discarding

0

1

学习状态

1

0

处于forwarding时是可学习的,所以无此状态

1

1

Forwarding状态

Port role

00

Unknown

01

Alternate/backup

10

Root

11

Designated

Proposal

和agreement一起作用,形成P/A机制,完成端口的快速迁移

 

TC

gddbb变化通知位,根桥收到TCN后会发送TC置1的BPDU报文,通知其它网桥gddbb发生了变化。

 

3、端口角色

端口角色

端口说明

如何选举

可否直接进行forwarding状态

Backup

备份端口。是指定端口的备份。提供了另外一条从根桥到非根桥的备份链路。

在指定端口选举中,选举失败并且收到的最优的BPDU包的桥ID是自己所在的网桥。

不可以。

Alternate

替换端口。是根端口的备份,提供了从指定桥到根桥的另外一条备份路径。

在指定端口选举中,选举失败并且收到的最优的BPDU包的桥ID不是自己所在的网桥。

根端口故障时,可以迅速替代根端口并且进行forwarding状态。

Edge port

边缘端口。一般用来连接PC或不需要运行STP的下游网桥。

由管理员手动配置。

可以。

简单来说,如果一根网线连接的是两台交换机,那么选举指定端口时失败的端口成为Alternate port。如果一根网线连接的是同一台交换机,那么选举指定端口时失败的端口成为Backup port。

4、端口的快速迁移

  4.1 根端口的快速迁移

      当旧的根端口down掉,不再能转发数据时,新的根端口可以立即迁移到Forwarding状态。当根端口故障时,Alternate端口就可以快速变为根端口并且将状态迁移到Forwarding状态。

  4.2 指定端口的快速迁移 P/A机制

  1、proposing. 表示端口处于discarding或learning状态。端口向下游交换机发送proposal置1的RST BPDU。

  2、proposed。收到指定端口发来的proposal置1的BPDU时,设置成该变量。表示本网段的指定端口希望快点进入Forwarding状态。

  3、sync。当proposed被设置后,收到proposal的端口会为其它端口设置sync变量,并且将所有不是edge port的指定端口变为discarding状态。

  4、synced。当所有端口转换成discarding后设置该变量。并且回复Agreement置1的RST BPUD。

  5、agree。当指定端口收到Agreement置1的RST BPDU并且端口角色是根端口时,设置该变量,设置完成后,状态变为Forwarding状态。

5、根桥如何感知gddbb变化

RSTP感知gddbb变化的标准:非边缘端口进入Forwarding状态。

发现变化的交换机会为其它不是边缘端口的端口启动一个定时器TC while timer(2倍的hello time),并且清空这些端口的mac,这些端口会在TC while timer的时间内向外发送TC置1的BPDU报文。

收到TC置1的BPDU报文的交换机会清空除了收到该报文的端口的其它端口 的mac。并且也启动定时器 TC while timer 向外发送TC置1的BPDU报文。

6、实验

LSW1:

LSW2:

LSW3:

LSW4:

 

2、指定端口的快速迁移

将LSW4的3口shutdown

 

LSW4的4口成为DP,会立刻向LSW3发送Proposal置1的BPDU包(图1)。但是由于LSW3的3口不是RP所以并不会给LSW4发送Agreement置1的包,LSW4的4口会自己由discarding变为learning再变为Forwarding状态(图2),当变为Forwarding状态时交换机会感知到gddbb发生了变化,会发送TC置1的BPDU报文(图3)通知其它交换机。

                      

 

图1

图2

图3

2、           根端口的迁移

AP成为根端口,并且直接由discarding变为Forwarding,并发送TC置1 的BPDU报文。这个过程几乎是瞬间完成的。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。