概要
このドキュメントでは、SNMP(Simple Network Management Protocol)を使用して、コントロール プレーンに対して適用されたクラスベースの QoS(Quality of Service)の詳細(CISCO-CLASS-BASED-QOS-MIB)に関連するさまざまな値を抽出する方法について説明します。
前提条件
要件
Cisco では次の前提を満たす推奨しています。
- Net-SNMP、またはUNIXベースのオペレーティングシステム上で実行される同様のコマンドラインベースのユーティリティ。シスコデバイスからSNMP MIB(管理情報ベース)をポーリングします。Net-SNMPは、http://www.net-snmp.org/からダウンロードできるサードパーティのオープンソースユーティリティです。
- SNMPポーリングを実行するインターフェイスにQoSを設定して適用する必要があります。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- 12.0(3)T以降を実行するすべてのCisco IOS® デバイス。このドキュメントの手順は、12.2(33) SXJ3が稼働するCisco 6500で確認されたものです。
- Cisco SNMP Object Navigatorは、http://tools.cisco.com/Support/SNMP/do/BrowseOID.doからアクセスできます
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
SNMPを使用するインターフェイスに適用されたクラスベースのQoS詳細の取得
ポーリングに必要なオブジェクト識別子(OID)を特定または確認するには、次の手順を使用します。
- インターフェイスのifindex(Object Identifier/OID 1.3.6.1.2.1.2.2.1.1)を取得します。
例1:インターフェイスGigabitEthernet6/1/3のifindexを取得するCLIコマンド:show snmp mib ifmib ifindex | include GigabitEthernet6/1/3
GigabitEthernet6/1/3: Ifindex = 73
例2:同じインターフェイスのifindexを取得するSNMPコマンド:UNIX #snmpwalk -v2c -c
1.3.6.1.2.1.2.2 | grep -i GigabitEthernet6/1/3
IF-MIB::ifDescr.73 = STRING: GigabitEthernet6/1/3
これらの例で返されるifindexの値は73です。
- ステップ1で取得したifindexのcbQosIfIndex(OID 1.3.6.1.4.1.9.9.166.1.1.1.1.4)を取得します。
例:ifindex 73のcbQosIfIndexを取得するSNMPコマンド:UNIX #snmpwalk -v2c -c
1.3.6.1.4.1.9.9.166.1.1.1.1.4 | grep -i 73
SNMPv2-SMI::enterprises.9.9.166.1.1.1.1.4.1170 = INTEGER: 73
この例で返されるcbQosPolicyIndex (OID 1.3.6.1.4.1.9.9.166.1.1.1.1.1)の値は1170です。
- ルータに設定されているクラスマップの名前を取得するには、MIBオブジェクトcbQosCMName(1.3.6.1.4.1.9.9.166.1.7.1.1.1)を使用します。
出力には、各クラスマップとそのインデックスが表示されます。たとえば、cbQosConfigIndex(1.3.6.1.4.1.9.9.166.1.5.1.1.2)などです。
UNIX #snmpwalk -v2c -c
1.3.6.1.4.1.9.9.166.1.7.1.1.1
SNMPv2-SMI::enterprises.9.9.166.1.7.1.1.1.1593 = STRING: "class-default"
SNMPv2-SMI::enterprises.9.9.166.1.7.1.1.1.1874801 = STRING:"DOMESTIC_IN
SNMPv2-SMI::enterprises.9.9.166.1.7.1.1.1.5134417 = STRING:"INTERNATIONAL_IN"
SNMPv2-SMI::enterprises.9.9.166.1.7.1.1.1.6181089 = STRING:"DOMESTIC_OUT"
SNMPv2-SMI::enterprises.9.9.166.1.7.1.1.1.12374209 = STRING:"INTERNATIONAL_OUT"
強調表示されている値6181089をメモします。これはcbQosConfigIndexです。
- cbQosConfigIndexを使用して、個々のクラスマップのcbQosPolicyIndex (1.3.6.1.4.1.9.9.166.1.1.1.1.1)およびcbQosObjectsIndex (1.3.6.1.4.1.9.9.166.1.5.1.1.1)を取得します。
例:クラスマップDOMESTIC_OUTをモニタするコマンド:UNIX #snmpwalk -v2c -c
1.3.6.1.4.1.9.9.166.1.5.1.1.2
- オブジェクト識別子(OID)を取得するには、次の出力のステップ3(6181089)で取得したcbQosConfigIndex値を検索します。
UNIX #snmpwalk -v2c -c
1.3.6.1.4.1.9.9.166.1.5.1.1.2 grep -i 'Gauge32: 6181089'
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.352.352 = Gauge32: 11986352
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.352.1163651 = Gauge32: 9637091
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.352.7200738 = Gauge32: 1594
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.352.10567713 = Gauge32: 1593
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.354.354 = Gauge32: 11986352
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.354.431603 = Gauge32: 9637091
SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.1170.7552545 = Gauge32: 6181089
強調表示されている値は次のとおりです。cbQosConfigIndex (6181089)、cbQosPolicyIndex (1170)、cbQosObjectsIndex (7552545)。
重要:この例では、cbQosConfigIndexと対応するcbQosObjectsIndexはcbQosObjectsType (1.3.6.1.4.1.9.9.166.1.5.1.1.3) "classmap"用です。 cbQosObjectsTypeのその他のタイプについては、cbQosObjectsIndex(1.3.6.1.4.1.9.9.166.1.5.1.1.3)の一部としてcbQosObjectsの下で導出された相関を調べる必要があります。 cbQosParentObjectsIndexの定義を参照してください。
- cbQosClassMapStats(1.3.6.1.4.1.9.9.166.1.15)からポリシーマップ(QosObjectsType=classmapと相関)からデータをポーリングします。 次の多くのオプションを使用できます。
+-- -R-- Counter cbQosCMPrePolicyPktOverflow(1)
+-- -R-- Counter cbQosCMPrePolicyPkt(2)
+-- -R-- Counter64 cbQosCMPrePolicyPkt64(3)
+-- -R-- Counter cbQosCMPrePolicyByteOverflow(4)
+-- -R-- Counter cbQosCMPrePolicyByte(5)
+-- -R-- Counter64 cbQosCMPrePolicyByte64(6)
+-- -R-- Gauge cbQosCMPrePolicyBitRate(7)
+-- -R-- Counter cbQosCMPostPolicyByteOverflow(8)
+-- -R-- Counter cbQosCMPostPolicyByte(9)
+-- -R-- Counter64 cbQosCMPostPolicyByte64(10)
+-- -R-- Gauge cbQosCMPostPolicyBitRate(11)
+-- -R-- Counter cbQosCMDropPktOverflow(12)
+-- -R-- Counter cbQosCMDropPkt(13)
+-- -R-- Counter64 cbQosCMDropPkt64(14)
+-- -R-- Counter cbQosCMDropByteOverflow(15)
+-- -R-- Counter cbQosCMDropByte(16)
+-- -R-- Counter64 cbQosCMDropByte64(17)
+-- -R-- Gauge cbQosCMDropBitRate(18)
+-- -R-- Counter cbQosCMNoBufDropPktOverflow(19)
-- -R-- Counter cbQosCMNoBufDropPkt(20)
-- -R-- Counter64 cbQosCMNoBufDropPkt64(21)
これらのオプションについては、MIBのSNMP MIB Locatorを参照してください。
たとえば、オブジェクトcbQosCMPostPolicyBitRate (1.3.6.1.4.1.9.9.166.1.15.1.1.11)は、QoSポリシー実行後にトラフィックのビットレートをポーリングします。
例:ポストポリシービットレートを取得するコマンド:
UNIX # snmpwalk -v2c -c
1.3.6.1.4.1.9.9.166.1.15.1.1.11.1170.7552545
SNMPv2-SMI::enterprises.9.9.166.1.15.1.1.11.1170.7552545 = Gauge32: 27000
強調表示されている値は次のとおりです。cbQosPolicyIndex (1170)、cbQosObjectsIndex (7552545)、およびビットレート(ビット/秒)(27000)。次に、post policyビットレートを取得するためのコマンドからのCLI出力の抜粋を示します。
- ルータからポリシーマップ情報を取得し、前の手順で取得した情報と比較します。
次のCLIコマンドを使用します。Router # show policy-map interface GigabitEthernet6/1/3
次のコマンド出力の抜粋は、検証のために比較する情報の例を示しています。Class-map: DOMESTIC_OUT (match-any) (7552545/2)
8170810 packets, 979471829 bytes
5 minute offered rate 27000 bps, drop rate 0 bps
Match: any (5213858)
police:
1024000000 bps, 16777215 limit, 16777215 extended limit
conformed 8170810 packets, 979471829 bytes; actions:
transmit
exceeded 0 packets, 0 bytes; actions:
drop
conformed 27000 bps, exceed 0 bps
出力を確認して、ポーリングしているデータが正しいことを確認します。
関連情報