Cisco IOS サービス品質(QoS)ソリューション コ ンフィギュレーション ガイド
クラス単位のパケット フローの制御 - クラス ベース トラフィック シェーピングの使用
クラス単位のパケット フローの制御 - クラスベース トラフィック シェーピングの使用
発行日;2012/02/04 | 英語版ドキュメント(2011/04/29 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 8MB) | フィードバック

目次

クラス単位のパケット フローの制御 - クラスベース トラフィック シェーピングの使用

目次

クラスベース トラフィック シェーピングの設定に関する前提条件

クラスベース トラフィック シェーピングの設定に関する制約事項

クラスベース トラフィック シェーピングに関する情報

クラスベース トラフィック シェーピングの機能

クラスベース トラフィック シェーピングのメリット

クラスベース トラフィック シェーピングの階層型ポリシー マップ構造

クラスベース トラフィック シェーピングの設定方法

第 1 レベル(親)ポリシー マップ内でのクラスベース トラフィック シェーピングの設定

前提条件

この次の手順

第 2 レベル(子)ポリシー マップの設定

クラスベース トラフィック シェーピングの設定例

クラスベース トラフィック シェーピングの設定:例

関連情報

その他の関連資料

関連資料

規格

MIB

RFC

シスコのテクニカル サポート

クラスベース トラフィック シェーピングに関する機能情報

クラス単位のパケット フローの制御 - クラスベース トラフィック シェーピングの使用

ネットワーク上のパケット フローは、トラフィック シェーピング メカニズムを使用して制御できます。このようなトラフィック シェーピング メカニズムの 1 つがクラスベース トラフィック シェーピングと呼ばれるシスコの機能です。クラスベース トラフィック シェーピングを使用すれば、インターフェイスから出力されるパケット フローをインターフェイスの速度に合わせて(トラフィック クラス単位で)制御できます。このモジュールでは、クラスベース トラフィック シェーピングの設定に関する概念とタスクについて説明します。

この章で紹介する機能情報の入手方法

ご使用の Cisco OS ソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。最新の機能情報と注意事項については、ご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。この章に記載されている特定の機能に関する説明へのリンク、および各機能がサポートされているリリースのリストについては、「クラスベース トラフィック シェーピングに関する機能情報」 を参照してください。

プラットフォームと Cisco IOS および Catalyst OS ソフトウェア イメージのサポート情報の検索

Cisco Feature Navigator を使用すると、プラットフォーム、Cisco IOS ソフトウェア イメージ、および Cisco Catalyst OS ソフトウェア イメージの各サポート情報を検索できます。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。

クラスベース トラフィック シェーピングの設定に関する前提条件

知識

Regulating Packet Flow Using Traffic Shaping 』モジュール内の概念に精通している必要があります。

プラットフォーム サポート

ご使用のプラットフォームでクラスベース トラフィック シェーピングがサポートされているかどうかを確認するには、Feature Navigator を使用してください。 http://www.cisco.com/go/fn にある Cisco Feature Navigator にアクセスしてください。

dCEF のイネーブル化

顧客がルータ上で Versatile Interface Processor(VIP)を使用している場合は、distributed Cisco Express Forwarding(dCEF)をイネーブルにする必要があります。

ポリシー マップとクラスの作成

ポリシー マップとクラス マップを初めて作成する場合は、Modular Quality of Service(QoS)Command-Line Interface(MQC; モジュラ QoS コマンドライン インターフェイス)を使用する必要があります。MQC の使用方法については、『 Applying QoS Features Using the MQC 』モジュールを参照してください。

クラスベース トラフィック シェーピングの設定に関する制約事項

適応型トラフィック シェーピング

フレームリレー ネットワーク用の適応型トラフィック シェーピングは、フレームリレー ネットワーク以外ではサポートされません。

アウトバウンド トラフィック専用

クラスベース トラフィック シェーピングはアウトバウンド トラフィックにのみ適用されます。

サポートされていないコマンド

クラスベース トラフィック シェーピングでサポートされていないコマンドは次のとおりです。

traffic-shape adaptive

traffic shape fecn-adaptive

traffic-shape group

traffic-shape rate

クラスベース トラフィック シェーピングに関する情報

クラスベース トラフィック シェーピングを設定するには、次の概念を理解しておく必要があります。

「クラスベース トラフィック シェーピングの機能」

「クラスベース トラフィック シェーピングのメリット」

「クラスベース トラフィック シェーピングの階層型ポリシー マップ構造」

クラスベース トラフィック シェーピングの機能

クラスベース トラフィック シェーピングはトラフィック シェーピング メカニズムです(「トラフィック シェーパー」とも呼ばれています)。トラフィック シェーパーは、通常、バッファ、またはキューイング メカニズムを使用し、過剰なトラフィックを遅延してパケットを保持し、データ レートが予想より高い場合にフローをシェーピングします。トークン バケット メカニズムを使用して、トラフィックを保持し、特定のビット レートに調整します。トークン バケットとトラフィック シェーピングに関する詳細については、『 Regulating Packet Flow Using Traffic Shaping 』モジュールを参照してください。

クラスベース トラフィック シェーピングは、シスコ推奨のトラフィック シェーピング メカニズムです。


) クラスベース トラフィック シェーピングは、従来の Distributed Traffic Shaping(DTS; 分散トラフィック シェーピング)の代用として使用する必要があります。また、クラスベース トラフィック シェーピングは、VIP2-40、VIP2-50、またはそれ以上のプロセッサを搭載した Cisco 7500 シリーズ ルータ上で使用できます。


クラスベース トラフィック シェーピングを使用すれば、次のタスクを実行できます。

トラフィック クラス単位でトラフィック シェーピングを設定します。1 つまたは複数のクラスのトラフィック シェーピングを微調整したり、より高い粒度でトラフィック シェーピングを設定したりできます。

平均レートまたはピーク レートのトラフィック シェーピングを指定します。ピーク レート シェーピングを指定すれば、帯域幅に余裕がある場合に、設定されたトラフィック シェーピング レートより多くのデータを送信可能にすることによって、帯域幅の有効利用を促進できます。

階層型ポリシー マップ構造でトラフィック シェーピングを設定します。つまり、トラフィック シェーピングは第 1 レベル(親)ポリシー マップ内で設定され、その他の QoS 機能(CBWFQ やトラフィック ポリシングなど)は第 2 レベル(子)ポリシー マップ内で設定できます。詳細については、「クラスベース トラフィック シェーピングの階層型ポリシー マップ構造」を参照してください。

クラスベース トラフィック シェーピングのメリット

トラフィック シェーピングに関連したメリットのすべてがクラスベース トラフィック シェーピングにも適用されますが、粒度は高くなります。トラフィック シェーピングの利点に関する詳細については、『 Regulating Packet Flow Using Traffic Shaping 』モジュールを参照してください。

クラスベース トラフィック シェーピングの階層型ポリシー マップ構造

クラスベース トラフィック シェーピング メカニズムを使用すれば、トラフィック シェーピングを階層型ポリシー マップ構造で設定できます。つまり、トラフィック シェーピングは第 1 レベル(親)ポリシー マップ内でイネーブルにし、トラフィック シェーピングと一緒に使用されるその他の QoS 機能(CBWFQ やトラフィック ポリシングなど)は第 2 レベル(子)ポリシー マップ内でイネーブルにできます。

トラフィック シェーピングは、ポリシー マップ内の shape コマンドを使用して(およびレートを指定して)イネーブルにされます。トラフィック シェーピングがイネーブルになっている場合は、次のいずれかの処理が行われます。

指定されたレートを上回るパケットは、該当するキューイング メカニズムを使用してキュー内に配置されます。

指定されたレートに準拠しているパケットは転送されます。

パケットがキュー内に配置されているときに使用されるデフォルト キューイング メカニズムは、Weighted Fair Queueing(WFQ; 重み付け均等化キューイング)です。ただし、クラスベース トラフィック シェーピングを使用すれば、クラスベース WFQ(CBWFQ)を代替キューイング メカニズムとして設定できます。

CBWFQ を使用すれば、トラフィックをキュー内に配置する方法を微調整できます。たとえば、音声トラフィックはすべて高優先度キューに配置し、指定されたクラスからのトラフィックはすべて低優先度キューに配置するように指定できます。

クラスベース トラフィック シェーピング メカニズムと一緒に CBWFQ を使用するには、次の条件を満たす必要があります。

第 2 レベル(子)ポリシー マップを作成する 必要があります 。作成した第 2 レベル(子)ポリシー マップは、 bandwidth コマンドをイネーブルにすることによって CBWFQ の設定に使用されます。

トラフィック シェーピングを第 1 レベル(親)ポリシー マップ内で設定する 必要があります


) CBWFQ は、第 1 レベル(親)ポリシー マップと第 2 レベル(子)ポリシー マップの両方でサポートされます。ただし、第 2 レベル(子)ポリシー マップで CBWFQ を使用するには、トラフィック シェーピングを第 1 レベル(親)ポリシー マップ内で設定する必要があります


次のサンプル設定は、クラスベース トラフィック シェーピング メカニズムを階層型ポリシー マップ構造で設定する方法を示しています。

enable
configure terminal
policy-map policy_parent ! This is the primary-level policy map.
class class-default
shape average 1000000 ! This enables traffic shaping.
service-policy policy_child ! This associates the policy maps.

 

トラフィック シェーピングを第 1 レベル(親)ポリシー マップ内で設定する必要があります。この設定では、WFQ がすべてのトラフィックをキュー内に配置するためのデフォルト キューイング メカニズムとして使用されます。

次の第 2 レベル(子)ポリシー マップでは、代替キューイング メカニズムの CBWFQ が設定されます。

enable
configure terminal
policy-map policy_child ! This is the secondary-level policy map.
class class-default
bandwidth percent 50 ! This enables CBWFQ.

 

クラスベース トラフィック シェーピングの設定方法

ここでは、次の各手順について説明します。

「第 1 レベル(親)ポリシー マップ内でのクラスベース トラフィック シェーピングの設定」(必須)

「第 2 レベル(子)ポリシー マップの設定」(任意)

第 1 レベル(親)ポリシー マップ内でのクラスベース トラフィック シェーピングの設定

トラフィック シェーピングはポリシー マップ内で設定されます。ポリシー マップによって、ネットワーク上のトラフィックに適用される QoS 機能が決定されます。このモジュールで適用される QoS 機能は、トラフィック シェーピングです。

トラフィック シェーピングは、階層内の第 1 レベル(親)ポリシー マップ内で設定されます。


) トラフィック シェーピングは、第 1 レベル(親)ポリシー マップのみでサポートされます。


前提条件

トラフィック シェーピングを設定する前に、MQC を使用してポリシー マップとクラス マップを作成する必要があります。MQC を使用したポリシー マップとクラス マップの作成方法については、『 Applying QoS Features Using the MQC 』モジュールを参照してください。

クラスベース トラフィック シェーピングを設定(ポリシー マップとクラス マップの作成後)するには、次の手順を実行します。

手順の概要

1. enable

2. configure terminal

3. policy-map policy-map-name

4. class { class-name | class-default }

5. shape [ average | peak ] mean-rate [[ burst-size ] [ excess-burst-size ]]

6. service-policy policy-map-name

7. end

8. show policy-map

9. show policy-map interface type number

10. exit

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

policy-map policy-map-name

 

Router(config)# policy-map policy_parent

事前に作成したポリシー マップの名前を指定して、ポリシー マップ コンフィギュレーション モードに入ります。詳細については、「前提条件」を参照してください。

ポリシー マップ名を入力します。

ステップ 4

class { class-name | class-default }

 

Router(config-pmap)# class class-default

作成するポリシーのクラス名を指定し、ポリシー マップ クラス コンフィギュレーション モードを開始します。

クラスの名前を入力するか、 class-default キーワードを入力します。

ステップ 5

shape [ average | peak ] mean-rate [ burst-size ] [ excess-burst-size ]

 

Router(config-pmap-c)# shape average 1000000

指定されたキーワードとレートに従ってトラフィックを調整します。

キーワードとレートを入力します。

ステップ 6

service-policy policy-map-name

 

Router(config-pmap-c)# service-policy policy_child

サービス ポリシーをポリシー マップ内の QoS ポリシーとして使用します(階層型サービス ポリシーと呼ばれています)。

ポリシー マップ名を入力します。

ステップ 7

end

 

Router(config-pmap-c)# end

特権 EXEC モードに戻ります。

ステップ 8

show policy-map

 

Router# show policy-map

(任意)すべての設定済みポリシー マップを表示します。

ステップ 9

show policy-map interface type number

 

Router# show policy-map interface serial4/0

(任意)指定されたインターフェイスまたはサブインターフェイス、またはインターフェイス上の特定の PVC のどちらかで、すべてのポリシーに対して設定されたすべてのクラスのパケット統計値を表示します。

インターフェイス タイプと番号を入力します。

ステップ 10

exit

 

Router# exit

(任意)特権 EXEC モードを終了します。

この次の手順

ここまでで、クラスベース トラフィック シェーピングを第 1 レベル(親)ポリシー マップ内で設定しました。第 2 レベル(子)ポリシー マップを階層型ポリシー マップ構造で設定するには、「第 2 レベル(子)ポリシー マップの設定」内の手順に進んでください(オプション タスク)。

第 2 レベル(子)ポリシー マップの設定

第 2 レベル(子)ポリシー マップでは、通常、トラフィック シェーピングと一緒にその他の QoS 機能(CBWFQ やトラフィック ポリシングなど)も設定されます。クラスベース トラフィック シェーピングの場合は、第 2 レベル(子)ポリシー マップでサポートされる QoS 機能が CBWFQ とトラフィック ポリシングの 2 つだけです。


) CBWFQ は、第 1 レベル(親)ポリシー マップと第 2 レベル(子)ポリシー マップの両方でサポートされます。ただし、第 2 レベル(子)ポリシー マップで CBWFQ を使用するには、トラフィック シェーピングを第 1 レベル(親)ポリシー マップ内で設定する必要があります。第 2 レベル(子)ポリシー マップ内の CBWFQ の詳細については、「クラスベース トラフィック シェーピングの階層型ポリシー マップ構造」を参照してください。


QoS 機能(CBWFQ やトラフィック ポリシングなど)を第 2 レベル(子)ポリシー マップ内で設定するには、次の手順を実行します。

手順の概要

1. enable

2. configure terminal

3. policy-map policy-map-name

4. class { class-name | class-default }

5. bandwidth { bandwidth-kbps | remaining percent percentage | percent percentage }

6. end

7. show policy-map

8. show policy-map interface type number

9. exit

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

policy-map policy-map-name

 

Router(config)# policy-map policy1

事前に作成したポリシー マップの名前を指定して、ポリシー マップ コンフィギュレーション モードに入ります。詳細については、「前提条件」を参照してください。

ポリシー マップ名を入力します。

ステップ 4

class { class-name | class-default }

 

Router(config-pmap)# class class-default

作成するポリシーのクラス名を指定し、ポリシー マップ クラス コンフィギュレーション モードを開始します。

クラスの名前を入力するか、 class-default キーワードを入力します。

ステップ 5

bandwidth { bandwidth-kbps | remaining percent percentage | percent percentage }

 

Router(config-pmap-c)# bandwidth percent 50

 

ポリシー マップに属するクラスに割り当てる帯域幅を指定または変更します。

kbps の数値、帯域幅の相対的な割合、または帯域幅合計の絶対値として、帯域幅の合計を入力します。

コマンドを使用してトラフィック ポリシングを設定することもできます。

ステップ 6

end

 

Router(config-pmap-c)# end

特権 EXEC モードに戻ります。

ステップ 7

show policy-map

 

Router# show policy-map

(任意)すべての設定済みポリシー マップを表示します。

ステップ 8

show policy-map interface type number

 

Router# show policy-map interface serial4/0

(任意)指定されたインターフェイスまたはサブインターフェイス、またはインターフェイス上の特定の PVC のどちらかで、すべてのポリシーに対して設定されたすべてのクラスのパケット統計値を表示します。

インターフェイス タイプと番号を入力します。

ステップ 9

exit

 

Router# exit

(任意)特権 EXEC モードを終了します。

クラスベース トラフィック シェーピングの設定例

ここでは、次の例について説明します。

「クラスベース トラフィック シェーピングの設定:例」

クラスベース トラフィック シェーピングの設定:例

階層型ポリシー マップ構造で設定されたクラスベース トラフィック シェーピングの例を示します。この例では、2 つのポリシー マップ(policy_parent という名前の第 1 レベル(親)ポリシー マップと policy_child という名前の第 2 レベル(子)ポリシー マップ)が作成されます。トラフィック シェーピングが policy_parent ポリシー マップ内で設定され、CBWFQ が policy_child ポリシー マップ内で設定されます。

service-policy コマンドは、階層型ポリシー マップ構造内の 2 つのポリシー マップを関連付けます。

enable
configure terminal
policy-map policy_parent
class class-default
shape average 1000000 ! This enables traffic shaping.
service-policy policy_child ! This associates the policy maps.
exit
exit
policy-map policy_child
class class-default
bandwidth percent 50 ! This enables CBWFQ.
end
 

関連情報

Generic Traffic Shaping(GTS; 汎用トラフィック シェーピング)を設定するには、『 Regulating Packet Flow on a Per-Interface Basis--Using Generic Traffic Shaping 』モジュールを参照してください。

Frame Relay Traffic Shaping(FRTS; フレームリレー トラフィック シェーピング)を設定するには、『 MQC-Based Frame Relay Traffic Shaping 』モジュールを参照してください。

その他の関連資料

ここでは、クラスベース トラフィック シェーピングの設定に関する関連資料について説明します。

関連資料

内容
参照先

QoS コマンド:コマンド構文、コマンド モード、コマンド履歴、デフォルト、使用上のガイドライン、および例

『Cisco IOS Quality of Service Solutions Command Reference』

パケット分類

Classifying Network Traffic 』モジュール

MQC、ポリシー マップ、クラス マップ、および階層型ポリシー マップ

Applying QoS Features Using the MQC 』モジュール

CBWFQ とその他のキューイング メカニズム

Configuring Weighted Fair Queueing 』モジュール

dCEF

『Cisco Express Forwarding Features Roadmap 』モジュール

トラフィック シェーピングを使用してネットワーク上のパケット フローを制御する方法に関する概要

Regulating Packet Flow Using Traffic Shaping 』モジュール

GTS

Regulating Packet Flow on a Per-Interface Basis--Using Generic Traffic Shaping 』モジュール

FRTS

MQC-Based Frame Relay Traffic Shaping 』モジュール

ここに記載されていないこのテクノロジーの機能に関する情報

Regulating Packet Flow Roadmap 』モジュール

規格

規格
タイトル

新しい規格または変更された規格はサポートされていません。また、既存の規格に対するサポートに変更はありません。

--

MIB

MIB
MIB リンク

新しい MIB または変更された MIB はサポートされていません。また、既存の MIB に対するサポートに変更はありません。

選択したプラットフォーム、Cisco IOS リリース、および機能セットの MIB を検索してダウンロードする場合は、次の URL にある Cisco MIB Locator を使用します。

http://www.cisco.com/go/mibs

RFC

RFC
タイトル

新しい RFC または変更された RFC はサポートされていません。また、既存の RFC に対するサポートに変更はありません。

--

シスコのテクニカル サポート

説明
リンク

右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。

以下を含むさまざまな作業にこの Web サイトが役立ちます。

テクニカル サポートを受ける

ソフトウェアをダウンロードする

セキュリティの脆弱性を報告する、またはシスコ製品のセキュリティ問題に対する支援を受ける

ツールおよびリソースへアクセスする

Product Alert の受信登録

Field Notice の受信登録

Bug Toolkit を使用した既知の問題の検索

Networking Professionals(NetPro)コミュニティで、技術関連のディスカッションに参加する

トレーニング リソースへアクセスする

TAC Case Collection ツールを使用して、ハードウェアや設定、パフォーマンスに関する一般的な問題をインタラクティブに特定および解決する

この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。

http://www.cisco.com/en/US/support/index.html

クラスベース トラフィック シェーピングに関する機能情報

表 1 に、この章に記載されている機能および具体的な設定情報へのリンクを示します。この表には、Cisco IOS Release 12.2(1) 以降のリリースで導入または変更された機能だけを示します。

ここで説明されていないこのテクノロジーの機能については、「 Regulating Packet Flow Roadmap 」を参照してください。

ご使用の Cisco IOS ソフトウェア リリースによっては、コマンドの中に一部使用できないものがあります。特定のコマンドに関するリリース情報については、コマンド リファレンス マニュアルを参照してください。

Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェア イメージのサポート情報を検索できます。Cisco Feature Navigator により、どの Cisco IOS および Catalyst OS ソフトウェア イメージが特定のソフトウェア リリース、フィーチャ セット、またはプラットフォームをサポートするか調べることができます。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。


表 1 には、一連の Cisco IOS ソフトウェア リリースのうち、特定の機能が初めて導入された Cisco IOS ソフトウェア リリースだけが記載されています。特に明記していないかぎり、その Cisco IOS ソフトウェア リリース トレインの以降のリリースでもその機能はサポートされます。


.

表 1 クラスベース トラフィック シェーピングに関する機能情報

機能名
ソフトウェア リリース
機能設定情報

分散トラフィック シェーピング

12.2(8)T

Distributed Traffic Shaping(DTS; 分散トラフィック シェーピング)は、インターフェイスから出力されるパケット フローを制御するための従来の方式です。DTS の代わりにクラスベース トラフィック シェーピングを使用する必要があります。

次の項で、クラスベース トラフィック シェーピングに関する情報を提供します。

「クラスベース トラフィック シェーピングに関する情報」

「クラスベース トラフィック シェーピングの設定方法」