QoS - WFQ(Weighted Fair Queue)その2

FQ(Fair Queue)の基本動作(2)

FQ はシーケンス番号が小さいパケットから送信しますので、
この場合は水色のキューの 400byte のパケットが送信されます。

400byte のパケットが送出されましたので、ラウンド番号は 0 から
400 になりました。

 

FQ(Fair Queue)の基本動作

 

続いて、シリアル番号の小さい 600byte のパケットが送出され、
ラウンド番号が 600 になります。

 

 

さてここで、キュー A に 300byte のパケットが流入してきたと
します。

この時のシーケンス番号は、

「activeフロー = そのフローの最大シーケンス番号 + パケット長」

ですから、900 + 300 = 1200

となります。

 

 

次にキュー C に 200byte のパケットが流入してきとします。

キュー C は、キュー内部にパケットが溜まっていないため、200byte の
パケットは、非 active フローとなります。

非 active フローのシーケンス番号は、

「非activeフロー = ラウンド番号 + パケット長」

ですから、200 + 600 = 800

となります。

 

 

以上が FQ の基本動作となります。

WFQ(Weighted Fair Queue)の動作

WFQ は FQ に Weight という重みを付けて優先付けを行います。

Weight の計算式は以下です。

weight = 32768 ÷ (IP Precedence + 1)

IP Precedence の範囲は 0 ~ 7 までですので、必然的に weight 値は
以下のようになります。

  • IPプレシーデンス 0:32768
  • IPプレシーデンス 1:16384
  • IPプレシーデンス 2:10920
  • IPプレシーデンス 3:8192
  • IPプレシーデンス 4:6552
  • IPプレシーデンス 5:5456
  • IPプレシーデンス 6:4680
  • IPプレシーデンス 7:4096

WFQ はシーケンス番号の計算に weight をかけることで、重み付けを
行います。

 

非activeフロー = ラウンド番号 + パケット長 × weight
activeフロー = そのフローの最大シーケンス番号 + パケット長 × weight

 

以上より、IP Precedence が大きいパケットほど、優先されて送信される
ことが分かります。

運用者は WFQ を使用して、サービス毎に IP Precedence を割り振ることで、
優先度を変えることで出来るわけですね。

 


WFQ(Weighted Fair Queue)設定例

WFQ の設定は超簡単で、以下のコマンドを設定するだけです。

router(config-if)# fair-queue [congestive-discard-threshold [dynamic-queues [reservable-queues]]]

ちなみにオプションの意味は以下の通り。

  • congestive-discard-threshold
    各キューで保持できるパケット数で、この閾値を超えると Drop。
    デフォルト値は 64
  • dynamic-queues
    動的に作成されるキューの最大数。
    デフォルト値は 256
  • reservable-queues
    予約済み WFQ フローに使用されるキューの最大数。
    デフォルト値は 0

また、IOS では、インタフェースの速度が 2048bps 以下の場合、
WFQ はデフォルトで有効になっています。

設定は以下のコマンドで確認可能です。

  • show queueing fair
  • show interface
  • show queue

コマンド結果例

----------
router#show queueing fair
Current fair queue configuration:

Interface DiscardDynamicReservedLinkPriority
thresholdqueues queuesqueuesqueues
FastEthernet0/0 64 2560 8 1
----------

----------
R1#show interfaces | inc fair
Queueing strategy: weighted fair
----------

----------
R1#show queue fastEthernet 0/0
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
Queueing strategy: weighted fair
Output queue: 0/1000/64/0 (size/max total/threshold/drops)
Conversations0/1/256 (active/max active/max total)
Reserved Conversations 0/0 (allocated/max allocated)
Available Bandwidth 75000 kilobits/sec
----------

関連記事

QoSとは
QoSの基本

QoS - クラス分類とマーキング
クラス分類とマーキングについて学んでいきましょう

QoS - それぞれの機能
QoSの3つの基本機能について

QoS - 輻輳制御 (Queueing)
輻輳制御 (Queueing)についての解説

QoS - プライオリティ・キューイング(PQ)
プライオリティ・キューイングについての解説

QoS - カスタムキューイング(Custom queueing)
カスタム・キューイングについての解説

QoS - カスタムキューイング(Custom queueing)その2
カスタム・キューイングについての解説

QoS - WFQ(Weighted Fair Queue)その1
WFQ(Weighted Fair Queue)についての解説

QoS - WFQ(Weighted Fair Queue)その2
WFQ(Weighted Fair Queue)についての解説

QoS - IP Precedence
IP Precedenceについての解説

QoS - DSCP
DSCPについての解説

QoS - CBWFQ
CBWFQについての解説

QoS - LLQ (Low Latencey Queuing)
LLQについての解説

QoS - WRED(Weighted Random Early Detection)
WREDについての解説

QoS - ポリシングとシェーピング
ポリシングとシェーピングについての解説

QoS - GTS(Generic Traffic Shaping)
GTSについての解説

メールマガジン

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

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

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

もちろん無料です!!

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

メールアドレス: