はじめに
本ドキュメントでは、Catalyst においての、ネットワークトラフィックのシェーピング/ポリシングについて解説します。
シェーピング
シェーピングは、ポートキューから送信されるパケットを制限するために使用される出力 QoS ツールです。シェーピングは、ポリシングと機能が異なり、ポリシングが即座にドロップするのに対し、パケットをドップする前に空きバッファスペースを使用しようと試みます。バッファリングされたパケットは、ポートがさらなる送信サイクルを得たとき(バーストがなくなったとき)に送信されます。

平均レートシェーピング設定例
policy-map Shaper
class Voice
shape average percent 10
class Video
shape average percent 20
class Signaling
shape average percent 5
class Transactions
shape average percent 30
階層型 QoS(HQoS) シェーピング設定例
class-default を使用してすべての出力トラフィックにシェーパーを適用。シェープされた帯域幅は、子ポリシーで、"bandwidth remaining percent"を使い、指定されたキューでの未使用帯域幅の割合を設定。
policy-map PARENT
class class-default
shape average percent 10
service-policy CHILD
policy-map CHILD
class VOICE
priority level 1
police rate percent 20
class C1
bandwidth remaining percent 10
class C2
bandwidth remaining percent 20
class C3
bandwidth remaining percent 70
ポリシング
トラフィックのクラスに最大レートを課し、最大レートを超えた場合、直ちに破棄するようなアクションを実行する。シェーピングと異なりパケットをバッファリングし、後で送信するオプションはありません。

Catalyst 9000 シリーズのポリシングの実装
- ポートや VLAN 上で指定したトラフィックに対して帯域制御、流量確認を行う機能
指定した流量を超えた場合は優先度を変更したり、破棄することができ、マークダウンは cos2cos、prec2prec、dscp2dscp のみ可能
- シングル レートとデュアル レートに対応しています
- 有線ポートでは、ポリシーごとに最大 63 のポリサーに対応
- Ingress と Egress (入出力両方のトラフィック)で利用可能
2Rate 3Color ポリシングの概要

- PIR(Peak Information rate): 最大情報レート
- CIR(Committed Information rate) : 認定情報レート [bit/s]- 定期的にバケットに貯められるトークンの流量(平均レート[bit/s])
- CIR値を超過してパケットが入ってきた場合に、ポリシングの場合は破棄され、シェーピングの場合は、バッファリングし、後で送信される
- BC (Burst Committed) [bit]
- 一度に取り除けるトークンのトラフィック量
- 通常時にTc時間内に送信できる最大のデータ量
- ボーナス値と言われ、バケットに貯められる最大量
- 定期的にトークンが入る間隔
- TC時間が経つと、BC分のトークンが補充される。TC時間内でBC分のトラフィックを送出できることになるため、CIR = BC/TCの関係になる
プライオリティ キュー ポリサー設定例
policy-map PRIORITY-1
class Voice
priority level 1
police rate percent 10
conform-action transmit
exceed-action drop
class Video
priority level 2
police rate percent 5
conform-action transmit
exceed-action drop
class Transactions
bandwidth percent 20
ポリシングとシェーピングの機能比較
ポリシング |
シェーピング |
バーストを許可 |
固定レートでスムーズに送信 |
ビット/秒、パケット/秒、セル/秒など複数の単位で設定可能 |
ビット/秒のみ設定可能 |
イベントに複数の可能なアクションが関連付けられる。イベント、マーキング、ドロッピングなど |
プロファイルを満たさないパケットをマークできない |
入出力両方のトラフィックで機能する |
出力トラフィックに対してのみ実装 |
パケットドロップが発生すると、TCPは、回線速度でラインを検出、設定されたレートに適合 |
TCPは、低速回線であることを検出し、再送信タイマーを適切に調整。これにより、再送信の範囲が狭くなり、TCPに負担をかけない |
参考情報
Cisco Catalyst 9000 Switching Platforms: QoS and Queuing White Paper
Cisco IOS XE Amsterdam 17.2.x(Catalyst 9300 スイッチ)Quality of Service コンフィギュレーション ガイド