◆ Catalyst QoSの概要
QoSを有効にすることで、音声などの特定のトラフィックをデータなどのほかのトラフィックよりも優先的に
処理したり、特定のトラフィックのトラフィック量を制限したりできます。一方、QoSを有効にしない場合、
Catalystスイッチはパケットの内容やサイズに関係なく、各パケットにベストエフォートで処理していきます。
信頼性、遅延限度、スループットなどの保証はなく、受信したパケットから順番に何も考えずに送信します。
◆ Catalyst QoSの優先度情報
QoSはIETFの新しい規格であるDiffServアーキテクチャに基づいて実装されます。このアーキテクチャでは
ネットワークに入るときに各パケットを分類することが規定されています。その分類情報はレイヤ3パケット
またはレイヤ2フレームで伝達することができます。レイヤ2の場合は「CoS」、レイヤ3では「Precedence」
または「DSCP」値を伝えることによりその分類情報を伝達できます。以下はそのフレームとパケットの説明。
レイヤ2とレイヤ3の分類情報 ( 優先度情報 ) |
Layer2フレーム |
CoS値は802.1qフレームまたはISLフレームにより伝えられます。つまりCoS値はトランクポートでのみ
伝えられアクセスポートでは伝えられません。ISLフレームヘッダーには下位3ビットでCoS値を伝達する
1バイトのユーザフィールドがあります。802.1qフレームヘッダには、2バイトのタグ制御情報フィールド
があり、上位3ビットでCoS値が伝達されます。CoS値の範囲は
0 ( low priority ) 〜 7 ( high priority )
。
|
Layer3パケット |
Precedence値またはDSCP値はIPパケットにより伝えられます。IPパケットには8ビットのToSフィールド
があり、Precendenceの場合はそのうちの3ビットを使用します。DSCP値の場合はそのうちの6ビットを
使用します。Precedence値とDSCP値は互換性があるのでQoSではどちらの値で使用することが可能。
Precedence値の範囲は0〜7、DSCP値の範囲は0〜63。数値が大きくなるほど優先度が高くなります。
|
※ CoS値、Precedence値、DSCP値はエンドホストで割り当てるか、または伝送中にスイッチまたはルータで割り当てられます。
※ Catalystではこの優先度情報は重要です。なぜならこの値に基づいて「キューイングとスケジューリング」が行われるからです。
◆ Catalyst QoSの基本モデル - Catalyst3560X/Catalyst3750X
CatalystのQoSを本当に理解している人は、QoS設計を行う上で最初にこの基本モデルを参照するはずです。
この情報こそがCatalyst QoSにおける要であると言えます。また、Catalystの機種によりこのQoSモデルは
異なる場合もあるので必ず確認する必要があります。下図は、Catalyst3560X/Catalyst3750Xのモデルです。
QoS基本モデルの各項目 |
分類 |
パケットを検査してACLまたは設定に基づいてQoSラベルを判別する。
|
ポリシング |
着信トラフィックレートと設定済みのポリサーを比較してパケットが適合か不適合かを判別
|
マーキング |
パケットが適合しているか不適合であるか設定されたパラメータに基づいているかどうかを
基準にして、パケットを通過させるか、マークダウンするか、または廃棄するかを判別する。
また、この設定に従ってDSCPおよびCoSマーキングが行われるか、または変更される。
|
入力キューイング
スケジューリング |
QoSラベルに基づいてパケットを格納する入力キューを判別する。
次に、設定されたウェイトに従い入力キュー内のパケット転送を行う。
|
出力キューイング
スケジューリング |
QoSラベルに基づいてパケットを格納する出力キューを判別する。
次に、設定されたウェイトに従い出力キュー内のパケット転送を行う。
|
※ QoSラベルを使用するということは、キューに格納する際に「CoS値」「DSCP値」のどちらの値でも使用できます。
※ mls qos設定によりQoS機能を有効にすると必ず「分類」が行われますが「ポリシング」と「マーキング」はコンフィグ設定次第。
|