目錄

簡介

SNMP計數器問題

SNMP計數器和show命令等效問題

相關資訊

簡介

本文提供常見問題的答案，並指導使用者尋找有關SNMP的實用資源，以及與Cisco裝置相關的SNMP問題。

SNMP計數器問題

問：介面計數器應該使用哪個MIB?

A.通過SNMP進行的介面管理基於兩個表：ifTable(registered customers only)及其擴展，ifXTable(registered customers only)如RFC1213/RFC2233中所述。介面可以有多個層，這些層取決於介質，每個子層在表中用單獨的行表示。IfStackTable(僅限註冊客戶)中介紹了上層與下層之間的關係。 ifTable為入站和出站八位位元組(ifInOctets(僅限註冊客戶)/ifOutOctets)、資料包(ifInUcastPkts(僅限註冊客戶)/ifOutUcastPkts(僅限註冊客戶)、 ifInNUcastPkts(僅限註冊客戶)、錯誤和丟棄定義32位計數器。IfXTable提供類似的64位計數器，也稱為高容量(HC)計數器：ifHCInOctets(僅限註冊客戶)/ifHCOutOctets(僅限註冊客戶)，和ifHCInUcastPkts(僅限註冊客戶)/ifHCOutUcastPkts(僅限registered客戶)。

問：何時應使用64位計數器？

A. RFC 2233 (RFC 2233)採用擴展的64位計數器，用於高容量介面，其中32位計數器不能提供足夠的容量和封裝過快。

隨著網路介質速度的增加，32位計數器封裝的最小時間會減少。例如，10 Mbps的背對背完整大小的資料包流會導致ifInOctets在57分鐘內回圈。在100 Mbps時，最小繞行時間為5.7分鐘，在1 Gbps時，最小為34秒。

注意：SNMP計數器換行，命令列介面(CLI)計數器則不換行。

對於以每秒20,000,000（2,000萬）位或更少速度運行的介面，必須使用32位位元組和資料包計數器。對於運行速度高於每秒2000萬位且低於每秒650,000,000位數的介面，必須使用32位資料包計數器和64位二進位制八位數計數器。對於以650,000,000位/秒或更快的速率運行的介面，必須使用64位資料包和八位位元組計數器。

相應地，Cisco IOS®軟體不支援介面速度小於20 Mbps的64位計數器。這意味著10 Mb乙太網埠不支援64位計數器，只有100 Mb快速乙太網和其他高速埠支援64位計數器。

問：查詢64位計數器需要哪個版本的SNMP?

A.查詢64位計數器需要SNMPv2C或SNMPv3。SNMPv1不支援64位計數器。請注意，ifInOctets = .1.3.6.1.2.1.2.2.1.10是32位計數器，而64位版本是ifHCInOctets = .1.3.6.1.2.1.31.1.1.1.6。

例如：

Catalyst 5000使用HP OpenView snmpget，預設為SNMPv1

# snmpget -c public 14.32.5.18 ifName.1

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.1 DISPLAY STRING- (ascii) sc0

使用SNMPv1進行查詢，HP OpenView snmpget的預設設定

# snmpget -c public 14.32.5.18 ifHCInOctets.1

snmpget Agent reported error with variable #1.

.iso.org.dod.internet.mgmt.mib-2.ifMIB.ifMIBObjects.ifXTable.ifXEntry.

ifHCInOctets.1

SNMP Variable does not exist or access is denied.

使用SNMPv2C的相同查詢

# snmpget -v 2c -c public 14.32.5.18 ifHCInOctets.1

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifHCInOctets.1 Counter64 622366215

問：哪些Cisco裝置實施了64位SNMP計數器，尤其是用於IF-MIB?

A.這些思科裝置實作64位SNMP計數器：

注意：您必須是註冊使用者，而且您必須登入才能訪問Cisco錯誤ID連結並檢視詳細的錯誤資訊。

- Cisco 2500、2600路由器 — 這些路由器不支援64位計數器。

- Catalyst 2950和3550 — 從Cisco錯誤ID CSCdx67611(僅註冊客戶)和Cisco錯誤ID CSCdw52807(僅註冊客戶)起，在Cisco IOS軟體版本12.1(11)EA1中開始支援。

- Catalyst 2900XL和3500XL — 自思科錯誤ID CSCds45300(僅限註冊客戶)起，開始在Cisco IOS軟體版本12.0(5)WC3中提供支援。

- Catalyst 5000系列 — 自Cisco IOS軟體版本3.x起。在RSM/RSFC上，從Cisco錯誤ID CSCds50549(僅限註冊客戶)起，支援開始於Cisco IOS軟體版本12.1(6)E1。

- Catalyst 5000/6000 ATM模組 — 自Cisco IOS軟體版本12.0(14)W05(20)起，請參閱思科錯誤ID CSCds07238(僅限註冊客戶)。

- Catalyst 6000 Gigabit乙太網路WAN OSM — 自Cisco IOS軟體版本12.1.12E起，請參閱思科錯誤ID CSCdw64849(僅限註冊客戶)。

- Catalyst 6000系列 — 所有Cisco IOS軟體版本。WS-F6K-MSFC和MSM支援開始於Cisco IOS軟體版本12.1(8a)E4。

- Catalyst 8500系列 — 從Cisco IOS軟體版本12.0(5)W5(13)開始支援。

- Cisco路由器3600、4000和更高版本 — 自Cisco IOS軟體12.0(1)和Cisco IOS軟體版本12.0(1)T起，請參閱Cisco錯誤ID CSCdj93712(僅限註冊客戶)和Cisco錯誤ID CSCdt58029(僅限註冊客戶)。

- 幀中繼介面 — 從Cisco IOS軟體版本12.0(17)S和Cisco IOS軟體版本12.2(4)T3開始，請參閱幀中繼64位計數器。

- OC3 ATM介面 — 自Cisco IOS軟體版本12.0(6)T起，請參閱Cisco錯誤ID CSCdm45357(僅限註冊客戶)。

- 通道介面 — 自Cisco IOS軟體版本12.0(16)S起，請參閱思科錯誤ID CSCdt58029(僅限註冊客戶)。

註：Cisco IOS軟體不支援介面速度小於20 Mbps的64位計數器。這表示10 Mb乙太網路連線埠不支援64位元計數器。只有100 Mb快速乙太網和其他高速埠支援64位計數器。

問：ifInOctets和ifOutOctets SNMP計數器是否與show interfaces輸入/輸出計數器相同？

A.是，但僅在啟動時啟用SNMP時啟用。如果開啟Cisco裝置的電源，然後啟用SNMP，則SNMP計數器從0開始。它們不會從CLI輸出自動提取它們的值。

問：ifInOctets和ifOutOctets計數器是否包括成幀開銷（點對點協定、高級資料鏈路控制）？

A.是。

問：在非同步傳輸模式介面上，計數器是否包括信元報頭？

A.非同步傳輸模式(ATM)計數器不包括ATM額外負荷（信元標頭和AAL5填充）。

問：為什麼SNMP計數器返回的編號與CLI show命令的編號不同？

A.定義為計數器的SNMP對象必須遵守RFC1155 :

「3.2.3.3.計數器

此應用程式範圍的型別代表一個非負整數，當其圍繞並從零開始再次增加時，該非負整數單調遞增直至達到最大值。此備註指定計數器的最大值為2^32-1(4294967295十進位制)。

在無需重新載入裝置的情況下，沒有方法可將SNMP計數器重置為零。

由於SNMP限制不存在，因此可以在介面上重置CLI show命令的計數器輸出。

MIB-2中定義的原始介面計數器是32位計數器。對於10 Mbps的介面，32位計數器理論上可以在57分鐘內繞行。很容易避免具有如此長週期不連續。但是對於100 Mbps來說，理論最短繞行時間為5.7分鐘。對於1 Gbps介面，該時間將降至34秒。假定這些時間用於背對背完整大小資料包的傳輸，這是理論上的理想。即便如此，介面速度越高，避免缺少計數器包裝就越困難。作為此問題的解決方案，SNMPv2 SMI為64位計數器定義了新的對象型別counter64。因此，在RFC 1573 (後來由RFC 2233 )中定義的擴展介面表(ifxTable)中有幾個新的64位計數器。 這些產品來自IF-MIB-V1SMI.my(僅限註冊客戶)。

ifHCInOctets (.1.3.6.1.2.1.31.1.1.6)

ifHCOutOctets (1.3.6.1.2.1.31.1.1.1.10）

ifHCInUcastPkts (.1.3.6.1.2.1.31.1.1.7)

ifHCOutUcastPkts (.1.3.6.1.2.1.31.1.1.11)

ifHCInMulticastPkts (.1.3.6.1.2.1.31.1.1.8)

ifHCOutMulticastPkts (.1.3.6.1.2.1.31.1.1.12)

ifHCInBroadcastPkts (.1.3.6.1.2.1.31.1.1.1.9)

ifHCOutBroadcastPkts (.1.3.6.1.2.1.31.1.1.13)

雖然對64位元計數器的基本支援已寫入Cisco IOS軟體版本11.3（從Cisco IOS軟體版本12.0開始），但只有在僅對ATM LANE LEC子介面實作HCInOctets(.1.3.6.1.2.1.31.1.1.1.6)和ifHCOutOctets(1.3.6.1.2.1.1.1.10)時。對於Catalyst工作組交換機，3.1版中已實施64位計數器支援。

注意：必須使用SNMPv2c或SNMPv3協定來檢索任何計數器64對象。

SNMP計數器和show命令等效問題

問：Cisco路由器對以下SNMP MIB變數執行什麼操作：ifInOctets， ifInUcastPkts， ifInNUcastPkts， ifInDiscards， ifInErrors， ifInUnknownProtos， ifOutOctets， ifOutUcastPkts， ifOutNUcastPkts， ifOutDiscards， ifOutErrors， ifOutQLen?

A.請參閱此表瞭解詳細資訊。這些產品來自RFC1213-MIB(僅限註冊客戶)。

ifInNUcastPkts(.1.3.6.1.2.1.2.1.12)

這些是入站廣播和組播資料包的計數。

ifInDiscards(.1.3.6.1.2.1.2.1.13)

這些值計為show interfaces命令所反映的無緩衝區。

ifInErrors(.1.3.6.1.2.1.2.1.14)

這些是show interfaces命令所反映的所有輸入錯誤的計數。

ifInUnknownProtos(.1.3.6.1.2.1.2.1.15)

這些錯誤被計為未分類錯誤。

ifOutOctets(.1.3.6.1.2.1.2.2.1.16)

這些是show interfaces命令所示的介面輸出的位元組數計數。

ifOutUcastPkts(.1.3.6.1.2.1.2.1.17)

這些是出站廣播和組播資料包的計數。

ifOutDiscards(.1.3.6.1.2.1.2.2.1.19)

如命令show interfaces所示，這些流量計為輸出丟棄。

ifOutErrors(.1.3.6.1.2.1.2.2.1.20)

這些錯誤計為輸出錯誤，如show interfaces命令所示。

ifOutQLen(.1.3.6.1.2.1.2.1.21)

這是show interfaces命令中所示的輸出隊列中允許的資料包數。

前面列出的不表示它們出現在show interfaces中的變數在SNMP以外的任何地方均不可用。

範例

此範例使用搭載Cisco IOS軟體版本12.2(2)T1的3640。使用的唯讀(RO)社群字串是公用的，使用的讀取/寫入(RW)社群字串是專用的。有關如何設定裝置上的SNMP社群字串的詳細資訊，請參閱如何設定SNMP社群字串。

以下輸出是在啟用模式下執行的show ip interface brief命令的典型輸出：

3600#show ip interface brief

Interface    IP-Address      OK? Method Status  Prol

BRI0/0       unassigned      YES NVRAM  administratively down dow

FastEthernet0/0     172.16.99.20    YES NVRAM  up      up

Serial0/0    unassigned      YES NVRAM  down    dow

Serial0/0.1  unassigned      YES unset  down    dow

BRI0/0:1     unassigned      YES unset  administratively down dow

BRI0/0:2     unassigned      YES unset  administratively down dow

Serial0/1    unassigned      YES NVRAM  administratively down dow

ATM1/0       unassigned      YES NVRAM  down    dow

ATM1/0.109   10.164.0.46     YES NVRAM  down    dow

Virtual-Template1   99.99.99.99     YES NVRAM  down    dow

Loopback0    10.1.10.1       YES NVRAM  up      up

Loopback1    unassigned      YES NVRAM  up      up

Loopback101  3.3.3.3  YES NVRAM  administratively down dow

Loopback200  4.4.4.14 YES NVRAM  administratively down dow

Loopback201  4.4.4.18 YES NVRAM  administratively down dow

此輸出是上一個路由器的MIB Object if Descr(.1.3.6.1.2.1.2.2.1.2)，是一個包含介面資訊的文本字串。這樣會給出獲得的介面名稱和說明，該名稱和說明使用前面的CLI命令輸出。也可使用ifName(.1.3.6.1.2.1.31.1.1.1.1)，但ifDescr提供了介面描述和名稱，其中ifName只提供了介面名稱。

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.2

interfaces.ifTable.ifEntry.ifDescr.1 = ATM1/0

interfaces.ifTable.ifEntry.ifDescr.2 = BRI0/0

interfaces.ifTable.ifEntry.ifDescr.3 = FastEthernet0/0

interfaces.ifTable.ifEntry.ifDescr.4 = Serial0/0

interfaces.ifTable.ifEntry.ifDescr.5 = BRI0/0:1

interfaces.ifTable.ifEntry.ifDescr.6 = BRI0/0:2

interfaces.ifTable.ifEntry.ifDescr.7 = Serial0/1

interfaces.ifTable.ifEntry.ifDescr.8 = Null0

interfaces.ifTable.ifEntry.ifDescr.10 = Foreign Exchange Office 2/0/0

interfaces.ifTable.ifEntry.ifDescr.11 = Foreign Exchange Office 2/0/1

interfaces.ifTable.ifEntry.ifDescr.12 = recEive And transMit 3/0/0

interfaces.ifTable.ifEntry.ifDescr.13 = recEive And transMit 3/0/1

interfaces.ifTable.ifEntry.ifDescr.14 = Loopback0

interfaces.ifTable.ifEntry.ifDescr.15 = Loopback1

interfaces.ifTable.ifEntry.ifDescr.16 = Loopback101

interfaces.ifTable.ifEntry.ifDescr.17 = Loopback200

interfaces.ifTable.ifEntry.ifDescr.18 = Loopback201

interfaces.ifTable.ifEntry.ifDescr.19 = Serial0/0.1

interfaces.ifTable.ifEntry.ifDescr.20 = ATM1/0.109-atm subif

interfaces.ifTable.ifEntry.ifDescr.21 = ATM1/0.109-aal5 layer

interfaces.ifTable.ifEntry.ifDescr.22 = Virtual-Template1

interfaces.ifTable.ifEntry.ifDescr.23 = Voice Encapsulation (POTS) Peer: 1

interfaces.ifTable.ifEntry.ifDescr.24 = Voice Over IP Peer: 2

interfaces.ifTable.ifEntry.ifDescr.25 = Voice Encapsulation (POTS) Peer: 111

interfaces.ifTable.ifEntry.ifDescr.26 = Voice Over IP Peer: 222

interfaces.ifTable.ifEntry.ifDescr.27 = Voice Over IP Peer: 1234

interfaces.ifTable.ifEntry.ifDescr.28 = Voice Over IP Peer: 300000

interfaces.ifTable.ifEntry.ifDescr.29 = Voice Over FR Peer: 3

interfaces.ifTable.ifEntry.ifDescr.30 = Voice Over IP Peer: 99

interfaces.ifTable.ifEntry.ifDescr.31 = Voice Encapsulation (POTS) Peer: 9

interfaces.ifTable.ifEntry.ifDescr.32 = BRI0/0-Physical

interfaces.ifTable.ifEntry.ifDescr.33 = BRI0/0-Signaling

interfaces.ifTable.ifEntry.ifDescr.34 = BRI0/0:1-Bearer Channel

interfaces.ifTable.ifEntry.ifDescr.35 = BRI0/0:2-Bearer Channel

1. IfInDiscards(.1.3.6.1.2.1.2.1.13):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.13

interfaces.ifTable.ifEntry.ifInDiscards.1 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.2 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.3 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.4 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.5 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.6 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.7 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.8 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.10 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.11 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.12 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.13 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.14 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.15 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.16 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.17 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.18 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.19 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.20 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.21 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.22 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.23 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.24 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.25 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.26 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.27 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.28 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.29 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.30 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.31 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.32 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.33 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.34 = Counter32: 0

interfaces.ifTable.ifEntry.ifInDiscards.35 = Counter32: 0

此路由器的所有介面的ifInDiscards均為零。如果將其與show interfaces fastEthernet 0/0命令的CLI結果進行比較，則會確認結果：

3600#show interfaces fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is AmdFE, address is 0001.42b4.fe81 (bia 0001.42b4.fe81)

Description: testme

Internet address is 172.16.99.20/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:00, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 323 drops

5 minute input rate 1000 bits/sec, 2 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

1767411 packets input, 178272010 bytes

Received 1161500 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog

0 input packets with dribble condition detected

7146925 packets output, 765049281 bytes, 0 underruns(0/0/0)

0 output errors, 0 collisions, 1 interface resets

0 babbles, 0 late collision, 461 deferred

0 lost carrier, 0 no carrier

0 output buffer failures, 0 output buffers swapped out

2. ifInErrors(.1.3.6.1.2.1.2.1.14):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.14

interfaces.ifTable.ifEntry.ifInErrors.1 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.2 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.3 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.4 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.5 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.6 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.7 = Counter32: 1

interfaces.ifTable.ifEntry.ifInErrors.8 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.10 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.11 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.12 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.13 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.14 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.15 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.16 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.17 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.18 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.19 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.20 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.21 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.22 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.23 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.24 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.25 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.26 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.27 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.28 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.29 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.30 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.31 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.32 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.33 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.34 = Counter32: 0

interfaces.ifTable.ifEntry.ifInErrors.35 = Counter32: 0

此輸出顯示介面只有一個輸入錯誤

interfaces.ifTable.ifEntry.ifInErrors.7 = Counter32:1.

若要判斷這個介面，請將其與以上ifDescr的輸出進行比較，輸出顯示這個介面是來自interfaces.ifTable.ifEntry.ifDescr.7 = Serial0/1。現在，在啟用模式下執行show interfaces serial 0/1命令以驗證先前的結果：

3600#show interfaces serial 0/1

Serial0/1 is administratively down, line protocol is down

Hardware is DSCC4 Serial

Description: atm-dxi test

MTU 1500 bytes, BW 2048 Kbit, DLY 20000 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ATM-DXI, loopback not set

Keepalive not set

Last input never, output never, output hang never

Last clearing of "show interface" counters 1w1d

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 0 drops

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

0 packets input, 0 bytes, 0 no buffer

Received 0 broadcasts, 0 runts, 0 giants, 0 throttles

1 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 1 abort

0 packets output, 0 bytes, 0 underruns

0 output errors, 0 collisions, 0 interface resets

0 output buffer failures, 0 output buffers swapped out

0 carrier transitions

DCD=down  DSR=down  DTR=down  RTS=down  CTS=down

3. ifOutOctets(.1.3.6.1.2.1.2.2.1.16):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.16

interfaces.ifTable.ifEntry.ifOutOctets.1 = Counter32: 98

interfaces.ifTable.ifEntry.ifOutOctets.2 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.3 = Counter32: 765470674

interfaces.ifTable.ifEntry.ifOutOctets.4 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.5 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.6 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.7 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.8 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.10 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.11 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.12 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.13 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.14 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.15 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.16 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.17 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.18 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.19 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.20 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.21 = Counter32: 98

interfaces.ifTable.ifEntry.ifOutOctets.22 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.23 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.24 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.25 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.26 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.27 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.28 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.29 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.30 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.31 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.32 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.33 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.34 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutOctets.35 = Counter32: 0

如果將上一個結果與ifDescr的輸出進行比較，則表明：

- interfaces.ifTable.ifEntry.ifOutOctets.1 = Counter32:98對應於interfaces.ifTable.ifEntry.ifDescr.1 = ATM1/0

- interfaces.ifTable.ifEntry.ifOutOctets.3 = Counter32:765470674與interfaces.ifTable.ifEntry.ifDescr.3 = FastEthernet0/0對應

- interfaces.ifTable.ifEntry.ifOutOctets.21 = Counter32:98對應於interfaces.ifTable.ifEntry.ifDescr.21 = ATM1/0.109-aal5層

以下是在啟用模式下執行的每個先前介面的CLI show interfaces命令輸出：

3600#show interfaces atM 1/0

ATM1/0 is down, line protocol is down

Hardware is RS8234 ATMOC3

MTU 4470 bytes, sub MTU 4470, BW 155000 Kbit, DLY 80 usec,

reliability 5/255, txload 1/255, rxload 1/255

Encapsulation ATM, loopback not set

Encapsulation(s): AAL5

1024 maximum active VCs, 1 current VCCs

VC idle disconnect time: 300 seconds

Last input never, output 1w1d, output hang never

Last clearing of "show interface" counters never

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

Queueing strategy: None

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

0 packets input, 0 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

2 packets output, 98 bytes, 0 underruns

0 output errors, 0 collisions, 2 interface resets

0 output buffer failures, 0 output buffers swapped out

3600#show interfaces fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is AmdFE, address is 0001.42b4.fe81 (bia 0001.42b4.fe81)

Description: testme

Internet address is 172.16.99.20/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:00, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 323 drops

5 minute input rate 2000 bits/sec, 3 packets/sec

5 minute output rate 1000 bits/sec, 1 packets/sec

1772214 packets input, 178767841 bytes

Received 1164210 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog

0 input packets with dribble condition detected

7149179 packets output, 765450524 bytes, 0 underruns(0/0/0)

0 output errors, 0 collisions, 1 interface resets

0 babbles, 0 late collision, 461 deferred

0 lost carrier, 0 no carrier

0 output buffer failures, 0 output buffers swapped out

ifOutOctets的輸出與show interfaces FastEthernet 0/0命令的CLI輸出不匹配，但兩者相似。這是因為輪詢介面和執行CLI命令時可能存在延遲。

3600#show interfaces atM 1/0.109

ATM1/0.109 is down, line protocol is down

Hardware is RS8234 ATMOC3

Description: pvc

Internet address is 10.164.0.46/30

MTU 4470 bytes, BW 2250 Kbit, DLY 80 usec,

reliability 5/255, txload 1/255, rxload 1/255

Encapsulation ATM

0 packets input, 0 bytes

2 packets output,98 bytes

0 OAM cells input, 77093 OAM cells output

AAL5 CRC errors : 0

AAL5 SAR Timeouts : 0

AAL5 Oversized SDUs : 0

AAL5 length violation : 0

AAL5 CPI Error : 0

4. ifOutDiscards(.1.3.6.1.2.1.2.2.1.19):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.19

interfaces.ifTable.ifEntry.ifOutDiscards.1 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.2 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.3 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.4 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.5 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.6 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.7 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.8 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.10 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.11 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.12 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.13 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.14 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.15 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.16 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.17 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.18 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.19 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.20 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.21 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.22 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.23 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.24 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.25 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.26 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.27 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.28 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.29 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.30 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.31 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.32 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.33 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.34 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutDiscards.35 = Counter32: 0

所有介面的ifOutDiscards均為零。以show interfaces fastEthernet 0/0命令為例，此命令會產生以下結果：

3600#show interfaces fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is AmdFE, address is 0001.42b4.fe81 (bia 0001.42b4.fe81)

Description: testme

Internet address is 172.16.99.20/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:00, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 323 drops

5 minute input rate 1000 bits/sec, 2 packets/sec

5 minute output rate 1000 bits/sec, 1 packets/sec

1774581 packets input, 179005552 bytes

Received 1165620 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog

0 input packets with dribble condition detected

7150259 packets output, 765645035 bytes, 0 underruns(0/0/0)

0 output errors, 0 collisions, 1 interface resets

0 babbles, 0 late collision, 461 deferred

0 lost carrier, 0 no carrier

0 output buffer failures, 0 output buffers swapped out

5. ifOutErrors(.1.3.6.1.2.1.2.2.1.20):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.20

interfaces.ifTable.ifEntry.ifOutErrors.1 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.2 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.3 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.4 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.5 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.6 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.7 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.8 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.10 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.11 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.12 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.13 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.14 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.15 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.16 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.17 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.18 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.19 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.20 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.21 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.22 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.23 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.24 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.25 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.26 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.27 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.28 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.29 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.30 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.31 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.32 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.33 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.34 = Counter32: 0

interfaces.ifTable.ifEntry.ifOutErrors.35 = Counter32: 0

所有介面的ifOutErrors均為零。以show interfaces fastEthernet 0/0命令為例，此命令會產生以下結果：

3600#show interfaces fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is AmdFE, address is 0001.42b4.fe81 (bia 0001.42b4.fe81)

Description: testme

Internet address is 172.16.99.20/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:00, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 323 drops

5 minute input rate 0 bits/sec, 1 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

1776187 packets input, 179154616 bytes

Received 1166778 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog

0 input packets with dribble condition detected

7150781 packets output, 765744231 bytes, 0 underruns(0/0/0)

0 output errors, 0 collisions, 1 interface resets

0 babbles, 0 late collision, 461 deferred

0 lost carrier, 0 no carrier

0 output buffer failures, 0 output buffers swapped out

6. ifOutQLen(.1.3.6.1.2.1.2.1.21):

snmpwalk 172.16.99.20 public .1.3.6.1.2.1.2.2.1.21

interfaces.ifTable.ifEntry.ifOutQLen.1 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.2 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.3 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.4 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.5 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.6 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.7 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.8 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.10 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.11 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.12 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.13 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.14 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.15 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.16 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.17 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.18 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.19 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.20 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.21 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.22 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.23 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.24 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.25 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.26 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.27 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.28 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.29 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.30 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.31 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.32 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.33 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.34 = Gauge32: 0

interfaces.ifTable.ifEntry.ifOutQLen.35 = Gauge32: 0

所有介面的ifOutQLen均為零。使用show interfaces fastEthernet 0/0 命令作為示例：

3600#show interfaces fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is AmdFE, address is 0001.42b4.fe81 (bia 0001.42b4.fe81)

Description: testme

Internet address is 172.16.99.20/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:00, output 00:00:00, output hang never

Last clearing of "show interface" counters never

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 323 drops

5 minute input rate 0 bits/sec, 1 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

1776912 packets input, 179225431 bytes

Received 1167240 broadcasts, 0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog

0 input packets with dribble condition detected

7151102 packets output, 765796341 bytes, 0 underruns(0/0/0)

0 output errors, 0 collisions, 1 interface resets

0 babbles, 0 late collision, 461 deferred

0 lost carrier, 0 no carrier

0 output buffer failures, 0 output buffers swapped out

問： show interfaces語句no buffers 和input queue drops之間有什麼關係？為什麼SNMP的inDiscards不提供緩衝區計數而不提供輸入隊列丟棄，而SNMP的outDiscards提供輸出隊列丟棄呢?

A. locIfInputQueueDrops/ifInDiscards的工作方式與locIfOutputQueueDrops/ifOutDiscards的工作方式不同。ifInDiscards計算因缺少系統資源（如緩衝區）而丟棄的資料包數。這通常是locIfInputQueueDrops的子集。您經常會看到locIfInputQueueDrops = ifInDiscards。但是，locIfInputQueueDrops也會計算由於達到輸入隊列限制而丟棄的資料包數。通常，您會看到locIfInputQueueDrops > ifInDiscards。

摘要

locIfInputQueueDrops = Queue Limit Drops + No Buffer Drops ifInDiscards = No Buffer Drops（並且是locIfInputQueueDrops的子集）

locIfOutputQueueDrops和ifOutDiscards在計數相同事件時始終相等。這些事件達到輸出佇列限制，且當封包從一個介面快速交換到另一個介面時，沒有硬體tx緩衝區。前面的MIB對象的OID如下：

從OLD-CISCO-INTERFACES-MIB(僅限註冊客戶)

從RFC1213-MIB(僅限註冊客戶)

locIfInputQueueDrops = .1.3.6.1.4.1.9.2.1.1.26

ifInDiscards = .1.3.6.1.2.1.2.2.1.13

locIfOutputQueueDrops = .1.3.6.1.4.1.9.2.1.1.27

ifOutDiscards = .1.3.6.1.2.1.2.2.1.19

問：我是否可以在路由器上輪詢任何緩衝區？

A.是。可以輪詢ifInDiscards以便不輪詢緩衝區。

問：如何在路由器上輪詢隊列限制丟棄？

A.使用SNMP時，show interfaces命令無法分隔進入輸出捨棄的單個元素。

請考慮有關進入輸出捨棄計數器的內容的新資訊：

輸入丟棄=隊列限制丟棄+限制丟棄+ SMT隊列完全丟棄+ RSRB丟棄+無緩衝區丟棄

此外，即使介面被清除，SNMP計數器也從不清除。

相關資訊

- IP應用程式服務技術提示

- 技術支援與文件 - Cisco Systems