5.2生成树支持
802.1D生成树是本质上是跨芯片的功能,因为CPU始终位于交换机的外部。它支持在设备中通过外部的CPU来运行实际的生成树算法。通过下面的方式来支持生成树:
1、BPDU帧进入网络(或提供商)(外部交换机)端口时的探测。在设备中这些帧被称为管理帧。他们通过载入BPDU的多播地址(01-80-C2-00-00-00)到带有管理EntryState(条目状态)指示的地址数据库来探测它或者通过使用在管理启用寄存器的Rsvd2Cpu位(全局2偏移量0x03)来探测它。
2、BPDU帧通过将阻塞端口隧通来传输。阻塞的端口通过端口的PortState位(2.1.1节和2.2.3节)来控制。如果端口处于阻塞的状态,则所有帧都会被丢弃除了按上面步骤的帧它的目的地址被认为是管理地址。
3、BPDU帧的重定向。BPDU帧进入网络或提供商端口时仅会去CPU,即使它们是多播帧。这项任务在上面的BPDU帧检测阶段通过将BPDU的组播地址直接映射到CPU端口,或映射到要用来将这些帧级联到CPU的端口(这是在加载地址时用DPV位的值设置的),或通过设备的CPUDest寄存器(Global 1 offset 0x1A)来处理。级联的BPDU帧将从第一个带To_CPU DSA标签出去。
4、源端口信息。CPU需要知道BPDU帧的物理源端口。在帧的To_CPU DSA标签里提供信息,它们是发送到CPU的。
5、BPDU帧的传输。CPU需要可以传输BPDU帧从交换机的任意物理端口出去。在这些帧传输到交换机(4.3节)之前CPU需要将From_CPU DSA标签的数据放入到这些帧中,这在控制中是被支持的。设备映射表(全局2偏移量0x06)被用于映射From_CPU的帧。而它对于本地设备(作为在DSA标签的Trg_Dev字段的标记)出正确的端口去获取它并到下一个设备来说并不是目的地。如果下一个设备接收到了From_CPU帧也不是最终的地址那么将重复处理直到帧获取到目标设备。一旦有,它会发送一个From_CPU帧从目标端口(在DSA标签的Trg_Port位被标记了)出去,假如目标端口网络端口那么将会移除DSA标签。
CPU和设备硬件可以支持802.1D生成树,也可以用于对新链路执行更简单的桥的一路检测。唯一的区别是运行在附属CPU上的软件。
NOTE:
1、 为了使生成树正常工作,所有的设备到设备和设备到CPU的接口都必须配置成DSA标签模式(FrameMode在端口控制中-偏移量0x04).
2、 每个设备的CPUDest寄存器(全局1偏移量0x1A)必须配置成将To_CPUDSA标签指向CPU的。
3、 同样的,如果对于本地设备来说该帧不是目的地,则设备映射表(全局2偏移量0x06)必须被配置成映射From_CPU DSA 标签帧到正确的DSA端口出去是为了去获取帧的正确的设备。
PS:普通帧在生成树中会被阻塞端口阻塞但是管理帧不会那么它的多播地址是(01-80-C2-00-00-00)那么作为BPDU是可以通过隧通阻塞端口来传输。
交换机笔记5.2
最新推荐文章于 2022-08-23 14:58:57 发布