この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、UADP ASICベースのCatalyst 9000シリーズプラットフォームの高速インターフェイスでの出力廃棄をトラブルシューティングする方法について説明します。
次の項目に関する知識があることが推奨されます。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
注:シスコの他のプラットフォームでこれらの機能を有効にするために使用されるコマンドについては、該当するコンフィギュレーション ガイドを参照してください。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
高速インターフェイスでの出力廃棄は、あらゆるネットワーク環境で発生する問題であり、特に10 Gbps以上のデータ転送速度をサポートするインターフェイスを扱う場合に発生する可能性があります。出力廃棄は、パケットがネットワークに送信される前にインターフェイスによって廃棄されると発生します。
出力ドロップが使用率の低いレベルで発生した場合に、インターフェイス使用率がどのように解釈されるかは誤解されがちです。
ただし、ほとんどの場合、出力廃棄は、ポートバッファを使い果たしたマイクロバーストトラフィックによって引き起こされます。
ネットワークトラフィックは、通常、リンクの平均使用率で測定されます(設定に応じて30秒~ 5分間で測定)。この平均は安定した比較的均一なフローを示していますが、ミリ秒単位で見ると、インターフェイスの使用率は非常に高いバースト性を示すことが多くなります
図 1. は、高速インターフェイスでの出力廃棄の根本的な原因を視覚的に示しています。
インターフェイスの「速度/帯域幅」は両方ともある程度誤った呼び方をします。
「速度」の違いは、メディア(光/電子)の速度が上がるのに対して、インターリーブ機能/レーン数/時間間隔あたりのパルス数、符号化メカニズムなどです。
ヒント:ロードインターバルの遅延を秒単位で変更するには、インターフェイスコンフィギュレーションモードでload-interval <30-600>コマンドを使用します。(ロード間隔は、スイッチがインターフェイスカウンタをポーリングする頻度を表します)
高速インターフェイスでの出力廃棄のトラブルシューティングは複雑なプロセスになる可能性がありますが、問題の特定と解決に役立つ一般的な手順を次に示します。
影響を受けるインターフェイスを特定します。
着信インターフェイスと発信インターフェイスの特定
バッファ割り当ての確認:
Wiresharkでマイクロバーストを確認します。
ハードウェアのアップグレードを検討します。
出力ドロップが発生している影響を受けるインターフェイスを特定するためshow interfacesコマンドを使用できます。
インターフェイスのリストを絞り込み、影響を受けるインターフェイスをすばやく特定するには、show interfaces | include is up|Total output drops コマンドを使用して、インターフェイスのダウンまたはadmin downをフィルタリングして、アクティブでドロップのあるインターフェイスだけを表示します。
Cat9k(config)#show interfaces | in is up|Total output drops
HundredGigE1/0/1 is up, line protocol is up (connected)
Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 54845
HundredGigE1/0/10 is up, line protocol is up (connected)
Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 1540231
--snip--
ヒント:show interfacesコマンドを使用し、適切な基準で出力をフィルタリングすると、影響を受けるインターフェイスをすばやく簡単に特定して、問題を解決するために必要な手順を実行できます。
Catalyst 9000シリーズスイッチでは、出力パケットドロップはパケットではなくデフォルトでバイト単位で表示されます。検出された出力廃棄の量が実際に影響を及ぼしているのか、あるいは単に一時的なバーストトラフィックが原因なのかを判断することが重要です。
インターフェイスで送信された出力バイトのうち、廃棄されたものの割合を計算するには、次のコマンドを実行します。
これは、インターフェイスで廃棄された出力バイトのパーセンテージを示します。これは、対処が必要な輻輳またはバッファ割り当ての問題があるかどうか、あるいは出力廃棄が一時的なマイクロバストトラフィックによって引き起こされたかどうかを判断するのに役立ちます。
情報を収集するには、showinterface <interface> コマンドを使用します。
Cat9k#show interfaces twentyFiveGigE 1/0/41 TwentyFiveGigE1/0/41 is up, line protocol is up (connected) Hardware is Twenty Five Gigabit Ethernet, address is dc77.4c8a.4289 (bia dc77.4c8a.4289) MTU 1500 bytes, BW 25000000 Kbit/sec, DLY 10 usec, reliability 255/255, txload 3/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive set (10 sec) Full-duplex, 10Gb/s, link type is auto, media type is SFP-10GBase-AOC1M input flow-control is on, output flow-control is off ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:06, output 00:00:10, output hang never Last clearing of "show interface" counters 6w1d Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 299040207 Queueing strategy: Class-based queueing Output queue: 0/40 (size/max) 30 second input rate 767000 bits/sec, 155 packets/sec 30 second output rate 14603000 bits/sec, 1819 packets/sec 931864194 packets input, 572335285416 bytes, 0 no buffer Received 933005 broadcasts (933005 multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 watchdog, 0 multicast, 0 pause input 0 input packets with dribble condition detected 1067891106 packets output, 5930422327799 bytes, 0 underruns
--snip--
Total output drops: 299040207
出力バイトの合計: 5930422327799
出力廃棄の割合= 299040207/5930422327799 x 100 = 0.005%
この例では、出力ドロップの合計は、過去6週間にこのインターフェイスで送信された合計バイト量の0.005%を表します(カウンタ6w1dの最後のクリア)。
Catalyst 9000シリーズスイッチでソフトバッファをより適切に割り当ててトラフィックを管理するには、異なるASICで着信インターフェイスと発信インターフェイスを選択することを検討できます。
ソフトバッファは、ダイナミックバッファまたは共有バッファとも呼ばれ、輻輳またはトラフィックの高負荷時にパケットを一時的に格納するために動的に割り当てられるメモリの部分を指します。
ヒント:Catalyst 9000シリーズスイッチでのバッファ割り当ての詳細については、『Catalyst 9000スイッチでのキューバッファ割り当てについて』を参照してください
Catalyst 9000スイッチの特定モデルのアーキテクチャに基づくと、さまざまな機能を担う複数のASICが組み込まれていることがよくあることに注意してください。
インターフェイスとASICのマッピングを確認するには、show platform software fed <switch|active> ifm mappingsコマンドを実行します。
次の例は、インターフェイスとASICのマッピングを示しています。インターフェイス範囲TenGigabitEthernet1/0/1 ~ TenGigabitEthernet1/0/24はASIC 1にマッピングされ、残りはASIC 0にマッピングされます。
Cat9k#show platform software fed switch active ifm mappings Interface IF_ID Inst Asic Core Port SubPort Mac Cntx LPN GPN Type Active TenGigabitEthernet1/0/1 0x9 3 1 1 0 0 11 0 1 1 NIF Y TenGigabitEthernet1/0/2 0xa 3 1 1 1 0 10 1 2 2 NIF Y TenGigabitEthernet1/0/3 0xb 3 1 1 2 0 9 2 3 3 NIF Y TenGigabitEthernet1/0/4 0xc 3 1 1 3 0 8 3 4 4 NIF Y TenGigabitEthernet1/0/5 0xd 3 1 1 4 0 7 4 5 5 NIF Y TenGigabitEthernet1/0/6 0xe 3 1 1 5 0 6 5 6 6 NIF Y TenGigabitEthernet1/0/7 0xf 3 1 1 6 0 5 6 7 7 NIF Y TenGigabitEthernet1/0/8 0x10 3 1 1 7 0 4 7 8 8 NIF Y TenGigabitEthernet1/0/9 0x11 3 1 1 8 0 3 8 9 9 NIF Y TenGigabitEthernet1/0/10 0x12 3 1 1 9 0 2 9 10 10 NIF Y TenGigabitEthernet1/0/11 0x13 3 1 1 10 0 1 10 11 11 NIF Y TenGigabitEthernet1/0/12 0x14 3 1 1 11 0 0 11 12 12 NIF Y TenGigabitEthernet1/0/13 0x15 2 1 0 12 0 11 0 13 13 NIF Y TenGigabitEthernet1/0/14 0x16 2 1 0 13 0 10 1 14 14 NIF Y TenGigabitEthernet1/0/15 0x17 2 1 0 14 0 9 2 15 15 NIF Y TenGigabitEthernet1/0/16 0x18 2 1 0 15 0 8 3 16 16 NIF Y TenGigabitEthernet1/0/17 0x19 2 1 0 16 0 7 4 17 17 NIF Y TenGigabitEthernet1/0/18 0x1a 2 1 0 17 0 6 5 18 18 NIF Y TenGigabitEthernet1/0/19 0x1b 2 1 0 18 0 5 6 19 19 NIF Y TenGigabitEthernet1/0/20 0x1c 2 1 0 19 0 4 7 20 20 NIF Y TenGigabitEthernet1/0/21 0x1d 2 1 0 20 0 3 8 21 21 NIF Y TenGigabitEthernet1/0/22 0x1e 2 1 0 21 0 2 9 22 22 NIF Y TenGigabitEthernet1/0/23 0x1f 2 1 0 22 0 1 10 23 23 NIF Y TenGigabitEthernet1/0/24 0x20 2 1 0 23 0 0 11 24 24 NIF Y TenGigabitEthernet1/0/25 0x21 1 0 1 24 0 11 0 25 25 NIF Y TenGigabitEthernet1/0/26 0x22 1 0 1 25 0 10 1 26 26 NIF Y TenGigabitEthernet1/0/27 0x23 1 0 1 26 0 9 2 27 27 NIF Y TenGigabitEthernet1/0/28 0x24 1 0 1 27 0 8 3 28 28 NIF Y TenGigabitEthernet1/0/29 0x25 1 0 1 28 0 7 4 29 29 NIF Y TenGigabitEthernet1/0/30 0x26 1 0 1 29 0 6 5 30 30 NIF Y TenGigabitEthernet1/0/31 0x27 1 0 1 30 0 5 6 31 31 NIF Y TenGigabitEthernet1/0/32 0x28 1 0 1 31 0 4 7 32 32 NIF Y TenGigabitEthernet1/0/33 0x29 1 0 1 32 0 3 8 33 33 NIF Y TenGigabitEthernet1/0/34 0x2a 1 0 1 33 0 2 9 34 34 NIF Y TenGigabitEthernet1/0/35 0x2b 1 0 1 34 0 1 10 35 35 NIF Y TenGigabitEthernet1/0/36 0x2c 1 0 1 35 0 0 11 36 36 NIF Y TenGigabitEthernet1/0/37 0x2d 0 0 0 36 0 11 11 37 37 NIF Y TenGigabitEthernet1/0/38 0x2e 0 0 0 37 0 10 10 38 38 NIF Y TenGigabitEthernet1/0/39 0x2f 0 0 0 38 0 9 9 39 39 NIF Y TenGigabitEthernet1/0/40 0x30 0 0 0 39 0 8 8 40 40 NIF Y TenGigabitEthernet1/1/1 0x31 0 0 0 40 0 0 19 41 41 NIF N TenGigabitEthernet1/1/2 0x32 0 0 0 41 0 0 18 42 42 NIF N TenGigabitEthernet1/1/3 0x33 0 0 0 42 0 0 17 43 43 NIF N TenGigabitEthernet1/1/4 0x34 0 0 0 43 0 0 16 44 44 NIF N TenGigabitEthernet1/1/5 0x35 0 0 0 44 0 0 15 45 45 NIF N TenGigabitEthernet1/1/6 0x36 0 0 0 45 0 0 14 46 46 NIF N TenGigabitEthernet1/1/7 0x37 0 0 0 46 0 0 13 47 47 NIF N TenGigabitEthernet1/1/8 0x38 0 0 0 47 0 0 12 48 48 NIF N FortyGigabitEthernet1/1/1 0x39 0 0 0 48 0 4 4 49 49 NIF N FortyGigabitEthernet1/1/2 0x3a 0 0 0 49 0 0 0 50 50 NIF N
バッファの割り当ては、出力ドロップを回避するための重要な要素です。バッファは、輻輳やその他の変数が原因で転送できないトラフィックを一時的に格納するために使用されるためです。使用できるバッファが十分にない場合、トラフィックはドロップされ、ネットワークパフォーマンスが低下し、中断が発生する可能性があります。この検証により、高いトラフィック負荷を処理するのに十分なバッファスペースがスイッチにあることを確認できます。
show platform hardware fed switch active qos queue stats interface <interface>コマンドを使用すると、インターフェイスのキューごとの統計情報を表示できます。この統計情報には、バッファにエンキューされたバイト数や、使用可能なバッファがないために廃棄されたバイト数などが含まれます。
この例では、
Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/41 ---------------------------------------------------------------------------------------------- AQM Global counters GlobalHardLimit: 16257 | GlobalHardBufCount: 0 GlobalSoftLimit: 39039 | GlobalSoftBufCount: 0 ---------------------------------------------------------------------------------------------- High Watermark Soft Buffers: Port Monitor Disabled ---------------------------------------------------------------------------------------------- Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters ---------------------------------------------------------------------------------------------- Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer (Count) (Bytes) (Bytes) (Bytes) (Bytes) -- ------- -------------------- -------------------- -------------------- -------------------- 0 0 0 40588200 9368282 0 1 0 0 23584521 789524 0 2 0 0 0 110307150901 0 3 0 0 0 487852543 0 4 0 0 0 5483512 0 5 0 0 0 0 0 6 0 0 0 0 0 7 0 0 0 0 Asic:0 Core:0 DATA Port:8 Hardware Drop Counters -------------------------------------------------------------------------------------------------------------------------------- Q Drop-TH0 Drop-TH1 Drop-TH2 SBufDrop QebDrop QpolicerDrop (Bytes) (Bytes) (Bytes) (Bytes) (Bytes) (Bytes) -- -------------------- -------------------- -------------------- -------------------- -------------------- -------------------- 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2 0 0 24010607 <-- (drops on Q2) 0 0 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 5 0 0 0 0 0 0 6 0 0 0 0 0 0 7 0 0 0 0 0 0
インターフェイスで使用されるソフトバッファの値を増やすには、 qos queue-softmax-multiplierコマンドをグローバルコンフィギュレーションモードで入力します。
この設定は、すべてのインターフェイスに適用されます。
ソフトバッファの割り当てを変更するには、グローバルコンフィギュレーションモードでqos queue-softmax-multiplier<100 4800>コマンドを使用します。使用可能な最大値に設定すると、出力ドロップを排除または削減する可能性が最も高くなります。これは、可能な限り廃棄を避けるために一般的に推奨されるベストプラクティスです。
Cat9k(config)#qos queue-softmax-multiplier ?
<100-4800> multiplier(%)
show platform hardware fed active qos queue config interface <interface>コマンドを発行して、Catalyst 9000シリーズでのソフトバッファの割り当てを確認します。
次の例は、Catalyst 9500で10 Gbpsの速度にネゴシエートされたインターフェイスに割り当てられているデフォルトのソフトバッファを示しています。
Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41 Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12 AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71 DrainFast:Disabled PortSoftStart:5 - 4320 BufferSharing:Disabled DTS Hardmax Softmax PortSMin GlblSMin PortStEnd QEnable ----- -------- -------- -------- -------- --------- ------- 0 1 6 480 8 1920 16 960 0 0 3 5760 En <-- 1920 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41 1 1 5 0 11 2880 16 1440 8 720 3 5760 En <-- 2880 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41 2 1 5 0 6 0 0 0 0 0 3 5760 En 3 1 5 0 6 0 0 0 0 0 3 5760 En 4 1 5 0 6 0 0 0 0 0 3 5760 En 5 1 5 0 6 0 0 0 0 0 3 5760 En 6 1 5 0 6 0 0 0 0 0 3 5760 En 7 1 5 0 6 0 0 0 0 0 3 5760 En Priority Shaped/shared weight shaping_step sharpedWeight -------- ------------- ------ ------------ ------------- 0 0 Shared 50 0 0 1 0 Shared 75 0 0 2 0 Shared 10000 0 0 3 0 Shared 10000 0 0 4 0 Shared 10000 0 0 5 0 Shared 10000 0 0 6 0 Shared 10000 0 0 7 0 Shared 10000 0 0 Port Port Port Port Priority Shaped/shared weight shaping_step -------- ------------- ------ ------------ 2 Shaped 1023 1023 QPolicer Refresh Credit Max Credit Interval Idx ----------- -------------- ---------- ------------ 0 Disabled 0 0 0 1 Disabled 0 0 0 2 Disabled 0 0 0 3 Disabled 0 0 0 4 Disabled 0 0 0 5 Disabled 0 0 0 6 Disabled 0 0 0 7 Disabled 0 0 0 Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1 Weight2 Max_Th2 Min_Th2 ------- ------- ------- ------- ------- ------- ------- ------- ------ 0 0 1912 0 0 2137 0 0 2400 0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41 1 0 2295 0 0 2565 0 0 2880 0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0
次の例は、4800マルチプライヤが設定されたCatalyst 9500で10 Gbpsの速度にネゴシエートされたインターフェイスに割り当てられたソフトバッファを示しています。
Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41 Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12 AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71 DrainFast:Disabled PortSoftStart:4 - 42000 BufferSharing:Disabled DTS Hardmax Softmax PortSMin GlblSMin PortStEnd QEnable ----- -------- -------- -------- -------- --------- ------- 0 1 6 480 10 42000 1 1312 0 0 4 42000 En <-- 42000 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41 1 1 5 0 10 42000 1 1312 1 1312 4 42000 En <-- 42000 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41 2 1 5 0 6 0 0 0 0 0 4 42000 En 3 1 5 0 6 0 0 0 0 0 4 42000 En 4 1 5 0 6 0 0 0 0 0 4 42000 En 5 1 5 0 6 0 0 0 0 0 4 42000 En 6 1 5 0 6 0 0 0 0 0 4 42000 En 7 1 5 0 6 0 0 0 0 0 4 42000 En Priority Shaped/shared weight shaping_step sharpedWeight -------- ------------- ------ ------------ ------------- 0 0 Shared 50 0 0 1 0 Shared 75 0 0 2 0 Shared 10000 0 0 3 0 Shared 10000 0 0 4 0 Shared 10000 0 0 5 0 Shared 10000 0 0 6 0 Shared 10000 0 0 7 0 Shared 10000 0 0 Port Port Port Port Priority Shaped/shared weight shaping_step -------- ------------- ------ ------------ 2 Shaped 1023 1023 QPolicer Refresh Credit Max Credit Interval Idx ----------- -------------- ---------- ------------ 0 Disabled 0 0 0 1 Disabled 0 0 0 2 Disabled 0 0 0 3 Disabled 0 0 0 4 Disabled 0 0 0 5 Disabled 0 0 0 6 Disabled 0 0 0 7 Disabled 0 0 0 Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1 Weight2 Max_Th2 Min_Th2 ------- ------- ------- ------- ------- ------- ------- ------- ------ 0 0 33851 0 0 37833 0 0 42480 0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41 1 0 33468 0 0 37406 0 0 42000 0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0
注:ソフトバッファの割り当てはさまざまであり、上記の出力と一致しない場合があります。これは、使用される特定のプラットフォーム、適用されるQoSポリシー、および対象のインターフェイスのネゴシエートされた動作速度によって異なります
キュー単位のバッファ変更は、SoftMax乗数を使用できないシナリオや、トラフィックプロファイルに合わせてバッファを微調整しようとするシナリオで利用できます。
この例では、インターフェイスtwentyFiveGigE 1/0/1で出力ドロップが発生しています。コマンド出力に示されているように、このインターフェイスに適用されるegress policy-map。
show platform hardware fed switch active qos queue stats interface <interface>コマンドを使用すると、インターフェイスのキューごとの統計情報を表示できます。この統計情報には、バッファにキューイングされたバイト数や、使用可能なバッファの不足によって廃棄されたバイト数などが含まれます。
Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/1 ---------------------------------------------------------------------------------------------- AQM Global counters GlobalHardLimit: 16257 | GlobalHardBufCount: 0 GlobalSoftLimit: 39039 | GlobalSoftBufCount: 0 ---------------------------------------------------------------------------------------------- High Watermark Soft Buffers: Port Monitor Disabled ---------------------------------------------------------------------------------------------- Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters ---------------------------------------------------------------------------------------------- Q Buffers Enqueue-TH0 Enqueue-TH1 Enqueue-TH2 Qpolicer (Count) (Bytes) (Bytes) (Bytes) (Bytes) -- ------- -------------------- -------------------- -------------------- -------------------- 0 0 0 0 82 0 1 0 0 0 7517 0 2 0 0 0 110307150901 0 3 0 0 0 7174010710 0 4 0 0 0 0 0 5 0 0 0 0 0 6 0 0 0 0 0 7 0 0 0 0 Asic:0 Core:0 DATA Port:8 Hardware Drop Counters -------------------------------------------------------------------------------------------------------------------------------- Q Drop-TH0 Drop-TH1 Drop-TH2 SBufDrop QebDrop QpolicerDrop (Bytes) (Bytes) (Bytes) (Bytes) (Bytes) (Bytes) -- -------------------- -------------------- -------------------- -------------------- -------------------- -------------------- 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2 0 0 24010607 0 0 0 3 0 0 20071103 0 0 0 4 0 0 0 0 0 0 5 0 0 0 0 0 0 6 0 0 0 0 0 0 7 0 0 0 0 0 0
Enqueueカウンタに基づいて、このインターフェイスでの出力廃棄を軽減するために、Q0 ~ Q1のエンキュー率は非常に低く、Q2およびQ3ほど多くのバッファを必要としません。キュー2とキュー3には、他のキューよりも大量のトラフィックがキューイングされるため、より多くのバッファをキュー2とキュー3に割り当てることをお勧めします。
注:このコマンドをポリシーの各クラスに設定する場合、合計が100になる必要があります。ただし、1つのクラスだけが設定されている場合、システムは他のキューからバッファを均等に差し引きます。
次の例は、ポリシーマップでqueue-buffers ratioを設定する方法を示しています。
Cat9k(config)#policy-map test
Cat9k(config-pmap)# class Voice
Cat9k(config-pmap-c)# priority level 1
Cat9k(config-pmap-c)# queue-buffers ratio 5
Cat9k(config-pmap-c)# class Video
Cat9k(config-pmap-c)# bandwidth remaining percent 50
Cat9k(config-pmap-c)# queue-buffers ratio 15
Cat9k(config-pmap-c)# class BuisnessCritical
Cat9k(config-pmap-c)# bandwidth remaining percent 30
Cat9k(config-pmap-c)# queue-buffers ratio 40 <-- Queue 3
Cat9k(config-pmap-c)# class class-default
Cat9k(config-pmap-c)# bandwidth remaining percent 20
Cat9k(config-pmap-c)# queue-buffers ratio 40 <-- Queue 4
Cisco IOS XE 17.2.1リリース以降、UADP 3.0(Catalyst 9500 High PerformanceおよびCatalyst 9600)ベースのスイッチは、同じASIC内の2つのコア間でActive Queue Management(AQM)バッファを共有するように設定できます。
バッファ共有を無効にするには、no形式のコマンドを使用します。 no qos share-bufferを参照。
Cat9k(config)#qos share-buffer
Cat9k(config)#end
ネットワーク上にマイクロバーストが存在することを確認するには、Wiresharkなどのパケットキャプチャツールを使用できます。
Wiresharkでドロップが発生したときに発生するマイクロバーストを特定するには、影響を受けるインターフェイスでパケットキャプチャを開始し、出力ドロップが発生するまで繰り返しインターフェイスをチェックします。
インターフェイスでの出力ドロップを効果的にキャプチャして分析するには、次の推奨事項を使用します。
このような大量のトラフィックが発生している時間帯がマイクロバーストであるかどうかを確認するには、WiresharkのI/Oグラフ機能を使用します。I/Oグラフには、ネットワークトラフィックの推移がグラフで表示されます。マイクロバーストを簡単に特定できます。I/Oグラフを作成するには、[統計]>[I/Oグラフ]に移動します。
注:この手順を示すために、1 Gbpsインターフェイスで取得したパケットキャプチャを使用しました。ただし、高速インターフェイスでの出力廃棄のトラブルシューティング手順は同じです
図 2:I/Oグラフを選択します。
次のグラフは、転送中のデータの量を示す線を示しています。グラフ内のスパイクを探します。これは、トラフィックが多い時間帯を示しています。これらのスパイクの後にトラフィックが少ない期間またはトラフィックがない期間が続く場合は、マイクロバーストを特定している可能性があります。
図 3:パケットキャプチャのI/Oグラフを表示します。
すべてのパケットが選択され、表示フィルタが適用されていないことを確認することが重要です。また、Line Graphオプションを選択し、Y軸をBitsに設定してトラフィックを適切に分析します。
図 4:[折れ線グラフ]オプションを選択し、Y軸を[ビット]に設定する方法を示します。
大きなパケットキャプチャを分析する場合、対象とする特定の期間を特定することが重要です。たとえば、このシナリオでは、30秒近くに大量のトラフィックがあることが確認されています。
I/Oグラフのスパイクのピークをクリックすると、Wiresharkがバックグラウンドでそのパケットを選択します。このシナリオでは、マイクロバーストの存在が疑われるタイムスタンプ内で動作するパケットキャプチャのサブセットを作成するために、パケット79280と101896を選択しました。
図 5.マイクロバーストの存在が疑われるタイムスタンプに焦点を合わせたパケットキャプチャのサブセットを作成する方法を示します。
選択した最初と最後のパケットを新しいファイルにエクスポートするには、[範囲]と[キャプチャ済み]のラジオアイコンを選択します。
図 6.パケットキャプチャのサブセットをエクスポートして保存する方法を示します。
ファイルを保存したら、ファイルを開いてI/Oグラフに戻ります。スパイクをミリ秒単位でグラフ化するには、間隔を1ミリ秒に設定します。
図 7パケットキャプチャのエクスポートされたサブセットのI/Oグラフを表示します。
グラフを表示する際には、トラフィックがラインレートでフルミリ秒で送信された期間を表すスパイクを特定することが重要です。スパイクがあると、バッファがいっぱいになり、出力ドロップが発生する可能性があります。たとえば、1 Gbpsのインターフェイスでは、1,000,000ビット/ミリ秒に相当します。潜在的なマイクロバーストを表すスパイクのピークをクリックします。これは、出力ドロップの原因となった可能性のあるパケットを特定するのに役立ちます。このパケットをさらに分析して、マイクロバーストの根本原因を特定し、是正措置を講じることができます。
図 8.I/Oグラフで潜在的なマイクロバーストトラフィックを特定する方法を示します。
警告:高速インターフェイスでWiresharkまたはその他のパケットキャプチャツールを使用する場合は、この制限を認識することが重要です。40Gや100Gなどの高速インターフェイスは、大量のネットワークトラフィックを生成し、パケットのキャプチャに使用されるシステムのリソースを圧倒する可能性があります。その結果、キャプチャプロセス中にパケットがドロップされ、キャプチャデータの正確性と完全性に影響が及ぶ可能性があります。
キューに割り当てられたリソースを使い果たしても引き続きドロップが発生する場合は、輻輳を管理するための代替オプションを検討する必要があります。これには次のものが含まれます。
これらのオプションの中には、トラフィックエンジニアリングなど、より複雑な設定が必要なものもありますが、ネットワークの輻輳と出力ドロップを軽減する大きな利点があります。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
07-Jun-2023 |
初版 |