私たちには、2つのロケーション間に「メトロイーサネット」スタイルの接続を提供するサービスプロバイダーがあります(プロバイダーを変更することはできません)。両端で、プロバイダーのスイッチのイーサネットポートにプラグインし、フレームを前後に送ります。それらから一定の帯域幅を取得し、帯域幅を超えてバーストするパケットをドロップしています。
制限を超えてバーストせず、パケットのドロップを回避するための良い方法は、トラフィックを制限内に収めるように形作ることだと確信しています。私はこれを行う方法を理解するのに非常に近いと思いますが、それはかなり複雑です。接続の両側にCisco Catalyst 3560Xがあります。
トンネル全体でトラフィックを50 Mbpsにシェーピングしたい場合、正しい(おそらく唯一の)方法のように見えます。これは、各3560のリンクに使用されるポートの出力キューでシェーピングを使用することです。トラフィックをマークまたは分類する必要はありません。すべてを50 Mbpsにシェーピングしたいだけです。これが今のポート設定の例です:
interface GigabitEthernet0/1
speed auto 10 100
spanning-tree portfast disable
mls qos
グローバル構成モードで実行することを知っています。それから私はこのようなものを見るべきです:
[Switch name]# show mls qos int gig0/1 queueing
GigabitEthernet0/1
Egress Priority Queue : disabled
Shaped queue weights (absolute) : 25 0 0 0
Shared queue weights : 25 25 25 25
The port bandwidth limit : 100 (Operational Bandwidth:100.0)
The port is mapped to qset : 1
これまでの私の理解は次のとおりです。自由に修正してください。
- すべてのトラフィックはCoS 0 /マークなしであるため、デフォルトで出力キュー2に入ります。
- 出力キュー2は帯域幅をキュー3および4と同等に共有しており、キュー1の重みは無視されます。
- 出力キュー1は、インターフェイス帯域幅の1/25にシェーピングされているため、この場合は4 Mbpsです。
したがって、キュー2〜4はそれぞれ帯域幅の33%(33 Mbps、そうですか?)が保証され、キュー1は4 Mbpsにシェーピングされていることがわかります。私の最初の質問は:
このデフォルト構成で、キュー2のみが使用されている場合、どのくらいの帯域幅が得られますか?100 Mbps?また、すべてのキューが完全に利用されている場合、キュー1は4 Mbps、キュー2-4はそれぞれ32 Mbpsになります(100-4 = 96/3 = 32)?
そして今、本当の質問:
未分類のすべての出力トラフィックを50 Mbpsに収まるように形成する
srr-queue bandwidth shape 0 2 0 0
には、問題のインターフェイスに入るだけで完了できますか?
キューの共有とシェーピングの制限は保証されていないようです。50Mbpsを超えるバーストを回避するには、出力キューで公称45 Mbpsにシェーピングする必要があるかもしれません。srr-queue bandwidth limit 90
上記のシェーピングと組み合わせて実行するだけでそれを行うことはできますか?代わりに使用することは同じでしょうか:
srr-queue bandwidth shape 0 1 0 0
srr-queue bandwidth limit 45
それはキューを2〜45 Mbpsに形成しますか(100 Mbpsインターフェイス上)?
それを理解したら、次の目的はバッファ割り当てとしきい値を整理して、シェーピングがドロップするパケットをできるだけ少なくすることだと思いますよね?これは、必要に応じて別の質問にすることもできますが、実際には、これははるかに理にかなっているようです。