このドキュメントでは、Cisco Nexus 7000(N7K)F2 モジュールで ELAM を実行する手順、最も関連性のある出力、結果の解釈方法を説明します。
この例では、VLAN 10(10.1.1.101とMACアドレス0050.56a1.1a01)上のホストは、ポートEth6/4がVLAN 10(1)上のホストにインターネット制御メッセージプロトコル(ICMP要求を送信します0.1.1.1.102とMACアドレス0050.56a1.1aef)、ポートEth6/3。ELAMは、10.1.1.101から10.1.1.102までのこの単一フレームをキャプチャです。重要:ELAMでは1つのフレームしかキャプチャできないことに注意してください。
N7K で ELAM を実行するには、最初に適切なモジュールに接続する必要があります(このためネットワーク管理者権限が必要です)。
N7K# attach module 6
Attaching to module 6 ...
To exit type 'exit', to abort type '$.'
module-6#
トラフィックはポートEth6/4のスイッチに入ると予想されます。システム内のモジュールを確認すると、モジュール6がF2モジュールであることがわかります。N7K は完全分散型であり、データプレーン トラフィックの転送に関する決定はスーパーバイザではなくモジュールが行うことに留意してください。
N7K# show module 6
Mod Ports Module-Type Model Status
--- ----- --------------------------- ------------------ -------
6 48 1/10 Gbps Ethernet Module N7K-F248XP-25E ok
F2 モジュールで、内部コード名 Clipper のレイヤ 2(L2)フォワーディング エンジン(FE)で ELAM を実行します。L2 FE データ バス(DBUS)に、L2 およびレイヤ 3(L3)ルックアップ前の元のヘッダー情報が含まれており、結果バス(RBUS)に L3 および L2 の両方のルックアップ後の結果が含まれていることに注意してください。
N7K F2にはモジュールごとに12個のFEがあるため、ポートEth6/4のFEに使用されるClipper ASICを決定する必要があります。次のコマンドを入力して確認します。
module-6# show hardware internal dev-port-map
--------------------------------------------------------------
CARD_TYPE: 48 port 10G
>Front Panel ports:48
--------------------------------------------------------------
Device name Dev role Abbr num_inst:
--------------------------------------------------------------
> Clipper FWD DEV_LAYER_2_LOOKUP L2LKP 12
+-----------------------------------------------------------------------+
+----------------+++FRONT PANEL PORT TO ASIC INSTANCE MAP+++------------+
+-----------------------------------------------------------------------+
FP port | PHYS | MAC_0 | L2LKP | L3LKP | QUEUE |SWICHF
...
3 0 0 0 0 0 0
4 0 0 0 0 0 0
出力から、ポート Eth6/4 は Clipper(L2LKP)インスタンス 0 にあることを確認できます。
module-6# elam asic clipper instance 0
module-6(clipper-elam)# layer2
module-6(clipper-l2-elam)#
Clipper ASIC は複数のフレーム タイプの ELAM トリガーをサポートしています。ELAM トリガーは、フレーム タイプに対応している必要があります。フレームがIPv4フレームの場合、トリガーもIPv4である必要があります。IPv4フレームは他のトリガーではキャプチャされません。IPv6 にも同じ論理が適用されます。
Clipper ASIC は次のフレーム タイプをサポートしています。
module-6(clipper-l2-elam)# trigger dbus ?
arp ARP Frame Format
fc Fc hdr Frame Format
ipv4 IPV4 Frame Format
ipv6 IPV6 Frame Format
other L2 hdr Frame Format
pup PUP Frame Format
rarp Rarp hdr Frame Format
valid On valid packet
Nexus Operating Systems(NX-OS)では、ELAM トリガーを区切るために疑問符を使用できます。F2 モジュールで ELAM に使用できる各種オプションがあります。
module-6(clipper-l2-elam)# trigger dbus ipv4 ingress if ?
<CR>
destination-ipv4-address destination ipv4 address
destination-mac-address Inner destination mac address
source-index Source index
source-ipv4-address source ipv4 address
source-mac-address Inner source mac address
vlan Vlan
etc?
この例では、フレームは送信元 IPv4 アドレスと宛先 IPv4 アドレスに基づいてキャプチャされるため、これらの値だけが指定されています。
Clipper では、DBUS と RBUS に対してトリガーが設定されている必要があります。パケット バッファ(PB)インスタンスを指定することは必須ではないため、これは M シリーズ モジュールとは異なります。これにより、RBUS トリガーが簡素化されます。
次に DBUS トリガーを示します。
module-6(clipper-l2-elam)# trigger dbus ipv4 ingress if source-ipv4-address
10.1.1.101 destination-ipv4-address 10.1.1.102
次に RBUS トリガーを示します。
module-6(clipper-l2-elam)# trigger rbus ingress if trig
入力 FE が選択され、トリガーを設定したら、キャプチャを開始できます。
module-6(clipper-l2-elam)# start
ELAM のステータスを確認するには、status コマンドを入力します。
module-6(clipper-l2-elam)# status
ELAM instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if
source-ipv4-address 10.1.1.101 destination-ipv4-address 10.1.1.102
L2 DBUS Armed
ELAM instance 0: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS Armed
トリガーに一致するフレームを FE が受信すると、ELM ステータスは Triggered と示されます。
module-6(clipper-l2-elam)# status
ELAM instance 0: L2 DBUS Configuration: trigger dbus ipv4 ingress if
source-ipv4-address 10.1.1.101 destination-ipv4-address 10.1.1.102
L2 DBUS Triggered
ELAM instance 0: L2 RBUS Configuration: trigger rbus ingress if trig
L2 RBUS Triggered
ELAM の結果を表示するには、show dbus コマンドと show rbus コマンドを入力します。次に、この例に最も関連性のある ELAM データ出力部分の抜粋を示します(一部の出力は省略されています)。
module-6(clipper-l2-elam)# show dbus
--------------------------------------------------------------------
L2 DBUS CONTENT - IPV4 PACKET
--------------------------------------------------------------------
...
vlan : 0xa destination-index : 0x0
source-index : 0x3 bundle-port : 0x0
sequence-number : 0x3f vl : 0x0
...
source-ipv4-address: 10.1.1.101
destination-ipv4-address: 10.1.1.102
destination-mac-address: 0050.56a1.1aef
source-mac-address: 0050.56a1.1a01
module-6(clipper-l2-elam)# show rbus
--------------------------------------------------------------------
L2 RBUS INGRESS CONTENT
--------------------------------------------------------------------
l2-rbus-trigger : 0x1 sequence-number : 0x3f
di-ltl-index : 0x2 l3-multicast-di : 0x0
source-index : 0x3 vlan-id : 0xa
DBUS データから、フレームが、VLAN 10(vlan:0xa)で、送信元 MAC アドレス 0050.56a1.1a01 および宛先 MAC アドレス 0050.56a1.1aef で受信されたことを検証できます。また、これは送信元が 10.1.1.101、宛先が 10.1.1.102 の IPv4 フレームであることもわかります。
フレームが受信されるポートを確認するには、SRC_INDEXコマンド(ソースのLocal Target Logic(LTL))を入力します。次のコマンドを入力して、LTLをN7Kのポートまたはポートグループにマップします。
N7K# show system internal pixm info ltl 0x3
Type LTL
---------------------------------
PHY_PORT Eth6/4
この出力は、source-index 0x3がEth6/4ポートにマップされていることを示しています。これにより、フレームがポートEth6/4で受信されたことを確認できます。
RBUS データから、フレームが、VLAN 10(vlan-id:0xa)でスイッチされていることを検証できます。 また、di-ltl-index(宛先 LTL)から出力ポートを確認できます。
N7K# show system internal pixm info ltl 0x2
Type LTL
---------------------------------
PHY_PORT Eth6/3
この出力は、di-ltl-index 0x2がポートEth6/3にマップされていることを示しています。これにより、フレームがポートEth6/3から切り替えられていることを確認できます。
スイッチにより LTL プールがどのように割り当てられているかを検証するには、show system internal pixm info ltl-region コマンドを入力します。このコマンドの出力は、LTL が物理ポートに一致しない場合に LTL の目的を理解する上で役立ちます。Drop LTL がその良い例です。
N7K# show system internal pixm info ltl 0x11a0
0x11a0 is not configured
N7K# show system internal pixm info ltl-region
LTL POOL TYPE SIZE RANGE
=====================================================================
DCE/FC Pool 1024 0x0000 to 0x03ff
SUP Inband LTL 32 0x0400 to 0x041f
MD Flood LTL 1 0x0420
Central R/W 1 0x0421
UCAST Pool 1536 0x0422 to 0x0a21
PC Pool 1720 0x0a22 to 0x10d9
LC CPU Pool 32 0x1152 to 0x1171
EARL Pool 72 0x10da to 0x1121
SPAN Pool 48 0x1122 to 0x1151
UCAST VDC Use Pool 16 0x1172 to 0x1181
UCAST Generic Pool 30 0x1182 to 0x119f
LISP Pool 4 0x1198 to 0x119b
Invalid SI 1 0x119c to 0x119c
ESPAN SI 1 0x119d to 0x119d
Recirc SI 1 0x119e to 0x119e
Drop DI 2 0x119f to 0x11a0
UCAST (L3_SVI_SI) Region 31 0x11a1 to 0x11bf
UCAST (Fex/GPC/SVI-ES) 3648 0x11c0 to 0x1fff
UCAST Reserved for Future Use Region 2048 0x2000 to 0x27ff
======================> UCAST MCAST BOUNDARY <======================
VDC OMF Pool 32 0x2800 to 0x281f