QoS - CBWFQ

CBWFQ(Class-based Weighted Fair-queue)

CBWFQ は、WFQ(Weighted Fair-queue)に、Class というグループを
定義して、優先制御を行う方式
です。

WFQ の基本動作については、以下に解説しています。
WFQ の基本動作

WFQ には以下のような欠点があります。

  • ユーザにてクラス分けが出来ない
  • 帯域保障が出来ない
    (どんなパケットでも、パケット破棄が発生する可能性がある)

CBWFQ はには以下のような特徴があります。

 

クラス分けをユーザにて変更可能

WFQ の複数の Flow をまとめて、class という単位でキューを作成します。
この時の Flow のまとめかたをユーザでカスタマイズすることが可能です。

 

最低の帯域保証を設定できる

各 class ごとに輻輳時に最低限確保したい帯域を指定することが可能です。

当然輻輳時の最低帯域保障ですから、輻輳が発生していない場合は、
指定した 最低帯域を超えた帯域を使用することが可能です。

Cisco IOS の場合、「bandwidth」コマンドを使用して、最低帯域保障を
設定することが可能です。

 

CBWFQ のクラス分け手順

CBWFQ は MQC(Modular QoS CLI)にてクラスの分類を行います。

大きく以下の 4 つの手順を実施します。

  • クラス分類の設定
  • マッチ条件の設定
  • ポリシーの定義
  • インタフェースへの適用

 

クラス分類の設定

router(config)# class-map [ match-any | match-all ] name

match-any と match-all はオプションで、意味は以下の通り。

  • match-any
    クラスマップで指定した複数の条件のうち、どれか 1 つの条件に
    一致した場合
  • match-all
    クラスマップで指定した複数の条件のうち、全ての条件に一致した場合
    デフォルトは「match-all」です。

クラス数は最大で 64 まで分類可能です。

 

マッチ条件の設定

続いて、class-map 内で、マッチ条件を設定します。

マッチ条件は、様々な条件を指定することが出来ます。

router(config-cmap)# match access-group
router(config-cmap)# match any
router(config-cmap)# match class-map
router(config-cmap)# match cos
router(config-cmap)# match destination-address mac
router(config-cmap)# match discard-class
router(config-cmap)# match [ip] dscp
router(config-cmap)# match field
router(config-cmap)# match fr-dlci
router(config-cmap)# match input-interface
router(config-cmap)# match ip rtp
router(config-cmap)# match mpls experimental
router(config-cmap)# match mpls experimental topmost
router(config-cmap)# match not
router(config-cmap)# match packet length
router(config-cmap)# match port-type
router(config-cmap)# match [ip] precedence
router(config-cmap)# match protocol
router(config-cmap)# match protocol citrix
router(config-cmap)# match protocol fasttrack
router(config-cmap)# match protocol gnutella
router(config-cmap)# match protocol http
router(config-cmap)# match protocol rtp
router(config-cmap)# match qos-group
router(config-cmap)# match source-address mac
router(config-cmap)# match start
router(config-cmap)# match tag

ポリシーの定義

続いて、設定したクラスごとに、ポリシーを定義します。
ポリシーの定義で、最低帯域保障や最大パケット数の設定を行います。

最低帯域保障は「bandwidth」コマンドで指定します。

router(config-pmap-c)# bandwidth [ {kbps} | percent {value} | remaining percent {value}]

指定方法は 3 通り。

  • bandwidth {kbps}
    帯域で指定する場合
  • bandwidth percent {value}
    物理インタフェースの割合で指定する場合
  • bandwidth remaining percent {value}
    他のクラスに割り当てられていない帯域幅の割合で指定する場合

ここで、ユーザが設定したどのクラスにも分類されないパケットは、
「class-default」というクラスに分類
されます。

class-default」内の QoS 動作は FIFO となります。
(WFQ 動作にすることも可能)

ちなみに、使用できる帯域幅は物理帯域の 75% を上限としています。
残りの 25% はルーティングアップデートや keepalive パケット などで
使用するためこのような仕様となっています。

上限 75% を変更したい場合は、インタフェース内で以下のコマンドを
設定します。

router(config-if)# max-reserved-bandwidth <1-100>

また、各クラスに最大パケット数を設定することも可能です。

router(config-pmap-c)# queue-limit {value}

queue-limit のデフォルト値は「64」です。

 

インタフェースへの適用

最後にインタフェースにポリシーを適用します。

router(config-if)# service-policy [input | output] {policy-map-name}

 

設定例

ここまで説明してきた全体の設定例を記載しておきます。

class-map match-all CL-A
matchdscp 43
class-map match-all CL-B
match access-group 110
class-map match-any CL-C
matchprecedence 2
match protocol ftp
!
policy-map TEST
class CL-A
bandwidth percent 30
class CL-B
bandwidth percent 40
class CL-C
bandwidth percent 5
class class-default
queue-limit 128 packets
!
interface FastEthernet0/0
ip address 157.2.170.149 255.255.255.0
service-policy output TEST
!
access-list 110 permit ip any 10.1.1.0 0.0.0.255

 

設定の確認

設定の確認は「show policy-map interface」コマンドで実施します。

R1#show policy-map interface fastEthernet 0/0
FastEthernet0/0

Service-policy output: TEST

Class-map: CL-A (match-all)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match:dscp 43
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 30% (30000 kbps)

Class-map: CL-B (match-all)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: access-group 110
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 40% (40000 kbps)

Class-map: CL-C (match-any)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match:precedence 2
0 packets, 0 bytes
5 minute rate 0 bps
Match: protocol ftp
0 packets, 0 bytes
5 minute rate 0 bps
Queueing
queue limit 64 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 5% (5000 kbps)

Class-map: class-default (match-any)
26 packets, 2492 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: any
26 packets, 2492 bytes
5 minute rate 0 bps

queue limit 128 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 26/2492

おすすめ記事

  • 【特集】 いまさら聞けないIT契約書のはなし【第4回 契約の種類(2)】
  • 【特集】 進化する脅威にどう立ち向かうか【最終回】
  • 【特集】 災害復旧、事業継続計画(BCP)などの対策状況(2018年)・後編
  • 【特集】 地震や台風から情報資産を守る救世主・データセンター活用の今
  • 【特集】 「固定電話も、ムダ残業もやめた」徹底した"富士通流"働き方改革
  • 関連記事

    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についての解説

    メールマガジン

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

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

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

    もちろん無料です!!

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

    メールアドレス:

    検索

    特集

    初心者のためのciscoルータの管理

    目指せPMP


    著書

    図解入門 よくわかる最新ネットワーク技術の基本と仕組み

    初心者のためのCiscoルータ運用ガイド: 最速でCiscoルータを理解するための解説書

    目指せPMP PMBOK第5版対応: 最速でPMPに合格するための解説書

    見てわかるTCP/IP

    おすすめ記事

    カテゴリ

    ブログ最新記事