【IT168 专稿】交换技术是网络技术的重点,我们网络频道已经为读者进行了多次报道。因为其重要,故我们再次进行系统的整理,以供初学者参阅。
交换技术应用连载:交换技术的重要性
交换技术应用连载:构建MAC地址表
交换技术应用连载:广播风暴问题解决
交换技术应用连载:802.1W生成树
交换技术应用连载:虚拟局域网技术
802.1W生成树
802.1D生成树需要50秒的时间才能把一个处于阻塞状态的端口打开使其工作,这大大影响了用户的通信,为此而开发的快速生成树协议(RSTP-Rapid STP)对这种情况做了改善。
快速生成树协议标准是IEEE802.1W,是对IEEE802.1D的一个发展,所以802.1D中的主要术语和参数在802.1W中都保留不变,使得熟悉IEEE802.1D的用户能够很快学会使用快速生成树。运行快速生成树协议的交换机端口也可以与运行802.1D协议的交换机端口在同一网段上使用,但不足之处就是它将失去"快速"特性。802.1w最终计算出的拓扑和802.1d是完全一样的,主要是节约端口状态转变时所需时间(不再有转发延迟计时器)。另外802.1W并不是在所有交换机平台上都支持的,并且也有操作系统版本的要求,请读者使用时查阅相关产品文档。
1. 端口状态
802.1d定义了4种端口状态:倾听、学习、转发、阻塞。从运行的观点来看,处于阻塞状态的端口和处于倾听状态的端口没什么区别,它们都不转发数据,也不学习地址,不同之处在于802.1d给它们指派的角色(role)不同。同理,一旦一个端口处于转发状态,也无法区分它是根端口还是指定端口。RSTP把端口状态和端口角色区分开来解决了这些问题。
802.1w定义了3中端口状态,对应与3中可能的运行状态。802.1w把802.1d定义的disable、blocking、listening状态合并为discarding状态。另外两种状态是learning和forwarding。表11-1列出了802.1d和802.1w端口状态的比较。
802.1d端口状态 | 802.1w端口状态 | 在活动拓扑中吗? | 学习MAC地址吗? |
Disable | Discarding | No | No |
Blocking | Discarding | No | No |
Listening | Discarding | No | No |
Learning | Learning | No | Yes |
Forwarding | Forwarding | Yes | Yes |
表 11-1 802.1d和802.1w端口状态比较
802.1d端口状态 802.1w端口状态 在活动拓扑中吗? 学习MAC地址吗?
Disable Discarding No No
Blocking Discarding No No
Listening Discarding No No
Learning Learning No Yes
Forwarding Forwarding Yes Yes
2. 端口角色
802.1w定义了4种端口角色,根端口角色和指定端口角色保持不变,和802.1d中定义的含义相同。RSTP为了快速收敛,在拓扑变化中一旦端口被选举为新的根端口,该端口立即进入转发状态,不再经由listening、learning阶段。802.1d中定义的blocking角色在802.1w中被分为两种角色,分别是替代端口角色(alternate port role)和备份端口角色(backup port role)。
替代端口角色是指能够收到其他交换机BPDU的一个discarding端口,一旦该交换机的根端口失效,该端口立即进入转发状态而替代失效的根端口建立与根桥的连接,不需要等待30秒的转发延迟。如图11-13所示,交换机A的下面的端口可以收到交换机B转发的BPDU,且当前为discarding状态,所以成为替代端口角色。一旦A的根端口失效,它将立即转变为转发状态。
图 11-13 替代端口
备份端口不同于替代端口的是备份端口不负责根端口的失效并和被备份的端口处在同一台交换机上,为同网段的指定端口做备份。备份端口是指能收到同一台交换机BPDU的discarding 端口。如图11-14所示,交换机B的右侧端口作为当前指定端口的备份端口。
图 11-14 备份端口
RSTP计算生成树的最终拓扑使用的选举原则和802.1d使用的原则相同(比较交换机ID和路径花费等值),通过定义不同的端口状态和端口角色把端口所处的状态及其在RSTP中的功能角色二者分开,能够提供更多的信息,使拓扑收敛更快。
3. 边缘端口和链路类型
快速收敛是RSTP的重要特性。为了达到端口快速收敛目的802.1w定义了另外两个新参数:边缘端口(edge port)和链路类型(link type)。
(1)边缘端口:直接与终端主机(end station)相连的端口称为边缘端口。由于这种端口在网络中不会产生环路,所以它们可以直接进入转发状态而跳过倾听和学习阶段。这种端口在拓扑变化时也不会产生拓扑变化的信息,但是,一旦收到BPDU它将失去边缘端口的属性,成为普通的生成树端口。边缘端口可以使用portfast参数设置。
(2)链路类型:运行在全双工模式下的端口被认为是点到点端口,它们所形成的链路称为点到点链路(point-to-point link)。RSTP可以在点到点端口上通过使用协商机制获得快速转换到转发状态的特性。相对于点到点链路,半双工模式下的链路看作是共享链路(shared link)。