文档适用产品型号:XCM8806、XCM8810
文档说明
本文档对于STP中关键概念作出说明,通过对这些概念的描述与说明将有助于用户明白XCM8800交换机STP的构成,同时也对PVST+兼容性、STP规则与限制进行翻译。另外文档中还涉及到部分命令配置方式与说明。
如果文档中有与<>不相兼容文字,请以手册内容为准,更多关于XCM8800交换机的STP内容,请参考手册中从538页开始介绍的STP。
生成树(STP)概述
在交换机上启用生成树(STP)功能可以使网络(以交换机为主的园区网)具有冗余能力。它通过禁用交换机的一部分的端口以达到数据包在二层网络中正常的数据传输、防止交换机环路与网络风暴,STP属于802.1D标准的一部分,大部分的生产厂商都首选标准的802.1D协议作为交换机的STP功能特性中的一部分。
XCM8800交换机同样也支持到802.1D的新旧版协议(1998年版与2001年版),同时也支持有RSTP,MSTP,及NETGEAR私有的EMISTP特性;兼容第三方的PVST+等特性。
XCM8800的生成树域(STPD,以下都简称为STPD)
交换机实际上可以划分为多个的虚拟网桥,每一个虚拟网桥可以运行一个独立的生成树实例。每个生成树实例就称为STPD,每个STPD有属于它本身的根桥和活动路径,在建立STPD后,就可以将一个或多个的VLAN分配到域中,实现生成树的正常启用。
一个物理性的端口可以属于多个STPD。而一个VLAN又可以跨多个STPD。所有属于同一个STPD的VLAN使用同一个生成树。
建立STPD,需要使用到以下的命令:
create stpd
删除STPD,需要使用到以下的命令:
delete stpd
成员VLAN(Member VLANs)
在将VLAN加入到STPD中时,XCM8800交换机会将VLAN成员分为两种不同的VLAN,分别是载体VLAN(carrier vlan)和受保护VLAN(protected vlan)。
载体VLAN(carrier vlan)
一个载体VLAN定义了STPD的作用域,包括了STPD中的已配置到VLAN的物理和逻辑接口。STP在该VLAN中会传输已封装好的的BPDU数据包,使交换机的STP生效。所以一个STPD只能有一个载体VLAN。
如果配置NETGEAR私有的EMISTP或PVST+,STPD的ID必须和载体VLAN的ID一样。
如果配置802.1D,NETGEAR建议将STPD的ID和载体VLAN的ID配置为一样。
如果配置多生成树(MSTP),则不需要配置载体VLAN。
受保护VLAN(protected vlan)
受保护VLAN是STPD中的除载体VLAN的其它VLAN成员,当其加VLAN入到STPD时,它根据载体VLAN的端口状态受到STPD的作用,在受保护VLAN内,将不会产生、传送、接收BPDU数据包。受保护VLAN可以加入到多个STPD,但任何一个端口只可属于一个STPD, 如果配置多生成树(MSTP),所有STPD中的VLAN都是受保护VLAN。这些VLAN都不会产生、传送、接收BPDU数据包。它们的作用域将受到其它的一些STP状态与因素所影响。
STPD模式 (STPD MODE)
802.1D----基本生成树模式
802.1W----快速生成树模式(RSTP)
MSTP ----多生成树模式
配置STPD模式,需要使用到以下命令:
configure stpd mode [dot1d | dot1w | mstp [cist | msti ]]
BPDU 封装模式
BPDU的封装模式与生成树模式不同,可以在定义STPD模式的同时也定义BPDU的封装模式,例如:当STPD配置为802.1W模式后,可以再将BPDU的封装模式配置为接收PVST+的数据包。因为BPDU模式中,XCM8800支持第三方厂商的PVST+的封装模式。
如果配置STDP处于MSTP模式时,默认会使用802.1D的BPDU封装模式,请不要更改BPDU的封装模式,以确保MSTP的正常运行。
802.1D----基本生成树封装
EMISTP----NETGEAR私有多实例生成树封装
PVST+ ----第三方厂商基于每VLAN生成树封装
为STP端口配置BPDU封装模式,需要使用到以下命令:
configure stpd ports mode [dot1d | emistp | pvst-plus]
基于每个STPD配置默认的BPDU封装模式,需要使用到以下命令:
configure stpd default-encapsulation [dot1d | emistp | pvst-plus]
这条命令将修改XCM8800交换机对于STP的默认BPDU配置(默认情况下,在STPD S0中使用dot1d封装,即802.1D;在其它STPD中使用NETGEAR私有的emistp封装)。
STPD识别ID(STPD Identifier,以下简称:StpdID)
一个StpdID用于识别一个STPD,当配置STPD同时可配置StpdID,已配置到一个STPD的载体VLAN不能属于另一个STPD。如果一个STPD中有端口运行EMISTP或PVST+(封装模式),在此情况下,将需要手动配置有一个StpdID且StpdID必须与VLAN的ID一致。当所有的端口都运行在802.1D模式情况下,则可不一致。
STP状态
每个加入到STP的VLAN中的端口,都有相应的状态,分别是
1、阻塞 (Blocking)
2、监听 (Listening)
3、学习 (Learning)
4、转发 (Forwarding)
5、关闭 (Disabled)
关于五种状态的描述与转换,请参考手册的相关部分,此处不详细说明。
绑定端口到STPD
绑定端口分两种模式:手动和自动
手动绑定可以使用以下两条命令:
configure stpd add vlan ports [all | ] {[dot1d | emistp | pvst-plus]}
此命令在STP中加入VLAN及端口,在配置STP时会更加常使用到。
configure vlan add ports [all | ] {tagged | untagged} stpd {[dot1d | emistp | pvst-plus]}
此命令是将端口同时配置到VLAN和STPD中,在配置VLAN时已考虑到加入STP的性能,两条命令效果差别不大。第一条命令更常用。
删除端口绑定需要使用以下命令:
configure stpd delete vlan ports [all | ]
注意:如果删除载体VLAN或其中的端口,受保护VLAN或其中的端口也将被删除。
如果删除的是受保护VLAN或其端口,只有该VLAN或其中的端口会被删除。
自动端口绑定需要使用以下命令:
enable stpd auto-bind vlan
此命令更常用于配置XCM8800交换机,其意义在于加入到VLAN中的端口自动就加入到STPD中。默认自动绑定特性在用户配置的STPD中关闭,而在STPD S0中默认开启。
关闭自动端口绑定需要使用以下命令:
disable stpd auto-bind vlan
PVST+兼容性(翻译,不涉及部分请参考手册)
运行PVST+的交换机产品已被用户接受多年,为支持使用PVST+的STP的配置,XCM8800有一个可选的封装模式PVST+。
PVST+的BPDU封装模式
如上所述,当配置BPDU封装模式为PVST+时,它兼容第三方运行PVST+的交换机,运行在这个模式下的STPD和VLAN有一对一的关系,同时能发送与处理PVST+格式的BPDU数据包。
这种封装模式支持在802.1D和802.1W两种STPD模式下工作。
STPD VLAN的关联
每个加入到PVST+的VLAN必须在分离的STPD中,VLAN ID必须与STPD的ID相同,因此,在PVST+的中,PVST+受保护VLAN是不可分割的。而非PVST+受保护的VLAN可以随意加入到STPD中,不受限制。
本征VLAN(Native VLAN)
在NETGEAR的PVST+中,由于Native VLAN与Default VLAN只在物理端口发送和接收不打标签的包,所以,Native VLAN必需等同于Default VLAN。第三方的PVST+设备是以一种特殊的方式在VLAN1中发送数据包。因此,XCM8800对于这种情况不予支持,当交换机收到VLAN1 的数据包,将直接丢弃。
当PVST+的实例关闭时,使用不同格式的PVST+数据包会产生问题。如果STPD中也包括有不在PVST+状态的端口,则泛洪的数据包将不能兼容这些端口。连接到这些端口上的设备也不能识别出泛洪的数据包。
STP的规则与限制(翻译):
以下部分对STP进行汇总规则与限制:
- carrier VLAN必须遍及所有需要STP的端口。(不适用于MSTP)
- StpdID必须和carrier VLAN 的ID相同,carrier不能与STPD分离。(不适用于MSTP)
- Default VLAN不能与STPD分离,如果VLAN穿过多个STPD,则VLAN需要打上标记。
- 运行在PVST+模式时,一个STPD只能带一个VLAN,stpdID必须和carrier VLAN 的ID相同,另外,PVST+的VLAN不能与STPD分离。
- Default VLAN(当封装有PVST+的端口)时,必须等同于native VLAN(当封装有PVST+的端口)。
- 如果一个STPD包括PVST+与非PVST+端口,那么必须启用STPD。如果STPD是关闭状态,那么BPDU数据包将以进入STP端口的格式泛洪,这时可能与不与其它相连接的设备兼容。
- 802.1D端口需要打untaged标记,EMISTP/PVST+端口需要在carrier VLAN中打tagged标记。
- 一个有多个VLAN的STPD只能包含那些属于同一个虚拟路由器的VLAN。
- MSTP和802.1D的STPD不能共享一个物理端口。
- STP不能配置在镜像目标端口和软件控制的冗余端口。
- 一个交换机只能配置有一个MSTP区域。
- 在一个MSTP环境中,一个VLAN可以属于多个MSTI中之一。
- 一个VLAN只能属于一个MSTP域。
- VLAN不需要关联到CIST。
- STP和网络登录也需要遵从一些规则,此处不再详述,这些规则请参考手册571页。
序号 no. |
日期 date |
跟进人 |
摘要 summary |
1 |
2013-10-28 |
Sam Li |
文档创建 |