目錄

簡介

必要條件

需求

採用元件

慣例

背景資訊

VLAN分配失敗

問題描述

建議

以錯誤順序布建電路的解決方法

無效的電路配置

案例 1

案例 2

案例 3

點對點未拼接電路

生成樹分配顯示

相關資訊

簡介

本文澄清了一些生成樹規則，並說明這些規則如何影響VLAN分配。本文檔不打算成為ONS 15454上生成樹和乙太網電路調配的完整指南。相反，本文檔將執行以下操作：

- 說明導致某些VLAN分配失敗的原因。

- 提供可用於更好地設計網路的建議。這些建議使您能夠在規劃和實施電路時考慮生成樹限制。

- 如果在修改或建立電路時遇到了生成樹約束，則建議一種解決方法。

必要條件

需求

思科建議您瞭解以下主題：

- Cisco ONS 15454

- 生成樹通訊協定(STP)

採用元件

本文中的資訊係根據以下軟體和硬體版本：

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

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

背景資訊

跨距樹狀目錄演演算法(STA)的主要功能是切斷備援連結在橋接網路中建立的回圈。當STP檢測到網路主機之間的多條路徑時，STP會阻塞埠，直到只有一個路徑存在。

預設情況下，ONS 15454的光學介面上啟用STA。您也可以在乙太網卡的前端埠上配置STA。

如果不遵守某些VLAN分配約束，ONS 15454上的生成樹規則不允許建立新電路或修改現有電路。但是，這些規則無法防止某些電路配置導致網路設計不當。設計網路時必須牢記這些配置。

VLAN分配失敗

問題描述

ONS 15454上的跨距樹狀目錄軟體在計時、通訊與控制(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

新建生成樹例項

直通式處理2

C3

20、40

由於C1中有20個匹配，因此生成樹例項與C1相同。

STP 1

C4

30、50

由於C2中有30個匹配，因此生成樹例項與C2相同。

直通式處理2

C5

60

新建生成樹例項

直通式處理3

C6

30、50、70

30和50匹配C4中的30和50，生成樹例項與C4相同

直通式處理2

表2說明瞭VLAN分配失敗的一個簡單案例：

表2 - VLAN分配失敗

電路

VLAN設定

意見

生成樹例項

C1

10

新建生成樹例項

STP 1

C2

20

新建生成樹例項

直通式處理2

C3

10、20

C1中有10個匹配，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中的範例為例。思科建議您先布建C3，然後布建C1和C2。或者，您可以按次序C3-C2-C1布建電路，這具有相同的效果。詳情請參閱表3。

表3 — 調配電路的建議順序

電路

VLAN設定

意見

生成樹例項

C3

10,20

新建生成樹例項

STP 1

C1

10

10與C3中的10個匹配，生成樹例項與C3相同。

STP 1

C2

20

C3中有20個匹配，與C3的生成樹例項相同

STP1

將生成樹應用到乙太網卡的前埠時，同樣的邏輯也適用。

以錯誤順序布建電路的解決方法

當您需要修改未按建議順序布建的電路時，請使用此解決方法來避免VLAN分配錯誤：將幻影VLAN分配給現有電路。

虛構VLAN是指不承載流量的未使用VLAN。新增虛擬VLAN會強制生成樹摺疊到同一個例項中。請仔細考慮網路設計，以確保不會錯誤封鎖任何span。由於網路的複雜性和設計性，流量攻擊有時是不可避免的。

典型的示例是，兩個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 span失敗，V10和V20會通過C1進行傳輸，但V30沒有路徑。

圖6 — 無效配置：案例 3

點對點未拼接電路

摺疊生成樹時，會遇到點到點電路的問題，這些電路跨越相同的節點集，但位於不同的「未縫合」卡上。在「未縫合」模式（也稱為「單卡EtherSwitch」）中，每個卡在ONS 15454內保持一個交換實體。但是，如果跨不同「未縫合」卡的兩個電路使用相同的VLAN ID，則這些電路仍會摺疊到同一個生成樹例項中，並且其中一個被阻塞。圖7顯示了此問題。

圖7 — 點對點未拼接電路的示例

在此範例中，C2遭封鎖，因此路由器3和路由器4之間沒有流量通過。為了克服此問題，思科在ONS 15454 3.3版及更新版本中引入了每電路關閉功能（也稱為「VLAN重複使用」）。此功能允許您在單條線路上禁用或啟用STP。禁用STP時，使用不同「未縫合」卡的多條點對點電路可以使用相同的VLAN ID，而不會被阻止。

若要停用跨距樹狀目錄，請確認沒有勾選「Circuit Creation（電路建立）」螢幕中的「Enable Spanning Tree」覈取方塊(參見圖8中的紅色矩形)。

圖8 — 電路建立：禁用生成樹

生成樹分配顯示

完成以下步驟，以便通過CTC顯示生成樹分配：

1. 登入思科傳輸控制器(CTC)。

圖9 — 生成樹分配

2. 按一下Maintenance(請參見圖9中的箭頭A)。

3. 按一下「Ether Bridge」(參見圖9中的箭頭B)。

4. 按一下Circuits(請參見圖9中的箭頭C)。

顯示內容包括型別、電路名稱/埠、STP ID和VLAN。

相關資訊

- 技術支援與文件 - Cisco Systems