Einleitung
In diesem Dokument wird ein umfassender Leitfaden für die effektive Identifizierung und Fehlerbehebung von Paketverlusten in Cisco NCS55XX-Plattformen beschrieben.
Voraussetzungen
Anforderungen
Es gibt keine spezifischen Anforderungen für dieses Dokument.
Verwendete Komponenten
Dieses Dokument gilt für alle NCS 5500-Plattformen, die Jericho1- oder Jericho2 ASIC-Architekturen verwenden.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Hintergrundinformationen
Paketverlust
Der Begriff "Paketverlust" bezieht sich auf die Situation, in der Datenpakete, die das Netzwerk durchlaufen, vom Gerät absichtlich oder unabsichtlich verworfen werden, um zu verhindern, dass sie ihr beabsichtigtes Ziel erreichen.
Speicherort
Um das Debuggen von Paketverlusten zu ermöglichen, müssen Sie folgende Schritte ausführen:
1. Finden Sie heraus, welcher Router in der Topologie Pakete verwirft.
2. Suchen Sie nach Inkrementierungen des Eingangspaketzählers oder des Fallzählers an der Schnittstelle.
Beispiel show interface <>
Anmerkung: Zu Test- und Validierungszwecken wurden Befehle auf einem NCS 5500 in einer kontrollierten Laborumgebung ausgeführt.
RP/0/RP0/CPU0:NCS-5500#show interfaces TenGigE0/0/0/14
TenGigE0/0/0/14 is up, line protocol is up
Interface state transitions: 3
Hardware is TenGigE, address is fce4.f6ad.b038 (bia fce4.f6ad.b038)
loopback not set,
Last link flapped 2w2d
ARP type ARPA, ARP timeout 04:00:00
Last input 00:00:00, output 00:00:17
Last clearing of "show interface" counters never
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
49129 packets input, 4286647 bytes, 153 total input drops << drops
0 drops for unrecognized upper-level protocol
Received 0 broadcast packets, 49129 multicast packets
0 runts, 0 giants, 0 throttles, 0 parity
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
47637 packets output, 6144913 bytes, 0 total output drops
Output 4 broadcast packets, 47633 multicast packets
845 output errors, 0 underruns, 0 applique, 0 resets <<<< errors
0 output buffer failures, 0 output buffers swapped out
3 carrier transitions
RP/0/RP0/CPU0:NCS-5500#
Tipp: Stellen Sie bei Paket-Schnittstellen und Subschnittstellen sicher, dass Sie diesen Befehl auf der Paket-Schnittstelle, den Subschnittstellen und den entsprechenden physischen Schnittstellen ausführen.
3. Nachdem bestätigt wurde, dass ein Drop- oder Fehlerzähler ansteigt, besteht der nächste Schritt darin, die Netzwerkverarbeitungseinheit (NPU) zu identifizieren, die der betroffenen Schnittstelle zugeordnet ist.
Beispiel: show controllers npu voq-usage interface all instance all location <>
RP/0/RP0/CPU0:NCS-5500#show controllers npu voq-usage interface all instance all location 0/0/cpu0
-------------------------------------------------------------------
Node ID: 0/0/CPU0
Intf Intf NPU NPU PP Sys VOQ Flow VOQ Port
name handle # core Port Port base base port speed
(hex) type
----------------------------------------------------------------------
Hu0/0/0/5 8 0 0 1 1 1272 8360 local 100G
Hu0/1/0/2 2000088 0 1 17 857 1528 7464 remote 100G
Te0/0/0/14 1088 2 1 17 297 1728 6568 local 10G << NPU2, PP Port:17
4. Erfassen Sie Pakete auf der NPU, die die Schnittstelle hostet. Suchen Sie den PP-Port in der Ausgabe, und stellen Sie sicher, dass er mit dem in Schritt 1 angegebenen PP-Port übereinstimmt.
Beispiel: show controllers fia diagshell "diag last" location
RP/0/RP0/CPU0:NCS-5500#show controllers fia diagshell 2 "diag last" location 0/0/CPU0
Node ID: 0/0/CPU0
R/S/I: 0/0/2
Core 0:
Last packet information: is_valid=0 tm_port=253
pp_port=240 src_syst_port=253 port_header_type=tm packet_size=0
Packet start, offset in bytes:
00: 4e415000 00134e41 50000001 8100e602 876f00fd 0606c00e 00000000 000180c2
20: 00000efc e4f6adb0 3888cc02 0704fce4 f6adb487 04100554 656e4769 6745302f
40: 302f302f 31340602 00780a0a 4e43532d 35353038 2d410c10 20372e39 2e322c20
60: 4e43532d 35353030 08000e04 00100010 100c0501 0a130101 02000000 d8001018
Core 1:
Last packet information: is_valid=1 tm_port=17
pp_port=17 src_syst_port=297 port_header_type=eth packet_size=83 << pp_port: 17
Packet start, offset in bytes:
00: 0180c200 000e40a6 b79e2552 88cc0207 0440a6b7 9e255204 070340a6 b79e2552
20: 06020079 fe190080 c2098000 00000064 00000000 00000002 00000000 000000fe
40: 060080c2 0b8800fe 080080c2 0c006189 06000000 00000000 00000000 00000000
60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
RP/0/RP0/CPU0:NCS-5500#
Tipp: Sie können die hexadezimalen Daten mit einem Paket-Decoder-Tool decodieren, um den Netzwerkverkehr gründlich zu analysieren und zu interpretieren.
5. Überprüfen Sie die NPU-Statistiken: Identifizieren Sie die NPU-Nummer, die mit Ihrer ausgehenden oder eingehenden Schnittstelle verknüpft ist, und führen Sie dann diesen Befehl aus, um die Datenpfadzähler zu überprüfen.
Beispiel: show controllers fia diagshell "diag counter g c" location

Anmerkung: Achten Sie darauf, dass hervorgehobene Leistungsindikatoren immer größer werden.
6. Überprüfen Sie die Statistiken aus jeder Verarbeitungsphase des NPU:
Beispiel: show controller npu stats counters-all instance loc
RP/0/RP0/CPU0:NCS-5500#show controllers npu stats counters-all instance 2 location 0/0/CPU0
FIA Statistics Rack: 0, Slot: 1, Asic instance: 0
Per Block Statistics:
Ingress:
NBI RX:
RX_TOTAL_BYTE_COUNTER = 987134
RX_TOTAL_PKT_COUNTER = 7117
IRE:
CPU_PACKET_COUNTER = 0
NIF_PACKET_COUNTER = 7117
OAMP_PACKET_COUNTER = 16976
OLP_PACKET_COUNTER = 0
RCY_PACKET_COUNTER = 23081
IRE_FDT_INTRFACE_CNT = 0
IDR:
MMU_IDR_PACKET_COUNTER = 3037
IDR_OCB_PACKET_COUNTER = 0
IQM:
ENQUEUE_PKT_CNT = 52073
DEQUEUE_PKT_CNT = 52073
DELETED_PKT_CNT = 0
ENQ_DISCARDED_PACKET_COUNTER = 0
IPT:
EGQ_PKT_CNT = 35207
ENQ_PKT_CNT = 52073
FDT_PKT_CNT = 16976
CFG_EVENT_CNT = 49036
CFG_BYTE_CNT = 5313772
FDT:
IPT_DESC_CELL_COUNTER = 16976
IRE_DESC_CELL_COUNTER = 0
TRANSMITTED_DATA_CELLS_COUNTER = 16976
Egress:
FDR:
P1_CELL_IN_CNT = 17538
P2_CELL_IN_CNT = 0
P3_CELL_IN_CNT = 0
CELL_IN_CNT_TOTAL = 17538
FDA:
CELLS_IN_CNT_P1 = 17538
CELLS_IN_CNT_P2 = 0
CELLS_IN_CNT_P3 = 0
CELLS_IN_TDM_CNT = 0
CELLS_IN_MESHMC_CNT = 0
CELLS_IN_IPT_CNT = 35317
CELLS_OUT_CNT_P1 = 17538
CELLS_OUT_CNT_P2 = 0
CELLS_OUT_CNT_P3 = 0
CELLS_OUT_TDM_CNT = 0
CELLS_OUT_MESHMC_CNT = 0
CELLS_OUT_IPT_CNT = 35317
EGQ_DROP_CNT = 0
EGQ_MESHMC_DROP_CNT = 0
EGQ:
FQP_PACKET_COUNTER = 52635
PQP_UNICAST_PKT_CNT = 52635
PQP_DSCRD_UC_PKT_CNT = 0
PQP_UC_BYTES_CNT = 5750183
PQP_MC_PKT_CNT = 0
PQP_DSCRD_MC_PKT_CNT = 0
PQP_MC_BYTES_CNT = 0
EHP_UNICAST_PKT_CNT = 52635
EHP_MC_HIGH_PKT_CNT = 0
EHP_MC_LOW_PKT_CNT = 0
DELETED_PKT_CNT = 0
EHP_MC_HIGH_DSCRD_CNT = 0
EHP_MC_LOW_DSCRD_CNT = 0
ERPP_LAG_PRUNING_DSCRD_CNT = 0
ERPP_PMF_DISCARDS_CNT = 0
ERPP_VLAN_MBR_DSCRD_CNT = 0
EPNI:
EPE_BYTES_COUNTER = 5459532
EPE_PKT_COUNTER = 52635
EPE_DSCRD_PKT_CNT = 0
NBI TX:
TX_TOTAL_BYTE_COUNTER = 2315363
TX_TOTAL_PKT_COUNTER = 15053
RP/0/RP0/CPU0:NCS-5500#
7. Ermitteln Sie anhand der Trap-Statistiken, ob ein Paket verworfen oder an die CPU umgeleitet wurde.
Beispiel: show controllers npu stats traps-all instance loc
RP/0/RP0/CPU0:NCS-5500#show controllers npu stats traps-all instance 2 location 0/0/CPU0
Trap Type NPU Trap TrapStats Policer Packet Packet
ID ID ID Accepted Dropped
============================================================================================================================
RxTrapMimDiscardMacsaDrop (IRB) 2 1 0x1 32045 0 0
RxTrapMimDiscardMacsaSnoop(dot1x) 2 3 0x3 32020 0 53 <<< Drop
RxTrapMimSaMove(CFM_DOWM_MEP_DMM) 2 6 0x6 32039 0 0
RP/0/RP0/CPU0:NCS-5500#
8. Überprüfen Sie bei Paketen, die in den Trap-Zählern nicht als verloren gekennzeichnet sind, die SPP-Zähler, um nach potenziellen Verlusten zu suchen.
Beispiel:show spp node-counters loc
RP/0/RP0/CPU0:NCS-5500#show spp node-counters location 0/0/CPU0
socket/rx
ether raw pkts: 4098990
-------------------------------
socket/tx
ce pkts: 923918
-------------------------------
fretta/classify
forwarded NPU packet to NetIO: 3536836
forwarded CPU packet to NetIO: 102051
forwarded NPU packet to SPIO: 360025
dropped in classify node: 1638 <<<
lnx l2 drop in classify node: 1637
port-mapper drop: 1
-------------------------------
client/inject
pkts injected into spp: 923728
NetIO->NPU injected into spp: 461604
NetIO->CPU injected into spp: 102132
LACP: 128529
LLDP: 231463
-------------------------------
cfm_off_tx_node
Hostname updated: 1
-------------------------------
pkt_classrx
Other punt traffic to XR: 3998476
LPTS: ICMPv4 to XR: 119
LPTS: ARP request: 127
Total Pkts to XR: 3998912
Total Pkts punted to RP Lnx: 190
LPTS: ARP reply: 190
Total Pkts to both dests: 190
-------------------------------
client/punt
punted to client: 3998861
no client found - send to defa: 51
-------------------------------
RP/0/RP0/CPU0:NCS-5500#
9. Wenn keine inkrementierenden Traps festgestellt werden, fahren Sie mit der Überprüfung der Statistiken der virtuellen Ausgabewarteschlange (VOQ) fort.
Beispiel:
show controllers npu voq-usage interface instance loc
show controllers npu stats voq base instance location
RP/0/RP0/CPU0:NCS-5500#show controllers npu voq-usage interface tenGigE 0/0/0/14 instance 2 location 0/0/CPU0
-----------------------------------------------------------------
Node ID: 0/0/CPU0
Intf Intf NPU NPU PP Sys VOQ Flow VOQ Port
name handle # core Port Port base base port speed
(hex) type
----------------------------------------------------------------------
Te0/0/0/14 1088 2 1 17 297 1728 6568 local 10G
RP/0/RP0/CPU0:NCS-5500#
RP/0/RP0/CPU0:NCS-5500#show controllers npu stats voq base 1728 instance 2 loc 0/0/cpu0
Fri Jun 13 01:45:30.348 UTC
Location = 0/0/CPU0
Asic Instance = 2
VOQ Base = 1728
ReceivedPkts ReceivedBytes DroppedPkts DroppedBytes
-------------------------------------------------------------------
Core-0:
TC_0 = 0 0 0 0
TC_1 = 0 0 0 0
TC_2 = 0 0 0 0
TC_3 = 0 0 0 0
TC_4 = 0 0 0 0
TC_5 = 0 0 0 0
TC_6 = 0 0 0 0
TC_7 = 47929 7570783 0 0
RP/0/RP0/CPU0:NCS-5500#
Erforderliche Informationen zum Erstellen eines Tickets beim TAC
Tipp: Führen Sie die genannten Befehle mehrmals in regelmäßigen Abständen aus, um aktiv zu überwachen und festzustellen, ob Zähler wie Fehler, Auslassungen oder Überläufe inkrementiert werden.
Sammeln Sie alle in diesem Dokument erwähnten Befehle sowie die folgenden zusätzlichen Befehle ein, um eine umfassende Fehlerbehebung zu ermöglichen:
show verwirft alle aktuellen Standorte
Vorsicht: For certain versions of Jericho1, the command used is show drops-all ongoing location
show tech-support
Erfasste Pakete am Eingangsort anzeigen
Zugehörige Informationen
NCS 5500: Lebensdauer eines Pakets(Übertragung, Stanzen/Injizieren, Ping-Pfad)
Technischer Support und Downloads von Cisco