【入門編】 イーサネットにおけるQoS(Quality of Service)とIEEE 802.1p CoS – インフラ・物理&L2/L3ネットワーク基礎実践ガイド

ネットワークの世界へようこそ!インフラエンジニアの筆者です。

日頃、私たちが何気なく使っているインターネットや社内ネットワーク。YouTubeの高画質な動画がスムーズに再生されたり、大切なWeb会議の声が途切れたりしないのは、実はネットワーク機器たちが「お仕事の優先順位」をきっちり整理してくれているからなんですよね。

今回は、そんなL2(データリンク層)の世界で大活躍する優先度制御の仕組み、「IEEE 802.1p CoS(Class of Service)」について、難しいビットやパケットの専門用語をできるだけ取っ払って、身近な例えを交えながら優しく紐解いていきたいと思います。

一歩ずつ、一緒に理解していきましょう!

—

1. ネットワークの世界は大混雑する交差点

想像してみてください。朝の通勤ラッシュ時の大きな交差点を。
救急車のような「今すぐ通さなければいけない緊急車両」もいれば、「急ぎではない郵便の配達トラック」や「マイカー」まで、ありとあらゆる車が同じ道路を行き交っていますよね。

もし、道路のルールが「来た順にただ通す」だけだったらどうなるでしょうか?
救急車が後ろのトラックに阻まれて身動きが取れなくなり、命に関わる大問題になってしまいますよね。

私たちのパソコンやスマホから飛び出すデータ(イーサネットフレーム)の世界も、これとまったく同じなんです。

  • Web会議の音声や映像: 少しでも遅れると声が途切れる(=救急車)
  • 巨大なファイルのダウンロード: 数秒遅れても誰も困らない(=配達トラック)

これらが同じ一本のLANケーブルやスイッチの中を「先着順」で流れていたら、大切な音声データが渋滞に巻き込まれてカクカクになってしまいます。だからこそ、「急ぎのデータには特別な優先切符を渡して、先に行かせてあげよう!」という仕組みが必要になるわけです。これが、QoS(Quality of Service)の考え方です。

—

2. 郵便の「速達」システム:IEEE 802.1pとは?

では、L2(レイヤー2)のスイッチという郵便局の仕分け係は、どうやって「急ぎの荷物」を見分けているのでしょうか?

ここで登場するのが、IEEE 802.1pという規格です。
これは、L2のイーサネットヘッダー(厳密にはVLANタグの中)に、「この荷物はどれくらい急ぎですか?」というスタンプを押すためのルールなんですね。

郵便の封筒を思い浮かべてみてください。「普通郵便」もあれば、赤字で「速達」と書かれたものや「書留」もありますよね。スタンプを見ただけで、配達員はパッと見て「あ、これは急ぎのやつだな」と判断して一番上のカバンに入れます。

IEEE 802.1pでは、この「急ぎ度合いのスタンプ」を 3つのビット(部屋の数でいうと8部屋分) で表現しました。
3つのビットで表現できる組み合わせは、 $2^3 = 8$ 通り。つまり、イーサネットの世界では、0から7までの8段階のプライオリティ(トラフィッククラス)を使って荷物の優先順位をつけることができるんです。

—

3. 8つの優先度クラス(トラフィッククラス)の正体

それでは、その8段階のスタンプ(CoS値)が、具体的にどういう意味を持っているのか見ていきましょう。

| CoS値 | 優先度 (Priority) | トラフィックの種類(例) | 現場での使われ方 |
| :—: | :— | :— | :— |
| 7 | 最高 (Highest) | ネットワーク制御信号 (Network Control) | スイッチ同士の死活監視や経路制御プロトコルなど、止まったらネットワーク全体が崩壊するもの |
| 6 | 非常にお高い | インターネットワーキング (Internetwork) | ルーター間のルーティング情報など |
| 5 | 高い (Voice) | 音声データ (Voice) | IP電話やWeb会議の音声。遅延が命取りになるため最優先される |
| 4 | やや高い (Video) | 動画ストリーミング (Video) | 高画質なテレビ会議や監視カメラのライブ映像 |
| 3 | 中程度 | クリティカルなデータ (Excellent Effort) | 基幹システムのデータなど |
| 2 | 通常より下 | スペア / 通常データ (Spare) | 特になし(予備枠) |
| 1 | 最低 (Background) | 背景のデータ (Background) | バックアップや大容量ファイルの転送(他の邪魔にならないように最後に送る) |
| 0 | デフォルト (Best Effort) | 通常のデータ (Best Effort) | Webブラウジングやメールなど、スタンプが押されていない通常のトラフィック |

面白いことに、普段私たちが何気なくネットサーフィンをしているときのデータは、一番下の「0(Best Effort)」として扱われます。
つまり、音声や動画といった「リアルタイム性が命のデータ」に「5」や「4」といった高いスタンプを押して、通常の「0」よりも先に送り出すのが、802.1pの基本的なお仕事というわけです。

—

4. 現場での設定例:スイッチに「優先順位」を教えよう

「理屈はわかったけれど、実際の現場ではどうやって設定するの?」
そんな疑問に答えるために、ネットワーク機器(ここではCiscoや一般的なL3スイッチをイメージしたCLI設定)での実例を見てみましょう。

現場では、「CoS値『5』の荷物(音声)が来たら、一番偉い専用のキュー(Queue 3など)に入れなさい」というルールをスイッチに教えてあげる必要があります。

! ----------------------------------------------------
! 【CiscoライクなQoS設定のイメージ】
! 1. 受信したパケットのIEEE 802.1p (CoS) 値を読み取る
! 2. CoS値に応じて、スイッチ内部のキュー(優先順位の棚)に振り分ける
! ----------------------------------------------------

! クラスマップを作成:CoS値が「5(音声)」のパケットをキャッチする定義
class-map match-any VOICE_TRAFFIC
 match cos 5

! ポリシーマップを作成:キャッチした音声パケットに対するアクションを定義
policy-map ENTERPRISE_QOS_POLICY
 class VOICE_TRAFFIC
  ! 最優先のキュー(優先キュー:Priority Queue)に割り当てる
  priority

! インターフェイスにポリシーを適用する(例:uplinkポート)
interface GigabitEthernet0/1
 service-policy output ENTERPRISE_QOS_POLICY

このように設定しておくことで、スイッチの出口(ポート)がどんなに混雑していても、CoS 5 のスタンプがついた音声パケットだけは、ほかのパケットをごぼう抜きにして一番最初に回線へと送り出されるようになります。これが、現場で日々行われているプライオリティキューイングの魔法です。

—

5. おわりに

いかがでしたでしょうか?
IEEE 802.1p CoSという言葉を聞くと、なんだか難しそうな暗号のように思えてしまいますよね。でも、その本質は「大切な荷物に『速達』のスタンプを押して、みんなで順番をゆずりあう優しい仕組み」にほかなりません。

ネットワークの世界も、現実世界の人間関係や交通ルールと同じように、「思いやり」と「整理整頓」で快適に保たれています。
今回の記事が、皆さんのインフラ学習の小さな一歩となり、実務でのトラブルシューティングや設計のヒントになればこれ幸いです。

それでは、また次のネットワークの深淵でお会いしましょう!

コメント

タイトルとURLをコピーしました