1、PVST
       PVSTBPDU 的格式和STP/RSTPBPDU  格式已经不一样,发送的目的地址也改成了Cisco 保留地址01-00-0C-CC-CC-CD,而且在VLANTrunk 的情况下PVSTBPDU  被打上了802.1QVLAN 标签。所以,PVST 协议并不兼容STP/RSTP 协议。
2、PVST+
        Cisco 很快又推出了经过改进的PVST+协议,并成为了交换机产品的默认生成树协议。经过改进的PVST+协议在VLAN1  上运行的是普通STP 协议,在其他VLAN 上运行PVST 协议。PVST+协议可以与STP/RSTP 互通,在VLAN1  上生成树状态按照STP协议计算。在其他VLAN 上,普通交换机只会把PVSTBPDU 当作多播报文按照VLAN  号进行转发。但这并不影响环路的消除,只是有可能VLAN1 和其他VLAN 的根桥状态可能不一致。
3、PVST/PVST+的优点:
由于每个 VLAN 都有一棵独立的生成树,单生成树的种种缺陷都被克服了(第一点缺陷:由于整个交换网络只有一棵生成树,在网络规模比较大的时候会导致较长的收敛时间,拓扑改变的影响面也较大。
第二点缺陷:近些年IEEE802.1Q 大行其道,逐渐成为交换机的标准协议。在网络结构对称的情况下,单生成树也没什么大碍。但是,在网络结构不对称的时候,单生成树就会影响网络的连通性)。同时,PVST 带来了新的好处,那就是二层负载均衡。

4、PVST/PVST+的缺陷:
  • 由于每个VLAN 都需要生成一棵树,PVSTBPDU 的通信量将正比于Trunk 的VLAN 个数。

  • 在VLAN  个数比较多的时候,维护多棵生成树的计算量和资源占用量将急剧增长。特别是当Trunk 了很多VLAN  的接口状态变化的时候,所有生成树的状态都要重新计算,CPU 将不堪重负。所以,Cisco 交换机限制了VLAN  的使用个数,同时不建议在一个端口上Trunk 很多VLAN。

  • 由于协议的私有性,PVST/PVST+不能像STP/RSTP 一样得到广泛的支持,不同厂家的设备并不能在这种模式下直接互通,只能通过一些变通的方式实现,例如Foundry 的IronSpan。IronSpan 默认情况下运行的是STP 协议,当某个端口收到

  • PVSTBPDU 时,该端口的生成树模式会自动切换成PVST/PVST+兼容模式。一般情况下,网络的拓扑结构不会频繁变化,所以PVST/PVST+的这些缺点并不会很致命。但是,端口Trunk 大量VLAN 这种需求还是存在的。

Catalyst 系列交换机的MAC 地址池最多只能容纳1024 个地址。交换机按次序分配MAC 地址,第一个MAC 地址分给Vlan1,第二个MAC 地址分给Vlan2,以此类推,可分配地址范围中最后一个MAC 地址分给管理性接口SC0。
如果交换机所拥的MAC 地址少于Vlan的数目,那么交换机将根据MAC地址缩减特性使得MAC地址能够满足Vlan的管理性需要。
MAC 地址如何缩减:在MAC 地址缩减的网络中,对于被保存到生成树BPDU 中的网桥ID,将包含一个附加字段:SystemIDExtension(系统ID 扩展)
正常的网桥ID
网桥优先级(16bit)+MAC 地址(48bit)
MAC 地址缩减后的网桥ID
网桥优先级(4bit)+系统ID 扩展(12bit)+MAC 地址(48bit)
所以在启用MAC 地址缩减后,网桥的优先级就成为了4096+Vlan 编号(MST 编号)。
因此,此时的交换机优先级只能为4096 的倍数:0、4096,8192
PVST/PVST+的配置:
启用STP:Spanning-treevlanVlan 的ID 号
设置 Vlan 的优先级:spanning-treevlanVlan 的ID 号priority 具体数值
设置主根网桥:spanning-treevlanVlan 的ID 号rootprimary(宏命令)
设置辅助根桥:spanning-treevlanVlan 的ID 号rootsecondary(宏命令)
退出:end
在实际情况中可由多台交换机作为备份根桥,Cisco 交换机默认的优先级是32768,使用宏命令后默认的根桥优先级为4096,辅助根桥是8192。如果当前根交换机没有配置为默认的32768,那么宏命令将选择低于当前根优先级值的某个数值。
配置端口开销:spanning-treecost 数值
配置Vlan 开销:spanning-treevlanVlan 的ID 号cost 数值
接口介质速度决定了生成树端口路径开销的默认值(1~200000000),开销值越小越好,开销值相当生成树将根据最低接口优先级来选择进入转发状态的接口。
************************************************************************
从IEEE 的角度来说,只有三种形式的spanning-tree 定义:
1。 STP(802.1D)也就是所说的classicalspanning-tree,大概意思是每2s 发送一个hello,15s  的forwarddelay,20s 的maxage,与vlan 无关,整个bridge 只有一个spanning-tree 实例这些。
这 个协议是RadiaPerlman 为早期的DEC 桥所写,后被IEEE 收容形成802.1D 标准,而在那时,大部分layer2  设备还是以端口数较少的网桥为主,所以没有考虑到端口数较多的layer2switch,随着技术的发展,layer2switch  开始盛行,这就导致了vlan 的盛行,致使802.1D 已经不在适用,因为两台switch 间存在冗余链路不一定就会导致环路,所以Cisco  为了满足用户需求,就对802.1D 进行了扩展,便出现了PVST,它是基于vlan 的,每个vlan 都会有一个对应的spanning-tree  实例。需要注意的是,PVST 在通常状态下只有在defaultvlan1 中才使用untagged 的STP 报文,所以vlan1  的spanning-tree 实例又有一个独立的名称,就是CST,细心的朋友可能已经注意到,很对只支持STP 协议的设备只能与cisco  在vlan1 中进行互操作,就是这个原因了。
2。随着时间的推移,越来越多的人感觉传统 spanning-tree  的收敛时间过长,简直无法接受,特别是Cisco在别出心裁的提出了Portfast,Backbonefast,Uplinkfast等一系列 spanning-tree 特性后,IEEE 不得不对已过时的802.1D  进行修改,便有了802.1W,也就是所说的RSTP,基本就是在802.1D 的基础上添加了几个类似Cisco的特性,对Cisco  来说,为和上一代PVST 区分,便把有这些特性的spanning-tree称为PVST+或RapidPVST.
3。 科技日新月异,人们的要求也越来越高,原本以前被认为是经典的东西,现代人可能感觉他是那么的冗长复杂,PVST 就是一个很好的例子。当年PVST  的设计者可能怎么也没想到,真的会有这样的疯子要在一个交换机上配置成百上千个vlan,这就要求运行相同数目的spanning-tree  实例,这不论从管理上还是spanning-tree的运算上,都是人类和一颗普通的PowerPC  无法承受的,因而便应运而生了802.1S,即MST,这次Cisco 很聪明,为了避免出现类似PVST 这样的尴尬局面(虽然很好,
但无法与众多其它厂家兼容),便在协议研发阶段就将其提交到了IEEE,再联合上Foundry,Extreme,RiverStone 等几个业内定级厂家,很快就把这个协议做出来了,至于这个协议的好处,俄也就不说了,那是相-当-的明显