Cisco インターフェイスとモジュール : ???????/????????

トラブルシューティング:ATM ルータ インターフェイスでの入力廃棄

2003 年 2 月 14 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2007 年 11 月 15 日) | フィードバック

目次


概要

ルータ インターフェイスは、シリアルからイーサネット、ATM にいたるどのようなタイプでも、show interface atm コマンドの出力で多数の入力廃棄を報告することがあります。 次の出力例では、カウンタが最後にクリアされた時点から、PA-A3 ATM ポートアダプタで 675 回の入力廃棄が発生したことを示しています。
     7200-17#show interface atm 4/0
  
       ATM4/0 is up, line protocol is up 
  
         Hardware is ENHANCED ATM PA
  
         Internet address is 10.10.203.2/24
  
         MTU 4470 bytes, sub MTU 4470, BW 149760 Kbit, DLY 80 usec, 
  
         reliability 255/255, txload 1/255, rxload 1/255
  
         NSAP address: 47.009181000000009021449C01.777777777777.77
  
         Encapsulation ATM, loopback not set
  
         Keepalive not supported 
  
         Encapsulation(s): AAL5
  
         4096 maximum active VCs, 7 current VCCs
  
         VC idle disconnect time: 300 seconds
  
         Signalling vc = 5, vpi = 0, vci = 5
  
         UNI Version = 4.0, Link Side = user
  
         0 carrier transitions
  
         Last input 00:00:05, output 00:00:05, output hang never
  
         Last clearing of "show interface" counters never
  
         Input queue: 0/75/675/0 (size/max/drops/flushes); Total output drops: 0
  
         Queueing strategy: Per VC Queueing
  
         5 minute input rate 0 bits/sec, 0 packets/sec
  
         5 minute output rate 0 bits/sec, 0 packets/sec
  
            44060 packets input, 618911 bytes, 0 no buffer
  
            Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
  
            0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
  
            65411 packets output, 1554954 bytes, 0 underruns
  
            0 output errors, 0 collisions, 0 interface resets
  
            0 output buffer failures, 0 output buffers swapped out
ユーザは通常、入力廃棄をパフォーマンスの低下として報告します。ユーザの期待するネットワーク応答時間を満たすことは重要な設計目標であるため、入力廃棄の原因を理解することはトラブルシューティング上の重要な目標になります。この文書では、ATM インターフェイスでの入力廃棄について理解し、そのトラブルシューティングを行うために必要な情報を提供します。

注:PA-A3 ATM ポートアダプタでの入力エラーのトラブルシューティングについては、ここをクリックしてください。

入力廃棄の一般的な理由

Cisco IOS(R) ソフトウェアのスイッチング方式は、ルータが入力(着信)インターフェイスから出力(発信)インターフェイスにパケットをどのように転送するのかを規定しています。

Cisco IOS スイッチングで最も望ましくない方式は、プロセス交換です。この方式では、中央の CPU が宛先 IP アドレスに基づいて完全なルーティング テーブルのルックアップを実行します。プロセス交換では、ルータはファースト スイッチングや Cisco Express Forwarding(CEF)などの望ましいルート キャッシュ方式を使用して、フォワーディング決定を処理することができません。その結果、ルータは SRAM(7xxx プラットフォームでは MEMD とも呼ばれます)内の I/O バッファから DRAM 内のシステム バッファにパケットをコピーせざるをえなくなります。ここには、Cisco IOS のソフトウェア コード、データ構造、およびダイナミック テーブルが格納されています。

ATM および非 ATM インターフェイスでは、インターフェイスに割り当てられたパケット バッファ数を使い切った場合やその最大しきい値に達した場合に、システムが入力キュー廃棄をカウントすることがあります。ルート キャッシュ方式の使用時には、パケットは SRAM やパケット メモリに格納されます。プロセス交換の使用時には、パケットは DRAM に格納されます。

詳細は、「入力キュードロップと出力キュードロップのトラブルシューティング」を参照してください。

スロットルの理解

show interface atm の出力に、入力キュー廃棄とともに高いスロットル数が表示されることがあります。入力キュー廃棄はパケットがプロセス交換されているときに起こります。スロットル カウンタが増えるのは、システム バッファは使用可能であるのに、インターフェイスの入力保留キュー内で処理を待っているパケットがすでに最大数に達している場合です。ルータは一時的にそのインターフェイスを無効にし、その間にすでにキューに溜まっているパケットを取り出して処理します。

スロットルのトラブルシューティングを行う際は、多くのパケットがプロセス交換されている根本的な原因を突き止めます。

フラッシュの理解

show interface atm コマンドの出力に示されるフラッシュ カウンタは、Selective Packet Discard(SPD; 選択パケット廃棄)に伴って増えます。SPD はルータの IP プロセス キューにおける選択パケット廃棄ポリシーを実装するものです。そのため、プロセス交換トラフィックにのみ適用されます。

SPD の目的は、IP 入力キューがいっぱいになったときにもルーティング更新やキープアライブなどの重要な制御パケットが廃棄されないことを保証することです。IP 入力キューのサイズが最小しきい値と最大しきい値の間にあるときは、一定の廃棄確率に基づいて通常の IP パケットが廃棄されます。このようなランダム廃棄のことを SPD フラッシュと呼びます。

LAN Emulation(LANE; LAN エミュレーション)環境では、フラッシュ カウンタはプロセス交換トラフィックに対してのみ増えます。LANE では CEF を使用できます。フラッシュの増加のトラブルシューティングを行うには、show ip interface atm コマンドを使用し、パケットがどのように IOS スイッチングされているのかを突き止めます。また、LANE Data Direct VC が構成されていることを確認します。これは、show lane client output コマンドの出力を見ればわかります。

ATM VC での InPktDrop

show atm vc {vcd#} コマンドの出力には InPktDrops カウンタが表示されます。
   7200-1#show atm vc 200 
  
     atm6/0: VCD: 200, VPI: 5, VCI: 200 
  
     UBR, PeakRate: 44209 
  
     AAL5-LLC/SNAP, etype:0x0, Flags: 0xC20, VCmode: 0x0 
  
     OAM frequency: 0 second(s) 
  
     InARP DISABLED 
  
     Transmit priority 4 
  
     InPkts: 0, OutPkts: 0, InBytes: 0, OutBytes: 0 
  
     InPRoc: 0, OutPRoc: 0, Broadcasts: 0 
  
     InFast: 0, OutFast: 0, InAS: 0, OutAS: 0 
  
     InPktDrops: 157, OutPktDrops: 0    
  
     CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0 
  
     OAM cells received: 0 
  
     OAM cells sent: 0 
  
     Status: UP
インターフェイスでの入力キュー廃棄はプロセス交換パケット数が多いことを示唆しますが、VC カウンタの InPktDrops が 0 以外の値を示すときは、ATM インターフェイスが個々の Virtual Circuit(VC; 仮想回線)用のパケット バッファを使い切っているか、または VC 間で共有できる VC バッファの総数を超えていることを示唆します。PA-A3 の場合、このような廃棄は PA-A3 ドライバが次の 2 つのスロットル メカニズムのいずれかを実装している結果として起こります。
  1. PA-A3 は各 VC に対して、受信 Segmentation And Reassembly(SAR)共有プールから使用可能なパケット バッファ数の割り当て量を設定します。この割り当て量は「受信クレジット」の値に相当するもので、設定されたトラフィック シェーピング レートに応じて変化します。また、このように割り当て量を設定することで、1 つの VC が過負荷状態になったときにすべてのバッファ リソースが枯渇する事態を防ぎます。PA-A3 ドライバは、パケットを受信してプロセッサか出力インターフェイスのどちらかに転送するときに、バッファ クレジットを 1 減らします。プロセッサか出力インターフェイスのどちらかがパケット バッファを VC のプールに戻すと、PA-A3 ドライバはクレジットを戻します。VC で輻輳が発生した場合やクレジットを使い切った場合、PA-A3 はそれ以降のパケットをすべて廃棄し、InPktDrops カウンタを増やします。
  2. PA-A3 は、アダプタ自身がパケット バッファを使い切ったときに ATM VC のトラフィックを抑制します。多くの VC で輻輳が発生した ATM インターフェイスでは、アダプタがパケット バッファを容易に使い切る可能性があります。これは、VC 単位の割り当て量が重複していて、排他的でないためです。つまり、VC 単位の割り当て量で指定されているバッファの合計数は、PA-A3 で実際に使用可能なバッファの合計数を超えています。PA-A3 のバッファのすべてが使用中のとき、フレーマーの FIFO キューは着信セルを保持します。輻輳が続くと、これらのセルのためにオーバーランが生じることがあります。そのようなバックプレッシャ状態に陥ると、フレーマーの FIFO がセルを廃棄することがあり、これが Cyclic Redundancy Check(CRC; 巡回冗長検査)エラーの原因となります。
InPktDrops は、パケットがホスト インターフェイスに到達する前に廃棄された数をカウントします。ホスト インターフェイスが SAR バッファからパケットを受信するまで、パケットはインターフェイス統計情報に登録されません。そのため、show atm vc コマンドでは廃棄が見られるものの、show interface atm コマンドでは、廃棄はまったくまたはほとんどみられません。

show controllers atm コマンドでは、ATM インターフェイスでオンボードのリアセンブリ バッファが不足しかけているかどうかを確認できる 3 つの便利なカウンタが表示されます。次の例ではこれらのカウンタを太字で強調表示しています。

注:Rx_count は Rx_threshold をはるかに下回る数でなければなりません。

   C7200#show controller atm 1/0 
  
     Interface atm1/0 is up 
  
     Hardware is ENHANCED ATM PA - SONET OC3 (155Mbps) 
  
       dfs is enabled, hwidb->ip_routecache = 0x15 
  
       lane client mac address is 0060.3e73.e640 active HSRP group:    
  
     Framer is PMC PM5346 S/UNI-155-LITE, SAR is LSI ATMIZER II 
  
     [snip] 
  
     Control data: 
  
       Rx_max_spins=2, max_tx_count=17, TX_count=4 
  
       Rx_threshold=1366, Rx _count=15, TX_threshold=4608 
  
       TX bfd write indx=0x11, Rx _pool_info=0x6066A3E0 
  
     [snip]
カウンタ 説明
Rx_threshold 
PA-A3 ドライバまたは出力ポート アダプタが、設定された VC の間の受信パケットの使用を制限しなくても保持できる最大の受信パケット数。任意の VC に過剰なパケット バッファが割り当てられて、その他の VC によってパケットの受信が阻止されるのを防ぐために、PA-A3 は受信パケット バッファ調整メカニズムを使用しています。PA-A3 ドライバまたは出力インターフェイスで保持されている受信パケットの総数がこのしきい値を超えると、PA-A3 で受信される次のパケットがチェックされ、1 つの VC で過剰なパケット バッファが占有されていないかが調べられます。過剰なパケット バッファが占有されている場合、PA-A3 は、この違反 VC で保持されている受信パケットの総数が割り当て量を下回るまで、着信パケットを廃棄します。
  
  
  
  Rx_max_spins
内部的には、PA-A3 のマイクロコードは受信割り込みを示すことで PA-A3 ドライバに着信パケットの到着を知らせます。PA-A3 ドライバは受信割り込みを検知した後、できるだけ多くのパケットを受信リングから排出します。このカウンタは、1 回の割り込みで PA-A3 ドライバにより排出された受信パケットの最大数を記録します。
Rx_count 
ドライバにより現在保持されている受信またはリアセンブリ パケットの総数。

入力パケット廃棄のその他の理由

VC のリアセンブリ バッファ クレジットの超過以外に、ATM インターフェイスは次の原因によってもパケットを廃棄します。
  • 宛先プレフィクスへの経路がない
  • ARP エントリが不完全である
  • ACL に設定されているポリシー
特定のバージョンの Cisco IOS ソフトウェアでは、PA-A3 ドライバがこれらの廃棄を VC の入力パケット廃棄としてカウントし、VC 単位の InPktDrop カウンタを増やします。これは表面的な問題であり、パフォーマンスには影響ありません。この問題は Bug ID CSCdu23066(PA-A3-OC3/T3 の場合)および Bug ID CSCdw78297(PA-A3-OC12 の場合)によって解決されています。

既知の問題:負の入力カウンタ

Cisco DDTS の CSCdm54053 では、show interface の出力に、サブインターフェイスのパケット入力および出力カウンタが負の数で表示される問題が解決されています。この修正は、Cisco IOS ソフトウェア バージョン 12.0(6)や 12.0(7)XE2 などの各種バージョンに実装されています。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 8625