目录

简介

先决条件

要求

使用的组件

规则

背景信息

VLAN分配失败

问题说明

建议

以错误顺序调配电路的解决方法

电路配置无效

场景 1

场景 2

场景 3

点对点未缝合电路

生成树分配显示

相关信息

简介

本文档阐明了一些生成树规则，并介绍了这些规则对VLAN分配的影响。本文档并不打算成为ONS 15454上生成树和以太网电路调配的完整指南。相反，本文档：

- 解释导致某些VLAN分配失败的原因。

- 提供可用于更好设计网络的建议。建议使您能够在规划和实施电路时考虑生成树限制。

- 建议在修改或创建电路时遇到生成树限制时的解决方法。

先决条件

要求

Cisco 建议您了解以下主题：

- Cisco ONS 15454

- 生成树协议 (STP)

使用的组件

本文档中的信息基于以下软件和硬件版本：

- Cisco ONS 15454版本4.6.x及更高版本

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

生成树算法(STA)的主要功能是减少冗余链路在桥接网络中产生的环路。当STP检测到网络主机之间的多条路径时，STP会阻塞端口，直到只存在一条路径。

STA默认在ONS 15454的光纤接口上启用。您也可以在以太网卡的前端端口上配置STA。

如果不遵守某些VLAN分配限制，则ONS 15454上的生成树规则不允许创建新电路或修改现有电路。但是，这些规则不会阻止可能导致网络设计不当的某些电路配置。在设计网络时，必须牢记这些配置。

VLAN分配失败

问题说明

ONS 15454上的生成树软件在Timing， Communications and Control(TCC)上运行，该TCC是共享资源。

注意：本文档一般使用TCC来指代卡的所有变体。

每个节点最多可以有八个生成树实例。为了将每个节点的生成树实例数量降至最低，可以基于电路而不是VLAN来映射生成树实例。电路只能映射到一个生成树实例。您可以为电路分配一组VLAN。

ONS 15454软件还支持以下功能：

- 自动生成生成树实例

- VLAN部分重叠的电路

- 折叠生成树的设施

为了支持这些功能，以及由于您基于电路映射生成树实例，在创建或修改电路时，这些检查适用：

- 新电路或已修改电路的VLAN集必须与其他现有电路的VLAN集匹配。

- 如果新电路或已修改电路的VLAN集与现有电路的VLAN集重叠，则两个电路都使用相同的生成树实例。

- 如果新电路或已修改电路的VLAN集与运行相同生成树的其他现有电路的VLAN集重叠，则所有电路都使用相同的生成树实例。

- 如果新电路或已修改电路的VLAN集与运行不同生成树实例的其他现有电路的VLAN集重叠，则VLAN分配将失败。

表1显示了成功分配VLAN的示例：

表1 — 成功分配VLAN

电路

VLAN集

备注

生成树实例

C1

10 、20

新生成树实例

STP 1

C2

30

新生成树实例

STP 2

C3

20 、40

由于20与C1中的20匹配，因此生成树实例与C1相同。

STP 1

C4

30 、50

由于30与C2中的30匹配，因此生成树实例与C2相同。

STP 2

C5

60

新生成树实例

STP 3

C6

30、50、70

30和50匹配C4中的30和50，与C4的生成树实例相同

STP 2

表2列出了VLAN分配失败的简单案例：

表2 - VLAN分配失败

电路

VLAN集

备注

生成树实例

C1

10

新生成树实例

STP 1

C2

20

新生成树实例

STP 2

C3

10 、20

10匹配C1中的10,20匹配C2中的20。C1和C2属于不同的生成树实例。因此，VLAN分配失败。

失败

第二个示例中的VLAN分配失败，因为C3与C1和C2的VLAN集匹配，但C1和C2运行不同的生成树实例。

当VLAN分配在电路创建期间失败时，会出现“VLAN/生成树违规”错误(请参见图1)。

图1 - VLAN/生成树违规

同样，当您尝试编辑电路时，当VLAN分配失败时，会显示错误消息(参见图2)。

图2 — 无法分配VLAN集

建议

由于问题说明部分中提到的限制，请非常小心添加具有重叠VLAN集的电路的顺序。为了以后避免限制，思科建议您规划VLAN分配，以便首先添加具有较大VLAN集的电路，这些电路有较高的重叠概率。这样，如果随后添加一个设置了重叠VLAN的电路，则电路会折叠为同一生成树。

请考虑表2中的示例。Cisco建议您先调配C3，然后调配C1和C2。或者，您可以按照C3-C2-C1的顺序调配电路，具有相同的效果。详细信息见表3。

表3 — 调配电路的推荐顺序

电路

VLAN集

备注

生成树实例

C3

10,20

新生成树实例

STP 1

C1

10

10匹配C3中的10，与C3的生成树实例相同。

STP 1

C2

20

20匹配C3中的20，与C3的生成树实例相同

STP1

将生成树应用到以太网卡的前端端口时，同样的逻辑适用。

以错误顺序调配电路的解决方法

当您需要修改未按建议顺序调配的电路时，请使用此解决方法以避免VLAN分配错误：将幻像VLAN分配给现有电路。

幻像VLAN是指未使用的不传输流量的VLAN。添加幻像VLAN会强制生成树折叠到同一实例中。请仔细考虑网络设计，确保不会错误地阻止任何跨度。根据网络的复杂性和设计，流量命中有时不可避免。

一个典型的示例是“哑铃”场景，其中两个VLAN必须折叠到同一生成树中。在哑铃场景中，使用线性配置将两个环与两个VLAN（例如V10和V20）连接。为避免环路，在添加连接两个环的电路之前，请确保每个节点上的电路折叠到相同的生成树中。

图3 — 哑铃场景

例如，假设节点1上的初始VLAN分配如下所示：

- C1:V10 STP 1

- C2:V20 STP 2

以下是可能的解决方法：

1. 将幻像VLAN(V99)添加到C1。

- C1:V10、V99 STP 1

- C2:V20 STP2

2. 将幻像VLAN(V99)添加到C2。

- C1:V10、V99 STP 1

- C2:V20、V99 STP 1

3. 添加带VLAN V10和V20的新电路C3。

1. C1:V10、V99 STP 1

2. C2:V20、V99 STP 1

3. C3:V10、V20、V99 STP1

4. 从C1和C2删除幻像VLAN。

1. C1:V10 STP 1

2. C2:V20 STP 1

3. C3:V10、V20 STP1

图3表示最终的VLAN拓扑。

电路配置无效

成功创建或修改电路意味着VLAN分配通过每电路生成树映射规则，但不保证电路配置有效。即使您折叠生成树，也无法解决设计不当的网络。以下是解释这一点的一些场景。

场景 1

第一种场景由两个节点（节点1和节点2）组成，两个电路是C1和C2。电路C1承载VLAN V10和V20，电路C2承载VLAN V20(请参见图4)。V20域中存在环路，但V10域没有环路。但是，其中一个跨段会被阻塞，因为电路会折叠为一个生成树。以下是决定阻塞哪个跨段的因素：

- 后端端口的MAC地址

- 电路大小

- 电路创建顺序

如果电路C1碰巧被阻塞，则V10流量不会流动。因此，此网络设计在生成树限制下无效。

图4 — 配置无效：场景 1

场景 2

第二种方案由两个节点（节点1和节点2）以及三个电路C1、C2和C3组成。在此，您按正确顺序创建电路(请参阅表2)，以便电路调配成功，并且所有电路都位于同一生成树中。电路C1承载VLAN V10和V20,C2承载VLAN V10,C3承载VLAN V20(请参见图5)。

假设生成树参数正确，在某些情况下（例如，当C1比其它电路宽时）可能会发生这种情况。C2和C3被阻止，并且节点1和节点2之间的所有流量都在传输。如果随后删除C1，电路C2和C3将继续运行相同的生成树。删除C1后，VLAN V10或VLAN V20会被阻止。同样，此网络设计在生成树限制下无效。

图5 — 配置无效：场景 2

场景 3

此示例包括一个带有两条电路的四节点系统。电路C1承载VLAN V10和V20，而C2承载VLAN V10、V20和V30。由于两个电路的VLAN集重叠，因此两个电路都运行相同的生成树实例。V10和V20域包含环路。因此，其中一个跨段被阻塞。如果阻塞的SPAN为C1，则所有VLAN都会流动。此配置看起来不错，但问题是V30没有可用的保护；如果C2跨度发生故障，V10和V20会通过C1流动，但V30没有路径。

图6 — 配置无效：场景 3

点对点未缝合电路

当您折叠生成树时，您会遇到点对点电路问题，这些电路跨越同一组节点，但位于不同的“未缝合”卡上。在“未缝合”模式（也称为“单卡EtherSwitch”）中，每个卡在ONS 15454中保持单个交换实体。但是，如果跨越不同“未缝合”卡的两个电路使用相同的VLAN ID，则电路仍会折叠到相同的生成树实例中，其中一个会被阻塞。图7显示了此问题。

图7 — 点对点未缝合电路示例

在本例中，C2被阻塞，因此路由器3和路由器4之间没有流量传输。为了解决此问题，Cisco在ONS 15454 3.3版及更高版本中引入了每电路关闭功能（也称为“VLAN重用”）。此功能允许您在单个电路上禁用或启用STP。禁用STP时，使用不同“未缝合”卡的多个点对点电路可以使用相同的VLAN ID，而不会被阻塞。

要禁用生成树，请确保不要选中“电路创建”屏幕中的“启用生成树”复选框(请参阅图8中的红色矩形)。

图8 — 电路创建：禁用生成树

生成树分配显示

要通过CTC显示生成树分配，请完成以下步骤：

1. 登录思科传输控制器(CTC)。

图9 — 生成树分配

2. 单击“Maintenance（维护）”(请参见图9中的箭头A)。

3. 单击Ether Bridge(请参阅图9中的箭头B)。

4. 单击Circuits(请参阅图9中的箭头C)。

显示内容包括类型、电路名称/端口、STP ID和VLAN。

相关信息

- 技术支持和文档 - Cisco Systems