1. QoS(Quality of Service)の概要
QoSの目的
QoSとは、ネットワーク上の特定のトラフィック(データの流れ)に対し、パケットロスや遅延、ジッタ(遅延の揺れ)を最小限に抑え、通信の品質を保証するための制御技術です。特に音声通話(VoIP)やビデオ会議などのリアルタイム性を要求するアプリケーションでは、遅延やパケットロスが顕著に影響を与えるため、こうした通信に優先的に帯域を割り当て、品質を保つための管理が求められます。
QoSの主な制御方法
QoSには以下の2つの主な制御方法があります。
- 優先制御:通信データ(パケット)に優先度をつけ、重要なデータを優先的に処理する。
- 帯域制御:特定の通信に対して最低限の帯域(通信速度の下限)や最大の帯域を保証する。
今回はこの中でも、特に 優先制御 に関する解説を詳しく行います。
2. 優先制御の基礎知識
優先制御とは、各トラフィックの特性に基づいて優先度を設定し、重要なトラフィックから順に優先的に処理することで通信の品質を確保する技術です。
優先度の基準
優先度は以下のフィールドやタグを基準にして決定します。
- IPヘッダのDSCP(Differentiated Services Code Point):
- IPヘッダの「DSフィールド」(旧TOSフィールド)には、各パケットの優先度を設定するための値(DSCP)が含まれています。
- DSCPは6ビットのフィールドで、最大64通りのサービスクラスを定義可能です。これにより、トラフィックの分類と優先度の指定がより細かく行えます。
- イーサネットフレームのVLANタグのCoS(Class of Service):
- VLANタグ内にあるCoSフィールド(3ビット)は、イーサネットフレームの優先度を示すフィールドで、最大8通りの優先度を定義できます。
- 特にLAN内での優先度制御に役立ち、重要な通信が優先的に処理されるようになります。
要するに、IPヘッダならDSフィールドのDSCP。イーサネットフレームならCoSフィールドってことじゃ!
3. スケジューリングによる優先制御
優先制御を実現するためには、各パケットを出力する際の順序を決める スケジューリング が重要です。スケジューリングには、PQとWRRという手法があります。
スケジューリングとは出力キューに設定された優先度に基づいて、出力キューから転送することを指します。
PQ(Priority Queuing)
概要:
- Priority Queuingでは、最上位の優先度から順にキュー(待ち行列)をすべて処理します。
- 上位のキューが完全に空になるまでは、下位のキューは処理されない仕組みです。
特徴:
- 最も高い優先度のトラフィック(例:音声や動画などのリアルタイム通信)は、即座に処理されるため、遅延やパケットロスの影響を受けにくくなります。
- ただし、低優先度のトラフィックが滞留しやすく、場合によっては全く処理されない「スタベーション(飢餓)」が発生するリスクがあります。
活用例:
- 企業のIP電話やビデオ会議を最上位の優先度キューに設定し、通常のデータ転送は下位のキューに設定することで、業務に必要な通信の品質を確保できます。
PQは、上位キューをすべて吐き出さないと、下位キューには進めないってことです!
Weighted Round Robin(WRR: ウェイテッドラウンドロビン)
概要:
- WRRはラウンドロビン(各キューを順番に処理)方式に、各キューごとに「重み(ウェイト)」を設定したものです。
- 設定した比率(重み)に基づき、各キューからパケットを取り出します。
特徴:
- すべてのキューが一定の頻度で処理されるため、低優先度のトラフィックも公平に処理される仕組みになっています。
- 各キューの重みを調整することで、優先度が高いトラフィックには多くの帯域が割り当てられ、優先度が低いトラフィックには少ない帯域が割り当てられます。
活用例:
- 例えば、3つのキューに対して「重み:5、3、1」と設定すると、最上位のキューが5つのパケットを処理する間に、中位のキューは3つ、下位のキューは1つのパケットを処理します。これにより、重要なトラフィックにはより多くのリソースが確保されます。
優先させたいキューにはより大きな比率を与え、低優先度のキューには小さな値を与えてあげればいいんです!
4. ハイブリッドスケジューリング
ハイブリッドスケジューリングとは、複数のスケジューリング方式を組み合わせて柔軟に優先制御を行う手法です。特に、プライオリティキューイング(PQ)とWRRの組み合わせがよく使用されます。
ハイブリッドスケジューリングの仕組み
- 最上位のキューにプライオリティキューイングを適用し、リアルタイム性が必要な通信(音声やビデオ通話)を優先的に処理します。
- 下位のキューにはWRRを適用し、各キューに重みを設定することで、低優先度の通信も一定の頻度で処理されるようにします。
実際の設定例
例えば、最上位のキューにはリアルタイムトラフィック(例:IP電話)を、下位のキューには通常のデータトラフィックを割り当てます。最上位のキューが空になるまでPQで処理し、空いた後にWRRによって中位や下位のキューを比率に応じて処理します。
例えば、キューが3つ(キュー1,キュー2、キュー3)あるとします。キュー1にはPQで最上位の優先度を与え、キュー2にはWRRで0.7を与え、キュー3にはWRRで0.3を与えます。すると、最上位のキュー1をすべて吐き出してから、キュー2とキュー3をバランスよく出力できるようなります。
5. まとめ
QoS(Quality of Service)は、ネットワーク上で特定のトラフィックに対して優先的に通信の品質を確保するための制御技術です。QoSの目的は、単に遅延やパケットロスを防ぐだけでなく、音声通話やビデオ会議のようなリアルタイム性を求める通信において、安定してスムーズなデータ伝送を実現することにあります。このため、QoSでは特定のトラフィックに帯域の最低限または最大の保証を設けたり、重要なデータを優先的に処理する優先制御、通信量を調整するフロー制御などを活用してネットワークの品質を保ちます。今回の説明では、このQoS制御の中でも「優先制御」に焦点を当て、その実際の技術について解説します。
優先制御は、各トラフィックの重要度に基づいて優先度を設定し、重要な通信データを優先的に処理することでネットワーク品質を向上させる技術です。IPネットワークでは、IPヘッダ内のDSフィールド(旧TOSフィールド)や、イーサネットフレームのVLANタグ内に含まれるCoS(Class of Service)フィールドを基準として、各通信の優先度を設定します。現在の一般的な優先度の基準としては、IPヘッダのDSCP(Differentiated Services Code Point)フィールドが使われ、従来のTOSフィールドよりも細かくトラフィックを分類できるようになっています。また、イーサネットフレーム内では、VLANタグにあるCoSフィールドが用いられ、最大8通りの優先度でフレームを分類します。これにより、各トラフィックの特性に基づいて適切な優先度を設定し、通信の品質が確保されるのです。
QoSの優先制御を実現するためには、各パケットを順に出力する際に優先度を考慮して処理する「スケジューリング」が重要になります。スケジューリングの代表的な手法として、プライオリティキューイング(Priority Queuing、PQ)とWeighted Round Robin(WRR)が挙げられます。プライオリティキューイングでは、優先度が高いものから順にキューを処理し、最上位のキューがすべて処理されるまで下位のキューが処理されない仕組みです。これにより、最も優先度が高いリアルタイム通信が遅延を最小限に抑えて即座に処理される一方、低優先度の通信は上位のキューが処理されるまで滞留するため、いわゆる「スタベーション(飢餓)」状態が発生する可能性があります。PQのようなスケジューリングは、リアルタイム性が求められるトラフィックに対しては非常に有効ですが、すべてのトラフィックが公平に処理されるわけではないため、そのバランスには注意が必要です。
Weighted Round Robin(WRR)は、PQの欠点を補うために開発されたスケジューリング手法で、ラウンドロビン方式を採用していますが、各キューごとに異なる重みを設定して処理する点が特徴です。WRRでは、事前に設定された比率に基づいて各キューから順にパケットを取り出します。たとえば、重みが「3:2:1」と設定されていれば、最上位のキューからは3つのパケット、中位のキューからは2つ、下位のキューからは1つという順序で処理を行います。この方式によって、すべてのキューが公平に一定の割合で処理されるため、低優先度のトラフィックも適度に処理されるようになり、スタベーションが回避されます。WRRでは、各キューに適切な重みを設定することで、トラフィックごとに必要なリソース量を確保しつつも、効率的な帯域管理が可能となるのです。
さらに、これらのスケジューリング手法は「ハイブリッドスケジューリング」として組み合わせることができ、実際のネットワークではこのアプローチがよく用いられます。例えば、最上位のキューにはプライオリティキューイングを適用してリアルタイム性が必要な通信(IP電話やビデオ会議など)を優先的に処理し、下位のキューにはWRRを適用することで、一般的なトラフィックにも適切な頻度で処理を行うという形がよく使われます。こうした組み合わせにより、非常に優先度の高い通信を即座に処理しつつ、低優先度の通信も公平に扱うことが可能となります。
以上のように、QoSにおける優先制御は、各トラフィックに対して適切な優先度を設定し、スケジューリング手法を用いることで、ネットワークの品質を保ちながら効率的な通信を実現するための重要な技術です。ネットワークスペシャリスト試験においても、こうしたQoSの目的と制御手法、スケジューリング方式やその特性について正しく理解することが求められます。
おわりに
本日は『QoSにおける優先制御』について知見を深まりました!
やはり、知識をつけることは大切じゃからのぉ。知識があれば大抵のことはできる。逆に知識がなければ、できるもんもできない。これが世の理じゃよ。
でも、焦らず、1つずつ・1っ歩ずつ進んでいくことが大切じゃ!これからも一緒に頑張っていこう!