STP的不同版本

STP有多个不同的版本,不同版本的STP在操作和运行上有所不同,但在选择根桥、根端口、指定端口的规则上都是一样的;STP的版本有:CST、RSTP、PVST+、MSTP;下面分别介绍各版本的运行过程 :

CST—————Common Spanning Tree

CST的协议号有802.1D,如果交换机运行在CST的模式下,不管交换机中有多少个VLAN,所有的流量都会走相同的路径 。

RSTP—————Rapid Spanning Tree Protocol

RSTP称为快速生成树,协议号有802.1W;在运行CST时,接口的状态有blocking  listening disabled learning forwarding几种状态,其中blocking listening disabled状态是不发送数据的,在RSTP中,RSTP将这三种状态归为一个状态,那就是discarding状态,所以在RSTP中,接口的状态只有三种,分别是discarding learning forwarding;

在CST模式中,如果根交换机失效了,需要等待50S的时间才可以启用block端口;而RSTP只需要6S的时间便可以发现根交换机失效,一旦发现根交换机失效,会立刻启用discarding端口。

PVST+——————Per-vlan Spanning Tree plus

PVST+是cisco私有的协议,之前有一个PVST,但由于PVST只支持ISL的trunk,为了扩展PVST支持IEEE 802.1Q,所以开发出了PVST+协议;PVST+是基于CST运行的,运行PVST+的交换机会对每个VLAN进行一次STP计算,并且每个VLAN的STP信息是单独保存的;PVST+会在每个VLAN进行不同的STP计算,称为STP 实例(instance)。所以可以控制每个VLAN流量走不同的路径。

PVST+最多只支持128个实例 。

Rapid PVST+

Rapid PVST+就是具有RSTP特性的PVST+

MSTP————Mutiple Spanning Tree Protocol

MSTP的协议号有802.1S,因为在交换机存在多个VLAN时,CST将所有的VLAN的流量放在单链路上进行传输,而PVST+可以为每一个VLAN进行不同的STP运算,可以控制每个VLAN的流量的走向,但是如果交换机存在多个VLAN,PVST为每个VLAN运行一个STP实例,这样会对交换机的负载会过大;在这些VLAN中,有些VLAN是走相同的路径的,为了节省设备资源的开销,可以将这些走相同路径的VLAN放到一个实例中,而交换机就可以为多个VLAN只维护这一个STP实例即可

MSTP就是为了将要进行相同STP运算的VLAN映射到一个STP实例中,从而节省交换机资源的开销。

MSTP是运行在RSTP基础上的协议,所有它也具有RSTP快速收敛的特性;RSTP是随着MSTP的开启而开启的;但MSTP最多只支持64个STP实例,但每个实例中的VLAN数量是没有限制的;默认情况下,所有VLAN都属于实例0中。

MSTP还需要通过分区域管理,即region,交换机要在同一个region中进行相同的stp运算,必须region name和region number一致;

一个VLAN只能映射到一个实例,一个网络可以存在多个MSTP revision,便于各自独立。

Extend System ID

默认情况下,所有交换机的优先级为32768,但在开启了extend system id的情况下,交换机的优先级不再是32768,而是32768加上VLAN ID。

 

拓扑变更

当网络中的链路变化时,会要重新进行STP计算。但在默认情况下,网络中只有根桥会发送BPDU,这个BPDU称为configuration BPDU;而非根交换机只有接收configuration BPDU的权限。当非根交换机检测到链路发生变化时,会通过根端口向根交换机发出一个Topolopy change BPDU(TCN BPDU)。如果接收者不是根交换机,必须回复一个确认消息,这个消息是是一个设置了TCA位的BPDU,然后再从自己的根端口向根交换机发送TCN BPDU,直到根交换机收到为止;当根交换机收到TCN BPDU时,需要发送一个设置了TC位的BPDU来回复该TCN BPDU。

在配置STP时,根桥的优先级、端口的优先级、hello、max-age、forward delay时间都可以手工修改,根桥的优先级必须是4096的整数倍,但不能小于1;端口优先级必须是16的整数倍。

链路的全双工模式和半双工模式在STP中是被分为不同的链路类型的,如果是全双工模式叫做point-to-point,如果是半双工模式可以通过spannning-tree link-type point-to-point手工修改

 

你可能感兴趣的:(CST,PVST,mstp)