シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。 ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。 シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
この資料は Cisco Nexus 9500-R EoR および Nexus 3000-R 岩山の入力破棄のための原因のおよびソリューションを記述したものです。 入力 廃棄は輻輳が理由でインプットキューで廃棄されるパケットの数を示します。 この数はテール ドロップおよび重み付けランダム早期検出(WRED)によって引き起こされるドロップが含まれています。
ランダム/散発的/歴史的(すなわちもはや発生します)ドロップが生じる場合、より詳しい調査に関しては Cisco TAC に連絡して下さい。 このウォークスルーは入力破棄が頻繁に増分するとき役立ちます。
R シリーズ使用入力 VOQ アーキテクチャ。 VOQ アーキテクチャは仮想 なキューが付いている入力 バッファの出力キューをエミュレートします。 各出力ポートにユニキャストトラフィックのための 8 つのキューおよびマルチキャストトラフィックのための 8 つのキューがあります。 トラフィックはパケットの Class-of-service (CoS)または Differentiated Services Code Point (DSCP)値に基づいておよび次にそのトラフィック クラスのための対応した 仮想 な キューで並べられるトラフィック クラスに分類することができます。
R シリーズはファブリック上のトラフィックを転送するのに分散クレジット メカニズムを使用します。 egressバッファに VOQ、入力 バッファ Scheduler 要求特定のポートのための信用および優先順位を残すことにパケットがなっている前に。 クレジットは宛先ポートおよび優先順位のために入力クレジット スケジューラーから要求されます。 バッファ領域が利用できる場合、出力 スケジューラー対しは入力 バッファ スケジューラーにクレジット アクセス許可を送り。 バッファ領域が egressバッファで利用できない場合、出力スケジュールはクレジットを与えないし、次のクレジットが利用できるまでトラフィックは VOQ でバッファリングされます。
- R プラットフォームのためのパケット転送パイプラインは下記にあります。 この技術情報で、入トラフィック マネージャ コンポーネントに焦点を合わせます。 このリンクのアーキテクチャのより多くの詳細
入トラフィック マネージャ(ITM)は入力パイプラインのブロックです。 トラフィックを VOQ に並べ、トラフィックをファブリック上の伝達のためにスケジュールし、クレジットを管理することを関連するステップを実行します。
入力 VOQ バッファ ブロックはオンチップ バッファおよび以外半導体素子 パケット バッファを両方管理します。 バッファは両方とも VOQ アーキテクチャを使用し、トラフィックは IRPP (入力 レシーバ パケット プロセッサ)からの情報に基づいて並べられます。 合計 96,000 VOQ はユニキャストおよびマルチキャストトラフィックのために利用可能です。
パケットが入力パイプラインから送信される前に、パケットはファブリック上の転送のためにスケジュールされる必要があります。 入力 スケジューラーは出トラフィック マネージャ ブロックにいる出力 スケジューラーにクレジット要求を送信 します。 入トラフィック マネージャがクレジットを受け取るとき、入力 送信する パケット プロセッサにトラフィックを送信 し始めます。 egressバッファが完全である場合、トラフィックは出力ポートおよびトラフィック クラスによって表された専用キューでバッファリングされます。
通常、入力された破棄はさまざまな Nexus ハードウェアを渡る下記の原因で見ることができます
PID |
N9K-X9636C-R |
N9K-X9636Q-R |
N9K-X9636C-RX |
N9K-X96136YC-R |
N3K-C36180YC-R |
N3K-C3636C-R |
この記事全体、「入力」のカウンターの値は廃棄し、エラーが増分していた同じを参照するどの HW 内部カウンタでもテストしている間変更し、相当するコマンドつかまれたライブである必要があります。
このステップは以降役立ちます。
ケースでは、それはキュー 7、デフォルトキューです-入力で 8 つのキューが合計しますあります:
Nexus-R# bcm-shell mod 1 "diag counters g" | /|\ | J E R I C H O N E T W O R K I N T E R F A C E | \|/ | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | NBI | | RX_TOTAL_BYTE_COUNTER = 10,616,663,796 | TX_TOTAL_BYTE_COUNTER = 41,136 | | RX_TOTAL_PKT_COUNTER = 10,659,301 | TX_TOTAL_PKT_COUNTER = 606 | | RX_TOTAL_DROPPED_EOPS = 0 | | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | IRE | EPNI | | CPU_PACKET_COUNTER = 606 | | | NIF_PACKET_COUNTER = 10,659,302 | EPE_BYTES_COUNTER = 41,136 | | OAMP_PACKET_COUNTER = 0 | EPE_PKT_COUNTER = 606 | | OLP_PACKET_COUNTER = 0 | EPE_DSCRD_PKT_CNT = 0 | | RCY_PACKET_COUNTER = 0 | | | IRE_FDT_INTRFACE_CNT = 0 | | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | IDR | EGQ | | | | | MMU_IDR_PACKET_COUNTER = 10,659,302 | FQP_PACKET_COUNTER = 606 | | IDR_OCB_INTERFACE_COUNTER = 0 | PQP_UNICAST_PKT_CNT = 606 | | | PQP_DSCRD_UC_PKT_CNT = 0 | | | PQP_UC_BYTES_CNT = 48,408 | +-------------------------------------------+-------------------------------------------| PQP_MC_PKT_CNT = 0 | | IQM | PQP_DSCRD_MC_PKT_CNT = 0 | | | PQP_MC_BYTES_CNT = 0 | | ENQUEUE_PKT_CNT = 1,403,078 | EHP_UNICAST_PKT_CNT = 606 | | DEQUEUE_PKT_CNT = 1,403,078 | EHP_MC_HIGH_PKT_CNT = 0 | | DELETED_PKT_CNT = 0 | EHP_MC_LOW_PKT_CNT = 0 | | ENQ_DISCARDED_PACKET_COUNTER = 9,256,829 | DELETED_PKT_CNT = 0 | | Rejects: PORT_AND_PG_STATUS | | | | RQP_PKT_CNT = 606 | | | RQP_DSCRD_PKT_CNT = 0 | | | PRP_PKT_DSCRD_TDM_CNT = 0 | | | PRP_SOP_DSCRD_UC_CNT = 0 | | | PRP_SOP_DSCRD_MC_CNT = 0 | | | PRP_SOP_DSCRD_TDM_CNT = 0 | | | EHP_MC_HIGH_DSCRD_CNT = 0 | | | EHP_MC_LOW_DSCRD_CNT = 0 | | | ERPP_LAG_PRUNING_DSCRD_CNT = 0 | | | ERPP_PMF_DISCARDS_CNT = 0 | | | ERPP_VLAN_MBR_DSCRD_CNT = 0 | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | | FDA | | | CELLS_IN_CNT_P1 = 0 | CELLS_OUT_CNT_P1 = 0 | | | CELLS_IN_CNT_P2 = 0 | CELLS_OUT_CNT_P2 = 0 | +-------------------------------------------+-------------------------------------------| CELLS_IN_CNT_P3 = 0 | CELLS_OUT_CNT_P3 = 0 | | IPT | CELLS_IN_TDM_CNT = 0 | CELLS_OUT_TDM_CNT = 0 | | | CELLS_IN_MESHMC_CNT = 0 | CELLS_OUT_MESHMC_CNT = 0 | | EGQ_PKT_CNT = 606 --> CELLS_IN_IPT_CNT = 606 | CELLS_OUT_IPT_CNT = 606 | | ENQ_PKT_CNT = 1,403,084 | EGQ_DROP_CNT = 0 | | FDT_PKT_CNT = 1,402,472 | EGQ_MESHMC_DROP_CNT = 0 | | CRC_ERROR_CNT = 0 | EGQ_TDM_OVF_DROP_CNT = 0 | | CFG_EVENT_CNT = 606 * | | | CFG_BYTE_CNT = 48,408 | | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | FDT | FDR | | IPT_DESC_CELL_COUNTER = 5,609,892 | P1_CELL_IN_CNT = 0 | | IRE_DESC_CELL_COUNTER = 0 | P2_CELL_IN_CNT = 0 | | | P3_CELL_IN_CNT = 0 | | TRANSMITTED_DATA_CELLS_COUNTER = 5,609,892 | CELL_IN_CNT_TOTAL = 0 | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | /|\ | J E R I C H O F A B R I C I N T E R F A C E | \|/ |
ゼロより大きい QUEUE_DELETED_PACKET_COUNTER はパケットが IQM (入力待ち行列管理プログラム) afterenqueue によって削除されたことを示します。 これはスケジューリング 方式のミスコンフィギュレーションを提案するクレジットを受け取らないアクティブなキューが原因です。 bcm シェル mod X 「getReg IQM_QUEUE_DELETED_PACKET_COUNTER」によってチェックしますこれを
ENQ_DISCARDED_PACKET_COUNTER はパケットがの前にキューにいれる廃棄されたことを意味します。 BCM のこのカウンター セットを同様に次のように表示できます(コマンドは読まれるでクリアされます):
show hardware Internal エラー モジュール X によってこれらに常にすぐに注意できます(コマンドは読まれるでクリアします):
この例のための Eth1/33 を表示する。 実際のネットワークでは、混雑させた出力ポートをまだ知っていません。
このコマンドは私達に特定のポートの入力 VoQ のフローのための詳細を示したものです。 さらに、それは私達に VoQ の現在のクレジットバランスを示します。
ポートの VOQ はこのように得られます:
LC はです基づく 0 -モジュール 1 は 0、モジュール 2 です 1、等です
LC に対して 256 システム ポート ID があります
ID = (LC *システム ポート ID) + FP 数
Eth1/9 = (0 * 256) + 9 = 9
VOQ ID = 32 + (システム ポート ID * 8)
Eth1/9 = 32 + (9 * 8) = 104
従って以前に収集される出力と一致する Eth1/9 のための VOQ は 104 です
キューが 303 である場合、これらのキューが実際に範囲である従って 303 + 7 時または 303-7 のどちらである場合もあることを再呼び出しして下さい-ポートに 296-303 の範囲でまたは代わりに一致する VOQ がある質問は、303-310 ですか。
Eth1/9 のキュー 7 が、従って 303 は実際に範囲の最も高いです混雑する従って 296-303 の範囲は教養のある推測ですことが知られています。
表示する ASIC 0 のために同じを-簡略にするためにここに示されていない; 対象の範囲がその ASIC にないことに Voq カラムの下で注意します
上記の出力のいくつかの事に注意して下さい:
この時点で、出力によって混雑させるポート検出しました- SPAN を設定し、不法にネットワークにバーストする何かがあるかどうか判別するためにこれがボトルネック/設計に関する問題である場合 1つ以上の 10G インターフェイスのソースをたどっている間または宛先ポートは 1G です。
これらはより進められて-必要出力を見つけることは正常なシナリオの下でポートを混雑させました。
attach module X show hardware internal jer-usd tm_debug asic <slot> module <module> show hardware internal jer-usd info voq [ asic <instance> ] [ port <port> ] [ ] show hardware internal jer-usd info non-empty voq asic [ <instance> ] [ ] show hardware internal jer-usd info voq-profile { QueueThreshold drop_p <dp> | OCBThreshold } [ asic <instance> ] [ port<port> ] [ ] show hardware internal jer-usd info voq-connector front-port <port> [ ] show hardware internal jer-usd stats vsq { front-port <port> | inband asic <slot> | recycle-port <port> asic <slot> } show hardware internal jer-usd ingress-vsq buffer-occupancy front-port <port> show hardware internal jer-usd info IQM { counter | rate } asic <instance> dst-port <port> [ interval <int> ] [ ] show hardware internal jer-usd info SCH { counter | rate } asic <instance> dst-port <port> [ interval <int> ] [ ]
bcm-shell mod X
diag cosq print_flow_and_up dest_id=<flow_id>
diag cosq voq id=<voqid> detailed=1
diag cosq qpair e2e ps=<id>
cosq conn ing
cosq conn egr
dump IPS_CR_BAL_TABLE <voqID>
getReg IQM_QUEUE_MAXIMUM_OCCUPANCY_QUEUE_SIZE
トラフィックジェネレータが各サーバの方のトラフィックの 2G を送信 して いるかこのトポロジーを考慮して下さい:
どのキューが空ではないかすぐにチェックして下さい-そこの表記は 4 です:
-チェック ASIC 0 最初にかどんなインターフェイスこれらのキューがに属するか判別して下さい(1 つのインターフェイスとだけ示します):
他の 3 つのキュー 値のための同じプロセスを繰り返して下さい: 247、303 および 351。
Eth1/9 を RX 方向のスパンの始点 ポートとして設定 して いる間スパンの終点 ポートとして Eth1/33 の設定
Eth1/9 が 10.10.10.1/24 にある SRC 10.10.10.10 および DEST 192.168.10.10 のパケットを送信 することは入力 廃棄という結果に-これ終りません; ただし、このカウンターを見ます:
Nexus-R# bcm-shell mod 1 "diag counters g" | /|\ | J E R I C H O N E T W O R K I N T E R F A C E | \|/ | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ _PACKET_COUNTER = 0 | DELETED_PKT_CNT = 12,027,201 | | | Discards: INVALID_OTM SRC_EQUAL_DEST +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+
Eth1/9 が 10.10.10.1/24 にあるおよび Eth1/33 172.16.0.1/30 サブネットの L3 ポートです SRC 10.10.10.10 の送信パケットはおよび DEST 192.168.10.10 -宛先が不明である時でさえドロップ カウンタは、入力廃棄しません。
Eth1/9 がちょうど広いトランクであるパケットを送信して下さい(またはアクセス ポート) -これは STP転送状態に入力 廃棄として間、ポートの移行登録されています。
Nexus-R(config)# int e1/9
Nexus-R(config-if)# switchport mode trunk
Nexus-R# bcm-shell mod 1 "diag counters g" | i i --|IQM|ENQ_DISCARD|Rejects +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ +-------------------------------------------+-------------------------------------------| PQP_MC_PKT_CNT = 1,678,949 | | IQM | PQP_DSCRD_MC_PKT_CNT = 11,369,033 | | ENQ_DISCARDED_PACKET_COUNTER = 1,289,182 | DELETED_PKT_CNT = 11,369,081 | | Rejects: QUEUE_NOT_VALID_STATUS | Discards: SRC_EQUAL_DEST | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+
Nexus-R# show span int e1/9
Vlan Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
VLAN0001 Desg BLK 2 128.9 P2p
VLAN0010 Desg BLK 2 128.9 P2p
<snip>
QUEUE_NOT_VALID_STATUS は廃棄するパケット プロセッサ(PP)のデシジョンによるドロップするまたはパケット プロセッサ(PP)ブロックから届く無効なデスティネーションです。
握りこぶしインポートの Eth1/9 の限界に達しているように Eth1/9 への送信 10G+ はドロップするの異なる型という結果に終ります-まだ入力 廃棄として数えます:
bcm-shell.0> diag counters g | /|\ | J E R I C H O N E T W O R K I N T E R F A C E | \|/ | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | NBI | | RX_TOTAL_BYTE_COUNTER = 53,913,106,009 | TX_TOTAL_BYTE_COUNTER = 1,164,231 | | RX_TOTAL_PKT_COUNTER = 54,145,395 | TX_TOTAL_PKT_COUNTER = 17,029 | | RX_TOTAL_DROPPED_EOPS = 0 | | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | IRE | EPNI | | CPU_PACKET_COUNTER = 17,010 | | | NIF_PACKET_COUNTER = 54,145,476 | EPE_BYTES_COUNTER = 5,721,307 | | OAMP_PACKET_COUNTER = 0 | EPE_PKT_COUNTER = 50,703 | | OLP_PACKET_COUNTER = 0 | EPE_DSCRD_PKT_CNT = 0 | | RCY_PACKET_COUNTER = 16,837 | | | IRE_FDT_INTRFACE_CNT = 0 | | +-------------------------------------------+-------------------------------------------+-------------------------------------------+-------------------------------------------+ | IDR | EGQ | | | | | MMU_IDR_PACKET_COUNTER = 54,128,577 | FQP_PACKET_COUNTER = 50,703 | | IDR_OCB_INTERFACE_COUNTER = 0 | PQP_UNICAST_PKT_CNT = 50,683 | | | PQP_DSCRD_UC_PKT_CNT = 0 | | | PQP_UC_BYTES_CNT = 5,216,716 | +-------------------------------------------+-------------------------------------------| PQP_MC_PKT_CNT = 20 | | IQM | PQP_DSCRD_MC_PKT_CNT = 20 | | | PQP_MC_BYTES_CNT = 2,079 | | ENQUEUE_PKT_CNT = 5,463,323 | EHP_UNICAST_PKT_CNT = 50,683 | | DEQUEUE_PKT_CNT = 5,594,400 | EHP_MC_HIGH_PKT_CNT = 20 | | DELETED_PKT_CNT = 0 | EHP_MC_LOW_PKT_CNT = 0 | | ENQ_DISCARDED_PACKET_COUNTER = 48,716,055 | DELETED_PKT_CNT = 40 | | Rejects: VOQ_MX_QSZ_STATUS | | <snip>