[index] AT-DC2552XS コマンドリファレンス 2.5.1.1

トラフィック制御 / Quality of Service


  - 受信ポートにおけるCoS値の割り当て
  - 送信キュー
  - CoS値にもとづく送信キューの割り当て
  - 送信スケジューリング
  - シェーピング

QoS(Quality of Service)関連機能について解説します。

本製品は、受信パケットのCoS値(タグなしパケットの場合は、受信ポート単位で内部的なCoS値の割り当てが可能)にもとづいて、該当パケットを転送後送信するときの動作を制御します。以下では、そのための各種機能・設定について説明します。

受信ポートにおけるCoS値の割り当て

受信パケットのCoS値は、次のようにして決定されます。

■ 受信ポートのデフォルトCoS値は0です。これを変更するには、インターフェースモードのmls qos cosコマンドを使います。
たとえば、ポート1.0.49で受信したすべてのタグなしパケットにCoS値「5」を割り当てるには、次のようにします。

awplus(config)# interface port1.0.49
awplus(config-if)# mls qos cos 5


送信キュー

各スイッチポートには、次に述べる2種類の送信キュー、合計12個が用意されています。
UQ0〜UQ7とMQ0〜MQ3は次のように対応付けられています。カッコ内は送信時の優先順位(1〜12)です。

表 1
ユニキャストパケット用
フラッディングパケット用
UQ0 (12) MQ0 (11)
UQ1 (10)
UQ2 (9) MQ1 (8)
UQ3 (7)
UQ4 (6) MQ2 (5)
UQ5 (4)
UQ6 (3) MQ3 (2)
UQ7 (1)

各送信キューの優先順位をあらためて示すと次のようになります。


本製品のQoS機能では、受信パケットのCoS値と、使用する送信キューの対応付け(cos-queueマップと呼びます)を変更することで、パケット送信時の優先順位や送信比率、送信レートなどを調整することができます。

CoS値にもとづく送信キューの割り当て

初期設定では、CoS値と送信キューは次のようにマッピングされています。カッコ内は送信時の優先順位(1〜12)です。
マッピングの設定(cos-queueマップ)上は、CoS値とUQ0〜UQ7の対応だけを定義していますが、UQ0〜UQ7とMQ0〜MQ3の固定的な対応付け(「送信キュー」を参照)にしたがって、MQ0〜MQ3も自動的に決まります。

表 2
CoS値
送信キュー
ユニキャストパケット用
フラッディングパケット用
0 UQ2 (9) MQ1 (8)
1 UQ0 (12) MQ0 (11)
2 UQ1 (10)
3 UQ3 (7) MQ1 (8)
4 UQ4 (6) MQ2 (5)
5 UQ5 (4)
6 UQ6 (3) MQ3 (2)
7 UQ7 (1)

初期設定では、各キューの優先順位とcos-queueマッピングにより、各種パケットが次の順序で優先的に送信されます。
  1. CoS値 7 のユニキャストパケット
  2. CoS値 7, 6 のフラッディングパケット
  3. CoS値 6 のユニキャストパケット
  4. CoS値 5 のユニキャストパケット
  5. CoS値 5, 4 のフラッディングパケット
  6. CoS値 4 のユニキャストパケット
  7. CoS値 3 のユニキャストパケット
  8. CoS値 3, 0 のフラッディングパケット
  9. CoS値 0 のユニキャストパケット
  10. CoS値 2 のユニキャストパケット
  11. CoS値 2, 1 のフラッディングパケット
  12. CoS値 1 のユニキャストパケット

■ CoS値と送信キューのマッピングを変更するには、mls qos map cos-queueコマンドを使ってcos-queueマップの内容を変更します。
たとえば、受信パケットのCoS値0〜7に対して、ユニキャストパケット用送信キューUQ2, UQ2, UQ3, UQ3, UQ4, UQ5, UQ6, UQ7を割り当てるには次のように設定します。

awplus(config)# mls qos map cos-queue 0 to 2
awplus(config)# mls qos map cos-queue 1 to 2
awplus(config)# mls qos map cos-queue 2 to 3
awplus(config)# mls qos map cos-queue 3 to 3
awplus(config)# mls qos map cos-queue 4 to 4
awplus(config)# mls qos map cos-queue 5 to 5
awplus(config)# mls qos map cos-queue 6 to 6
awplus(config)# mls qos map cos-queue 7 to 7

フラッディングパケット用の送信キューMQ0〜MQ3を明示的に指定することはできませんが、先に述べたとおりUQ0〜UQ7とMQ0〜MQ3は固定的に対応付けられているため(「送信キュー」を参照)、上記例ではCoS値0〜7に対して、MQ1, MQ1, MQ1, MQ1, MQ2, MQ2, MQ3, MQ3を指定したことになります。
上記コマンド実行後のCoS値と送信キューのマッピングは次のようになります。カッコ内は送信時の優先順位(1〜12)です。

表 3
CoS値
送信キュー
ユニキャストパケット用
フラッディングパケット用
0 UQ2 (9) MQ1 (8)
1
2 UQ3 (7)
3
4 UQ4 (6) MQ2 (5)
5 UQ5 (4)
6 UQ6 (3) MQ3 (2)
7 UQ7 (1)

上記設定変更後は、各キューの優先順位とcos-queueマッピングにより、各種パケットが次の順序で優先的に送信されます。
  1. CoS値 7 のユニキャストパケット
  2. CoS値 7, 6 のフラッディングパケット
  3. CoS値 6 のユニキャストパケット
  4. CoS値 5 のユニキャストパケット
  5. CoS値 5, 4 のフラッディングパケット
  6. CoS値 4 のユニキャストパケット
  7. CoS値 3, 2 のユニキャストパケット
  8. CoS値 3, 2, 1, 0 のフラッディングパケット
  9. CoS値 1, 0 のユニキャストパケット

■ cos-queueマップを初期設定に戻すには、mls qos map cos-queueコマンドをno形式で実行します。

awplus(config)# no mls qos map cos-queue


■ cos-queueマップの設定は、show mls qos maps cos-queueコマンドで確認できます。QUEUE欄に表示されているのはユニキャスト用送信キューUQ0〜UQ7の番号です。対応するフラッディングパケット用送信キューについては、「送信キュー」をご覧ください。

awplus# show mls qos maps cos-queue
  COS-TO-QUEUE-MAP:
    COS :    0   1   2   3   4   5   6   7
    --------------------------------------
    QUEUE:   2   2   3   3   4   5   6   7


送信スケジューリング

送信キューに格納されたパケットをどのような順序で出力するかは、キューごとに設定した送信スケジューリング方式によって決まります。

本製品は以下の2つのスケジューリング方式をサポートしています。初期状態では、すべての送信キューでPQ方式を使用するよう設定されています。

送信スイッチポートにおいては、これらの各方式を組み合わせて使うこともできます。具体的には、次の組み合わせが可能です。

■ 送信ポートで使用するスケジューリング方式、および、WRRにおけるキューの重み付け値(送信比率)は、インターフェースモードのpriority-queueコマンド、wrr-queue weightコマンドで設定します。

なお、これらのコマンドで指定する送信キュー番号は、ユニキャストパケット用の送信キュー(UQ0〜UQ7)の番号です。フラッディングパケット用の送信キュー(MQ0〜MQ3)を明示的に指定することはできませんが、次表のとおり、UQ1、UQ3、UQ5、UQ7の指定は、実際にはUQ1+MQ0、UQ3+MQ1、UQ5+MQ2、UQ7+MQ3に対する指定となります。送信キューの種類と優先順位については「送信キュー」を参照してください。

コマンド指定値
実際の設定対象
UQ0 UQ0:
UQ1 UQ1 + MQ0
UQ2 UQ2
UQ3 UQ3 + MQ1
UQ4 UQ4
UQ5 UQ5 + MQ2
UQ6 UQ6
UQ7 UQ7 + MQ3



■ 送信キューのスケジューリング方式、WRR使用時の重み付け(送信比率)設定は、show mls qos interfaceコマンドで確認できます。スケジューリング方式は「Scheduler」欄を、WRR使用時の重み付け値は「Weight」欄をご覧ください。

awplus# show mls qos interface port1.0.15

Interface: port1.0.15

  Number of egress queues: 8

  Egress Queue:         0
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             1
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         1
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             1
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         2
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             2
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         3
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             2
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         4
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             5
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         5
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             5
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         6
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             10
    Queue Limit:        -
    Egress Rate Limit:  0 Kb

  Egress Queue:         7
    Status:             Enabled
    Scheduler:          Strict Priority
    Queue Limit:        -
    Egress Rate Limit:  0 Kb


シェーピング

パケット送信時の速度(送信間隔)を調整することで、ネットワークに流れ込むトラフィックを一定のレートにならす機能をシェーピングと呼びます。

本製品では、送信キューやスイッチポートに対して、送信レートの上限値を設定することで、シェーピングを行うことが可能です。

■ キューに対して送信レートの上限値を設定するには、インターフェースモードのwrr-queue egress-rate-limitコマンドを使います。

なお、このコマンドで指定する送信キュー番号は、ユニキャストパケット用の送信キュー(UQ0〜UQ7)の番号です。フラッディングパケット用の送信キュー(MQ0〜MQ3)を明示的に指定することはできませんが、次表のとおり、UQ1、UQ3、UQ5、UQ7の指定は、実際にはUQ1+MQ0、UQ3+MQ1、UQ5+MQ2、UQ7+MQ3に対する指定となります。送信キューの種類については「送信キュー」を参照してください。

コマンド指定値
実際の設定対象
UQ0 UQ0:
UQ1 UQ1 + MQ0
UQ2 UQ2
UQ3 UQ3 + MQ1
UQ4 UQ4
UQ5 UQ5 + MQ2
UQ6 UQ6
UQ7 UQ7 + MQ3


たとえば、ポート1.0.13の送信キュー0〜2(厳密にはUQ0, UQ1+MQ0, UQ2)の送信レートをそれぞれ30Mbpsに制限するには、次のようにします。

awplus(config)# interface port1.0.13
awplus(config-if)# wrr-queue egress-rate-limit 30m queues 0 1 2

Note - 指定した上限値が8Kbpsの倍数でない場合は、指定値よりも大きい直近の倍数に丸められます。

■ スイッチポートに対して送信レートの上限値を設定するには、インターフェースモードのegress-rate-limitコマンドを使います。

たとえば、ポート1.0.14の送信レートを400Mbps(409600Kbps)に制限するには、次のように指定します。

awplus(config-if)# egress-rate-limit 409600

Note - 指定した上限値が64Kbpsの倍数でない場合は、指定値よりも大きい直近の倍数に丸められます。

■ キューごとの送信レート上限値は、show mls qos interfaceコマンドで確認できます。「Egress Rate Limit」欄をご覧ください。

awplus# show mls qos interface port1.0.15

Interface: port1.0.15

  Number of egress queues: 8

  Egress Queue:         0
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             1
    Queue Limit:        12%
    Egress Rate Limit:  30720 Kb

  Egress Queue:         1
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             1
    Queue Limit:        12%
    Egress Rate Limit:  30720 Kb

  Egress Queue:         2
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             2
    Queue Limit:        12%
    Egress Rate Limit:  30720 Kb

  Egress Queue:         3
    Status:             Enabled
    Scheduler:          Weighted Round-Robin
    Weight:             2
    Queue Limit:        12%
    Egress Rate Limit:  0 Kb
...


(C) 2011 アライドテレシスホールディングス株式会社

PN: 613-001633 Rev.A