QoSには3つのアーキテクチャがある

QoSを実際にネットワーク上に実装する際に次の3つのアーキテクチャがあります。

・ベストエフォート
・Integrated Service(IntServ)
・Differentiated Service(DiffServ)

今回は、これらのQoSアーキテクチャについてご紹介します。

ベストエフォート

ベストエフォート型のQoSアーキテクチャは、何も特別な処理をせずにルータやスイッチなどのネットワークデバイスに到着した順番にパケットを転送していきます。到着した順にパケットを転送する方式をFIFO(First In First Out)と言います。

帯域幅が大きいLANでは、特にベストエフォートでも問題はあまり発生しません。しかし、帯域幅の差があるポイントやWANなどでは、ベストエフォート型ではアプリケーションの通信が正常に行われないことが考えられます。

早い話が、ベストエフォートは何も考えずに届いた順番にパケットを転送しているだけです。

Integrated Service(IntServ)

アプリケーションフローを認識し、フローごとにネットワークの帯域幅を予約したり遅延を保証したりするQoSアーキテクチャをIntegrated Service(IntServ)と呼びます。

IntServは、RSVP(Resource reSerVation Protocol)によって、あらかじめアプリケーションフローの経路上にあるデバイスで、ネットワークの帯域幅を予約し、最小遅延を保証することができます。

ただし、現在のネットワーク上には非常に多くのアプリケーションフローが発生します。これらのフローを個別に認識して帯域幅を予約するのは、あまり効率がよくありません。IntServは、拡張性に多少の問題点があります。

IntServは、実際にパケットを転送する前に

「いまからアプリケーションのパケットを送信するから、優先して転送してあげてね」

ということをパケットの転送経路上のすべてのデバイスに通知します。この動作をシグナリングといっています。そのあとに、実際のパケットを転送します。

Diffrentiated Service(DiffServ)

DiffServは、アプリケーションのパケットを分類してグループ化します。そのグループに対して優先度を定義し、優先度に応じた転送を行うことによってQoS機能を提供します。Differentiatedとは「差別化」です。パケットを重要なものとそうでないもので差別化して転送します。

IntServとは異なり、DiffServでは、アプリケーションのフローを認識するわけではありません。また、パケットをグループ化する基準は、自由に決定することができるので柔軟な優先制御を行うことができます。
分類したパケットのグループの優先度を表すために、IPヘッダ内のIP PrecedenceやDSCP(Differentiated Service Code Point)、IEEE802.1QタグのCoS(Class of Service)などを使います。

DiffServは、IntServとは異なり、受信したパケットをそのつど、優先度を判断して、優先的に転送するかどうかを決めているわけですね。

何を使うの?

では、3種類あるQoSアーキテクチャの中で何を使うんでしょう?

ま、ベストエフォートはQoSをかけていないことになるので、除外します。一般的にはDiffServのアーキテクチャを利用して、QoSをかけることが多くなっています。