はじめに
このドキュメントでは、Nexus 7000プラットフォームのトラブルシューティングに使用されるMessage and Transition Services(MTS)機能について説明します。
前提条件
要件
このドキュメントに関する固有の要件はありません。
使用するコンポーネント
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
NeXusオペレーティングシステム(NX-OS)のサービス(プロセスとも呼ばれる)は、MTSによって相互に通信します。
ターゲットサービスが物理的に異なるモジュール上にある場合は、ノード間通信を使用する必要があります。もう一方のモジュールへの通信は、イーサネットアウトオブバンドチャネル(EOBC)リンクを介してAdvanced Inter Process Communication(AIPC)によって提供されます。EOBCリンクは、Nexus 7000シャーシのミッドプレーンにあります。
MTSの特長:
- メッセージおよびハイアベイラビリティ(HA)インフラストラクチャとアプリケーションプログラムインターフェイス(API)
- バッファ管理
- メッセージ配信
AIPCの特長:
- EOBCを介した信頼性の高い転送
- ACKベースの再送信の配信
- フラグメンテーションと再構成
MTSは主に宛先/送信元ノード/SAPとOpcodeで構成されます。
- ノード:物理モジュールとVDCのID。
- SAP:各サービスの識別子。(各サービスには、複数の機能用に複数のサービスアクセスポイント(SAP)を配置できます)。
- Opcode:サービスが他のサービスとの通信に使用するデータ型。
用語
MTS:メッセージおよびトランザクションサービス
SAP:サービスアクセスポイント
AIPC:Advanced Inter Process Communication / Andiamo IPC(高度プロセス間通信/Andiamo IPC)
EOBC:Ethernet Out-of-Band Channel(イーサネットアウトオブバンドチャネル)
NX-OS:NeXusオペレーティングシステム
MTSフォーマット
MTSの宛先は、SAP(サービス)とノード(SAPが稼働するモジュール)で表されます。
注:supはスーパーバイザを、lcはラインカードを表します。
任意のモジュールでSAPを実行できます。
`show system internal sysmgr service ~~~~`
n7ka# sh system internal sysmgr service all
Name UUID PID SAP state Start count Tag Plugin ID
---------------- ---------- ------ ----- --------- ----------- ---------------- -----------
aaa 0x000000B5 6942 111 s0009 1 N/A 0
cert_enroll 0x0000012B 6941 169 s0009 1 N/A 0
ExceptionLog 0x00000050 7267 92 s0009 1 N/A 0
`show system internal mts ~~~~~`
n7ka# sh system internal mts sup sap 111 description
Below shows sap on default-VDC, to show saps on non-default VDC, run
show system internal mts node sup-<vnode-id> sap ...
AAA Daemon
特定のモジュールでのみSAPを実行します。
`Attach to the module`
n7ka# attach module 4
Attaching to module 4 ...
To exit type 'exit', to abort type '$.'
Last login: Tue Nov 7 15:42:35 PST 2023 from 127.1.1.2 on pts/0
`show system internal sysmgr service ~~~~`
n7ka# show system internal sysmgr service all
Name UUID PID SAP state Start count Tag Plugin ID
---------------- ---------- ------ ----- --------- ----------- ---------------- -----------
aclqo 0x0000016E 1301 190 s0009 1 N/A 0
amm 0x00000260 1130 895 s0009 1 N/A 0
bfdc 0x000002C7 1110 1008 s0009 1 N/A 0
`show system internal mts ~~~~~`
module-4# show system internal mts lc sap 190 description
Aclqos SAP
- オペコードレジストリ
MTSが宛先SAP 0に送信される場合があります。その結果、MTSはSAPレジストリ(opcodeレジストリ)に登録されている複数のSAPに送信されます。
たとえば、Opc 8182はSAP 175と378によって登録され、show system internal mts sup registry persistentコマンドによって確認されます。したがって、このMTSはSAP175とSAP 378の両方に提供されます。
n7ka# show system internal ethpm event-history msgs
51) Event:E_MTS_RX, length:60, at 36968 usecs after Thu Sep 18 14:42:15 2014
[NOT] Opc:MTS_OPC_LINK_EVENT_DOWN(8182), Id:0X034960A1, Ret:SUCCESS
Src:0x00000102/181, Dst:0x00000609/0, Flags:None
HA_SEQNO:0X00000000, RRtoken:0x00000000, Sync:UNKNOWN, Payloadsize:82
Payload:
0x0000: 00 00 00 07 00 11 00 21 00 00 00 04 00 12 00 04
n7ka# show system internal mts sup registry persistent | i 8182
MTS_OPC_LINK_EVENT_DOWN(8182): 175, 378
- ノードID
ノードIDは16ビットのIDです。
+ Slot ID:モジュールスロットID。1で始まる
+ Vnode ID – 仮想ノードID。VDC IDは0で始まる
+ Lnode ID – 論理ノードID。スーパーバイザ1、LC:2
例:0x805 = 0x08 + 0b0000_0101 = 0x08 + 0x1 + 0x1 (slot + Vnode + Lnode)
=> SUPモジュール VDC 2 スロット8
MTSとのプロセス通信の追跡
年齢
イベント履歴メッセージを使用して、MTS通信履歴を確認できます。 ほぼすべてのサービスに、このイベント履歴メッセージ機能があります。
このCLIは、eth_port_channel(ethpc)のMTSイベント履歴です。
n7ka# show port-channel internal event-history msgs
12) Event:E_MTS_RX, length:60, at 15586 usecs after Thu Sep 18 13:13:57 2014
[REQ] Opc:MTS_OPC_ETHPM_PORT_CLEANUP(61444), Id:0X00323B1E, Ret:SUCCESS
Src:0x00000601/175, Dst:0x00000601/378, Flags:None
HA_SEQNO:0X00000000, RRtoken:0x00323B1E, Sync:UNKNOWN, Payloadsize:26
Payload:
0x0000: 00 00 00 02 00 04 00 02 00 01 00 05 00 0c 00 00
次に示すフィールドは、コマンドでの目的に関する詳細を提供します。
Event:E_MTS_RX:このMTSがこのサービス(この場合ethpc)によって受信されたことを示します。E_MTS_TXの場合、ethpcはこのMTSの送信者です。
Src:0x00000601/175 - MTS_addr/SAPは、このMTSの送信者を表します。
Dst:0x00000601/378:MTS_addr/SAPは、このMTSのレシーバを表します。
Id:0X00323B1E:送信側と受信側の両方が同じMTSに対して同じIDを持つMTS ID。
Opc:MTS_OPC_ETHPM_PORT_CLEANUP(61444):このイベントタイプを示します。言い換えれば、このMTSが提供するopcodeです。ここで、61444はopcode番号です。
MTSイベントの例
次のMTSイベントの例は、リンクダウンイベント用です。
n7ka# 2014 Sep 18 14:42:15 n7ka %ETHPORT-5-IF_DOWN_LINK_FAILURE: Interface Ethernet1/3 is down (Link failure)
最初のステップとして、ethpm履歴を確認します。これは、すべてのI/F関連の包括的なプロセスです。
n7ka# sh system internal ethpm event-history msgs
51) Event:E_MTS_RX, length:60, at 36968 usecs after Thu Sep 18 14:42:15 2014
[NOT] Opc:MTS_OPC_LINK_EVENT_DOWN(8182), Id:0X034960A1, Ret:SUCCESS
Src:0x00000102/181, Dst:0x00000609/0, Flags:None
HA_SEQNO:0X00000000, RRtoken:0x00000000, Sync:UNKNOWN, Payloadsize:82
Payload:
0x0000: 00 00 00 07 00 11 00 21 00 00 00 04 00 12 00 04
表示された結果は、ETHPMがSrc:0x00000102/181からリンクダウンイベントを受信したことを示しています。このMTSアドレスは、SAP 181がスロット1のVDC 1 LCにあることを示します。
次に示すCLIを使用して、スロット1にあるSAP 181を判別します。
module-1# attach module 1
module-1# show system internal mts lc sap 181 description
Port_client SAP
次に示すCLIを使用して、スロット1のport_client MTS履歴を確認します。
module-1# show system internal port-client event-history msgs
49) Event:E_MTS_TX, length:60, at 298743 usecs after Thu Sep 18 14:42:14 2014
[NOT] Opc:MTS_OPC_LINK_EVENT_DOWN(8182), Id:0X034960A1, Ret:SUCCESS
Src:0x00000102/181, Dst:0x00000609/0, Flags:None
HA_SEQNO:0X00000000, RRtoken:0x00000000, Sync:UNKNOWN, Payloadsize:82
Payload:
0x0000: 00 00 00 07 00 11 00 21 00 00 00 04 00 12 00 04
50) Event:E_MTS_RX, length:60, at 298329 usecs after Thu Sep 18 14:42:14 2014
[NOT] Opc:MTS_OPC_LC_LINK_DOWN(8185), Id:0X0349609F, Ret:SUCCESS
Src:0x00000102/536, Dst:0x00000102/0, Flags:None
HA_SEQNO:0X00000000, RRtoken:0x00000000, Sync:UNKNOWN, Payloadsize:17
Payload:
0x0000: 00 00 00 02 40 e5 00 07 02 54 1a 70 b6 00 04 84
Id:0X034960A1から、49)イベントが対象のイベントであることがわかります。Port_Clientが期待どおりにMTSを送信しました。これは、Port_Client上の以前のMTSイベント(50)によって呼び出される必要があります。このMTSはSrc:0x00000102/536によって送信されました。
SAP 536をチェックします。
module-1# sh system internal mts lc sap 536 de
Naxos FPGA
NAXOS FPGAがこのイベント全体のソースであることがわかりました。次に示すCLIを使用して、local_faultがリンクダウンの根本原因であることを確認します。
module-1# sh hardware internal naxos event-history port 3
15) Event E_NAXOS_ISR_DATA length:69, at 170763 usecs after Thu Sep 18 14:42:14 2014
TO NAXOS_PORT_STATUS_LINK_DOWN: reg_val 0x14
Status:SUCCESS (0x0)
16) Event E_NAXOS_ISR_DATA length:50, at 170619 usecs after Thu Sep 18 14:42:14 2014
LOCAL_FAULT: reg_val 0x14
Status:SUCCESS (0x0)