内容

概要

前提条件

要件

使用するコンポーネント

背景説明

緩和手順

オプション1. Vlanのプルーニング

選択肢2. L3分離

オプション3. Fabricpathなどの代替設計アーキテクチャ

オプション4. M2/F3カードなどの大容量ラインカードの使用

概要

このドキュメントでは、F2/F2e MACテーブルの完全な状態と、それを緩和する方法について説明します。

Switch on Chip(SoC)ごとに16k MAC制限を持つF2モジュールは、60 %の使用率でランダムなMACテーブルが完全なエラーメッセージを表示します。ラインカードが、使用可能な16k MACテーブル空間全体を利用できないのはなぜですか。

%L2MCAST-SLOT2-2-L2MCAST_MAC_FULL_LC: Failed to insert entry in MAC table for FE 1 swidx 271 (0x10f) with err (mac table full). To avoid possible multicast traffic loss, disable OMF. Use the con figuration CLI: "no ip igmp snooping optimise-multicast-flood"

前提条件

要件

Nexus 7000アーキテクチャに関する知識があることが推奨されます。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

- リリース 6.2.10 以降の Nexus 7000.

- F2e シリーズ ライン カード

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。

背景説明

F2モジュールには、フォワーディングエンジンのSoCごとに16k MACテーブルスペースがあります。

各モジュールには12個のSoCがあり、各サービスには4個のポートがあります。

module-1# show hardware internal forwarding f2 l2 table utilization instance all

L2 Forwarding Resources

-------------------------

L2 entries: Module inst   total    used   mcast   ucast   lines   lines_full

------------------------------------------------------------------------------

1         0   16384    9647     265    9382     512            0

1         1   16384    7430       1    7429     512            0

1         2   16384    9654     264    9390     512            0

1         3   16384    7430       7    7423     512            0

1         4   16384    7564       8    7556     512            0

1         5   16384    7432       1    7431     512            0

1         6   16384    7418       0    7418     512            0

1         7   16384     558       0     558     512            0

1         8   16384     558       0     558     512            0

1         9   16384     558       0     558     512            0

1        10   16384     558       0     558     512            0

1        11   16384    7416       0    7416     512            0

次の出力は、SoCごとのハードウェアMACアドレステーブルの使用状況を示しています。

MACテーブルの完全なメッセージが表示される理由を理解するには、MACテーブルの分割方法を理解する必要があります。この図は、視覚的に分かりやすくするのに役立ちます。

- F2ラインカードの16kのMACテーブルは、ページに配布されます。各ページには512エントリを保持できます。合計32ページです。2ウェイハッシュを使用して、新しいMACをいずれかのページに配置できます。

- 次に、4行目をすべてのページで使用するシナリオを見てみましょう。つまり、32個の一意のMACが、各ページの同じ行に配置するハッシュ出力を生成してしまうという意味です。

- 同じハッシュ出力を持つ33 rd MACが生成された場合、それをインストールできず、前述のエラーメッセージが表示される可能性があります。

- 行全体の列は、この状態になった行数を追跡します。

この出力には、ページごとの行と、行が完全な状態に達した場合も示されます。

特定の方法でハッシュ化が終了するMACアドレスのみがこの状態に遭遇しますが、他のMACアドレスに関する問題は発生しません。

通常、マルチキャストMACアドレスはユニキャストMACほどランダム化されていないため、この情報を頻繁に参照できます。ラインカードは通常、使用率の効率を検証するために、業界標準のRFCテストでテストされます。ただし、特定の顧客環境で特定のMACの組み合わせが適切に最適化されない可能性があるため、このエラーが発生する可能性があります。

緩和手順

これらの手順は、MACテーブルの使用量を減らすのに役立ちます。

- Vlanのプルーニング

- L3分離

- その他の設計オプション(fabricpath)

- 将来的な拡張に対応するM2またはF3モジュール

オプション1. Vlanのプルーニング

注：VLAN 100および200にはSVIはありません。これは重要な前提であり、オプション2を読むと明確になります。

この簡単なセットアップでは、異なるSoC上に2つのホストがあります。

N7KA-VDC-1(config-vlan)# sh mac address-table

Note: MAC table entries displayed are getting read from software.

Use the 'hardware-age' keyword to get information related to 'Age'

Legend:

* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

age - seconds since last seen,+ - primary entry using vPC Peer-Link,

(T) - True, (F) - False ,  ~~~ - use 'hardware-age' keyword to retrieve age info

VLAN     MAC Address      Type      age     Secure NTFY Ports/SWID.SSID.LID

---------+-----------------+--------+---------+------+----+------------------

* 100      8478.ac0e.4742    dynamic     ~~~      F    F  Eth6/4

* 200      8478.ac5b.2b42    dynamic     ~~~      F    F  Eth6/5

N7KA-VDC-1# sh vlan internal bd-info vlan-to-bd 100

VDC Id  Vlan Id  BD Id

------  -------  -------

1        100      38

N7KA-VDC-1# sh vlan internal bd-info vlan-to-bd 200

VDC Id  Vlan Id  BD Id

------  -------  -------

1        200      39

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

0    1     0   39    8478.ac5b.2b42  0x00054   0   0x091   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

各FE（フォワーディングエンジン= SoC）は、使用中の2つのMACアドレスを示します。

ここで、VLANをプルーニングします。設定は次の図のように表示されます。

VLANをプルーニングした後、FE(SoC)ごとに1エントリが少なくなります。 VLANをプルーニングすると、MACアドレスのFE間の同期が妨げられた。

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

選択肢2. L3分離

ここでは、VLANがプルーニングされていますが、このVDCでVLAN 100とVLAN 200の両方に対してSwitch Virtual Interface(SVI)が設定されていると仮定しています。

MACテーブルは次のようになります。MACテーブルでは、VLANがプルーニングされている場合でも、FE間でMACアドレスが同期されます。これは、スイッチ仮想インターフェース(SVI)が有効になっているために、FEが他のVLANからのMACアドレスを認識する必要があるためです。

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

0    1     0   39    8478.ac5b.2b42  0x00054   0   0x091   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

vlan 200 SVIを削除すると、MACテーブルにFE0のvlan 200 macの同期が表示されません。

N7KA-VDC-1(config-if-range)# sh hard mac address-table 6

FE | Valid| PI|  BD  |      MAC      |  Index| Stat| SW  | Modi| Age| Tmr|

|      |   |      |               |       |  ic |     | fied|Byte| Sel|

---+------+---+------+---------------+-------+-----+-----+-----+----+----+-

0    1     1   38    8478.ac0e.4742  0x00053   0   0x081   1    138   1

1    1     0   38    8478.ac0e.4742  0x00053   0   0x091   1    138   1

1    1     1   39    8478.ac5b.2b42  0x00054   0   0x081   1    138   1

この手順の結論は、SVIを削除するのではなく、別のレイヤ3 VDCを作成してSVIを別のVDCに移動するかどうかを分析することです。これは簡単な設計手順ではなく、詳細な計画が必要です。

オプション3. Fabricpathなどの代替設計アーキテクチャ

これらは、このドキュメントでは詳しく説明する範囲を超えるより複雑な選択肢ですが、MACの使用を効率化する可能性があります。

オプション4. M2/F3カードなどの大容量ラインカードの使用

M2およびF3ラインカードのMACテーブルの容量は、はるかに大きくなります。

M2データシート==> MACテーブル（SoCあたり128 k）

F3データシート==> MACテーブル（SoCあたり64 k）