nKB

nKB

とあるSEの備忘録。シンプルにいこうよ

QoS(Quality of Service)

QoS (Quality of Service) とは

QoS (Quality of Service) とは、ネットワーク上でデータ通信の品質を保証する技術や仕組みを指す。具体的には、音声通話やビデオ会議のようにリアルタイム性が求められる通信に対して、遅延、帯域幅、パケット損失率などの指標を管理・制御し、一定の品質を保つための技術である。

QoSは主にネットワーク機器で設定されるが、サーバやエンドデバイスも自身が送信するトラフィックに対してQoS設定を行うことはある。特に、リアルタイム性が重要なアプリケーション(VoIPやストリーミングなど)を実行するサーバやデバイスは、自らQoSを設定してトラフィックを送信することが多い。ネットワーク機器とサーバが連携してQoSを実施することで、ネットワーク全体で一貫したトラフィック管理が可能になる。


DSCP値とCoS値

QoSは主にDSCP(Differentiated Services Code Point)値CoS(Class of Service)値の2種類を用いてマーキングを行い、制御する。ただし、それぞれは異なるレイヤーで機能するため、どちらを使うかはネットワークの設計や使用しているプロトコルに依存する。


DSCP(Differentiated Services Code Point)値

  • OSIモデルのLayer 3(ネットワーク層)で使用される。IPベースのネットワーク全体で利用。
  • IPヘッダ内の「ToS(Type of Service)」フィールドに6ビット分の値があり、これがDSCP値として使われる。
  • 主にルータで使用され、IPパケットに対するQoS制御を行う。たとえば、トラフィックの分類、優先度設定、キュー管理などが行われる。
  • より細かい制御が可能で、IPネットワーク全体を通じて利用される。
  • DSCP値は0〜63の範囲で設定できる。様々な標準的な値があり、優先度やトラフィックタイプによって分類される。

一般的なDSCP値とクラス

特にQoS設定を行っていないパケットの場合、DSCP値は「0(ベストエフォート)」となる。
DSCP値46のEF(Expedited Forwarding)は、音声通話(VoIP)やビデオ会議など、遅延が許されないトラフィックに特に適した設定である。

DSCP値 クラス名 説明
0 Default (Best Effort) デフォルト、特別な優先順位なし
8 CS1 (Class Selector 1) 低優先度データ
10 AF11 Assured Forwarding Class 1, Low Drop
12 AF12 Assured Forwarding Class 1, Medium Drop
14 AF13 Assured Forwarding Class 1, High Drop
18 AF21 Assured Forwarding Class 2, Low Drop
20 AF22 Assured Forwarding Class 2, Medium Drop
22 AF23 Assured Forwarding Class 2, High Drop
26 AF31 Assured Forwarding Class 3, Low Drop
28 AF32 Assured Forwarding Class 3, Medium Drop
30 AF33 Assured Forwarding Class 3, High Drop
34 AF41 Assured Forwarding Class 4, Low Drop
36 AF42 Assured Forwarding Class 4, Medium Drop
38 AF43 Assured Forwarding Class 4, High Drop
46 EF (Expedited Forwarding) VoIPやリアルタイムトラフィックのための優先処理
48 CS6 Network Control
56 CS7 Network Control, High Priority


CoS(Class of Service)値

  • OSIモデルのLayer 2(データリンク層)で使用される。イーサネットフレーム単位、LAN環境で利用。
  • イーサネットフレームのVLANタグの中に3ビットの「PRI(Priority)」フィールドがあり、これがCoS値として使われる(IEEE 802.1p)。
  • 主にスイッチング環境で使用され、レイヤー2のトラフィックに対してQoSを提供する。
  • Layer 2のネットワーク(LAN内)での優先順位付けに使われ、WANやインターネット上では利用できない。
  • CoS値は0〜7の範囲で設定できる。VLANタグに含まれる3ビットフィールドを使って優先度を設定する。

一般的なCoS値とクラス

特にQoS設定を行っていないパケットの場合、CoS値は「0(ベストエフォート)」となる。

CoS値 クラス名 説明
0 Best Effort デフォルト、特に優先順位なし
1 Background 低優先度のトラフィック
2 Spare 予約されたトラフィック
3 Excellent Effort 重要度が高いビジネストラフィック
4 Controlled Load 遅延が許されないトラフィック
5 Video ビデオストリーミング、マルチメディアトラフィック
6 Voice 音声通話、VoIPトラフィック
7 Network Control ネットワーク制御トラフィック、最も高い優先度


DSCP値、CoS値の確認方法

実際のパケットにQoSが反映されているかを確認するにはパケットキャプチャが有効。

DSCP値: IPヘッダの「Differentiated Services Field (DS Field)」から確認。特に「DSCP」という項目を探す。
CoS値: イーサネットフレームの「IEEE 802.1Q VLAN」タグの中の「Priority」という項目を確認。


Ciscoスイッチへの適用の流れ

  1. class-mapで分類する
    トラフィックを特定の基準(IPアドレス、DSCP値など)で分類し、異なる種類のトラフィックを識別する。
  2. policy-mapでアクションを設定する
    分類された各クラスに対して、具体的なQoSアクション(例えば、優先度設定、帯域制御など)を適用する。
  3. インターフェースに適用する
    最後に、service-policyコマンドでpolicy-mapをインターフェースに適用する。


class-map と policy-map の役割

class-map: トラフィックの分類を行い、特定のクラスに振り分ける。
policy-map: class-mapで分類されたトラフィックに対して、具体的なアクション(QoSポリシー)を適用する。

項目 class-map policy-map
目的 トラフィックを分類する 分類されたトラフィックに具体的なアクションを適用する
使用タイミング まず最初に分類基準を設定するために使用 分類されたクラスに対してポリシーを設定するために使用
match ip dscp ef(DSCP値で分類) priority(優先処理)、bandwidth(帯域幅確保)


EOF

`); // サイドバー要素取得 const sidebar = document.querySelector("#box2-inner"); // サイドバーの最後に目次HTMLを追加 sidebar.insertAdjacentHTML('beforeend', html.join('')); } });