QoS - ポリシングとシェーピング

 

帯域制御

帯域制御とは、事前に決めておいた帯域上限を超えたトラフィックを
制御するしくみをいいます。

帯域制御には以下の 2 つの方式があります。

  • ポリシング
  • シェーピング

 

ポリシング

ポリシングを適用した場合、帯域上限を超えたパケットは破棄されます。

 

ポリシング

 

上図のように、帯域上限を超えたパケットを問答無用でバサっと破棄します。

ポリシングは受信・送信のトラフィックに対して設定可能です。
ポリシングには、「Committed Access Rate(CAR)」や
Class-Based Policing(CB-Policing)」などがあります。

 

シェーピング

シェーピングを適用した場合、帯域上限を超えたパケットはキューに
バッファされたのちに配送されます。
そのため、出力レートは平滑化されます。
キューにバッファされたパケットは FIFO または WFQ で処理されます。
シェーピングの場合、機能としてキューにバッファされるため遅延が
発生する可能性があります。

 

シェーピング

 

上図のように、帯域上限を超えたパケットを一度、キューに格納して
一定時間おいて送信されるため、トラフィックレートは平滑化されます。

ただし、キューに格納できる量には当然限界がありますので、
キューに格納しきれなかったパケットは破棄されます。

シェーピングには、「Generic Traffic Shaping (GTS)」や
Class-Based Shaping(CB-Shaping)」、
Frame-relay Traffic Shaping(FRTS)」などがあります。

ポリシングシェーピングトークン・バケットという機能を利用して、
パケットレートを測定しています。

トークン・バケット

トークン・バケットの考え方の基本は、一定量のパケットを転送した直後は
パケットの転送を止める
ということ。
この動作を繰り返すことで、パケット送出レートを一定量以下に抑える
ようにしています。

トークンとはパケットのデータ量に相当するもので、バケットとは
バケツの意味で、転送すべきトラフィックを格納するバッファに
相当します。

まずは、トークン・バケット方式で使用する用語を整理しておきましょう。

  • CIR(Committed information rate)
    定期的にバケ&ットに貯められるトークンの流量(平均レート(bit/s))
    CIR 値を超過してパケットが入ってきた場合に、ポリシングの場合は
    破棄され、シェーピングの場合はキューに貯めて後から送信する動作に
    なります。
  • Bc(Burst Committed)
    一度に取り除けるトークンのトラフィック量(bit)
    通常時に Tc 時間内に送信できる最大のデータ量
  • Be(Burst Exceed)
    ボーナス値とも言われ、バケットに貯められる最大量を示します。
  • Tc(Token Create)
    定期的にトークンが入る間隔
    Tc 時間経つと Bc 分のトークンが補充されます。
    つまり、Tc 時間内でBc 分のトラフィックを送出できることになるので、
    以下の関係が成り立ちます。
    CIR = Bc / Tc

トークンバケットを概念化すると以下のようになります。

 

トークンバケット

 

ルータにパケットが到着すると、到着したパケットのデータ量がバケット内の
トークン以内かどうかを調べます。
トークン以内であればそのデータを転送し、データ量分のトークンを
バケットから取り除きます。
ここで、もしデータ量分のトークンがなかったら、ポリシングではパケットを
破棄し、シェーピングではパケットをキューに入れます。

おすすめ記事

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: