内容

概要

前提条件

要件

使用するコンポーネント

背景説明

バッファ割り当て

キュー構造

バッファ割り当ての調整

HardmaxまたはSoftmaxバッファ割り当てにサービスポリシーを使用

例 1

例 2

例 3

サービスポリシーを使用したSoftmaxバッファ値の手動変更

例 1

例 2

ケーススタディ：出力ドロップ

要約

関連情報

概要

このドキュメントでは、Catalyst 3650/3850プラットフォームのキュー構造とバッファについて説明し、出力ドロップを軽減する方法の例を示します。

前提条件

要件

CatalystプラットフォームのQuality of Service(QoS)に関する基本的な知識があることが推奨されます。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

- Cisco Catalyst 3650/3850

- 03.07.04

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

出力廃棄は一般に、多数から1への、または10ギガビットから1ギガビットへの転送によって引き起こされるインターフェイスオーバーサブスクリプションの結果です。インターフェイスバッファは限られたリソースであり、パケットがドロップできるポイントまでのバーストしか吸収できません。バッファを調整すると多少のクッションが得られますが、出力ドロップがゼロになるシナリオを保証することはできません。

古いコードには既知のバグが存在するため、03.06 または 03.07 の最新バージョンを実行して適切なバッファ割り当てを取得することを推奨します。

バッファ割り当て

従来は、バッファが各キューに静的に割り当てられており、キューの数が増えるに従って、予約バッファの量は減少しました。  これは非効率的であり、すべてのキューのフレームを処理するために必要なバッファの数が不足する可能性があります。このような欠点を克服するため、Catalyst 3650/3850 プラットフォームでは厳格なバッファと柔軟なバッファが使用されます。

- ハードバッファ：これらは特定のキューに対して予約されている最小バッファです。特定のキューがバッファを使用しない場合、他のキューではこれらのバッファを使用できません。

- ソフトバッファ：これらのバッファはキューに割り当てられますが、使用しない場合は他のキューおよびインターフェイスと共有できます。

サービスポリシーが適用されていないデフォルトのバッファ割り当て

1 GBポートのデフォルトのバッファ割り当ては300バッファで、10 GBポートの場合は1800バッファ（1バッファ= 256バイト）です。ポートは、デフォルト設定の共通プールから割り当てられたデフォルトの最大400 %を使用できます。これは、1 Gigインターフェイス用に1200バッファ、10 Gigインターフェイス用に7200バッファです。

デフォルトの柔軟なバッファ制限は 400（最大しきい値）に設定されます。しきい値は、共通プールから借用できるソフトバッファの最大数を決定します。

キュー構造

サービス ポリシーを適用しない場合は、デフォルト キューが 2 つ用意されています（キュー 0 とキュー 1）。キュー 0 は制御トラフィック（DSCP 32、48、または 56）に使用され、キュー 1 はデータ トラフィックに使用されます。

デフォルトでは、キュー0には、インターフェイスで使用できるバッファの40 %をハードバッファとして割り当てることができます。つまり、1 Gポートのコンテキストでは120のバッファがキュー0に割り当てられ、10 Gポートのコンテキストでは720のバッファがキュー0に割り当てられます。このキューの最大ソフトバッファであるSoftmaxは、1 GBポートの場合は480（120の400%として計算）に、10 GBポートの場合は2880に設定されます。ここで、400は、すべてのキューに設定されているデフォルトの最大しきい値です。

キュー 1 に割り当てられた厳格なバッファはありません。queue-1のソフトバッファ値は、queue-0に割り当てられた後に残るインターフェイスバッファの400 %として計算されます。したがって、1 ギガビット インターフェイスの場合は 180 の 400 %、10 ギガビット インターフェイスの場合は 1800 の 400 % です。

「 showこの割り当てを確認するために使用できるコマンドは、 show platform qos queue config

.

1 ギガビット インターフェイスの場合

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:20 GPN:66 AFD:Disabled QoSMap:0 HW Queues: 160 - 167

DrainFast:Disabled PortSoftStart:1 - 1080

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  5   120  6   480  6   320   0     0   3  1440

1   1  4     0  7   720  3   480   2   180   3  1440

2   1  4     0  5     0  5     0   0     0   3  1440

3   1  4     0  5     0  5     0   0     0   3  1440

4   1  4     0  5     0  5     0   0     0   3  1440

5   1  4     0  5     0  5     0   0     0   3  1440

6   1  4     0  5     0  5     0   0     0   3  1440

7   1  4     0  5     0  5     0   0     0   3  1440

<<output omitted>>

10 ギガビット インターフェイスの場合

3850#show platform qos queue config tenGigabitEthernet 1/0/37

DATA Port:1 GPN:37 AFD:Disabled QoSMap:0 HW Queues: 8 - 15

DrainFast:Disabled PortSoftStart:2 - 6480

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  6   720  8  2880  7  1280   0     0   4  8640

1   1  4     0  9  4320  8  1920   3  1080   4  8640

2   1  4     0  5     0  5     0   0     0   4  8640

3   1  4     0  5     0  5     0   0     0   4  8640

4   1  4     0  5     0  5     0   0     0   4  8640

<<output omitted>>

Hardmax（厳格なバッファ）とは、常にこのキューに対して予約されている使用可能なバッファの量です。

Softmax（柔軟なバッファ）とは、他のキューまたはグローバル プールから借用できるバッファの量です。1ギガビットインターフェイスあたりのSoftmaxの総数は1200（300の400 %）で、10ギガビットインターフェイスの場合は7200バッファです。 サービスポリシーを適用する際に、明示的に作成されていない場合は、「Class default」に対して1つの追加キューを作成できます。以前に定義したクラスに一致しないすべてのトラフィックは、このキューに入ります。このキューの下にmatchステートメントを置くことはできません。

バッファ割り当ての調整

3650/3850プラットフォームでバッファを調整するには、それぞれのインターフェイスの下にサービスポリシーを追加します。サービスポリシーを使用して、HardmaxおよびSoftmaxバッファの割り当てを調整できます。

ハードバッファとソフトバッファの計算

次に、システムが各キューにHardmaxとSoftmaxを割り当てる方法を示します。

合計ポート バッファ = 300（1G）または 1800（10G）

合計で 5 つのキュー（5 つのクラス）がある場合、各キューにはデフォルトで 20 % のバッファが割り当てられます。

優先キュー

1 ギガビット：

HardMax = Oper_Buff = 300 の 20 % = 60

qSoftMax =（Oper_Buff * Max_Threshold）/100 = 60 * 400/100 = 240

10 ギガビット：

HardMax = Oper_Buff = 1800 の 20 % = 360

qsoftMax =（Oper_Buff * Max_Threshold）/100 = 360 * 400/100 = 1440

非プライオリティキュー

1 ギガビット：

HardMax = 0

qSoftMax = (Oper_Buffer*Max_Threshold)/100 = 300*20/100= 60. 60の400% = 240

10 ギガビット：

HardMax = 0

qSoftMax = (Oper_Buffer*Max_Threshold)/100 = 1800*20/100= 360. 360の400% = 1440

HardmaxまたはSoftmaxバッファ割り当てにサービスポリシーを使用

サービス ポリシーを適用すると、「レベル 1/2 のプライオリティ キュー」にのみ Hardmax が割り当てられます。次の例は、1ギガビットインターフェイスと10ギガビットインターフェイスにおける特定のサービスポリシーのバッファ割り当てを明確に示しています。サービスポリシーが適用されていないデフォルト設定では、リンクが1Gigリンクの場合、queue-0はデフォルトのHardmaxである120を取得し、リンクが10Gigリンクの場合は720バッファを取得します。

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:0 GPN:119 AFD:Disabled QoSMap:0 HW Queues: 0 - 7

DrainFast:Disabled PortSoftStart:1 - 1080

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  5   120  6   480  6   320   0     0   3  1440

1   1  4     0  7   720  3   480   2   180   3  1440

2   1  4     0  5     0  5     0   0     0   3  1440

<<output omitted>>

3850#show platform qos queue config tenGigabitEthernet 1/0/37

DATA Port:1 GPN:37 AFD:Disabled QoSMap:0 HW Queues: 8 - 15

DrainFast:Disabled PortSoftStart:2 - 6480

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  6   720  8  2880  7  1280   0     0   4  8640

1   1  4     0  9  4320  8  1920   3  1080   4  8640

2   1  4     0  5     0  5     0   0     0   4  8640

<<output omitted>>

例 1

サービスポリシーを適用するときに、プライオリティキューを設定しない場合、またはプライオリティキューレベルを設定しない場合は、そのキューにHardmaxを割り当てることはできません。

1 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority percent 20

class TWO

bandwidth percent 40

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

3850#show run interface gig1/0/1

Current configuration : 67 bytes

!

interface GigabitEthernet1/0/1

service-policy output MYPOL

end

3800#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:2 - 360

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  4     0  8   240  7   160   3    60   4   480

1   1  4     0  8   240  7   160   3    60   4   480

2   1  4     0  8   240  7   160   3    60   4   480

3   1  4     0  8   240  7   160   3    60   4   480

4   1  4     0  8   240  7   160   3    60   4   480

<<output omitted>>

!--- There are 5 classes present though you only created 4 classes.

!--- The 5th class is the default class.

!--- Each class represent a queue and the order in which it is shown is the order in which

!--- it is present in the running configuration when checking "show run | sec policy-map".

10 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority percent 20

class TWO

bandwidth percent 40

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

3850#show run interface TenGigabitEthernet1/0/37

Current configuration : 67 bytes

!

interface TenGigabitEthernet1/0/37

service-policy output MYPOL

end

3850#show platform qos queue config tenGigabitEthernet 1/0/40

DATA Port:2 GPN:40 AFD:Disabled QoSMap:1 HW Queues: 16 - 23

DrainFast:Disabled PortSoftStart:4 - 2160

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  4     0 10  1440  9   640   4   360   5  2880

1   1  4     0 10  1440  9   640   4   360   5  2880

2   1  4     0 10  1440  9   640   4   360   5  2880

3   1  4     0 10  1440  9   640   4   360   5  2880

4   1  4     0 10  1440  9   640   4   360   5  2880

5   1  4     0  5     0  5     0   0     0   5  2880

<<output omitted>>

例 2

プライオリティレベル1を適用すると、queue-0はHardmaxとして60のバッファを取得します。

1 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority level 1 percent 20

class TWO

bandwidth percent 40

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

3850#show run interface gig1/0/1

Current configuration : 67 bytes

!

interface GigabitEthernet1/0/1

service-policy output MYPOL

end

BGL.L.13-3800-1#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:2 - 360

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  6    60  8   240  7   160   0     0   4   480

1   1  4     0  8   240  7   160   3    60   4   480

2   1  4     0  8   240  7   160   3    60   4   480

3   1  4     0  8   240  7   160   3    60   4   480

4   1  4     0  8   240  7   160   3    60   4   480

<<output omitted>>

10 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority level 1 percent 20

class TWO

bandwidth percent 40

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

3850#show run interface Te1/0/37

Current configuration : 67 bytes

!

interface TenGigabitEthernet1/0/37

service-policy output MYPOL

end

3850_1#show platform qos queue config tenGigabitEthernet 1/0/37

DATA Port:2 GPN:40 AFD:Disabled QoSMap:1 HW Queues: 16 - 23

DrainFast:Disabled PortSoftStart:3 - 2160

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  7   360 10  1440  9   640   0     0   5  2880

1   1  4     0 10  1440  9   640   4   360   5  2880

2   1  4     0 10  1440  9   640   4   360   5  2880

3   1  4     0 10  1440  9   640   4   360   5  2880

4   1  4     0 10  1440  9   640   4   360   5  2880

5   1  4     0  5     0  5     0   0     0   5  2880

<<output omitted>>

例 3

この例では、1つの追加クラスが追加されます。キューの総数は6になります。設定した 2 つの優先度レベルにより、各キューに Hardmax として 51 バッファが割り当てられます。計算式は前の例と同じです。

1 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority level 1 percent 20

class TWO

priority level 2 percent 10

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

class FIVE

bandwidth percent 10

3850#show run interface gigabitEthernet1/0/1

Current configuration : 67 bytes

!

interface GigabitEthernet1/0/1

service-policy output MYPOL

end

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:16 GPN:10 AFD:Disabled QoSMap:1 HW Queues: 128 - 135

DrainFast:Disabled PortSoftStart:3 - 306

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  7    51 10   204  9   136   0     0   5   408

1   1  7    51 10   204  9   136   0     0   5   408

2   1  4     0 10   204  9   136   4    51   5   408

3   1  4     0 10   204  9   136   4    51   5   408

4   1  4     0 11   192 10   128   5    48   5   408

5   1  4     0 11   192 10   128   5    48   5   408

6   1  4     0  5     0  5     0   0     0   5   408

<<output omitted>>

10 ギガビット インターフェイスの場合：

policy-map MYPOL

class ONE

priority level 1 percent 20

class TWO

priority level 2 percent 10

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

class FIVE

bandwidth percent 10

3850#show run interface Te1/0/37

Current configuration : 67 bytes

!

interface TenGigabitEthernet1/0/37

service-policy output MYPOL

end

3850_2#show platform qos queue config tenGigabitEthernet 1/0/37

DATA Port:2 GPN:40 AFD:Disabled QoSMap:1 HW Queues: 16 - 23

DrainFast:Disabled PortSoftStart:4 - 1836

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  8   306 12  1224 11   544   0     0   6  2448

1   1  8   306 12  1224 11   544   0     0   6  2448

2   1  4     0 12  1224 11   544   6   306   6  2448

3   1  4     0 12  1224 11   544   6   306   6  2448

4   1  4     0 13  1152 12   512   7   288   6  2448

5   1  4     0 13  1152 12   512   7   288   6  2448

6   1  4     0  5     0  5     0   0     0   6  2448

<<output omitted>>

注：少数のキューに割り当てられるバッファが少なくなることがあります。これは、特定の設定が組み合わされている間に、プライオリティキューと非プライオリティキューのSoftmax計算に収まらない値として想定されます。

要約すると、Hardmax と Softmax に関しては、作成するキューが増えるほど、各キューに割り当てられるバッファが減少することになります（Hardmax は Softmax の値にも左右されます）。

3.6.3または3.7.2から、Softmaxの最大値はCLIコマンドで変更できます qos queue-softmax-multiplier 1200 デフォルト値は100です。1200に設定されている場合、非優先キュー(!=レベル1)と非一次優先キュー(1200)のSoftmaxには、デフォルト値から12が掛けられます。このコマンドは、ポリシー マップが対応付けられているポートでのみ有効です。また、プライオリティ キュー レベル 1 には適用されません。

サービスポリシーを使用したSoftmaxバッファ値の手動変更

例 1

次に、サービスポリシーの設定と、対応するバッファ割り当てを示します。

policy-map TEST_POLICY

class ONE

priority level 1 percent 40

class TWO

bandwidth percent 40

class THREE

bandwidth percent 10

3850#show run interface gigabitEthernet1/0/1

Current configuration : 67 bytes

!

interface GigabitEthernet1/0/1

service-policy output TEST_POLICY

end

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:2 - 450

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  6    75  8   300  7   200   0     0   4   600

1   1  4     0  8   300  7   200   3    75   4   600

2   1  4     0  8   300  7   200   3    75   4   600

3   1  4     0  8   300  7   200   3    75   4   600

<<output omitted>>

バッファはすべてのキューに均等に分割されます。bandwidthコマンドを使用すると、重みがすべてのキューとスケジューラの動作に対して変更されるだけです。

Softmax値を微調整するには、 queue-buffer ratio コマンドを発行します。

policy-map TEST_POLICY

class ONE

priority level 1 percent 40

class TWO

bandwidth percent 40

queue-buffers ratio 50    <---------------

class THREE

bandwidth percent 10

class FOUR

bandwidth percent 5

これらは新しいバッファ割り当てです。

1 ギガビット インターフェイスの場合：

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:0 - 900

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  6    39  8   156  7   104   0     0   0  1200

1   1  4     0  9   600  8   400   3   150   0  1200

2   1  4     0  8   156  7   104   4    39   0  1200

3   1  4     0 10   144  9    96   5    36   0  1200

4   1  4     0 10   144  9    96   5    36   0  1200

queue-1はソフトバッファの50%、つまり600バッファを取得します。残りのバッファは、アルゴリズムに従って他のキューに割り当てられます。

10ギガビットインターフェイスの同様の出力は次のとおりです。

3850#show platform qos queue config tenGigabitEthernet 1/0/37

DATA Port:2 GPN:40 AFD:Disabled QoSMap:1 HW Queues: 16 - 23

DrainFast:Disabled PortSoftStart:4 - 1836

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  7   234 10   936  9   416   0     0   5  7200

1   1  4     0 11  3600 10  1600   4   900   5  7200

2   1  4     0 10   936  9   416   5   234   5  7200

3   1  4     0  4   864 11   384   1   216   5  7200

4   1  4     0  4   864 11   384   1   216   5  7200

5   1  4     0  5     0  5     0   0     0   5  7200

<<output omitted>>

注：少数のキューに割り当てられるバッファが少なくなることがあります。これは、特定の設定が組み合わされている場合、プライオリティキューと非プライオリティキューのSoftmax計算に値が収まらないため、予期される結果です。これを処理する内部アルゴリズムが用意されています。

例 2

すべてのSoftmaxバッファを単一のデフォルトキューに割り当てます。

少数のキューに割り当てられるバッファが少なくなります。これは、特定の組み合わせが設定されている場合に、プライオリティキューと非プライオリティキューのSoftmax計算に値が収まらないため、予想されます。これを処理する内部アルゴリズムが用意されています。少数のキューに割り当てられるバッファが少なくなる可能性があります。これは、特定の組み合わせが設定されている場合に、プライオリティキューと非プライオリティキューのSoftmax計算に値が収まらないために発生します。これを処理する内部アルゴリズムがあります。

policy-map NODROP

class class-default

bandwidth percent 100

queue-buffers ratio 100

QoS設定の結果は次のとおりです。

3850#show platform qos queue config GigabitEthernet 1/1/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:0 - 900

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  4     0  8  1200  7   800   3   300   2  2400

1   1  4     0  5     0  5     0   0     0   2  2400

インターフェイスに適用されたポリシーに、「level」が設定されているプライオリティ キューがないため、Hardmax バッファは割り当てられません。 ポリシーマップを適用するとすぐに、2番目のキューが無効になり、システムには1つのキューだけが残ります。

ここでの注意点は、すべてのパケットがこの単一のキュー（OSPF/EIGRP/STPなどの制御パケットを含む）を使用することです。 輻輳（ブロードキャストストーム）が発生すると、ネットワークの中断を引き起こしやすくなります。 これは、一致する制御パケットを他のクラスで定義している場合にも発生します。

ケーススタディ：出力ドロップ

このテストでは、IXIAトラフィックジェネレータは1Gigインターフェイスに接続され、出力ポートは100Mbpsインターフェイスです。この接続は 100 Mbps 対 1 Gbps で、1 ギガビットのパケットのバーストが 1 秒間送信されます。これにより、出力100 mbpsインターフェイスで出力がドロップする可能性があります。デフォルト設定（サービスポリシーが適用されていない）では、1が送信された後の出力ドロップの数は次のようになります。

3850#show interfaces gig1/0/1 | in output drop

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 497000

これらのドロップは Th2（デフォルトしきい値）で発生しています。デフォルトでは、最大しきい値をドロップしきい値（ドロップTh2）として使用できます。

3800#show platform qos queue stats gigabitEthernet 1/0/1

DATA Port:21 Drop Counters ------------------------------- Queue Drop-TH0 Drop-TH1 Drop-TH2 SBufDrop QebDrop ----- ----------- ----------- ----------- ----------- ----------- 0 0 0

497000 0 0 1 0 0 0 0 0

その後、このサービスポリシーを設定してバッファを調整します。

policy-map TEST_POLICY

class class-default

bandwidth percent 100

queue-buffers ratio 100

3850#show run interface gigabitEthernet1/0/1

Current configuration : 67 bytes

!

interface GigabitEthernet1/0/1

service-policy output TEST_POLICY

end

3850#show platform qos queue config gigabitEthernet 2/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:0 - 900

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  4     0  8  1200  7   800   3   300   2  2400        <-- queue 0 gets all the buffer.

3850#show interfaces gigabitEthernet1/0/1 | include output drop

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 385064

同じトラフィックバーストに対して、ドロップは497000から385064に減少しました。ただし、まだドロップは発生しています。その後、次のように設定します。 qos queue-softmax-multiplier 1200 global config コマンドが表示されない場合もあります。

3850#show platform qos queue config gigabitEthernet 1/0/1

DATA Port:21 GPN:65 AFD:Disabled QoSMap:1 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:0 - 900

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  4     0  8 10000  7   800   3   300   2 10000

3850#show interfaces gigabitEthernet1/0/1 | in output drop

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 0

queue-0のSoftmaxは最大10,000のバッファに渡される可能性があり、その結果、廃棄はゼロになります。

注：他のインターフェイスもバッファを使用できるため、この種のシナリオは不可能ですが、これは確実にパケットドロップを特定のレベルに減らすのに役立ちます。

インターフェイスで使用可能な最大ソフトバッファは、このコマンドを使用して増やすことができます。ただし、このバッファを使用できるのは、他のインターフェイスがこれらのバッファを使用していない場合だけであることに注意してください。

要約

1.より多くのキューを作成すると、各キューのバッファが少なくなります。

2.使用可能なバッファの総数は、次のコマンドで増やすことができます。 qos queue-softmax-multiplier

コマンドが表示されない場合もあります。

3. 1つのclass-defaultだけを定義すると、バッファを調整するために、すべてのトラフィックが単一のキュー（制御パケットを含む）に入ります。すべてのトラフィックが 1 つのキューに入れられると、制御トラフィックとデータ トラフィックが区別されず、輻輳時に制御トラフィックがドロップされる可能性があります。したがって、少なくとも制御トラフィック用にもう 1 つクラスを作成することを推奨します。CPUによって生成された制御パケットは、クラスマップで一致しなくても、常に最初のプライオリティキューに送られます。プライオリティ キューが設定されていない場合は、インターフェイスの最初のキュー（キュー 0）に入れられます。

4. Cisco Bug ID CSCuu14019より前のバージョンでは、インターフェイスに「output drop」カウンタが表示されません。このカウンタを使用するには、 show platform qos queue stats ドロップをチェックするための出力。

5.サービスポリシーを使用せずにsoft-max multiplierを設定できるように、機能拡張の要求、Cisco Bug ID CSCuz86625（3.6.6以降で解決済み）が提出されました。

関連情報

- テクニカルサポート - Cisco Systems