如果在有冗余链路且有多个VLAN的交换网络中只使用 STP实例,那么在稳定状态中,仍会有一些端口处于阻塞状态不被使用,冗余链路实际上变成了备份链路。
PVST+特性能为每个VLAN创建一个STP实例。通过调整配置可使每个STP实例使用不同的根交换机,阻塞不同的端口。因此,可以用到所有可用链路实现流量的负载分担。
非cisco交换机只支持CST(通用生成树)。网络中只运行一个STP实例,对所有vlan使用一个stp拓扑,因此称为“通用”。虽然只使用一个stp实例能减少stp消息的开销,但无法使用多个stp实例实现负载均衡。
当混用 Cisco 和非 Cisco 交换机构建网络,并使用 802.1Q Trunk 时,仍可以在网络中的 Cisco 交换机部分充分利用多个STP实例的优势.
运行在 Trunk 上的 Cisco PVST+ 使用 VLAN 1 STP 实例与非 Cisco 交换机及其STP进行通信。PVST+ 区域中的VLAN 1 STP实例能够与 CST 区域中的 STP 实现互操作及融合。因此,整个交换网络能够计算出一个无环拓扑。在CST区域中,活跃的无环拓扑与所有VLAN相绑定;在PVST+区域中,活跃的无环拓扑只应用于VLAN 1。PVST+区域中的其他VLAN有各自的PVST+实例。
pvst+除vlan 1外的其他vlan, 会将cst区域作为一个无环共享网段对待。以pvst+ bpdu的不同封装实现:
目的mac:0100. 0CCC. CCCD(普通STP BPDU发往0180.C200.0000)
相应的vlan标记(普通stp不标记)
SNAP封装(普通为无SNAP的LLC封装)
此外每个每个pvst+ bpdu尾部都有一个特殊的TLV记录值用来携带vlan号,称该tlv为端口vlan id tlv(PVID TLV)。
pvst+交换机会分析这个tlv,并与收到这个bpdu的vlan进行对比,以检测本征vlan是否匹配。如此,pvst+ bpdu在隧道中通过cst区域,cst交换机照常泛洪,不做处理。对于非vlan 1的pvst+实例来说,整个交换网交换机络就像是一个由共享网段互连的pvst+区域。通过将pvst+ bpdu放入隧道以便穿越cst区域,cst区域只是连接pvst+区域的无环共享网段。
pvst+上的vlan 1实际上会被特殊对待:vlan 1既发送stp bpdu,也发送pvst+ bpdu。stp bpdu用于 cst 和vlan 1的pvst+交换机计算生成树。pvst+ bpdu能用来检测本征vlan是否匹配,否则会在到达时被忽略。
关于端口处理这些BPDU的过程, access端口只发送与access vlan相关的stp bpdu,access端口必须只收到IEEE BPDU,否则它会通告类型不一致状态。端口所属access vlan所对应的stp实例会处理这些IEEE BPDU。如果是trunk端口上,处理如下:
vlan 1 stp实例会立即处理IEEE格式的BPDU
pvst+ bpdu根据以下步骤进行处理:
1.通过查看PVST+BPDU的802.1Q标记,将BPDU分配给适当的VLAN。若有标记,则将BPDU分配给标记所示的VLAN。若无标记,则将BPDU分配给本征VLAN。
2.检查BPDU中的PVID TLV。若PVID TLV中携带的VLAN与BPDU被分配的VLAN不符,则丢弃此BPDU,并针对有问题的VLAN声明PVID不一致状态。这就是本征VLAN是否匹配的检查规则。
3.凡是PVID TLV中的VLAN与分配的VLAN相同的BPDU,将由对应VLAN的STP进行处理,但VLAN1的BPDU是个例外。因为IEEE BPDU和PVST+ BPDU关于VLAN 1的信息是重复的,且STP总是要处理IEEE BPDU的,而VLAN1的PVST+ BPDU只用来防止VLAN1的本征VLAN不匹配,此后便可丢弃。
 
 
 
如上,cst区域在pvst+看来就相当于一条链路,因为PVST+ BPDU有效地通过隧道穿越了CST区域,所以对于非VLAN 1 PVST+ STP实例来说,CST区域只是一个共享网段。这些共享网段的内部是无环的,它们或是连接着多个PVST+区域,此时PVST+负责消除PVST+区域间有可能残留的环路;或是不为PVST+区域提供传输连通性。PVST+ BPDU会通过CST区域泛洪,但却不被处理。当被转发的PVST+ BPDU到达其他PVST+区域中的第一台Cisco PVST+交换机时,监听0100.0CCC.CCCD组播的交换机会读取并解释这个BPDU。

STP-4-每VLAN生成树和Trunk上的STP的更多相关文章

  1. VLAN配置及Trunk接口配置

    实验拓扑 1.检验连通性,PC2 ping PC3,PC2 ping PC4 ,都能ping 通 2.创建vlan 3.配置access接口 在S1上配置E0/0/2为vlan10和E0/0/3为vl ...

  2. VLAN-3-VLAN Trunk:ISL和802.1Q

      (1)ISL和802.1Q概念       通过使用VLAN Trunk链路,设备可以通过一条链路发送去往多个vlan的流量.为了知道数据帧属于哪个vlan,发送方会添加原始以太网数据帧的头部,这 ...

  3. 配置trunk

    SW1 Switch>en Switch#conf t Enter configuration commands, one per line. End with CNTL/Z. Switch(c ...

  4. H3C交换机配置常用命令(转)

    1.配置文件相关命令 [Quidway]display current-configuration //显示当前生效的配置 [Quidway]display saved-configuration / ...

  5. Cisco基础(六):配置目前网络环境、项目阶段练习

    一.配置目前网络环境 目标: 一家新创建的IT公司,公司位于北京有80多台服务器 目前网络环境使用技术,通过端口映射技术将web服务器发布给Internet: 三层交换:汇聚接入层交换机 默认路由:实 ...

  6. 【转】不同VLAN之间相互通信及VTP、STP、EtherChannel概念

    厘清最后一个概念. 转了网上两个相关帖子: http://www.net130.com/CMS/Pub/Tech/tech_zh/2009_03_12_97386_3.htm http://blog. ...

  7. 局域网安全-生成树攻击-ARP攻击-MAC攻击-VTP攻击-动态VLAN的攻击

    一.MAC layer attacks 1.CAM表的OVERLOAD 第三方设备不断发送变化的MAC地址,填满CAM表,对于后来合法的MAC地址不能学习到从而泛洪,这时攻击者将学习到合法者的数据包. ...

  8. 2.1-VLAN/TRUNK/VTP

    2.1-VLAN/TRUNK/VTP     注意:配置VLAN时要退出VLAN配置模式才会执行 如果VLAN被删除或者shutdown,那么属于这个vlan的接口将被阻塞(灯一直是橙色,变不了绿色) ...

  9. 网络基础知识系列:阐述VLAN和Trunk

    网络性能是影响的效率的重要因素. 大的广播域分割方法,旨在提高网络性能.一个接口上,可是,路由器的LAN接口数量有限,它的主要功能是在网络间数据传输,而不是对终端设备提供网络接入. 訪问LAN的功能还 ...

随机推荐

  1. iOS 开发中的一些注意点(安全、当前语言、时间格式化)

    1.重复运行项目,不重复构建项目(来自Heath Borders) 假如你一直在不停地调试同一个问题,你可以在不重复构建的情况下运行你的APP,这样:“Product>Perform Actio ...

  2. LinuxMail发送邮件

    使用Mail命令发送邮件: 可如下所示 echo "hello,echo"|mail -s "echo" justin@51cto.com #!/bin/bas ...

  3. UVa 11572 唯一的雪花(优化策略)

    题目描述: 输入一个长度为n(n<=1000000)的序列A, 找到一个尽量长的连续子序列A(L)-->A(R),是的该序列中没有相同的元素. 输入: T:代表组数 n:代表有n个数 这一 ...

  4. 分布式session之token解决方案实现

    基于令牌(Token)方式实现Session解决方案,因为Session本身就是分布式共享连接 用token代替session 废话不多说,看项目: pom.xml <project xmlns ...

  5. angular之两种路由

    安装angular npm install -g @angular/cli ng new myapp ng g component componentName 自带路由 引入:angular-rout ...

  6. Gulp简单应用

    1.创建一个工程,在webstorm控制台   cnpm install --save-dev gulp      cnpm install --save-dev gulp-concat        ...

  7. html5 滚动小球

    <html> <head> <meta charset="utf-8"/> </head> <body onkeydown=& ...

  8. python 数据可视化

    一.基本用法 import numpy as np import matplotlib.pyplot as plt x = np.linspace(-1,1,50) # 生成-1到1 ,平分50个点 ...

  9. SPOJ CIRU The area of the union of circles (计算几何)

    题意:求 m 个圆的并的面积. 析:就是一个板子题,还有要注意圆的半径为0的情况. 代码如下: #pragma comment(linker, "/STACK:1024000000,1024 ...

  10. 解决“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”

    问题描述:远程访问该数据库(客户端同样是Oracle11g)提示“System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本”. 解决的办法: 1.一定要关闭Win ...