Catalyst 4000 ファミリー スイッチ Cisco IOS ソフトウェア コンフィギュレーション ガイド,Cisco IOS Release 12.1(13)EW
QoSの設定
QoSの設定
発行日;2012/02/04 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

QoSの設定

QoSの概要

プライオリティ

QoSの用語

QoSの基本モデル

分類

QoS ACLに基づく分類

クラス マップおよびポリシー マップに基づく分類

ポリシングおよびマーキング

内部DSCP値

マッピング テーブル

キューイングおよびスケジューリング

アクティブ キュー管理

送信キュー間のリンク帯域幅の共有

ストリクト プライオリティ/ロー レイテンシ キューイング

トラフィック シェーピング

パケットの変更

QoSの設定

QoSのデフォルト設定

設定時の注意事項

QoSのグローバルなイネーブル化

ダイナミック バッファ制限のイネーブル化

名前付き集約ポリサーの作成

QoSポリシーの設定

QoSポリシー設定の概要

クラス マップの設定(任意)

クラス マップの設定の確認

ポリシー マップの設定

ポリシー マップの設定の確認

インターフェイスへのポリシー マップの対応づけ

インターフェイス上でのQoS機能のイネーブル化またはディセーブル化

レイヤ2インターフェイス上でのVLANベースQoSの設定

インターフェイスの信頼状態の設定

インターフェイスのCoS値の設定

インターフェイスのDSCP値の設定

送信キューの設定

DSCP値から特定の送信キューへのマッピング

送信キュー間での帯域幅の割り当て

送信キューのトラフィック シェーピングの設定

ハイ プライオリティ送信キューの設定

DSCPマップの設定

CoS-DSCPマップの設定

ポリシング済みDSCPマップの設定

DSCP-CoSマップの設定

QoSの設定

この章では、Catalyst 4000ファミリー スイッチ上でQuality of Service(QoS;サービス品質)を設定する方法について説明します。設定上の注意事項、設定手順、および設定例も示します。

この章の内容は、次のとおりです。

「QoSの概要」

「QoSの設定」


) この章で使用しているコマンドの構文および使用方法の詳細については、『Cisco IOS Command Reference for the Catalyst 4000 Family Switch』および次のURLにあるマニュアルを参照してください。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121cgcr/index.htm


QoSの概要

ネットワークは通常、 ベスト エフォート型 の配信方式で動作します。したがって、すべてのトラフィックに等しいプライオリティが与えられるため、適切な速さで配信される可能性はどのトラフィックでも同等です。輻輳が発生した場合に廃棄される可能性についても、すべてのトラフィックで同等です。

QoSは、ネットワーク トラフィック(ユニキャストおよびマルチキャスト)を選択して、トラフィックの相対的な重要度に従ってプライオリティを与え、プライオリティ ベースの処理を実行して、輻輳を回避します。QoSはさらに、ネットワーク トラフィックが使用する帯域幅を制限します。QoSを実装すると、ネットワーク パフォーマンスが予測可能になり、帯域幅をより効率的に利用できます。

このセクションの内容は次のとおりです。

「プライオリティ」

「QoSの用語」

「QoSの基本モデル」

「分類」

「ポリシングおよびマーキング」

「マッピング テーブル」

「キューイングおよびスケジューリング」

「パケットの変更」

プライオリティ

このリリースに実装されたQoSは、Internet Engineering Task Force(IETF)が提案する新規格であるDiffServアーキテクチャをベースとしています。このアーキテクチャでは、ネットワークの入口で各パケットを分類すると規定しています。この分類は、Internet Protocol(IP)パケット ヘッダーで伝達され、短縮されたInternet Protocol(IP) Type of Service(ToS;サービス タイプ)フィールドの6ビットを使用して分類( class )情報が伝えられます。レイヤ2フレームで分類が伝えられる場合もあります。レイヤ2フレームまたはレイヤ3パケットのこのような特殊ビットについては、図 27-1を参照してください。

レイヤ2フレーム内のプライオリティ値:

レイヤ2のISL(スイッチ間リンク)フレーム ヘッダーには、1バイトのユーザ フィールドがあり、その下位3ビットでIEEE(米国電気電子学会) 802.1p Class of Service(CoS;サービス クラス)値が伝えられます。レイヤ2 ISLトランクとして設定されたインターフェイス上では、すべてのトラフィックがISLフレームを使用します。

レイヤ2 802.1qフレーム ヘッダーには、2バイトのタグ制御情報フィールドがあり、その上位3ビット(ユーザ プライオリティ ビット)でCoS値が伝達されます。レイヤ2 802.1qトランクとして設定されたインターフェイスでは、ネイティブVLAN(仮想LAN)のトラフィックを除き、すべてのトラフィックが802.1qフレームに収められます。

その他のフレーム タイプでは、レイヤ2 CoS値は伝達されません。

レイヤ2 CoS値は、0(ロー プライオリティ)~7(ハイ プライオリティ)の範囲です。

レイヤ3パケット内の優先順位ビット:

レイヤ3 IPパケットは、IP precedence値またはDifferentiated Services Code Point(DSCP)値のいずれかを伝達します。DSCP値はIP precedence値と下位互換性があるので、QoSではどちらの値でも使用できます。

IP precedence値は、0~7の範囲です。

DSCP値は、0~63の範囲です。

図 27-1 フレームおよびパケット内のQoS分類レイヤ

 

インターネット上のすべてのスイッチおよびルータはクラス情報に基づき、同じクラス情報を持ったパケットに対しては転送上、同じ取り扱いを行い、クラス情報が異なるパケットに対しては異なった取り扱いを行います。設定されたポリシー、パケットの詳しい検証、またはその両方に基づき、エンド ホストあるいは途中にあるスイッチまたはルータによって、パケット内のクラス情報が割り当てられる場合があります。パケットの詳しい検証は、コア スイッチおよびルータが過負荷にならないよう、ネットワーク エッジに近い場所で行われることが前提になります。

パス上にあるスイッチおよびルータは、クラス情報を使用して、トラフィック クラスごとに割り当てられるリソースの量を制限することができます。DiffServアーキテクチャで個々の装置がトラフィックを処理するときの動作を、ホップ単位の動作といいます。パス上のすべての装置が一貫性のあるホップ単位の動作を提供する場合、エンドツーエンドのQoSソリューションを構築することができます。

ネットワークにQoSを実装する作業は、インターネットワーキング装置が提供するQoS機能、ネットワーク上のトラフィック タイプおよびトラフィック パターン、着信トラフィックおよび発信トラフィックに対して適用しなければならない制御のきめ細かさに応じて、簡単な場合も、複雑になる場合もあります。

QoSの用語

QoS機能についての説明では、次の用語が使用されます。

パケット ― レイヤ3でトラフィックを伝達します。

フレーム ― レイヤ2でトラフィックを伝達します。レイヤ2フレームは、レイヤ3パケットを伝達します。

ラベル ― レイヤ3パケットおよびレイヤ2フレームで伝達されるプライオリティ値です。

レイヤ2 CoS値。範囲は0(ロー プライオリティ)~7(ハイ プライオリティ)です。

レイヤ2 ISLフレーム ヘッダーには、1バイトのユーザ フィールド(下位3ビットでIEEE 802.1p CoS値を伝達)があります。

レイヤ2 802.1qフレーム ヘッダーには、2バイトのタグ制御情報フィールドがあり、その上位3ビット(ユーザ プライオリティ ビット)でCoS値が伝達されます。

その他のフレーム タイプでは、レイヤ2 CoS値は伝達されません。


) レイヤ2 ISLトランクとして設定されたインターフェイスでは、すべてのトラフィックがISLフレームに収められます。レイヤ2 802.1qトランクとして設定されたインターフェイスでは、ネイティブVLANのトラフィックを除き、すべてのトラフィックが802.1qフレームに収められます。


レイヤ3 IP precedence値 ― IPバージョン4の仕様では、1バイトのToSフィールドの上位3ビットをIP precedenceと定義しています。IP precedence値の範囲は、0(ロー プライオリティ)~7(ハイ プライオリティ)です。

レイヤ3 DSCP値 ― Internet Engineering Task Force(IETF)は、1バイトのIP ToSフィールドのうち上位6ビットをDSCPと定義しています。個々のDSCP値が表すホップ単位での動作は、設定変更可能です。DSCP値の範囲は0~63です。「DSCPマップの設定」を参照してください。


) レイヤ3のIPパケットは、IP precedence値またはDSCP値のいずれかを伝送します。DSCP値はIP precedence値と下位互換性があるので、QoSではどちらの値でも使用できます。表 27-1を参照してください。


 

表 27-1 IP precedence値およびDSCP値

3ビットのIP precedence
ToSの6 MSb1
6ビットのDSCP
 
3ビットのIP precedence
ToSの6 MSb1
6ビットのDSCP
8
7
6
 
5
4
3
8
7
6
 
5
4
3

0

0
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

0
1
2
3
4
5
6
7

 

4

1
1
1
1
1
1
1
1

0
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

32
33
34
35
36
37
38
39

1

0
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0

1
1
1
1
1
1
1
1

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

8
9
10
11
12
13
14
15

 

5

1
1
1
1
1
1
1
1

0
0
0
0
0
0
0
0

1
1
1
1
1
1
1
1

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

40
41
42
43
44
45
46
47

2

0
0
0
0
0
0
0
0

1
1
1
1
1
1
1
1

0
0
0
0
0
0
0
0

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

16
17
18
19
20
21
22
23

 

6

1
1
1
1
1
1
1
1

1
1
1
1
1
1
1
1

0
0
0
0
0
0
0
0

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

48
49
50
51
52
53
54
55

3

0
0
0
0
0
0
0
0

1
1
1
1
1
1
1
1

1
1
1
1
1
1
1
1

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

24
25
26
27
28
29
30
31

 

7

1
1
1
1
1
1
1
1

1
1
1
1
1
1
1
1

1
1
1
1
1
1
1
1

 

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

56
57
58
59
60
61
62
63

1.MSb = Most Significant bit(上位ビット)

分類 ― マーキングするトラフィックを選択することです。

マーキング ― RFC 2475に従い、レイヤ3のDSCP値をパケットに設定する処理です。このマニュアルでは、マーキングの定義を拡大して、レイヤ2 CoS値の設定までを含めています。

スケジューリング ― レイヤ2フレームをキューに割り当てることです。QoSは、内部DSCP値(内部DSCP値を参照)に基づいて、キューにフレームを割り当てます。

ポリシング ― トラフィック フローが使用する帯域幅を制限する処理です。ポリシングによって、トラフィックのマーキングまたは廃棄が可能になります。

QoSの基本モデル

図 27-2に、QoSの基本モデルを示します。入力インターフェイスおよび出力インターフェイスで行われるアクションには、トラフィックの分類、ポリシング、およびマーキングがあります。

分類は、トラフィックの種類を区別します。このプロセスによって、パケットの内部DSCPが生成されます。内部DSCPは、今後このパケットに対して実行されるすべてのQoSアクションを表します。詳細については、「分類」を参照してください。

ポリシングは、トラフィック速度を設定済みのポリサーと比較することによって、パケットが適合であるか、それとも不適合であるかを判別します。ポリサーは、トラフィック フローが消費する帯域幅を制限します。この判別の結果が、マーカーに引き渡されます。詳細については、「ポリシングおよびマーキング」を参照してください。

マーキングは、パケットが不適合のときに行われるアクションに関してポリサーの設定情報を評価し、パケットの処置(変更なしにパケットを通過させるか、パケット内のDSCP値をマーク ダウンするか、それともパケットを廃棄するか)を決定します。詳細については、「ポリシングおよびマーキング」を参照してください。

出力インターフェイスで行われるアクションには、キューイングおよびスケジューリングがあります。

キューイングは、内部DSCPを評価し、4つの出力キューのどれにパケットを入れるかを決定します。

スケジューリングは、出力(送信)ポートの共有およびシェーピング設定に基づいて、4つの出力(送信)キューを処理します。共有およびシェーピング設定については、「キューイングおよびスケジューリング」を参照してください。

図 27-2 QoSの基本モデル

 

分類

分類は、パケットの各フィールドを検証することで、トラフィックの種類を区別するプロセスです。スイッチ上でQoSがグローバルでイネーブルに設定されている場合に限り、分類がイネーブルになります。デフォルトでは、QoSはグローバルでディセーブルに設定されているため、分類は行われません。

フレームまたはパケットのどのフィールドを使用して着信トラフィックを分類するかを、ユーザが指定します。

さまざまな分類オプションを、図 27-3に示します。

非IPトラフィックについては、次の分類オプションがあります。

ポート デフォルトを使用します。パケットが非IPパケットである場合、デフォルトのポートDSCP値を着信パケットに割り当てます。

着信フレームのCoS値を信頼します(ポートをtrust CoSに設定する)。この場合、設定変更可能なCoS-DSCPマップを使用して、内部DSCP値を生成します。レイヤ2 ISLフレーム ヘッダーでは、1バイトのユーザ フィールドの下位3ビットを使用してCoS値を伝達します。レイヤ2 802.1qフレーム ヘッダーでは、タグ制御情報フィールドの上位3ビットを使用してCoS値を伝達します。CoS値は、0(ロー プライオリティ)~7(ハイ プライオリティ)の範囲です。フレームにCoS値が含まれていない場合は、着信フレームにデフォルトのポートCoSを割り当てます。

trust DSCPの設定は、非IPトラフィックに対しては無効です。ポートをtrust DSCPで設定し、非IPトラフィックを受信した場合、スイッチはデフォルトのポートDSCPを割り当てます。

IPトラフィックについては、次の分類オプションがあります。

着信パケットのIP DSCPを信頼し(ポートをtrust DSCPに設定し)、パケットに同じDSCPを割り当てて内部的に使用します。IETFは、1バイトのToSフィールドの上位6ビットをDSCPとして定義しています。個々のDSCP値が表すプライオリティは、設定変更可能です。DSCP値の範囲は、0~63です。

着信パケットのCoS値(存在する場合)を信頼し、CoS-DSCPマップを使用してDSCPを生成します。

設定されたIP標準Access Control List(ACL;アクセス制御リスト)または拡張ACL(IPヘッダーの各種のフィールドを検証する)に基づいて、分類を実行します。ACLを設定していない場合は、入力ポートの信頼状態に基づくデフォルトのDSCPがパケットに割り当てられます。ACLを設定している場合は、ポリシー マップによって着信フレームに割り当てるDSCPが指定されます。

ここで説明するマップについての詳細は、「マッピング テーブル」を参照してください。ポートの信頼状態の設定手順については、「インターフェイスの信頼状態の設定」を参照してください。

図 27-3 分類のフローチャート

 

QoS ACLに基づく分類

QoSのパケット分類は、複数の一致基準を使用して行うことができ、指定された一致基準をパケットがすべて満たしている必要があるか、それとも最低1つの一致基準を満たしていれば良いかを指定することができます。QoS分類基準を定義するには、クラス マップで一致(match)ステートメントを使用して一致基準を指定します。一致ステートメントでは、マッチングの対象になるパケットのフィールドを指定することも、IP基準ACLまたはIP拡張ACLを使用することもできます。詳細については、「「クラス マップおよびポリシー マップに基づく分類」」を参照してください。

すべての一致基準に一致するようにクラス マップを設定した場合、パケットがクラス マップ内のすべての一致ステートメントを満たしていないと、QoSアクションは実行されません。パケットがクラス マップの一致基準を1つでも満たさない場合、そのパケットについてQoSアクションは実行されません。

最低1つの一致基準に一致するようにクラス マップを設定した場合、パケットがクラス マップ内の少なくとも1つの一致ステートメントを満たしていれば、QoSアクションが実行されます。パケットがクラス マップの一致基準をどれも満たしていない場合、そのパケットについてQoSアクションは実行されません。


) IP標準ACLおよびIP拡張ACLを使用する場合、QoSの文脈上、ACLの中の許可(permit)Access Control Entry(ACE;アクセス制御エントリ)および拒否(deny)ACEの意味が少し違ってきます。


[permit]を指定しているACEを検出し、なおかつ、パケットがそれを満たしている場合、そのパケットはQoS分類の一致基準に「一致した」ことになります。

[deny]を指定しているACEを検出し、なおかつ、パケットがそれを満たしている場合、そのパケットはQoS分類の一致基準に「一致しない」ことになります。

一致する許可(permit)アクションが検出されないまま、すべてのACEの検証が終わった場合、そのパケットはQoS分類の基準に「一致しない」ことになります。


) アクセス リストを作成するとき、アクセス リストの末尾にはデフォルトで、リストの末尾に達するまで一致が見つからなかった場合に使用される暗黙的な拒否(deny)ステートメントがあることを理解しておいてください。


クラス マップを使用してトラフィック クラスを定義した後で、トラフィック クラスに対するQoSアクションを定義するポリシーを作成できます。ポリシーでは、複数のクラスのそれぞれについて、アクションを指定できます。ポリシーには、クラスを集約的に分類する(たとえば、DSCPを割り当てる)コマンド、またはクラスを速度制限するコマンドを組み込めます。このポリシーを特定のポートに対応づけて、そのポート上でポリシーを有効にします。

IPトラフィックを分類するためのIP ACLを実装するには、 access-list グローバル コンフィギュレーション コマンドを使用します。詳しい設定手順については、「QoSポリシーの設定」を参照してください。

クラス マップおよびポリシー マップに基づく分類

クラス マップは、特定のトラフィック フロー(クラス)を、他のすべてのトラフィックから切り離して名前を付けるためのメカニズムです。クラス マップは、特定のトラフィック フローを分類する目的で使用する一致基準を定義します。基準としては、ACLで定義されるアクセス グループとのマッチング、または特定のDSCP値またはIP precedence値のリストとのマッチングを指定できます。複数のタイプのトラフィックを分類する必要がある場合は、別のクラス マップを別の名前で作成します。クラス マップの基準に関するパケットのマッチングが終わった後で、ポリシー マップを使用してQoSアクションを指定できます。

ポリシー マップは、各トラフィック クラスに対するQoSアクションを指定します。アクションとしては、トラフィック クラスのCoS値またはDSCP値を信頼すること、トラフィック クラスの特定のDSCP値またはIP precedence値の設定、またはトラフィックの帯域幅制限の指定およびトラフィックが不適合であるときのアクションを含めることができます。ポリシー マップを有効にするには、インターフェイスにポリシー マップを対応づける必要があります。

クラス マップを作成するには、 class-map グローバル コンフィギュレーション コマンドを使用します。 class-map コマンドを入力すると、スイッチはクラス マップ コンフィギュレーション モードになります。このモードでは、 match クラス マップ コンフィギュレーション コマンドを使用して、トラフィックの一致基準を定義します。

ポリシー マップを作成して名前を付けるには、 policy-map グローバル コンフィギュレーション コマンドを使用します。このコマンドを入力すると、スイッチはポリシー マップ コンフィギュレーション モードになります。このモードで、 trust または set ポリシー マップ コンフィギュレーション コマンドおよびポリシー マップ クラス コンフィギュレーション コマンドを使用して、特定のトラフィック クラスに対して実行すべきアクションを指定します。ポリシー マップを有効にするには、 service-policy インターフェイス コンフィギュレーション コマンドを使用して、ポリシー マップをインターフェイスに対応づけます。

ポリシー マップには、ポリサーを定義するコマンド(トラフィックの帯域幅制限)および制限を超過した場合に実行するアクションを含めることもできます。詳細については、「ポリシングおよびマーキング」を参照してください。

ポリシー マップには、次のような特徴もあります。

1つのポリシー マップに、最大8つのクラス ステートメントを指定できます。

1つのポリシー マップで異なるクラスを指定できます。

ポリシー マップの信頼状態は、インターフェイスの信頼状態を上書きします。

詳しい設定手順については、「QoSポリシーの設定」を参照してください。

ポリシングおよびマーキング

パケットが分類され、パケットに内部DSCP値が割り当てられると、ポリシングおよびマーキングのプロセスが開始可能になります(図 27-4を参照)。

ポリシングを行うには、トラフィックの帯域幅制限を指定するポリサーを作成します。この制限を超過するパケットは、不適合 パケットです。各ポリサーは、適合または不適合パケットに対して実行すべきアクションを指定します。これらのアクション(マーカーによって実行される)では、パケットを変更せずにそのまま通過させること、パケットを廃棄すること、または、設定変更可能なポリシング済みDSCPマップから得られる新しいDSCP値にパケットをマークダウンすることが可能です。ポリシング済みDSCPマップの詳細については、「マッピング テーブル」を参照してください。

2種類のポリサーを作成できます。

個別

一致するトラフィック クラスごとに、ポリサーで指定される帯域幅制限をQoSが個別に適用します。ポリシー マップでこのタイプのポリサーを設定するには、 police ポリシー マップ コンフィギュレーション コマンドを使用します。

集約

一致するすべてのトラフィック フローに、集約ポリサーで指定される帯域幅制限をQoSが累積的に適用します。ポリシー マップで、集約ポリサー名を指定してこのタイプのポリサーを設定するには、 police aggregate ポリシー マップ コンフィギュレーション コマンドを使用します。ポリサーの帯域幅制限を指定するには、 qos aggregate-policer グローバル コンフィギュレーション コマンドを使用します。集約ポリサーは、1つのポリシー マップ内で複数のトラフィック クラスによって共有されます。

ポリシングおよびポリサーを設定する場合、次の点に注意してください。

デフォルトで設定されるポリサーはありません。

設定できるのは、平均速度および承認されるバースト パラメータだけです。

入力インターフェイスおよび出力インターフェイスのどちらでも、ポリシングを行うことができます。

入力インターフェイスでは、1022個のポリサーがサポートされます。

出力インターフェイスでは、1022個のポリサーがサポートされます。


) ポリサー0および1は予約されています。


すべてのポリサーを個別ポリサーまたは集約ポリサーにできます。

[no policing]ポリサー用に、2つの入力ポリサーおよび2つの出力ポリサーが予約されています。

QoSを設定したインターフェイス上では、そのインターフェイス経由で送受信されるすべてのトラフィックが、インターフェイスに対応づけられたポリシー マップに従って、分類、ポリシング、およびマーキングされます。ただし、インターフェイスがqos vlan-based コマンドによってVLANベースQoSを使用するように設定されている場合は、そのインターフェイス経由で送受信されるトラフィックは、パケットの所属先VLANに対応づけられたポリシー マップ(VLANインターフェイス上に設定されている)に従って、分類、ポリシング、およびマーキングされます。パケットの所属先VLANにポリシー マップが対応づけられていない場合には、インターフェイスに対応づけられたポリシー マップが使用されます。

ポリシー マップおよびポリシング アクションを設定した後、 service-policy インターフェイス コンフィギュレーション コマンドを使用して、入力インターフェイスまたは出力インターフェイスにポリシーを対応づけます。詳しい設定手順については、「QoSポリシーの設定」および「名前付き集約ポリサーの作成」を参照してください。

図 27-4 ポリシングおよびマーキングのフローチャート

 

内部DSCP値

ここでは、内部DSCP値について説明します。

「内部DSCPの作成元」

「出力ToSおよびCoSの作成元」

内部DSCPの作成元

QoSは処理中、すべてのトラフィック(非IPトラフィックを含む)のプライオリティを、内部DSCP値で表します。QoSは、以下に基づいて内部DSCP値を作成します。

trust CoSトラフィックの場合、受信したレイヤ2 CoS値または入力インターフェイスのレイヤ2 CoS値

trust DSCPトラフィックの場合、受信したDSCP値または入力インターフェイスのDSCP値から

untrustedトラフィックの場合、入力インターフェイスのDSCP値から

トラフィックの信頼状態は、入力インターフェイスの信頼状態です。ただし、ポリシー アクションにより、トラフィック クラスに対して別の設定が行われる場合を除きます。

QoSは、設定変更可能な各種のマッピング テーブルを使用して、3ビットのCoSから6ビットの内部DSCP値を引き出します(DSCPマップの設定を参照)。

出力ToSおよびCoSの作成元

出力IPトラフィックについては、QoSは内部DSCP値からToSバイトを作成して、出力インターフェイスに送信し、それがIPパケットに書き込まれます。 trust dscp および untrusted IPトラフィックの場合、ToSバイトには、受信したToSバイトの元の下位2ビットが含まれます。


) 内部ToS値はIP precedence値を使用します(IP precedence値およびDSCP値を参照)。


すべての出力トラフィックについて、QoSは設定変更可能なマッピング テーブルを使用して、トラフィックと対応づけられた内部ToS値からCoS値を作成します(DSCP-CoSマップの設定を参照)。QoSはCoS値を送信して、ISLフレームおよび802.1qフレームに書き込ませます。

qos trust cosコマンドを使用してtrust cosに設定された入力インターフェイスに着信したトラフィックの場合、送信されるCoSは、常に着信パケットのCoS(または、パケットをタグなしで受信した場合には、入力インターフェイスのデフォルトCoS)です。

qos trust dscp コマンドを使用してインターフェイスの信頼状態をtrust dscpに設定していない場合、セキュリティおよびQoS ACL分類では、常にインターフェイスDSCPが使用され、着信パケットのDSCPは使用されません。

マッピング テーブル

QoSの処理中、スイッチはすべてのトラフィック(非IPトラフィックを含む)のプライオリティを、内部DSCP値で表します。

分類の際、QoSは設定変更可能なマッピング テーブルを使用して、受信したCoSから内部DSCP(6ビット値)を引き出します。これらのマップには、CoS-DSCPマップが含まれます。

ポリシングの際、QoSはIPパケットまたは非IPパケットに別のDSCP値を割り当てることがあります(パケットが不適合であり、なおかつポリサーでマークダウン後のDSCP値が指定されている場合)。この設定変更可能なマップを、ポリシング済みDSCPマップといいます。

トラフィックがスケジューリング段階に達する前に、QoSは内部DSCPを使用して、4つの出力キューのうち1つを出力処理用に選択します。DSCPから出力キューへのマッピングは、qos map dscp to tx-queueコマンドを使用して設定します。

CoS-DSCPおよびDSCP-CoSマップのデフォルト値は、ネットワークに適している場合も、適していない場合もあります。

詳しい設定手順については、「DSCPマップの設定」を参照してください。

キューイングおよびスケジューリング

各物理ポートには、4つの送信キュー(出力キュー)があります。送信する必要がある各パケットは、いずれかの送信キューに格納されます。各送信キューは、送信キュー スケジューリング アルゴリズムに基づいて処理されます。

(DSCPのマークダウンも含めて)最終的な送信DSCPが算出されると、送信DSCPと送信キューのマッピング設定によって、送信キューが決定されます。パケットは、送信DSCPから決定された送信ポートの送信キューに格納されます。送信DSCPと送信キューのマッピングを設定するには、qos map dscp to tx-queue コマンドを使用します。パケットが入力ポートおよび出力ポートのQoSポリシーおよび信頼状態の設定によって判別された非IPパケットである場合、送信DSCPは、内部DSCP値です。

詳しい設定手順については、「送信キューの設定」を参照してください。

アクティブ キュー管理

Active queue management(AQM;アクティブ キュー管理)は、バッファ オーバーフローが発生する前に輻輳に関して通知するプロアクティブな手法です。AQMは、Dynamic buffer limiting(DBL;ダイナミック バッファ制限)を使用して実行されます。DBLはスイッチ内の各トラフィック フローのキュー長を追跡します。フローのキュー長が制限を超えると、DBLはパケットを廃棄するか、Explicit Congestion Notification(ECN;明示的輻輳通知)ビットをパケット ヘッダーに追加します。

DBLは、フローをアダプティブとアグレッシブの2つのカテゴリに分類します。アダプティブ フローは、輻輳通知を受信するたびにパケット伝送レートを減らします。アグレッシブ フローは、輻輳通知に対してどのような修正措置も行いません。すべてのアクティブ フローに対して、スイッチは「buffersUsed」および「credits」という2つのパラメータを保持します。すべてのフローは、グローバル パラメータの「max-credits」から開始されます。creditsが「aggressive-credits」(別のグローバル パラメータ)より少ないフローの場合、アグレッシブ フローと見なされ、
「aggressiveBufferLimit」と呼ばれる小さなバッファ制限が指定されます。

キュー長は、パケット数によって測定されます。キュー内のパケット数は、フローに与えられるバッファ スペースのサイズを決定します。フローのキュー長が長い場合、算出値は低下します。これにより、新規着信フロー用のバッファ スペースがキュー内に確保されます。この結果、すべてのフローが、キューを通じて均整のとれたパケットの配分を得ることができます。

送信キュー間のリンク帯域幅の共有

送信ポートの4つの送信キューは、その送信ポートで使用できるリンク帯域幅を分け合います。送信キュー間でリンク帯域幅を共有する方法を変更するには、インターフェイス送信キュー コンフィギュレーション モードで bandwidth コマンドを使用します。このコマンドを使用して、各送信キューに最低限保証される帯域幅を指定します。

デフォルトでは、すべてのキューがラウンド ロビン方式でスケジューリングされます。

帯域幅を設定できるのは、次のポートに限られます。

Supervisor Engine III(WS-X4014)上のアップリンク ポート

WS-X4306-GBライン カード上のポート

WS-X4232-GB-RJライン カード上の2つの1000BASE-Xポート

WS-X4418-GBライン カード上の最初の2つのポート

WS-X4412-2GB-TXライン カード上の2つの1000BASE-Xポート

ストリクト プライオリティ/ロー レイテンシ キューイング

インターフェイス コンフィギュレーション モードでpriority high 送信キュー コンフィギュレーション コマンドを使用すると、各ポートの送信キュー3に高いプライオリティを設定できます。送信キュー3に高いプライオリティを設定した場合、送信キュー3のパケットは、他のキューのパケットよりも優先的にスケジューリングされます。

送信キュー3に高いプライオリティを設定した場合、パケットが他の送信キューよりも優先的にスケジューリングされるのは、割り当てられた帯域幅共有の設定を超えていない場合に限られます。設定されたシェープ レートを超過するトラフィックは、キューに格納された後、設定された速度で送信されます。バースト トラフィックによってキューの容量を超過した場合には、設定されたシェープ レートを維持するために、パケットが廃棄されます。

トラフィック シェーピング

トラフィック シェーピングは、トラフィックが設定上の最大送信速度に従うよう、発信トラフィックの速度を制御する能力を提供します。ある制限に適合するトラフィックをシェーピングすると、ダウンストリーム トラフィックの速度要件を満たし、データ速度の不一致を解消することができます。

各送信キューに最大速度を設定するには、shape コマンドを使用します。この設定により、トラフィックの最大速度を指定できます。設定されたシェープ レートを超過するトラフィックは、キューに格納された後、設定された速度で送信されます。バースト トラフィックによってキューの容量を超過した場合には、設定されたシェープ レートを維持するために、パケットが廃棄されます。

パケットの変更

パケットの分類、ポリシング、およびキューイングによって、QoSが提供されます。次のプロセスで、パケットの変更が行われることがあります。

IPパケットの場合、分類によって、パケットにDSCPが割り当てられます。ただし、この段階でパケットは変更されません。割り当てられたDSCPが伝えられるだけです。その理由は、QoSの分類とACLの検索が並行して実行され、ACLによってパケットの拒否とロギングが指示される場合があるためです。この状況では、パケットは元のDSCP付きでCPUに転送され、CPUで再びACLソフトウェアによって処理されます。

非IPパケットの場合、分類によってパケットに内部DSCPが割り当てられますが、非IPパケットにDSCPはないので、上書きは行われません。代わりに、内部DSCPがキューイングおよびスケジューリング決定の両方で使用され、さらにパケットがISLまたは802.1qトランク ポートのいずれかで送信される場合、タグへのCoSプライオリティ値の書き込みに使用されます。

ポリシングでは、IPパケットおよび非IPパケットに別のDSCPが割り当てられます(パケットが不適合であり、なおかつポリサーでマークダウンDSCPが指定されている場合)。この場合にも、パケットのDSCPは変更されませんが、マークダウン後の値が伝えられます。IPパケットの場合、後の段階でパケットの変更が行われます。

QoSの設定

QoSを設定する前に、次の事項を完全に理解する必要があります。

使用するアプリケーションのタイプ、およびネットワーク上のトラフィック パターン

トラフィックの特性およびネットワークの要件。バースト性のトラフィックかどうか。音声およびビデオ ストリーム用に帯域幅を予約する必要があるかどうか。

帯域幅の要件およびネットワークの速度

ネットワーク上の輻輳発生個所

ここでは、Catalyst 4000ファミリー スイッチ上でQoSを設定する手順について説明します。

「QoSのデフォルト設定」

「設定時の注意事項」

「QoSのグローバルなイネーブル化」

「ダイナミック バッファ制限のイネーブル化」

「名前付き集約ポリサーの作成」

「QoSポリシーの設定」

「インターフェイス上でのQoS機能のイネーブル化またはディセーブル化」

「レイヤ2インターフェイス上でのVLANベースQoSの設定」

「インターフェイスの信頼状態の設定」

「インターフェイスのCoS値の設定」

「インターフェイスのDSCP値の設定」

「送信キューの設定」

「DSCPマップの設定」

QoSのデフォルト設定

表 27-2 に、QoSのデフォルト設定を示します。

 

表 27-2 QoSのデフォルト設定

機能
デフォルト値

QoSのグローバルな設定

ディセーブル

インターフェイスQoSの設定(ポート単位)

QoSがグローバルなイネーブルの場合、イネーブル

インターフェイスCoS値

0

インターフェイスDSCP値

0

CoSからDSCPへのマッピング
(CoS値に基づくDSCPの設定)

CoS 0 = DSCP 0
CoS 1 = DSCP 8
CoS 2 = DSCP 16
CoS 3 = DSCP 24
CoS 4 = DSCP 32
CoS 5 = DSCP 40
CoS 6 = DSCP 48
CoS 7 = DSCP 56

DSCPからCoSへのマッピング
(DSCP値に基づくCoSの設定)

DSCP 0~7 = CoS 0
DSCP 8~15 = CoS 1
DSCP 16~23 = CoS 2
DSCP 24~31 = CoS 3
DSCP 32~39 = CoS 4
DSCP 40~47 = CoS 5
DSCP 48~55 = CoS 6
DSCP 56~63 = CoS 7

DSCPからマークダウンされたDSCPへのマッピング(ポリシング後のDSCP)

マークダウンされたDSCP値は元のDSCP値(マークダウンなし)と等しい

ポリサー

なし

ポリシー マップ

なし

送信キューの共有

リンク帯域幅の1/4

送信キュー容量

ポートの送信キュー エントリの1/4。ポートの送信キュー容量はポートのタイプによって異なり、送信キュー1つ当たり240パケット~1920パケット

送信キューのシェーピング

なし

DCSP-送信キュー マップ

DSCP 0~15 キュー1
DSCP 16~31 キュー2
DSCP 32~47 キュー3
DSCP 48~63 キュー4

ハイ プライオリティ送信キュー

ディセーブル

QoSがディセーブルの場合

 

インターフェイスの信頼状態

trust dscp

QoSがイネーブルの場合

QoSがイネーブルに設定され、その他のQoSパラメータがすべてデフォルト値である場合、送信されるすべてのトラフィックでIP DSCPが0、レイヤ2 CoSが0に設定される

インターフェイスの信頼状態

untrusted(信頼できない)

設定時の注意事項

QoSの設定を始める前に、次の点を理解する必要があります。

スイッチ上にEtherChannelポートを設定する場合、EtherChannelにQoSの分類およびポリシングを設定する必要があります。EtherChannelを形成する個々の物理ポートに、送信キューの設定が必要です。

設定されているIP拡張ACLとIPフラグメントのマッチングによって、QoSを強制することはできません。IPフラグメントは、ベストエフェート方式で送信されます。IPフラグメントは、IPヘッダー内のフィールドで表示されます。

設定されているIP拡張ACLとIPオプションのマッチングによって、QoSを強制することはできません。これらのパケットはCPUに送信され、ソフトウェアによって処理されます。IPオプションは、IPヘッダー内のフィールドで表示されます。

スイッチが受信した制御トラフィック(スパニングツリーBridge Protocol Data Unit[BPDU;ブリッジ プロトコル データ ユニット]、ルーティング アップデート パケットなど)は、すべての入力QoS処理の対象になります。

ポリシー マップでsetコマンドを使用する場合は、IPルーティング(デフォルトではディセーブル)をイネーブルに設定し、転送が可能なネクストホップ装置にトラフィックを送信するためのIPデフォルト ルートを設定する必要があります。


) QoSは、ユニキャスト トラフィックおよびマルチキャスト トラフィックの両方を処理します。


QoSのグローバルなイネーブル化

QoSをグローバルにイネーブル化するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# qos

スイッチ上でQoSをイネーブルにします。

QoSをグローバルにディセーブル化するには、 no qos コマンドを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show qos

設定を確認します。

次にQoSをグローバルにイネーブル化する例を示します。

Switch(config)# qos
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos
QoS is enabled globally
Switch#
 

ダイナミック バッファ制限のイネーブル化

DBLをグローバルにイネーブル化するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# qos dbl

スイッチ上でDBLをイネーブルにします。

AQMをディセーブルにするには、 no qos dbl コマンドを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show qos dbl

設定を確認します。

次に、DBLをグローバルにイネーブル化する例を示します。

Switch(config)# qos dbl
Global DBL enabled
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos dbl
DBL is enabled globally
DBL flow includes vlan
DBL flow includes l4-ports
DBL does not use ecn to indicate congestion
DBL exceed-action mark probability:15%
DBL max credits:15
DBL aggressive credit limit:10
DBL aggressive buffer limit:2 packets
Switch#
 

名前付き集約ポリサーの作成

名前付き集約ポリサーを作成するには、次の作業を行います。

 

コマンド
説明

Switch(config)# qos aggregate-policer policer_name rate burst [[ conform-action { transmit | drop }] [ exceed-action { transmit | drop | policed-dscp-transmit}]]

名前付き集約ポリサーを作成します。

集約ポリサーは、1つまたは複数のインターフェイスに適用できます。ただし、あるインターフェイスの入力方向と、別のインターフェイスの出力方向に同じポリサーを適用すると、スイッチング エンジン上で2つの異なる同等の集約ポリサーを作成したことになります。各ポリサーは同じポリシング パラメータを使用し、1つのパラメータは1つのインターフェイスの入力トラフィックのポリシング、もう1つのパラメータは別のインターフェイスの出力トラフィックのポリシングを行います。集約ポリサーを複数のインターフェイスに同じ方向で適用した場合、スイッチング エンジン上に作成されるそのポリサーのインスタンスは1つだけです。

同様に、集約ポリサーをポートまたはVLANに適用することができます。同じ集約ポリサーをポートおよびVLANに適用した場合、スイッチング エンジン上で2つの異なる同等の集約ポリサーを作成したことになります。各ポリサーは同じポリシング パラメータを使用し、1つのパラメータは設定されたポート上のトラフィックのポリシング、もう1つのパラメータは設定されたVLAN上のトラフィックのポリシングを行います。集約ポリサーを複数のポートのみ、または複数のVLANのみに適用した場合、スイッチング エンジン上に作成されるそのポリサーのインスタンスは1つだけです。

1つの集約ポリサーを複数のポートおよびVLANに異なる方向で適用した場合、実質的には、同等の4つの集約ポリサー(入力方向でポリサーを共有するすべてのポート用、出力方向でポリサーを共有するすべてのポート用、入力方向でポリサーを共有するすべてのVLAN用、および出力方向でポリサーを共有するすべてのVLAN用の集約ポリサー)を作成したことになります。

名前付き集約ポリサーを作成する際、次の点に注意してください。

rate パラメータ値の有効範囲は、次のとおりです。

最小 ― 32キロビット/秒

最大 ― 32ギガビット/秒

「設定時の注意事項」を参照してください。

速度(rate)はビット/秒で入力できますが、次の簡略表記を使用することもできます。

kは、1,000 bpsを表します。

mは、1,000,000 bpsを表します。

gは、1,000,000,000 bpsを表します。


) 小数点を使用することもできます。たとえば、1,100,000 bpsという速度は、1.1mと入力できます。


burst パラメータ値の有効範囲は、次のとおりです。

最小 ― 1キロバイト

最大 ― 512メガバイト

バースト サイズ(burst)はバイトで入力できますが、次の簡略表記を使用することもできます。

kは、1,000バイトを表します。

mは、1,000,000バイトを表します。

gは、1,000,000,000バイトを表します。


) 小数点を使用することもできます。たとえば、1,100,000バイトというバースト サイズは、1.1mと入力できます。


一致する適合トラフィックに対応するconformアクションを、任意で次のように指定できます。

デフォルトのconformアクションは、 transmit です。

一致するトラフィックをすべて廃棄するには、 drop キーワードを入力します。


dropをconformアクションとして設定すると、QoSはdropをexceedアクションとして設定します。


Committed Information Rate(CIR;認定情報速度)を超過するトラフィックについて、exceedアクションを任意で次のように指定できます。

デフォルトのexceedアクションは、 drop です。

一致する不適合トラフィックを、マークダウン マップの指定に従ってマークダウンするには、 policed-dscp-transmit キーワードを入力します。

ポリシングを全く行わないようにするには、 transmit キーワードを入力して、一致した不適合トラフィックをすべて送信します。

名前付き集約ポリサーを削除するには、 no qos aggregate-policer policer_name コマンドを使用します。

次に、10 Mbpsのレート限度および1 MBのバースト サイズを指定し、適合するトラフィックを送信して、不適合トラフィックをマークダウンする、名前付き集約ポリサーの作成例を示します。

Switch(config)# qos aggregate-policer aggr-1 10000000 1000000 conform-action transmit exceed-action policed-dscp-transmit
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos aggregate-policer aggr-1
Policer aggr-1
Rate(bps):10000000 Normal-Burst(bytes):1000000
conform-action:transmit exceed-action:policed-dscp-transmit
Policymaps using this policer:
Switch#

QoSポリシーの設定

ここでは、QoSポリシーの設定について説明します。

「QoSポリシー設定の概要」

「クラス マップの設定(任意)」

「クラス マップの設定の確認」

「ポリシー マップの設定」

「ポリシー マップの設定の確認」

「インターフェイスへのポリシー マップの対応づけ」


) QoSポリシーは、ユニキャスト トラフィックおよびマルチキャスト トラフィックの両方を処理します。


QoSポリシー設定の概要

QoSポリシーを設定するには、トラフィック クラスを設定して、それらのトラフィック クラスに適用するポリシーを設定し、さらに、次のコマンドを使用してポリシーをインターフェイスに対応づける必要があります。

access-list (IPトラフィックに対して任意 ― class-map コマンドを使用してIPトラフィックをフィルタリングできます)

QoSでは、次のアクセス リスト タイプがサポートされます。

 

プロトコル
番号付きアクセス リストの有無
拡張アクセス リストの有無
名前付きアクセス リストの有無

IP

あり:
1~99
1300~1999

あり:
100~199
2000~2699

あり

Catalyst 4000ファミリー スイッチ上のACLについては、「ACLによるネットワーク セキュリティの設定」 を参照してください。

class-map (任意) ― class-map コマンドを使用してトラフィックの分類基準を指定し、1つまたは複数のトラフィック クラスを定義します(クラス マップの設定(任意)を参照)。

policy-map ― 各トラフィック クラスに以下を定義するには、 policy-map コマンドを使用します。

内部DSCPの作成元

集約または個別のポリシングおよびマーキング

service-policy service-policy コマンドを使用して、ポリシー マップをインターフェイスに対応づけます。

クラス マップの設定(任意)

ここでは、クラス マップの設定手順について説明します。

「クラス マップの作成」

「クラス マップでのフィルタリングの設定」

トラフィック クラスを定義し、そのクラスに属するトラフィックを識別するための一致基準を指定するには、 class-map コンフィギュレーション コマンドを使用します。一致ステートメントには、ACL、IP precedence値、DSCP値などの基準を指定できます。一致基準は、クラス マップ コンフィギュレーション モードで1つの一致ステートメントを入力して定義します。

クラス マップの作成

クラス マップを作成するには、次の作業を行います。

 

コマンド
説明
Switch(config)# [ no ] class-map [match-all | match-any] class_name

名前付きクラス マップを作成します。

クラス マップを削除するには、 no キーワードを使用します。

クラス マップでのフィルタリングの設定

クラス マップにフィルタリングを設定するには、次のいずれかの作業を行います。

 

コマンド
説明
Switch(config-cmap)# [ no ] match access-group { acl_index | name acl_name }

(任意)トラフィックのフィルタリングに使用するACLの名前を指定します。

クラス マップからステートメントを削除するには、 no キーワードを使用します。


) アクセス リストについては、このマニュアルでは説明しません。「QoSポリシーの設定」に記載されているaccess-listの説明を参照してください。


Switch (config-cmap)# [ no ] match ip precedence ipp_value1 [ ipp_value2 [ ipp_valueN ]]

(任意 ― IPトラフィックのみ)一致基準として使用するIP precedence値(最大8つ)を指定します。クラス マップからステートメントを削除するには、 no キーワードを使用します。

Switch (config-cmap)# [ no ] match ip dscp dscp_value1 [ dscp_value2 [ dscp_valueN ]]

(任意 ― IPトラフィックのみ)一致基準として使用するDSCP値(最大8つ)を指定します。クラス マップからステートメントを削除するには、 no キーワードを使用します。

Switch (config-cmap)# [ no ] match any

(任意)任意のIPトラフィックまたは非IPトラフィックをマッチングします。


) match ip precedence または match ip dscp クラス マップ コマンドを指定したクラス マップを使用する入力ポリシーまたは出力ポリシーでは、パケットを受信するポートがtrust dscpに設定されている必要があります。着信ポートの信頼状態がtrust dscpに設定されていない場合、IPパケットのDSCP/IP precedence値はトラフィックのマッチングに使用されず、代わりに着信ポートのデフォルトのDSCPが使用されます。



) Catalyst 4000ファミリー スイッチ上のインターフェイスは、match classmapmatch destination-addressmatch input-interfacematch mpls、match not、match protocolmatch qos-group、およびmatch source-addressキーワードをサポートしていません。


クラス マップの設定の確認

クラス マップの設定を確認するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch (config-cmap)# end

コンフィギュレーション モードを終了します。

ステップ 2

Switch# show class-map class_name

設定を確認します。

次に、 ipp5 という名前のクラス マップを作成し、IP precedence 5のトラフィックと一致するようにフィルタリングを設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# class-map ipp5
Switch(config-cmap)# match ip precedence 5
Switch(config-cmap)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show class-map ipp5
Class Map match-all ipp5 (id 1)
Match ip precedence 5
 
Switch#
 

ポリシー マップの設定

1つのインターフェイスに対応づけることのできるポリシー マップは、1つに限られます。ポリシー マップには、一致基準およびポリサーがそれぞれ異なる1つまたは複数のポリシー マップ クラスを含めることができます。

インターフェイスで受信するトラフィック タイプごとに、個別のポリシー マップ クラスをポリシー マップ内に設定します。各トラフィック タイプ用の全コマンドを、同一のポリシー マップ クラスに入れます。QoSが、一致したトラフィックに複数のポリシー マップ クラスのコマンドを適用することはありません。

ここでは、ポリシー マップの設定手順について説明します。

「ポリシー マップの作成」

「ポリシー マップ クラス アクションの設定」

ポリシー マップの作成

ポリシー マップを作成するには、次の作業を行います。

 

コマンド
説明
Switch(config)# [ no ] policy-map policy_name

ユーザが指定する名前でポリシー マップを作成します。

ポリシー マップを削除するには、 no キーワードを使用します。

ポリシー マップ クラス アクションの設定

ここでは、ポリシー マップ クラスのアクションを設定する手順について説明します。

「ポリシー マップ クラスの信頼状態の設定」

「ポリシー マップ クラスのDBL状態の設定」

「ポリシー マップ クラスのポリシングの設定」

「名前付き集約ポリサーの使用」

「インターフェイス別ポリサーの設定」

ポリシー マップ クラスの信頼状態の設定

ポリシー マップ クラスの信頼状態を設定するには、次の作業を行います。

 

コマンド
説明
Switch(config-pmap-c)# [ no ] trust { cos | dscp }

ポリシー マップ クラスの信頼状態を設定します。この設定によって、QoSが内部DSCP値の作成元として使用する値が選択されます(内部DSCP値を参照)。

設定した値を削除、デフォルトに戻すには、 no キーワードを使用します。

ポリシー マップ クラスの信頼状態を設定する際、次の点に注意してください。

no trust コマンドを入力すると、入力インターフェイス上に設定されている信頼状態を使用できます(これがデフォルトです)。

cos キーワードを使用すると、QoSは受信したCoSまたはインターフェイスCoSに基づいて、内部DSCP値を設定します。

dscp キーワードを使用すると、QoSは受信したDSCPを使用します。

ポリシー マップ クラスのDBL状態の設定

ポリシー マップ クラスのDBL状態を設定するには、次の作業を行います。

 

コマンド
説明
Switch(config-pmap-c)# [ no ] dbl

ポリシー マップ クラスのDBL状態を設定します。この設定によって、トラフィック フローのキュー長を追跡します(アクティブ キュー管理を参照)。

DBL値を削除し、デフォルトに戻すには、 no キーワードを使用します。

ポリシー マップ クラスのDBL状態を設定する際、次の点に注意してください。

名前付き集約ポリサーを使用しているクラスは、機能するために同じDBL設定でなければなりません。

ポリシー マップ クラスのポリシングの設定

ここでは、ポリシー マップ クラスによるポリシングを設定する手順について説明します。

「名前付き集約ポリサーの使用」

「インターフェイス別ポリサーの設定」

名前付き集約ポリサーの使用

名前付き集約ポリサーを使用するには(名前付き集約ポリサーの作成を参照)、次の作業を行います。

 

コマンド
説明
Switch(config-pmap-c)# [ no ] police aggregate aggregate_name

すでに定義されている集約ポリサーを使用します。

ポリシー マップ クラスからポリサーを削除するには、 no キーワードを使用します。

インターフェイス別ポリサーの設定

インターフェイスにインターフェイス単位のポリサーを設定するには(ポリシングおよびマーキングを参照)、次の作業を行います。

 

コマンド
説明

Switch(config-pmap-c)# [ no ] police rate burst [[ conform-action { transmit | drop }] [ exceed-action { transmit | drop | policed-dscp-transmit}]]

インターフェイス別のポリサーを設定します。

ポリシー マップ クラスからポリサーを削除するには、 no キーワードを使用します。

インターフェイス別ポリサーを設定する際、次の点に注意してください。

rateパラメータ値の有効範囲は、次のとおりです。

最小 ― 32キロビット/秒(32000と入力)

最大 ― 32ギガビット/秒(32000000000と入力)


「設定時の注意事項」を参照してください。


速度(rate)はビット/秒で入力できますが、次の簡略表記を使用することもできます。

kは、1,000 bpsを表します。

mは、1,000,000 bpsを表します。

gは、1,000,000,000 bpsを表します。


) 小数点を使用することもできます。たとえば、1,100,000 bpsという速度は、1.1mと入力できます。


burst パラメータ値の有効範囲は、次のとおりです。

最小 ― 1キロバイト

最大 ― 512メガバイト

バースト サイズ(burst)はバイトで入力できますが、次の簡略表記を使用することもできます。

kは、1,000バイトを表します。

mは、1,000,000バイトを表します。

gは、1,000,000,000バイトを表します。


) 小数点を使用することもできます。たとえば、1,100,000バイトというバースト サイズは、1.1mと入力できます。


一致する適合トラフィックに対応するconformアクションを、任意で次のように指定できます。

デフォルトのconformアクションは、 transmit です。

一致するトラフィックをすべて廃棄するには、 drop キーワードを入力します。

任意で、CIRを超過するトラフィックについて、一致する不適合トラフィックをすべてマークダウン マップの指定に従ってマークダウンするには、 policed-dscp-transmit キーワードを入力します。「ポリシング済みDSCPマップの設定」を参照してください。

ポリシングを全く行わないようにするには、 transmit キーワードを入力して、一致する不適合トラフィックをすべて送信します。

次に、ポリシー マップ ipp5-policy の作成例を示します。このポリシー マップは、クラス マップ ipp5 を使用して、パケットのIP precedence値を6に書き換え、IP precedence値5に一致するトラフィックを集約的にポリシングします。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# policy-map ipp5-policy
Switch(config-pmap)# class ipp5
Switch(config-pmap-c)# set ip precedence 6
Switch(config-pmap-c)# dbl
Switch(config-pmap-c)# police 2000000000 2000000 conform-action transmit exceed-action policed-dscp-transmit
Switch(config-pmap-c)# end
 

ポリシー マップの設定の確認

ポリシー マップの設定を確認するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config-pmap-c)# end

ポリシー マップ クラス コンフィギュレーション モードを終了します。


) ポリシー マップに別のクラスを作成するにはclassコマンドを入力します。


ステップ 2

Switch# show policy-map policy_name

設定を確認します。


) Catalyst 4000ファミリー スイッチ では、1つのポリシー マップにつき最大8つのクラス アクションがサポートされます。CLIを使用して9つ以上のクラス アクションを設定しても、ポリシー マップで使用されるのは、サポートされる最初の8つのクラス アクションだけです。


次に、設定を確認する例を示します。

Switch# show policy-map ipp5-policy
show policy ipp5-policy
Policy Map ipp5-policy
class ipp5
set ip precedence 6
dbl
police 2000000000 2000000 conform-action transmit exceed-action
policed-dscp-transmit
Switch#
 

インターフェイスへのポリシー マップの対応づけ

ポリシー マップをインターフェイスに対応づけるには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { vlan vlan_ID | { fastethernet | gigabitethernet } slot/interface | Port-channel number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] service-policy input policy_map_name

ポリシー マップをインターフェイスの入力方向に対応づけます。インターフェイスからポリシー マップの対応づけを解除するには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show policy-map interface { vlan vlan_ID | { fastethernet | gigabitethernet } slot/interface }

設定を確認します。

次に、ポリシー マップ pmap1 をインターフェイスFastEthernet 5/36に対応づける例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet 5/36
Switch(config-if)# service-policy input pmap1
Switch(config-if)# end
 

次に、設定を確認する例を示します。

Switch# show policy-map interface fastethernet 5/36
FastEthernet6/1
 
service-policy input:p1
 
class-map:c1 (match-any)
238474 packets
match:access-group 100
38437 packets
police:aggr-1
Conform:383934 bytes Exceed:949888 bytes
 
class-map:class-default (match-any)
0 packets
match:any
0 packets
Switch#
 

インターフェイス上でのQoS機能のイネーブル化またはディセーブル化

qos インターフェイス コマンドを使用すると、設定されているQoS機能が再びイネーブルになります。 qos インターフェイス コマンドは、インターフェイスのキュー設定に影響しません。

インターフェイスからのトラフィックに対してQoS機能をイネーブルまたはディセーブルにするには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { vlan vlan_ID | { fastethernet | gigabitethernet } slot/interface | Port-channel number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] qos

インターフェイス上でQoSをイネーブルにします。

インターフェイス上でQoSをディセーブルにするには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show qos interface

設定を確認します。

次に、インターフェイスVLAN 5でQoSをディセーブルにする例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface vlan 5
Switch(config-if)# no qos
Switch(config-if)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos | begin QoS is disabled
QoS is disabled on the following interfaces:
Vl5
(テキスト出力は省略)
Switch#
 

レイヤ2インターフェイス上でのVLANベースQoSの設定

デフォルトでは、QoSは物理インターフェイスに対応づけられたポリシー マップを使用します。レイヤ2インターフェイスについては、VLANに対応づけられたポリシー マップを使用するようにQoSを設定できます。「インターフェイスへのポリシー マップの対応づけ」を参照してください。

レイヤ2インターフェイス上でVLANベースのQoSを設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { fastethernet | gigabitethernet } slot/interface | Port-channel number

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] qos vlan-based

レイヤ2インターフェイス上でVLANベースのQoSを設定します。

インターフェイス上でVLANベースQoSをディセーブルにするには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show qos

設定を確認します。


) レイヤ2インターフェイスに入力QoSポリシーが対応づけられていない場合、ポートがVLANベースで設定されていなくても、(パケットが着信する)VLANに対応づけられた入力QoSポリシーがあればそれが使用されます。このデフォルトが望ましくない場合には、レイヤ2インターフェイスにプレースホルダの入力QoSポリシーを対応づけます。同様に、レイヤ2インターフェイスに出力QoSポリシーが対応づけられていない場合、ポートがVLANベースで設定されていなくても、(パケットを送信する)VLANに対応づけられた出力QoSポリシーがあればそれが使用されます。このデフォルトが望ましくない場合には、レイヤ2インターフェイスにプレースホルダの出力QoSポリシーを対応づけます。


次に、インターフェイスFastEthernet 5/42でVLANベースのQoSを設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet 5/42
Switch(config-if)# qos vlan-based
Switch(config-if)# end
 

次に、設定を確認する例を示します。

Switch# show qos | begin QoS is vlan-based
QoS is vlan-based on the following interfaces:
Fa5/42
Switch#

) レイヤ2インターフェイスにVLANベースQoSが設定されている場合に、QoSポリシーがないVLANのポートにパケットが着信すると、ポートに対応づけられたQoSポリシーがある場合はそれが使用されます。これは、入力および出力QoSポリシーの両方に当てはまります。


インターフェイスの信頼状態の設定

このコマンドは、インターフェイスの信頼状態を設定します。デフォルトでは、すべてのインターフェイスがuntrustedです。

インターフェイスの信頼状態を設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { vlan vlan_ID | { fastethernet | gigabitethernet } slot/interface | Port-channel number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] qos trust [ dscp | cos ]

インターフェイスの信頼状態を設定します。

設定した値を削除し、デフォルトに戻すには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show qos

設定を確認します。

インターフェイスの信頼状態を設定する際、次の点に注意してください。

インターフェイスの状態をuntrustedに戻すには、 no qos trust コマンドを使用します。

qos trust cosコマンドを使用してtrust cosに設定された入力インターフェイスに着信したトラフィックの場合、送信されるCoSは、常に着信パケットのCoS(または、パケットをタグなしで受信した場合には、入力インターフェイスのデフォルトCoS)です。

qos trust dscp コマンドを使用してインターフェイスの信頼状態をtrust dscpに設定していない場合、セキュリティおよびQoS ACL分類では、常にインターフェイスDSCPが使用され、着信パケットのDSCPは使用されません。

次に、trust cos キーワードを使用してインターフェイスGigabitEthernet 1/1を設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface gigabitethernet 1/1
Switch(config-if)# qos trust cos
Switch(config-if)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos interface gigabitethernet 1/1 | include trust
Trust state: trust COS
Switch#
 

インターフェイスのCoS値の設定

QoSは、trustedとして設定された入力インターフェイスからのタグなしフレーム、およびuntrustedとして設定された入力インターフェイスからのすべてのフレームに、このコマンドで指定されたCoS値を割り当てます。

入力インターフェイスのCoS値を設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { fastethernet | gigabitethernet } slot/interface | Port-channel number }

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] qos cos default_cos

入力インターフェイスのCoS値を設定します。

設定した値を削除し、デフォルトに戻すには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show qos interface { fastethernet | gigabitethernet } slot/interface

設定を確認します。

次に、インターフェイスFastEthernet 5/24にデフォルトとしてCoS 5を設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet 5/24
Switch(config-if)# qos cos 5
Switch(config-if)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos interface fastethernet 5/24 | include Default COS
Default COS is 5
Switch#
 

インターフェイスのDSCP値の設定

QoSは、trust dscpに設定されたインターフェイスで受信した非IPv4フレーム、およびuntrustedとして設定されたインターフェイスで受信したすべてのフレームに、このコマンドで指定されたDSCP値を割り当てます。

入力インターフェイスのDSCP値を設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { fastethernet | gigabitethernet } slot/interface | Port-channel number

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# [ no ] qos dscp default_dscp

入力インターフェイスのDSCP値を設定します。

設定した値を削除し、デフォルトに戻すには、 no キーワードを使用します。

ステップ 3

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 4

Switch# show qos interface { fastethernet | gigabitethernet } slot/interface

設定を確認します。

次に、インターフェイスFastEthernet 5/24のデフォルトとしてDSCP 5を設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet 5/24
Switch(config-if)# qos dscp 5
Switch(config-if)# end
Switch#
 

次に、設定を確認する例を示します。

Switch# show qos interface fastethernet 6/1
QoS is enabled globally
Port QoS is enabled
Port Trust State:CoS
Default DSCP:0 Default CoS:0
 
Tx-Queue Bandwidth ShapeRate Priority QueueSize
(bps) (bps) (packets)
1 31250000 disabled N/A 240
2 31250000 disabled N/A 240
3 31250000 disabled normal 240
4 31250000 disabled N/A 240
Switch#
 

送信キューの設定

ここでは、送信キューを設定する手順について説明します。

「DSCP値から特定の送信キューへのマッピング」

「送信キュー間での帯域幅の割り当て」

「送信キューのトラフィック シェーピングの設定」

「ハイ プライオリティ送信キューの設定」

ネットワークおよびQoSソリューションの複雑さによっては、次の各項で説明する手順をすべて行わなければならない場合があります。事前に次の特性について判断しておく必要があります。

各キューへの(DSCP値による)パケットの割り当て

特定のポートでの送信キューと他のキューとの相対的なサイズ

各キューへの使用可能な帯域幅の割り当て

各送信キューの最大速度、および各送信キューから送信できる最大バースト トラフィック

DSCP値から特定の送信キューへのマッピング

DSCP値を送信キューにマッピングするには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# [ no ] qos map dscp dscp-values to tx-queue queue-id

DSCP値を送信キューにマッピングします。
dscp-list には、最大8つのDSCP値を指定できます。queue-idの範囲は、1~4です。

送信キューからDSCP値を削除するには、 no qos map dscp to tx-queue コマンドを使用します。

ステップ 2

Switch(config)# end

コンフィギュレーション モードを終了します。

ステップ 3

Switch# show qos maps dscp tx-queues

設定を確認します。

次に、送信キュー2にDSCP値をマッピングする例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# qos map dscp 5 to tx-queue 2
Switch(config)# end
Switch#
 

次に、設定を確認する例を示します。

Switch#show qos maps dscp tx-queue
DSCP-TxQueue Mapping Table (dscp = d1d2)
d1 :d2 0 1 2 3 4 5 6 7 8 9
-------------------------------------
0 : 02 02 02 01 01 01 01 01 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 02 02 02 02 02 02
3 : 02 02 03 03 03 03 03 03 03 03
4 : 03 03 03 03 03 03 03 03 04 04
5 : 04 04 04 04 04 04 04 04 04 04
6 : 04 04 04 04
Switch#

送信キュー間での帯域幅の割り当て

送信キューの帯域幅を設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface gigabitethernet slot/interface

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# tx-queue queue_id

設定する送信キューを選択します。

ステップ 3

Switch(config-if-tx-queue)# [no] bandwidth rate

送信キューの帯域幅レートを設定します。

送信キューの帯域幅の比率をデフォルト値に戻すには、 no キーワードを使用します。

ステップ 4

Switch(config-if-tx-queue)# end

コンフィギュレーション モードを終了します。

ステップ 5

Switch# show qos interface

設定を確認します。

帯域幅レートは、インターフェイスによって異なります。

帯域幅を設定できるのは、次のポートに限られます。

Supervisor Engine III(WS-X4014)上のアップリンク ポート

WS-X4306-GBライン カード上のポート

WS-X4232-GB-RJライン カード上の2つの1000BASE-Xポート

WS-X4418-GBライン カード上の最初の2つのポート

WS-X4412-2GB-TXライン カード上の2つの1000BASE-Xポート

次に、送信キュー2に1 Mbpsの帯域幅を設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface gigabitethernet 1/1
Switch(config-if)# tx-queue 2
Switch(config-if-tx-queue)#bandwidth 1000000
Switch(config-if-tx-queue)# end
Switch#
 

送信キューのトラフィック シェーピングの設定

送信キューから送信されるパケットが指定の最大速度を超えないように設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { fastethernet | gigabitethernet } slot/interface

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# tx-queue queue_id

設定する送信キューを選択します。

ステップ 3

Switch(config-if-tx-queue)# [ no ] shape rate

送信キューの送信レートを設定します。

送信キューの最大速度を削除するには、 no キーワードを使用します。

ステップ 4

Switch(config-if-tx-queue)# end

コンフィギュレーション モードを終了します。

ステップ 5

Switch# show qos interface

設定を確認します。

次に、送信キュー2のシェープ レートを1 Mbpsに設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface gigabitethernet 1/1
Switch(config-if-tx-queue)# tx-queue 2
Switch(config-if-tx-queue)# shape 1000000
Switch(config-if-tx-queue)# end
Switch#

ハイ プライオリティ送信キューの設定

送信キュー3をハイ プライオリティに設定するには、次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch(config)# interface { fastethernet | gigabitethernet } slot/interface

設定するインターフェイスを選択します。

ステップ 2

Switch(config-if)# tx-queue 3

設定する送信キュー3を選択します。

ステップ 3

Switch(config-if)# [ no ] priority high

この送信キューをハイ プライオリティに設定します。

送信キューのプライオリティを削除するには、 no キーワードを使用します。

ステップ 4

Switch(config-if)# end

コンフィギュレーション モードを終了します。

ステップ 5

Switch# show qos interface

設定を確認します。

次に、送信キュー3 をハイ プライオリティに設定する例を示します。

Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface gigabitethernet 1/1
Switch(config-if-tx-queue)# tx-queue 3
Switch(config-if-tx-queue)# priority high
Switch(config-if)# end
Switch#

DSCPマップの設定

ここでは、DSCPマップを設定する方法について説明します。次の設定手順を紹介します。

「CoS-DSCPマップの設定」

「ポリシング済みDSCPマップの設定」

「DSCP-CoSマップの設定」

マップはいずれもグローバルに定義され、すべてのポートに適用されます。

CoS-DSCPマップの設定

CoS-DSCPマップは、着信パケットのCoS値を、DSCP値(トラフィックのプライオリティを表すためにQoSが内部的に使用する)にマッピングする目的で使用します。

表 27-3 に、デフォルトのCoS-DSCPマップを示します。

 

表 27-3 デフォルトのCoS-DSCPマップ

CoS値

0

1

2

3

4

5

6

7

DSCP値

0

8

16

24

32

40

48

56

これらの値がネットワークに適さない場合は、値を変更する必要があります。

CoS-DSCPマップを変更するには、イネーブルEXECモードで次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Switch(config)# qos map cos cos1 ... cos8 to dscp dscp

CoS-DSCPマップを変更します。

cos1...cos8には、最大8つのCoSを入力できます。指定できる値の範囲は0~7です。各CoS値をスペースで区切ります。

dscp の範囲は0~63です。

ステップ 3

Switch(config)# end

イネーブルEXECモードに戻ります。

ステップ 4

Switch# show qos maps cos-dscp

エントリを確認します。

ステップ 5

Switch# copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトのマップに戻すには、 no qos cos to dscp グローバル コンフィギュレーション コマンドを使用します。

次に、CoS-DSCPマップを変更し、表示する例を示します。

Switch# configure terminal
Switch(config)# qos map cos 0 to dscp 20
Switch(config)# end
Switch# show qos maps cos dscp
 
CoS-DSCP Mapping Table:
CoS: 0 1 2 3 4 5 6 7
--------------------------------
DSCP: 20 8 16 24 32 40 48 56
Switch(config)#
 

ポリシング済みDSCPマップの設定

ポリシング済みDSCPマップは、ポリシングおよびマーキング アクションの結果、DSCP値を新しい値にマークダウンする目的で使用します。

デフォルトのポリシング済みDSCPマップはヌルで、着信DSCP値が同じDSCP値にマッピングされます。

ポリシング済みDSCPマップを変更するには、イネーブルEXECモードで次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Switch(config)# qos map dscp policed dscp-list to dscp mark-down-dscp

ポリシング済みDSCPマップを変更します。

dscp-listには、最大8つのDSCP値をスペースで区切って入力します。その後ろに、 to キーワードを入力します。

mark-down-dscpには、対応するポリシング済み(マークダウンされた)DSCP値を入力します。

ステップ 3

Switch(config)# end

イネーブルEXECモードに戻ります。

ステップ 4

Switch# show qos maps dscp policed

エントリを確認します。

ステップ 5

Switch# copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトのマップに戻すには、 no qos dscp policed グローバル コンフィギュレーション コマンドを使用します。

次に、DSCP 50~57を、マークダウンされたDSCP値0にマッピングする例を示します。

Switch# configure terminal
Switch(config)# qos map dscp policed 50 51 52 53 54 55 56 57 to dscp 0
Switch(config)# end
Switch# show qos maps dscp policed
Policed-dscp map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
---------------------------------------
0 : 00 01 02 03 04 05 06 07 08 09
1 : 10 11 12 13 14 15 16 17 18 19
2 : 20 21 22 23 24 25 26 27 28 29
3 : 30 31 32 33 34 35 36 37 38 39
4 : 40 41 42 43 44 45 46 47 48 49
5 : 00 00 00 00 00 00 00 00 58 59
6 : 60 61 62 63
 

) 上記のポリシング済みDSCPマップでは、マークダウンされたDSCP値がマトリクスの本体に示されています。列d1は、元のDSCPの上位桁を表し、行d2は、元のDSCPの下位桁を表します。d1およびd2が交わった部分にある値が、マークダウン後の値です。たとえば、元のDSCP値が53である場合、対応するマークダウン後のDSCP値は0です。


DSCP-CoSマップの設定

DSCP-CoSマップは、CoS値を生成する目的で使用します。

表 27-4 に、デフォルトのDSCP-CoSマップを示します。

 

表 27-4 デフォルトのDSCP-CoSマップ

DSCP値

0-7

8-15

16-23

24-31

32-39

40-47

48-55

56-63

CoS値

0

1

2

3

4

5

6

7

これらの値がネットワークに適さない場合は、値を変更する必要があります。

DSCP-CoSマップを変更するには、イネーブルEXECモードで次の作業を行います。

 

 
コマンド
説明

ステップ 1

Switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Switch(config)# qos map dscp dscp-list to cos cos

DSCP-CoSマップを変更します。

dscp-listには、最大8つのDSCP値をスペースで区切って入力します。その後ろに、 to キーワードを入力します。

cosには、一連のDSCP値を対応させるCoS値を1つだけ入力します。

DSCPの範囲は0~63、CoSの範囲は0~7です。

ステップ 3

Switch(config)# end

イネーブルEXECモードに戻ります。

ステップ 4

Switch# show qos maps dscp to cos

エントリを確認します。

ステップ 5

Switch# copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトのマップに戻すには、 no qos dscp to cos グローバル コンフィギュレーション コマンドを使用します。

次に、DSCP値0、8、16、24、32、40、48、および50をCoS値0にマッピングし、マップを表示する例を示します。

Switch# configure terminal
Switch(config)# qos map dscp 0 8 16 24 32 40 48 50 to cos 0
Switch(config)# end
Switch# show qos maps dscp cos
Dscp-cos map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
---------------------------------------
0 : 00 00 00 00 00 00 00 00 00 01
1 : 01 01 01 01 01 01 00 02 02 02
2 : 02 02 02 02 00 03 03 03 03 03
3 : 03 03 00 04 04 04 04 04 04 04
4 : 00 05 05 05 05 05 05 05 00 06
5 : 00 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
 

) 上記のDSCP-CoSマップでは、CoS値がマトリクスの本体に示されています。列d1は、DSCPの上位桁を表し、行d2は、DSCPの下位桁を表します。d1およびd2が交わった部分にある値が、CoS値です。たとえば、このDSCP-CoSマップでは、DSCP値08はCoS値0に対応しています。