最大16個のカスタム転送クラスの設定
すべてのルーターのデフォルトでは、デフォルト転送クラスのトピックに示すように、4 つの出力キューに 4 つの 転送クラスがマッピングされます。M120およびM320マルチサービスエッジルーター、MXシリーズ5Gユニバーサルルーティングプラットフォーム、PTXシリーズパケットトランスポートルーター、およびTシリーズコアルーターでは、4つ以上の転送クラスとキューを設定できます。最大16の転送クラスと8つのキューを設定し、複数の転送クラスを1つのキューに割り当てることができます。キューに複数の転送クラスを割り当てるという概念は、 転送クラスエイリアスの作成と呼ばれることもあります。
デバイスに8つ以上の転送クラスを設定した場合、CoSベースの転送機能を使用することはできません。
複数の転送クラスを 1 つのキューにマッピングすると便利です。たとえば、転送クラスがマルチフィールドパケット分類に基づいて設定され、マルチフィールドの分類子がコアに面したインターフェイスと顧客対応インターフェイスで異なるとします。図 1 に示すように、コアに面したインターフェイスには 4 つのキュー、顧客対応インターフェイスには 5 つのキューが必要で、 ~ fc4
はfc0
顧客対応インターフェイスの分類子に対応しfc5
fc8
、コアに面したインターフェイスの分類子に対応する必要があるとします。
この例では、9つの分類子と9つの転送クラスが必要です。転送クラスからキューへのマッピングを 表 1 に示します。
転送クラス名 |
キュー番号 |
---|---|
|
0 |
|
1 |
|
2 |
|
3 |
|
4 |
最大16の転送クラスを設定するには、 階層レベルに および queue-num
ステートメントを[edit class-of-service forwarding-classes]
含めますclass
。
[edit class-of-service forwarding-classes] class class-name queue-num queue-number;
最大 16 個の異なる転送クラス名を設定できます。対応する出力キュー番号は、0~7 です。そのため、複数の転送クラスを 1 つのキューにマッピングできます。複数の転送クラスをキューにマッピングする場合、複数の転送クラスは同じスケジューラ(階層レベル)を [edit class-of-service scheduler-maps map-name forwarding-class class-name scheduler scheduler-name]
参照する必要があります。
最大16の転送クラスを設定すると、分類子、スケジューラ、ファイアウォールフィルター(マルチフィールドの分類子)、ポリサー、およびルールの書き換えにおいて、他の転送クラスと同じように使用できます。
最大16の転送クラスを設定する場合、以下の制限が適用されます。
class
階層レベルの[edit class-of-service forwarding-classes]
およびqueue
ステートメントは、相互に排他的です。つまり、以下の設定のいずれかを含めることができますが、両方を含むことはありません。[edit class-of-service forwarding-classes] queue queue-number class-name; [edit class-of-service forwarding-classes] class class-name queue-num queue-number;
CoSベースの転送機能を使用する場合、転送ポリシーで8つ以上の転送クラスを設定することはできません。ただし、8つ以上の転送クラスを設定してCoSベースの転送を設定しようとすると、メッセージが表示されコミットは失敗します。そのため、8つ以下の転送クラスのみを持つルーターでCBFを設定できます。この条件では、転送クラスからキューへのマッピングは、1 対 1 または 1 対多のいずれかです。
8 つの異なる転送クラスを 8 つの異なるスケジューラにマッピングするスケジューラ マップは、8 つのキューをサポートするインターフェイスにのみ適用できます。このタイプのスケジューラ マップを、4 つのキューのみをサポートするインターフェイスに適用すると、コミットは失敗します。
PIC を変更するステートメントを設定して 8 つのキューをサポートし、8 つのキュー スケジューラ マップを 2 つのステップで適用することをお勧めします。それ以外の場合、コミットは成功しても、スケジューラ マップが適用されたときに PIC に 8 つのキューがない場合があり、エラーが発生します。
コマンドを発行することで、転送クラスに割り当てられた ID 番号を show class-of-service forwarding-class
決定できます。分類を修正するかどうかは、 コマンドを発行することで show class-of-service forwarding-table classifier mapping
決定できます。コマンド出力で、 フィールドが Table Type
として Fixed
表示された場合、分類は固定されます。固定分類の詳細については、 インターフェイスへの転送クラスの適用を参照してください。
ATM2 IQインターフェイスで8つの転送クラスを設定する方法については、 ATMインターフェイス で8つのキューを有効にするを参照してください。
インターフェイスで8つのキューを有効にする
デフォルトでは、M320およびT SeriesルーターのIQ(インテリジェントキューイング2)、IQ2(インテリジェントキューイング拡張)、IQ2E(インテリジェントキューイング2拡張)PICは、インターフェイスごとに最大4つのエグレスキューに制限されています。以下の手順では、これらのインターフェイスで最大8つのエグレスキューを設定する方法を説明します。
階層レベルで 8 つのキューを [edit chassis]
設定するだけでなく、 階層レベルの [edit class-of-service]
設定ではインターフェイスごとに 8 つのキューをサポートする必要があります。
IQ PIC 4
あたりのキューの最大数は または 8
です。ステートメントを max-queues-per-interface
含める場合、IQ PIC上のすべてのポートは設定モードを使用し、IQ PIC上のすべてのインターフェイスは同じ最大キュー数を持っています。
これらのPICで最大8つのエグレスキューを設定するには:
この手順では、TX Matrix または TX Matrix Plus ルーターでインターフェイスがサポートするキューの最大数を設定する方法について説明します。
階層レベルで 8 つのキューを [edit chassis]
設定するだけでなく、 階層レベルの [edit class-of-service]
設定ではインターフェイスごとに 8 つのキューをサポートする必要があります。
IQ PIC 4
あたりのキューの最大数は または 8
です。ステートメントを max-queues-per-interface
含める場合、IQ PIC上のすべてのポートは設定モードを使用し、IQ PIC上のすべてのインターフェイスは同じ最大キュー数を持っています。
これらのPICで最大8つのエグレスキューを設定するには:
[edit] user@host# edit chassis lcc number fpc slot-number pic pic-number
これらのインターフェイスに最大8つのエグレスキューを設定します。
[edit chassis fpc slot-number pic pic-number] user@host# set max-queues-per-interface 8
数値
4
は、 または .8
インターフェイスがサポートするキューの数を確認するには、 コマンドの CoS queues
出力フィールドを show interfaces interface-name extensive
確認します。
インターフェイスがサポートするキューの数を表示するには、次の手順に従います。
user@host> show interfaces so-1/0/0 extensive CoS queues: 8 supported
ステートメントを max-queues-per-interface 4
含める場合、4つのポートすべてを設定し、ポートごとに最大4つのキューを設定できます。
M320およびT Seriesルーターの4ポートOC3c/STM1タイプIおよびタイプII PICでは、 ステートメントを max-queues-per-interface 8
含める場合、ポート0と2に最大8つのキューを設定できます。設定をコミットした後、PIC はオフラインになり、ポート 0 と 2 のみが動作してオンラインに戻ります。ポート1および3にはインターフェイスを設定できません。
クワッド T3 およびクワッド E3 PIC では、 ステートメントを max-queues-per-interface 8
含める場合、ポート 0 と 2 で最大 8 つのキューを設定できます。設定をコミットした後、PIC はオフラインになり、ポート 0 と 2 のみが動作してオンラインに戻ります。ポート1および3にはインターフェイスを設定できません。
ステートメントを max-queues-per-interface
含め、設定をコミットすると、IQ PIC上のすべての物理インターフェイスが削除され、再追加されます。また、PIC はオフラインになり、その後すぐにオンラインに戻されます。PIC をオフラインおよびオンラインで手動で行う必要はありません。IQ PIC に送信するアクティブなトラフィックがない場合にのみ、4 つのキューと 8 つのキューのモードを変更する必要があります。
複数の転送クラスとデフォルト転送クラスの割り当て
キュー 0~3 では、1 つのキューに複数の転送クラスを割り当てる場合、デフォルトの転送クラスの割り当ては次のように機能します。
キュー 0 に割り当てた最初の転送クラスは、デフォルトの BE 分類とスケジューリングを取得します。
キュー 1 に割り当てた最初の転送クラスは、デフォルトの EF 分類とスケジューリングを取得します。
キュー 2 に割り当てた最初の転送クラスは、デフォルトの AF 分類とスケジューリングを取得します。
キュー 3 に割り当てた最初の転送クラスは、デフォルト NC 分類とスケジューリングを取得します。
もちろん、カスタム分類子とスケジューラを設定することで、デフォルトの分類とスケジューリングを上書きすることができます。
転送クラスをキュー0~3に明示的にマッピングしない場合、対応するデフォルトクラスが自動的にキューに割り当てられます。16 の転送クラスをカウントする場合、キュー 0~3 に自動的に割り当てられたすべてのデフォルト転送クラスの合計を含める必要があります。その結果、1 つのキューがキュー 0、1、2、または 3 の場合、1 つのキューに最大 13 の転送クラスをマッピングできます。単一のキューがキュー 4、5、6、または 7 の場合、最大 12 の転送クラスを 1 つのキューにマッピングできます。要約すると、転送クラスはそれぞれ少なくとも1つ(デフォルトかそれ以外)がキュー0~3に割り当てられ、残りの12転送クラス(16~4)をキューに割り当てることができます。
例えば、2 つの転送クラスをキュー 0 に割り当て、キュー 1~3 に転送クラスを割り当てないとします。ソフトウェアは、キュー1~3にそれぞれ1つのデフォルト転送クラスを自動的に割り当てます。つまり、キュー4~7に割り当てるために、11の転送クラス(16~5)が利用可能であることを意味します。
転送クラスのデフォルトの詳細については、 デフォルト転送クラスを参照してください。
例:最大16の転送クラスの設定
16 の転送クラスを設定するには、2 つの転送クラスを各キューにマッピングします。例えば:
[edit] user@host# edit class-of-service forwarding-classes user@host# set class fc0 queue-num 0 user@host# set class fc1 queue-num 0 user@host# set class fc2 queue-num 1 user@host# set class fc3 queue-num 1 user@host# set class fc4 queue-num 2 user@host# set class fc5 queue-num 2 user@host# set class fc6 queue-num 3 user@host# set class fc7 queue-num 3 user@host# set class fc8 queue-num 4 user@host# set class fc9 queue-num 4 user@host# set class fc10 queue-num 5 user@host# set class fc11 queue-num 5 user@host# set class fc12 queue-num 6 user@host# set class fc13 queue-num 6 user@host# set class fc14 queue-num 7 user@host# set class fc15 queue-num 7
4つのキューに制限されたPICの場合、4つの転送クラスを各キューにマッピングします。
マッピングする転送クラスとキューを指定します。
[edit] user@host# edit class-of-service restricted-queues user@host# set forwarding-class fc0 queue 0 user@host# set forwarding-class fc1 queue 0 user@host# set forwarding-class fc2 queue 0 user@host# set forwarding-class fc3 queue 0 user@host# set forwarding-class fc4 queue 1 user@host# set forwarding-class fc5 queue 1 user@host# set forwarding-class fc6 queue 1 user@host# set forwarding-class fc7 queue 1 user@host# set forwarding-class fc8 queue 2 user@host# set forwarding-class fc9 queue 2 user@host# set forwarding-class fc10 queue 2 user@host# set forwarding-class fc11 queue 2 user@host# set forwarding-class fc12 queue 3 user@host# set forwarding-class fc13 queue 3 user@host# set forwarding-class fc14 queue 3 user@host# set forwarding-class fc15 queue 3
複数の転送クラスをキューにマッピングする場合、複数の転送クラスは同じスケジューラを参照する必要があります。4 つのキューに制限されたインターフェイスに適用できるスケジューラ マップを設定するには:
スケジューラ マップ名を指定し、スケジューラ設定および転送クラスに関連付けます。
[edit] user@host# edit class-of-service scheduler-maps interface-restricted user@host# set forwarding-class be scheduler 00 user@host# set forwarding-class ef scheduler Q1 user@host# set forwarding-class ef1 scheduler Q1 user@host# set forwarding-class ef2 scheduler Q1 user@host# set forwarding-class af1 scheduler Q2 user@host# set forwarding-class af scheduler Q2 user@host# set forwarding-class nc scheduler Q3 user@host# set forwarding-class nc1 scheduler Q3
転送クラスを制限されたキューにマッピングします。
[edit] user@host# edit class-of-service restricted-queues user@host# set forwarding-class be queue 0 user@host# set forwarding-class ef queue 1 user@host# set forwarding-class ef1 queue 1 user@host# set forwarding-class ef2 queue 1 user@host# set forwarding-class af queue 2 user@host# set forwarding-class af1 queue 2 user@host# set forwarding-class nc queue 3 user@host# set forwarding-class nc1 queue 3