QoS(DiffServ)の処理の仕組みと手順

QoS(DiffServ)の処理の仕組みと手順

概要、主な手順

この節ではOoSで最も広く普及しているDiffServモデルの仕組みを説明していきます。

DiffServモデルは、①分類、②マーキング、③キューイング、④スケジューリングといった処理をこの順番で行います。

1. 分類

ネットワーク機器(ルータ、スイッチ)に到達したパケットを、IPアドレス、ポート番号、CoS値、DSCP値、Precedence値などを元に分類します。

2. マーキング

フレームまたはパケットに優先度を付けるための設定(マーキング)します。フレーム(レイヤ2のデータ)への設定をL2マーキング、パケット(レイヤ3のデータ)への設定をL3マーキングと呼びます。

※ CoS(Class of Service)値:フレーム(レイヤ2のデータ)に設定できるフレームの優先度を表す値
※ DSCP値、Precedence値:パケット(レイヤ3のデータ)に設定できるパケットの優先度を表す値

3. キューイング

優先度に従って、パケットをキュー(領域)別に並べます。

キューはインタフェースごとに複数、存在し、キューによって転送される優先度は異なります。優先度の高いパケットほど、優先度の高いキューに配置され、優先度の高いキューにあるパケットから優先的に転送します。

4. スケジューリング

複数あるキューの中から、キューの優先度に従ってパケットの転送する順番の調整をします。

優先度の高いキューのパケットばかりを優先して転送すると、優先順位の低いパケットがいつまでも転送されません。

そうならないよう各キューのパケットを転送する順番、割合、優先度を踏まえて調整します。

マーキング

各パケット、フレームに優先順位を付けるマーキングについて詳しく見ていきましょう。

マーキングは、レイヤ2(データリンク層)として処理できるデータのフレームを対象にしたL2マーキングと、レイヤ3(ネットワーク層)として処理できるデータのパケットを対象にしたL3マーキングに分類できます。

それぞれの特徴や、データ(パケット、フレーム)の中身を次のページ以降で確認していきましょう。

L2マーキング

レイヤ2(データリンク層)として処理できるデータのフレームへの優先順位を付ける(マーキング)

L3マーキング

レイヤ3(ネットワーク層)として処理できるデータのパケットへの優先順位を付ける(マーキング)

L2マーキング

L2マーキングでは、VLANタグに含めることができるIEEE 802.1Qフレームが使用されます。

VLANタグの中に、データ(フレーム)の優先順位を示すCoS値を決めるPCP(Priority Code Point)フィールドが含まれているからです。

このフィールドは3ビットに0~7の8段階で優先順位を示す値を入れることができます。

IEEE 802.1Qフレーム

L3マーキング

L3マーキングでは、パケット内に含まれるIP Precedence値またはDSCP値を使って、パケットの優先順位を決めます。

これらの値は、IPv4ヘッダに含まれるToS(Type of Service:サービスタイプ)というフィールドで扱うことができます。

ToSフィールドは8ビットのフィールドです。

その内、先頭の3ビットだけを使用すると、
0~7(8段階)の優先度を示すIP Precedence値になり、先頭の6ビットを使用すると、
0~63(64段階)の優先度を示すDSCP値になります。

DSCPの方がビット数も多いのでより細かい優先度の設定ができます。またDSCPの先頭
3ビットをCS(Class Selector)と呼びます。

DSCPの構成について

DSCPの中身は、(転送する順番を決める)優先度、破棄されやすさの二つで構成されています。

先頭の3ビットが優先度、後半の3ビットが破棄されやすさを表します。

※例

2進数表記で「011 010 (10進数で26) 」と「011 100 (10進数で28) 」の場合、優先度は同じ011(2)ですが、破棄されやすさは、

「010(6) < 100(8)」なので後者の方が高いことがわかります。

また優先度、破棄されやすさの値を元に、AF(Assured Forwarding)とEF(Expedited Forwarding)が割り当てられます。

AF(Assured Forwarding)

ある程度、品質が担保される場合のもので、優先度1~3、破棄されやすさ0、2、4が割り当てられます。

EF(Expedited Forwarding)

優先的に転送されるためのもので、優先度4、破棄されやすさ6が割り当てられます。

各AFとEFごとの優先度、DSCP値(2進数、10進数)は右の通りです。

破棄されやすさと、優先度を軸に各AFとEFを分類すると、下の図の通りになります。

キューイングとスケジューリング

キューイングとは

キューイングとは、パケットを転送するまでの間、キュー(パケットの格納スペース)にパケットを格納することです。

パケットの入力、出力先であるインタフェースには、複数のキューがあり、キューによって転送の優先順位が決まります。

そのためパケットは、優先度に沿ったキューへ格納されます。

スケジューリングとは

一方、スケジューリングは、優先順位を元に、数あるキューの中からパケットを転送する順番を決めることです。

キューイング、スケジューリング方式の種類

キューイング、スケジューリングには色々な方式があります。以下代表的なキューイング、スケジューリングをまとめました。


NEXT>> 輻輳(帯域)制御