この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章の内容は、次のとおりです。
キューの概要
入力ポリシー マップをイーサネット インターフェイスに関連付けて、指定されたトラフィック クラスの帯域幅を確保したり、プライオリティ キューを指定したりできます。
アダプタの入力ポリシーは、指定された Cos 値と一致するすべての発信トラフィックに適用されます。
インターフェイスの入力ポリシーを設定すると、スイッチはアダプタに設定データを送信します。アダプタが DCBX プロトコルや入力ポリシー Type-Length-Value(TLV)をサポートしていない場合、入力ポリシーの設定は無視されます。
出力ポリシー マップをイーサネット インターフェイスにアソシエートし、指定されたトラフィック クラスの帯域幅を保証したり、出力キューを設定したりできます。
帯域割り当ての制限は、FCoE トラフィックなど、インターフェイス上のすべてのトラフィックに適用されます。
イーサネット インターフェイスごとに最大 8 つのキュー(システム クラスごとに 1 つ)をサポートします。キューには次のデフォルト設定があります。
これらのキューに加え、CPU に転送される制御トラフィックは完全プライオリティ キューを使用します。ユーザ設定ではこのキューにはアクセスできません。
FCoE トラフィック(FCoE システム クラスにマッピングされるトラフィック)にキューが割り当てられます。このキューは、帯域幅の 50% で重み付けラウンドロビン(WRR)スケジューリングを使用します。
デフォルトのドロップ システム クラスの標準イーサネット トラフィックにキューが割り当てられます。このキューは、帯域幅の 100 % で WRR スケジューリングを使用します。
システム クラスを追加すると、キューがクラスに割り当てられます。影響を受けたすべてのインターフェイスで帯域割り当てを再設定する必要があります。帯域幅は、自動的にユーザ定義のシステム クラス専用にはなりません。
設定可能な完全プライオリティ キューは 1 つです。このキューは、制御トラフィック キュー(データ トラフィックではなく制御トラフィックを伝送)以外の他のすべてのキューより先に処理されます。
バースト吸収能力を向上させるには、debug hard int multicast-port-prune-threshold コマンドを実行します。
Cisco Nexus プラットフォームでは、40 ギガビット イーサネットの 3 ポートごとに、または 10 ギガビット イーサネットの 12 ポートごとに、共有の 25 Mb パケット バッファにアクセスできます。そのうち 15.6 Mb は入力用に、8.6 Mb は出力用に予約されています。残りの容量は SPAN および制御パケットに使用されます。
Nexus 5500 プラットフォームでは、ポートごとのパケット バッファは 640KB です。Nexus 5548P、Nexus 5548UP、および Nexus 5596UP スイッチは同じバッファ アーキテクチャを共有します。Nexus 5500 プラットフォームは仮想出力キューイング(VOQ)および入力に割り当てられるバッファの大半の入力バッファのアーキテクチャを実装します。アーキテクチャは、輻輳が発生する 1 つの出力ポートにトラフィックを送信する複数のポートがある場合に、スイッチが複数の入力ポートにパケットを格納できるようにします。
Cisco Nexus 5500 プラットフォームには、ポートごとに次のデフォルト バッファ割り当てがあります。
トラフィック クラス | 入力バッファ サイズ(KB) |
---|---|
Class-fcoe | 79.360 |
MTU が 2240 未満のユーザ定義の no-drop | 79.360 |
MTU が 2240 を超えるユーザ定義の no-drop クラス | 90.204 |
テール ドロップのトラフィック クラス | 22.720 |
Class-default | 残りのすべてのバッファ(デフォルト QoS 設定では 470) |
デフォルトのバッファ割り当てはクラスのタイプによって異なります。たとえば、通常のテール ドロップ トラフィック クラスを作成するときのデフォルトの割り当ては、queue-limit コマンドを使用して大規模なサイズを指定しない場合、22.7KB です。
network-qos policy-map から、user-created qos-group に使用可能な入力バッファ スペースを増やすには、queue-limit コマンドを使用します。
各ユーザ作成 qos-group に割り当てられる入力バッファに加えて、qos-group ごとに出力で必要になる追加の 29.76KB バッファがあります。
デフォルトの QoS 設定では、使用可能なすべてのバッファ(470KB)が class-default に割り当てられます。新しい qos-group を作成すると、新しい qos-group に必要なバッファが class-default から削除されます。class-default に残されるバッファ サイズは、470 から他の qos-group で使用される入力バッファを減算し、さらにそれから 29.76KB を減算したものに、qos-group の数を乗算したものと同じになります。
(注) | 各新規クラスにはさらに 29.76KB が必要になるため、class default に残っているバッファの正確な量は、478 から他の qos-group によって使用されるバッファを減算し、さらにそれから 18.880KB を減算したものに qos-group の数を乗算したものと同じになります。 |
Cisco Nexus デバイスのデフォルト QoS ポリシーは、class-fcoe を作成せず、FCoE トラフィック用にバッファおよび qos-group を予約しません。
show queuing interface コマンドは、qos-group ごとに割り当てられた入力バッファの量を表示できます。
フロー制御の概要
IEEE 802.3x リンクレベル フロー制御により、輻輳レシーバはリンクのもう一方の端にあるトランスミッタと通信して、短時間の間データの転送を停止できます。リンクレベル フロー制御機能は、リンク上のすべてのトラフィックに適用されます。
送受信方向は個別に設定できます。デフォルトでは、リンクレベル フロー制御は両方向でディセーブルです。
Cisco Nexus デバイスでは、イーサネット インターフェイスはリンクレベル フロー制御機能を自動検出しません。イーサネット インターフェイスでこの機能を明示的に設定する必要があります。
各イーサネット インターフェイスで、スイッチはプライオリティ フロー制御またはリンクレベル フロー制御のいずれか(両方は不可)をイネーブルにできます。
プライオリティ フロー制御(PFC)により、ポーズ機能をリンク上のすべてのトラフィックではなく、リンク上の特定のトラフィック クラスに適用できます。PFC は、IEEE 802.1p CoS 値に基づいて、ポーズ機能を適用します。スイッチが PFC をイネーブルにすると、ポーズ機能を適用する CoS 値をアダプタに伝えます。
イーサネット インターフェイスは PFC を使用して、ロスレス サービスを no-drop システム クラスに提供します。PFC はクラス単位でポーズ フレームを実装し、IEEE 802.1p CoS 値を使用してロスレス サービスを必要とするクラスを特定します。
スイッチにおいて各システム クラスには、関連付けられた IEEE 802.1p CoS 値があります。この CoS 値はデフォルトで割り当てられるか、システム クラスで設定されます。PFC をイネーブルにすると、スイッチは no-drop CoS 値をアダプタに送信し、PFC をこれらの CoS 値に適用します。
FCoE システム クラスのデフォルトの CoS 値は 3 です。この値は設定可能です。
デフォルトでは、スイッチは PFC 機能をイネーブルにするためのネゴシエーションを行います。ネゴシエーションが成功すると、設定に関係なく、PFC はイネーブルになり、リンクレベル フロー制御はディセーブルのままです。PFC ネゴシエーションに失敗した場合は、PFC をインターフェイスで強制的にイネーブルにするか、IEEE 802.x リンクレベル フロー制御をイネーブルにできます。
PFC をインターフェイスでイネーブルにしていない場合、IEEE 802.3X リンクレベル ポーズをイネーブルにできます。
(注) | pause no-drop がリンクレベル ポーズのクラス マップに設定されていることを確認します。 |
デフォルトでは、リンクレベル ポーズはディセーブルです。
キューイングの設定
ファブリック エクステンダ コンフィギュレーション レベルで、出方向(ネットワークからホストへ)の指定ファブリック エクステンダのキュー制限を制御できます。ファブリック エクステンダに低いキュー制限値を使用することにより、1 つのブロックされたレシーバが他の非輻輳レシーバに送信されるトラフィックに影響を与えること(「行頭ブロッキング」)を防止できます。より高いキュー制限値では、バースト吸収が改善され、行頭ブロッキング保護が少なくなります。ファブリック エクステンダがすべての使用可能なハードウェア領域を使用できるようにするには、このコマンドの no 形式を使用します。
(注) | システム レベルで、fex queue-limit コマンドを使用してファブリック エクステンダのキュー制限を設定できます。ただし、特定のファブリック エクステンダのキュー制限を設定すると、そのファブリック エクステンダのシステム レベルで設定されたキュー制限設定が上書きされます。 |
次のファブリック エクステンダのキュー制限を指定できます。
Cisco Nexus 2148T ファブリック エクステンダ(48x1G 4x10G SFP+ モジュール)
Cisco Nexus 2224TP ファブリック エクステンダ(24x1G 2x10G SFP+ モジュール)
Cisco Nexus 2232P ファブリック エクステンダ(32x10G SFP+ 8x10G SFP+ モジュール)
Cisco Nexus 2248T ファブリック エクステンダ(48x1G 4x10G SFP+ モジュール)
Cisco Nexus N2248TP-E ファブリック エクステンダ(48x1G 4x10G モジュール)
Cisco Nexus N2348UPQ ファブリック エクステンダ(48x10G SFP+ 6x40G QSFP モジュール)
次に、Cisco Nexus 2248T ファブリック エクステンダのデフォルト キュー制限を復元する例を示します。
switch# configure terminal switch(config-if)# fex 101 switch(config-fex)# hardware N2248T queue-limit 327680
次に、Cisco Nexus 2248T ファブリック エクステンダ上でデフォルトで設定されているキュー制限を削除する例を示します。
switch# configure terminal switch(config)# fex 101 switch(config-fex)# no hardware N2248T queue-limit 327680
3000m ロスレス イーサネットの no-drop バッファしきい値を設定できます。
(注) | 両方向でロスレス イーサネットを実現するためには、Cisco Nexus デバイスに接続されているデバイスに同様の機能が必要です。no-drop 用のデフォルトのバッファおよびしきい値により、最大 300 メートルまでロスレス イーサネットを保証できます。 |
次に、3000 メートルの Cisco Nexus デバイスに対する no-drop バッファしきい値の設定方法を示します。
switch(config-pmap-nq)# policy-map type network-qos nqos_policy switch(config-pmap-nq)# class type network-qos nqos_class switch(config-pmap-nq-c)# pause no-drop buffer-size 152000 pause-threshold 103360 resume-threshold 83520 switch(config-pmap-nq-c)# exit switch(config-pmap-nq)# exit switch(config)# exit switch#
ファブリック エクステンダ コンフィギュレーション モードで、Cisco Nexus 2148T ファブリック エクステンダのバッファしきい値を設定できます。バッファしきい値は、出力キューにテール ドロップしきい値の観測を開始するように指示が送信される前に、入力バッファの消費レベルを設定します。バッファ使用量が設定されたバッファしきい値よりも低い場合、テール ドロップしきい値は無視されます。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# fex fex-id |
ファブリック エクステンダを指定し、ファブリック エクステンダ モードを開始します。 |
ステップ 3 | switch(config-fex)# hardware N2148T buffer-threshold buffer limit |
Cisco Nexus 2148T ファブリック エクステンダのバッファしきい値を設定します。バッファしきい値はバイト単位で指定します。有効な範囲は、Cisco Nexus 2148T ファブリック エクステンダの場合、81920 ~ 316160 です。 |
次に、Cisco Nexus 2148T ファブリック エクステンダのバッファしきい値をデフォルトに戻す例を示します。
switch# configure terminal switch(config)# fex 101 switch(config-fex)# hardware N2148T buffer-threshold 163840
次に、Cisco Nexus 2148T ファブリック エクステンダのデフォルトのバッファしきい値を削除する例を示します。
switch# configure terminal switch(config)# fex 101 switch(config-fex)# no hardware N2148T buffer-threshold
ユニキャスト トラフィックの仮想出力キュー(VOQ)の制限をイネーブルにできます。輻輳とブロッキングを軽減するために、VOQ を使用して、1 つのブロックされたレシーバが、他の非輻輳ブロッキング レシーバに送信されるトラフィックに影響を与えることを防止します。
コマンドまたはアクション | 目的 |
---|
switch(config)# hardware unicast voq-limit switch(config)#
フロー制御の設定
IEEE 802.3x リンクレベル フロー制御により、輻輳レシーバはリンクのもう一方の端にあるトランスミッタと通信して、短時間の間データの転送を停止できます。リンクレベル フロー制御機能は、リンク上のすべてのトラフィックに適用されます。
送受信方向は個別に設定できます。デフォルトでは、リンクレベル フロー制御は両方向でディセーブルです。
Cisco Nexus デバイスでは、イーサネット インターフェイスはリンクレベル フロー制御機能を自動検出しません。イーサネット インターフェイスでこの機能を明示的に設定する必要があります。
各イーサネット インターフェイスで、スイッチはプライオリティ フロー制御またはリンクレベル フロー制御のいずれか(両方は不可)をイネーブルにできます。
デフォルトでは、イーサネット インターフェイスは、DCBX プロトコルを使用してネットワーク アダプタと PFC についてネゴシエーションします。PFC がイネーブルの場合、PFC は、no-drop クラスに設定された CoS 値と一致するトラフィックに適用されます。
インターフェイスの PFC を強制的にイネーブルにすることで、ネゴシエーション結果を上書きできます。
Cisco NX-OS Release 5.0(3)N1(1) から、レイヤ 2 またはレイヤ 3 インターフェイスのプライオリティ フロー制御を設定できます。
(注) | インターフェイスをレイヤ 3 インターフェイスとして設定するには、no switchport コマンドを使用します。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# interface typeslot/port |
変更するインターフェイスを指定します。 |
ステップ 3 | switch(config-if)# no switchport | (任意)
レイヤ 3 インターフェイスを選択します。 |
ステップ 4 | switch(config-if)# priority-flow-control mode {auto | on} |
選択したインターフェイスの PFC モードを設定します。 PFC 機能についてネゴシエーションを行うには、auto を指定します。これはデフォルトです。 PFC を強制的にイネーブルにするには、on を指定します。 |
ステップ 5 | switch(config-if)# no priority-flow-control mode on | (任意)
選択したインターフェイスの PFC 設定をディセーブルにします。 |
次に、インターフェイス上で PFC を強制的にイネーブルにする例を示します。
switch# configure terminal switch(config)# interface ethernet 1/2 switch(config-if)# priority-flow-control mode on
次に、レイヤ 3 インターフェイスで PFC を強制的にイネーブルにする例を示します。
switch# configure terminal switch(config)# interface ethernet 1/5 switch(config-if)# no switchport switch(config-if)# priority-flow-control mode on
イーサネット インターフェイスの LLC は、デフォルトでディセーブルです。送受信方向で LLC をイネーブルにできます。
レイヤ 2 またはレイヤ 3 インターフェイスにフロー制御を設定できます。
(注) | インターフェイスをレイヤ 3 インターフェイスとして設定するには、no switchport コマンドを使用します。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# interface typeslot/port |
変更するインターフェイスを指定します。 |
ステップ 3 | switch(config-if)# no switchport | (任意)
レイヤ 3 インターフェイスを選択します。 |
ステップ 4 | switch(config-if)# flowcontrol [receive {on | off}] [send {on | off}] |
選択されたインターフェイスの LLC をイネーブルにします。receive および send の on または off を設定します。 |
ステップ 5 | switch(config-if)# no flowcontrol [receive {on | off}] [send {on | off}] | (任意)
選択されたインターフェイスの LLC をディセーブルにします。 |
次に、インターフェイス上で LLC をイネーブルにする例を示します。
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# interface e1/48 switch(config-if)# flowcontrol receive on switch(config-if)# flowcontrol send on
次に、レイヤ 3 インターフェイスで LLC をイネーブルにする例を示します。
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# interface e1/48 switch(config-if)# no switchport switch(config-if)# flowcontrol receive on switch(config-if)# flowcontrol send on
次のいずれかのコマンドを使用して、設定を確認します。
コマンド |
目的 |
---|---|
show queuing interface [interface slot/\port] |
キューの設定および統計情報を表示します。 |
show interface flowcontrol [module numbef ] |
すべてのインターフェイスでフロー制御設定の詳細なリストを表示します。 |
show interface [interface slot/port] priority-flow-control [module number] |
指定されたインターフェイスのプライオリティ フロー制御詳細を表示します。 |
show wrr-queue cos-map [var] |
|
running-config ipqos |
QoS の実行コンフィギュレーションに関する情報を表示します。 |
startup-config ipqos |
QoS のスタートアップ コンフィギュレーションに関する情報を表示します。 |