CQ ( Custom Queuing )



 ◆ CQ(Custom Queuing)とは

 CQ(Custom Queuing)のキューイング方式では、各キューを順番にサイクルして管理者が定義した
 バイト値のパケットを順番に転送していく方式です。PQでは、インターフェースあたりに定義できる
 キューは最大4個でしたが、CQの場合は最大16個のキューを定義することができます。

 PQではキューに対して「high、medium、normal、low」という名称を定義しましたが、CQの場合は
 1 〜 16の数字をキューに対して定義します。


  


 Custom Queuingでは、各キューを1つずつ順番にサイクルし、各キューで定義されたバイトカウント値を
 出力インターフェースに転送します。一周すれば最初のキューに戻り同じ動作をします。上図ではキューを
 3つ作成していますが、Queue1で1500byte分のパケットを転送すれば、Queue2の順番となり1300byte分
 を転送すれば、Queue3の順番となり1000byte転送します。そして、またQueue1のパケットを転送します。


 ◆ CQの問題点

 CQではある程度のパケット転送の公平性が保たれるものの、PQのように最優先処理させるキューがないため、
 音声トラフィックなどの遅延に敏感なアプリの通信が発生するネットワークでは、通信品質に問題が発生する
 可能性があります。


 ◆ CQ - パケットの分類方法

 Custom Queuingで各パケットをどのキュー番号に格納させるのかは、以下の基準で分類することができます。

 ・ 送信元IPアドレス
 ・ あて先IPアドレス
 ・ 送信元ポート番号
 ・ あて先ポート番号
 ・ プロトコルタイプ
 ・ 着信インターフェース
 ・ IP Precedence値
 ・ DSCP値

 パケットの分類の定義に合致しないパケットは、全て「 normal 」キューに格納されることになります。



 ◆ CQ(Custom Queuing)- Ciscoルータのコンフィグ設定

 先ず、パケットの分類を行うための設定を行います。

 ◆ プロトコルやACLに基づいた分類
 
(config)# queue-list list-number protocol protocol-name queue-number queue-keyword keyword-value

 ◆ 入力インターフェースに基づいた分類
 
(config)# queue-list list-number interface interface-id queue-number


 次に、デフォルトキューの設定を行います。カスタムキューリストの他の合致基準に一致しないパケット用に
 キュー番号を割り当てます。

 ◆ デフォルトキューの設定
 (config)#
queue-list list-number default queue-number


 次に、各キューが転送できる最大バイト数を定義します。バイトカウントの値は小さすぎても大きすぎても
 問題が発生する場合があり、実際に使用されるアプリの平均パケットサイズなどを調査した上で可能な限り
 正確に定義する必要があります。CQのコンフィグ設定でこの部分が最も苦労します。

 ◆ 各キューのバイトカウント値の設定
 (config)#
queue-list list-number queue queue-number byte-count byte-count-number


 次に、各キューに格納する最大パケット数(0〜32767)を変更したい場合は以下のコマンドで設定します。

 ◆ 各キューの最大サイズの設定(デフォルト値:20)
 (config)#
queue-list list-number queue queue-number limit limit-number


 最後に、定義したカスタムキューリストを
出力インターフェースに適用します。PQにも言えることがですが、
 出力インターフェースの「output」キューに対するキューイング実装方式であることから、インターフェース
 への適用設定において、PQやCQでは「IN」や「OUT」の適用コマンドはありません。

 ◆ プライオリリストの出力インターフェースへの適用
 (config)#
interface interface-id
 (config-if)#
custom-queue-list list



 解説したコンフィグの設定例を見てみましょう。ステータスはshow queue interface serial0/0コマンドと
 show interface serial0/0、show queueing custom コマンドにより確認することができます。


 Cisco(config) #
access-list 101 permit 192.168.1.0 0.0.0.255 10.1.1.0 0.0.0.255

 Cisco(config) # queue-list 1 protocol ip 1 list 101
 Cisco(config) # queue-list 1 protocol ip 2 tcp 23
 Cisco(config) # queue-list 1 default 3
 
Cisco(config) # queue-list 1 protocol ip 4 tcp 80

 Cisco(config) # queue-list 1 queue 1 byte-count 1400
 
Cisco(config) # queue-list 1 queue 1 byte-count 640
 
Cisco(config) # queue-list 1 queue 1 byte-count 1200
 
Cisco(config) # queue-list 1 queue 1 byte-count 1500

 Cisco(config) # interface Serial0/0
 
Cisco(config-if) # custom-queue-list 1



 ※ 現在では、CQを実装するようなケースではLLQまたはCBWFQを実装させることから、CQはレガシー技術であると言えます。



QoS

ネットワークエンジニアとして

Copyright (C) 2002-2017 ネットワークエンジニアとして All Rights Reserved.