この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、Nexus 5000 もしくは 6000 シリーズ スイッチにアタッチするファブリック エクステンダ(FEX)のパフォーマンスをトラブルシューティングする方法について説明します。
注:このドキュメントで紹介されているコマンドはいずれも中断を伴うものではありません。 Nexus 2000 スイッチを 5000 もしくは 6000 シリーズのスイッチに接続する必要があります。
FEX コマンド ラインで show コマンドを実行するため、FEX にアタッチします。
Nexus# attach fex fex
fex>
FEXでデバッグモードに入り、高度なコマンドを実行してFEX ASIC名を指定します。FEXのASIC名については、表1を参照してください。
fex# dbgexec [prt/woo/red/pri]
デバッグEXECモードを終了するには、CTRL+Cキーボードシーケンスを使用します。
fex> [CTRL+C]
FEXを終了するには、exitコマンドを使用します。
fex# exit
FEX上のサーバに面するポートは、一般に前面ポートと呼ばれます。FEX上のすべての前面ポートにはHI番号があります。通常、この番号はポート番号とは異なりますが、ポートを参照するコマンドのトラブルシューティングに使用されます。ASIC によって前面ポートの配置は異なります。
NIは、親スイッチに接続するFEXのFEX制御ポートです。これらはネットワーク アップリンクとも呼ばれます。これらにはモデルに依存する固有の NI 番号もあります。
これらのポートは、FEXへの固有リンクの親スイッチ側です。これらのポートは、switchport mode fex-fabricコマンドとfex associationコマンドを使用して設定されます。
各FEXは異なるASICで設計されています。ASIC名の省略形は、コマンドを実行するためにデバッグモードで使用されます。
FEXのほとんどのモデルには1つのASICがありますが、2148には6個のASICがあり、それぞれに8個の前面ポートがあります。これらは、トラブルシューティングコマンドではrmonと呼ばれます。
ASIC名と関連付けられた略語が参照用にリストされています。
表 1.
FEX モデル | ASIC 名 | 略語 |
N2K-C2148T-1GE | redwood | rw |
N2K-C2224TP-1GE N2K-C2248TP-1GE |
portola | prt |
N2K-C2232PP-10GE N2K-C2232TM-10GE |
woodside | woo |
N2K-C2248TP-E-1GE | princeton | pri |
B22 | woodside | woo |
N2K-C2232TM-E-10GE | woodside | woo |
N2K-C2248PQ-10GE | woodside/belmont | woo |
N2K-C2348UPQ-10GE | tiburon | tib |
インターフェイスカウンタの出力を相互接続するには、前面ポート番号をHI番号に変換する必要があります。変換は FEX シャーシ モデルに依存します。
この例では、前面ポート26(シャーシID/1/26)にrmon 3 HI 0が割り当てられています。
switch# attach fex chassis_id
fex-[chassis_id]# show platform software redwood sts
この例では、前面ポート10(135/1/10)にHI 9が割り当てられています。
switch# attach fex chassis_id
fex-[chassis_id]# dbgexec portola
prt> fp
この例では、前面ポート20(135/1/20)にHI 19が割り当てられています。
switch# attach fex chassis_id
fex-[chassis_id]# show platform software woodside sts
この例では、HI28が前面ポート29にマッピングされています。
このコマンドは、ポートの着脱可能小型フォームファクタ(SFP)情報を表示します。
fex# show platform software woodside sfp rmon 0 HI5
この例では、HI5のSFPがCISCO-AVAGOによって作成された10G-Base-SR(LC)であることがわかります。
注: 銅線ポートを使用するFEXでこのコマンドを実行すると、コマンドエラーが表示されます。クエリー対象のSFPがないため、これは想定されています。ポートがファイバの場合はプロンプトがno SFP foundに戻りますが、現在SFPは含まれていません。
showコマンドは、FEXファブリックポートリンクのFEX側のインターフェイスカウンタを表示するために、HIおよびNIポートのFEXプロンプトで実行できます。
次のコマンドは、show intと同様に、ポートカウンタの検証を表示します。
fex-128# show platform software woodside rmon 0 HI0 +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX | Current | Diff | RX | Current | Diff | +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX_PKT_LT64 | 0| 0| RX_PKT_LT64 | 0| 0| | TX_PKT_64 | 0| 0| RX_PKT_64 | 0| 0| | TX_PKT_65 | 0| 0| RX_PKT_65 | 0| 0| | TX_PKT_128 | 0| 0| RX_PKT_128 | 0| 0| | TX_PKT_256 | 0| 0| RX_PKT_256 | 0| 0|
注:rmon 0は、FEXに1つのホストASICがある場合にのみ使用されます。2224、2248 および 2232 モデルには ASIC が 1 つだけ搭載されています。2148モデルには6つのasicがあるため、rmon 0 ~ 5が使用されます。詳細は、「前面ポートマッピング」セクションを参照してください。
このコマンドは、show intに似たネットワークアップリンクのポートカウンタを表示します。このコマンドは、リンクのFEX側を表示します。このコマンドでは、リンクの親スイッチ側は表示されません。
fex-128# show platform software woodside rmon 0 NI0 +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX | Current | Diff | RX | Current | Diff | +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX_PKT_LT64 | 0| 0| RX_PKT_LT64 | 0| 0| | TX_PKT_64 | 0| 0| RX_PKT_64 | 0| 0| | TX_PKT_65 | 0| 0| RX_PKT_65 | 0| 0| | TX_PKT_128 | 0| 0| RX_PKT_128 | 0| 0| | TX_PKT_256 | 0| 0| RX_PKT_256 | 0| 0|
ドロップ履歴は、dropsコマンドで表示できます。これにより、FEXがオンになってからのドロップがすべて表示されます。
このコマンドでは、DROP8カウンタを使用したデータトラフィックのドロップを表さないFEX CPUへのドロップも表示されます。これらは無視しても問題ありません。
注: tail drop [8]およびTAIL_DROP8は、FEX CPUへのテールドロップを表し、通常の条件下で発生する場合のパフォーマンスのトラブルシューティングには関係ありません。
prt> drops
PRT_SS_CNT_TAIL_DROP1 : 3 SS0
PRT_SS_CNT_TAIL_DROP1 : 6 SS1
PRT_SS_CNT_TAIL_DROP1 : 1 SS2
PRT_SS_CNT_TAIL_DROP1 : 25 SS3
PRT_SS_CNT_TAIL_DROP1 : 2 SS5
PRT_SS_CNT_TAIL_DROP8 : 142 SS0
PRT_SS_CNT_TAIL_DROP8 : 73 SS1
PRT_SS_CNT_TAIL_DROP8 : 11 SS2
PRT_SS_CNT_TAIL_DROP8 : 62048 SS3
PRT_SS_CNT_TAIL_DROP8 : 4613 SS4
PRT_SS_CNT_TAIL_DROP8 : 552 SS5
CPU に送信される割り込みには、輻輳やバッファ スペースの不足によるテール ドロップがあります。これらはshow new_intsコマンドで表示できます。
注: 6.0以降のコードではshow new_ints all
次の例は、フレームのテールドロップがSS1バッファにあることを示しています。
prt> show new_ints
|-----------------------------------------------|
| SS1 : ssx_int_norm_td
|--+---------+----------------------------------+
| 1 | 00001c98 | tail drop[1] | frames are being tail dropped.
| 2 | 00005cac | tail drop[2] | frames are being tail dropped.
| 8 | 0000012e | tail drop[8] | frames are being tail dropped.
次の例は、NI 3がシンボルエラーを受信していることを示しています。
| NI3 : nix_xe_INT_xg
|--+---------+----------------------------------+
|2 |00000005 | rx_local_fault | Link is in local fault state
|3 |00000007 | rx_remote_fault | Link is in remote fault state
|4 |00000004 | rx_code_violation | MAC received unexpected XGMII control characters.
|5 |00000004 | rx_err_symbol | MAC received an XGMII error character.
|16|00000001 | rx_local_fault_edge | Local fault state has changed.
|17|00000001 | rx_remote_fault_edge | Remote fault state has changed.
|-----------------------------------------------|
次の例は、FEXテールがNI3に入るフレームをドロップすることを示しています。
| SS4 : ssx_int_err
|--+---------+----------------------------------+
|0 |00031aa9 | wo_cr[0] | frames rcvd without credit for pausable classes. Pause is missing.
|1 |00014e21 | wo_cr[1] | frames rcvd without credit for pausable classes. Pause is missing.
|2 |00018a9f | wo_cr[2] | frames rcvd without credit for pausable classes. Pause is missing.
|3 |00025efb | wo_cr[3] | frames rcvd without credit for pausable classes. Pause is missing.
|-----------------------------------------------|
rate コマンドは、ポートのリアルタイムのトラフィック レートの統計情報を出力します。show intとは異なり、平均ではなく、現在の生のデータレートは2秒です。この例では、NI 3は現在、ネットワークからホストへの方向で2.96 kbpsを受信しています。対応する親Nexusスイッチのshow intは、NI 3に接続されたFEXファブリックアップリンクのTX方向で2.96 Kbpsを示します。
テール ドロップはバッファ不足によって発生します。通常、複数のサーバが一度にHIFにバーストした場合、またはホストの出力バッファがNIFのクレジットを補充するのに十分な速さでアウトバウンドトラフィックを空にできない場合、バッファが枯渇します。
この損失を軽減するには、複数の選択肢があります。
ストレージアレイやビデオエンドポイントなどのバーストトラフィックフローを備えたサーバをFEXから移動し、親スイッチのベースポートに直接接続します。これはバーストの多いサーバがバッファを使い果たすことや、トラフィック フローの少ないホストから帯域を奪ってしまうことを防ぎます。
Nexus 5000および6000シリーズスイッチは、FEXモデルよりも大きなバッファを備えており、バーストサーバをベースポートに接続することで、ベースポートバッファが処理するバーストが大幅に増加するため、損失が軽減されます。
FEX の一部のモデルでは、FEX から親スイッチへのアップリンクが追加されたときに、追加のバッファ スペースをアンロックできます。これにより、ネットワークアップリンクでのドロップが停止する可能性があります。
表 2
モデル | アップリンク追加時のバッファの増加 |
2148 | none |
2224 | 最大 2 個のアップリンクまでバッファ増加 |
2248TP | 最大 4 個のアップリンクまでバッファ増加 |
2232 | 最大 4 個のアップリンクまでバッファ増加 |
2248TP-E | none |
2248PQ | none |
FEXのほとんどのモデルは、すべてのホストポートでHIバッファを共有することでメリットを得ることができます。HIでドロップが見られる場合は、バッファを共有することでドロップを軽減できます。
FEXキュー制限をグローバルに変更します。
5k(config)# no fex queue-limit(その5k上のすべてのfexにグローバルに適用)
個々のFEXのFEXキュー制限を変更します。
FEX キュー
5k(config)# fex 100
5k(config-fex)# no hardware [model] queue-limit
Nexus 6000 には、ロード バランシング アルゴリズムを HIF から NIF に変更する追加オプションがあります。デフォルトでは、パケットが異なるHIFポートに到着しても、同じNIFにキューイングされる可能性があります。uplink-load-balance-modeが有効な場合、複数のNIFに分散され、NIF出力バッファをより均等に使用できるようになります。
6k(config)# hardware N2248PQ uplink-load-balance-mode