Inhoud

Inleiding

Methodologie

Op uitstroomdruppels controleren

Bepaal of de druppels Unicast of Multicast zijn

Bepaal welke uitvoerbuffer wordt gebruikt

Controleer de actieve bufferbewaking

Actieve verhoging van tellers

Korte uitvoer

Gedetailleerde uitvoer

Generate een logboek wanneer een drempel wordt overschreden

Opmerkelijke Cisco-bog-id’s

Veelgestelde vragen

Aanhangsel - Informatie over functies

Buffer-beheer

planning

Multicast voor ontvangers

Active Buffer-bewaking

Hardware-implementatie

Softwareimplementatie

Inleiding

In dit document worden opdrachten beschreven die moeten worden gebruikt om een oplossing te vinden voor het type verkeer dat op het Nexus 3500-platform en de uitvoerbuffer (OB) is gevallen waarin dit verkeer is gevallen.

Methodologie

1. Op uitstroomdruppels controleren

2. Bepaal of de druppels Unicast of Multicast zijn

3. Bepaal welke uitvoerbuffer wordt gebruikt

4. Controleer de actieve bufferbewaking

Op uitstroomdruppels controleren

Controleer de fysieke interfacestatistieken om te bepalen of het verkeer in de drukrichting is gevallen. Bepaal of de teller van de "uitzet" in de stappen van de TX-richting en/of niet-nul is.

Nexus3548# show interfce Eth1/7

Ethernet1/7 is up

Dedicated Interface

Hardware: 100/1000/10000 Ethernet, address: a44c.116a.913c (bia a44c.116a.91ee)

Description: Unicast Only

Internet Address is 1.2.1.13/30

MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec

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

Encapsulation ARPA

full-duplex, 1000 Mb/s, media type is 1G

Beacon is turned off

Input flow-control is off, output flow-control is off

Rate mode is dedicated

Switchport monitor is off

EtherType is 0x8100

Last link flapped 00:03:48

Last clearing of "show interface" counters 00:03:55

1 interface resets

30 seconds input rate 200 bits/sec, 0 packets/sec

30 seconds output rate 0 bits/sec, 0 packets/sec

Load-Interval #2: 5 minute (300 seconds)

input rate 40 bps, 0 pps; output rate 139.46 Mbps, 136.16 Kpps

RX

1 unicast packets  118 multicast packets  0 broadcast packets

119 input packets  9830 bytes

0 jumbo packets  0 storm suppression bytes

0 runts  0 giants  0 CRC  0 no buffer

0 input error  0 short frame  0 overrun   0 underrun  0 ignored

0 watchdog  0 bad etype drop  0 bad proto drop  0 if down drop

0 input with dribble  0 input discard

0 Rx pause

TX

23605277 unicast packets  0 multicast packets  0 broadcast packets

23605277 output packets  3038908385 bytes

0 jumbo packets

0 output errors  0 collision  0 deferred  0 late collision

0 lost carrier  0 no carrier  0 babble 11712542 output discard

0 Tx pause

Bepaal of de druppels Unicast of Multicast zijn

Zodra het wordt bepaald dat de interface het verkeer vermindert, voer dan de opdracht van de showinterface <x/y>in om te weten te komen of het gedropt verkeer multicast of unicast is. Bij releases eerder dan 6.0(2)A3(1) ziet de uitvoer er als:

Nexus3548# show queuing interface Eth1/7

Ethernet1/7 queuing information:

TX Queuing

qos-group  sched-type  oper-bandwidth

0       WRR            100

RX Queuing

Multicast statistics:

Mcast pkts dropped                      : 0

Unicast statistics:

qos-group 0

HW MTU: 1500 (1500 configured)

drop-type: drop, xon: 0, xoff: 0

Statistics:

Ucast pkts dropped                      : 11712542

In release 6.0(2)A3(1) en later ziet de uitvoer er zo uit:

Nexus3548# show queuing interface Eth1/7

Ethernet1/7 queuing information:

qos-group  sched-type  oper-bandwidth

0       WRR            100

Multicast statistics:

Mcast pkts dropped                      : 0

Unicast statistics:

qos-group 0

HW MTU: 1500 (1500 configured)

drop-type: drop, xon: 0, xoff: 0

Statistics:

Ucast pkts dropped                      : 11712542

Opmerking: Als de multicast trage ontvanger voor de poort is geconfigureerd, zie voor informatie over de functies, worden de ladingen niet gevolgd door de opdracht Eth<x/y> vanwege een hardwarebeperking. Zie Cisco bug-id CSCuj21006.

Bepaal welke uitvoerbuffer wordt gebruikt

In Nexus 3500 zijn er drie bufferpools die in de richting van de uitgang worden gebruikt. De output van de opdracht van de show hardware interne mtc-USD info port-mapping geeft de mapping informatie.

Nexus3548# show hardware internal mtc-usd info port-mapping

OB Ports to Front Ports:

========= OB0 =========    ========= OB1 =========    ========= OB2 =========

45 47 21 23 09 11 33 35    17 19 05 07 41 43 29 31    13 15 37 39 25 27 01 03

46 48 22 24 10 12 34 36    18 20 06 08 42 44 30 32    14 16 38 40 26 28 02 04

Front Ports to OB Ports:

=OB2= =OB1= =OB0= =OB2=    =OB1= =OB0= =OB2= =OB1=    =OB0= =OB2= =OB1= =OB0=

12 14 04 06 08 10 00 02    00 02 04 06 08 10 12 14    12 14 04 06 08 10 00 02

13 15 05 07 09 11 01 03    01 03 05 07 09 11 13 15    13 15 05 07 09 11 01 03

Front port numbering (i.e. "01" here is e1/1):

=OB2= =OB1= =OB0= =OB2=    =OB1= =OB0= =OB2= =OB1=    =OB0= =OB2= =OB1= =OB0=

01 03 05 07 09 11 13 15    17 19 21 23 25 27 29 31    33 35 37 39 41 43 45 47

02 04 06 08 10 12 14 16    18 20 22 24 26 28 30 32    34 36 38 40 42 44 46 48

Note: Text in Red font is _not_ CLI output, it's purely to help those reading

the document faster match the actual front port instead of having to manually

count up.

Het eerste deel van de resultaten geeft aan dat OB pool 0 gebruikt wordt door voorpoorten zoals 45, 46, 47, 48 enzovoort en OB1 gebruikt wordt door voorpoorten 17, 18, enzovoort.

Het tweede deel van de resultaten geeft aan dat Eth1/1 is toegewezen aan OB2 poort 12, Eth1/2 is toegewezen aan OB2 poort 13, enzovoort.

De haven in discussie, Eth1/7, is in kaart gebracht aan OB1.

Zie de sectie Buffer Management in dit document voor meer informatie.

Controleer de actieve bufferbewaking

Zie de Cisco Nexus 3548 Active Buffer Monitoring whitepaper en de sectie in dit document voor meer informatie over deze optie.

Actieve verhoging van tellers

Als de teruggooi van de output actief toename is, schakelt u Active Buffer Monitoring (ABM) in met deze opdracht. Merk op dat de opdracht u in staat stelt om unicast of multicast te controleren, maar niet allebei. Ook kunt u het steekproefinterval en de drempelwaarden configureren.

hardware profile buffer monitor [unicast|multicast] {[sampling

] |

[threshold

]}

Korte uitvoer

Nadat het ABM is ingeschakeld, kunt u de resultaten met deze opdracht bekijken.

Nexus3500# show hardware profile buffer monitor interface e1/7 brief

Brief CLI issued at: 09/30/2013 19:43:50

Maximum buffer utilization detected

1sec     5sec    60sec     5min      1hr

------   ------   ------   ------   ------

Ethernet1/7       5376KB   5376KB   5376KB      N/A      N/A

Deze resultaten duiden erop dat 5,376 MB van de 6 MB van de OB1-buffer gebruikt is door eenastverkeer dat Eth1/7 de afgelopen 60 seconden heeft verlaten.

Gedetailleerde uitvoer

Nexus3500# show hardware profile buffer monitor interface Eth1/7 detail

Detail CLI issued at: 09/30/2013 19:47:01

Legend -

384KB  - between   1 and 384KB of shared buffer consumed by port

768KB  - between 385 and 768KB of shared buffer consumed by port

307us  - estimated max time to drain the buffer at 10Gbps

Active Buffer Monitoring for Ethernet1/7 is: Active

KBytes                 384  768 1152 1536 1920 2304 2688 3072 3456 3840 4224 4608 4992 5376 5760 6144

us @ 10Gbps            307  614  921 1228 1535 1842 2149 2456 2763 3070 3377 3684 3991 4298 4605 4912

---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----

09/30/2013 19:47:01      0    0    0    0    0    0    0    0    0    0    0    0    0  250    0    0

09/30/2013 19:47:00      0    0    0    0    0    0    0    0    0    0    0    0    0  252    0    0

09/30/2013 19:46:59      0    0    0    0    0    0    0    0    0    0    0    0    0  253    0    0

09/30/2013 19:46:58      0    0    0    0    0    0    0    0    0    0    0    0    0  250    0    0

09/30/2013 19:46:57      0    0    0    0    0    0    0    0    0    0    0    0    0  250    0    0

09/30/2013 19:46:56      0    0    0    0    0    0    0    0    0    0    0    0    0  250    0    0

09/30/2013 19:46:55      0    0    0    0    0    0    0    0    0    0    0    0    0  251    0    0

09/30/2013 19:46:54      0    0    0    0    0    0    0    0    0    0    0    0    0  251    0    0

09/30/2013 19:46:53      0    0    0    0    0    0    0    0    0    0    0    0    0  250    0    0

09/30/2013 19:46:52      0    0    0    0    0    0    0    0    0    0    0    0    0  253    0    0

09/30/2013 19:46:51      0    0    0    0    0    0    0    0    0    0    0    0    0  249    0    0

...

De informatie in elke rij wordt met een tweede interval vastgelegd. Elke kolom vertegenwoordigt het buffergebruik. Zoals vermeld in de resultaten van de opdracht, betekent dit dat, indien er een niet-nulwaarde is gerapporteerd voor kolom "384", het buffergebruik tussen 0-384 KByte lag wanneer de ABM het gebruik van de OB heeft bekostigd. Het niet-nulnummer is het aantal keer dat het gebruik werd gemeld.

Deze resultaten duiden erop dat OB1 in de laatste 10 seconden gemiddeld 5,376 MB gebruik tussen 249 en 253 keer per seconde bedroeg. Het duurt 4298 microseconden om de buffer van dit verkeer te verwijderen.

Generate een logboek wanneer een drempel wordt overschreden

Als de valteller en het buffergebruik periodiek toenemen, is het mogelijk om een drempel te plaatsen en een logbericht te genereren wanneer de drempel wordt overschreden.

logging level mtc-usd 5

hardware profile buffer monitor unicast sampling 10 threshold 4608

De opdracht wordt ingesteld om het eenastverkeer te bewaken met een interval van 10 nanoseconden en wanneer het meer dan 75% van de buffer gaat, genereert het een log.

U kunt ook een planner maken om ABM statistieken en de uitvoer van de interfaceteller elk uur te verzamelen en het aan flitsbestanden toe te voegen. Dit voorbeeld is voor multicast verkeer:

hardware profile buffer monitor multicast

feature scheduler

scheduler job name ABM

show hardware profile buffer monitor detail >> ABMDetail.txt

show clock >> ABMBrief.txt

show hardware profile buffer monitor brief >> ABMBrief.txt

show clock >> InterfaceCounters.txt

show interface counters errors >> InterfaceCounters.txt

scheduler schedule name ABM

time start now repeat 1:0

job name ABM

Opmerkelijke Cisco-bog-id’s

- Cisco bug-ID CSCum21350: Snelle poortflaps veroorzaakt alle poorten in dezelfde QoS-buffer om al het TX Multicast/Broadcast-verkeer te laten vallen. Dit is vastgelegd in release 6.0(2)A1(1d) en later.

- Cisco bug-ID CSCuq96923: Het multicast bufferblok zit vast, wat resulteert in gelijkmatige/uitgezonden druppels. Deze kwestie wordt nog onderzocht.

- Cisco bug-id CSCva20344: Nexus 3500 Buffer-blok / lockup - geen TX multicast of uitzending. Onreproduceerbaar probleem, potentieel vastgesteld in releases 6.0(2)U6(7), 6.0(2)A6(8) en 6.0(2)A8(3).

- Cisco bug-ID CSCvi9397:  Cisco Nexus 3500-switches uitvoer bufferblok klem. Dit is vastgelegd in releases 7.0(3)I7(8) en 9.3(3).

Veelgestelde vragen

Betekent ABM dat het invloed heeft op de prestaties of de latentie?

Nee, deze functie heeft geen invloed op de latentie of prestatie van het apparaat.

Wat is het effect van het lagere ABM-interval voor hardwareopiniepeiling?

Standaard is het hardware-opinieinterval 4 milliseconden. Je kunt deze waarde instellen op 10 nanoseconden. Er is geen impact op de prestaties of de latentie vanwege het lagere hardwareopinieinterval. De standaard hardware polling van 4 milliseconden wordt geselecteerd om te verzekeren dat u de histogram tellers niet overstroomt vóór de software opiniepeilingen elke seconde. Als u het hardware pollingsinterval verlaagt, kan het de hardwaretelers verzadigen met 255 monsters. Het apparaat kan geen softwarepeiling van minder dan een seconde verwerken om een lagere hardwareopiniepeiling door CPU-beperkingen en geheugenbeperkingen te bereiken. In het witboek wordt het voorbeeld gegeven van de lagere hardwarekwestie en de gebruikszaak.

Aanhangsel - Informatie over functies

Buffer-beheer

- 18 MB pakketbuffer gedeeld door drie OB-blokken:

- ~4 MB gereserveerd: Grootte gebaseerd op geconfigureerde Max Transmission Unit (MTU) (Per poortsom van 2 x MTU Size x # of enabled-QoS-groepen)

- ~14 MB gedeeld: Restatie van de totale buffer

- ~767 KB aan OB: 0 voor CPU-pakketten

- 6 MB voor elke OB wordt gedeeld door een set van 16 poorten (opdracht voor interne hardware-mapping met informatie via mtc)

planning

Drie lagen:

- Unicast en multicast

- Verkeerscategorieën van dezelfde planningsregeling

- Verkeerscategorieën in de hele regeling

Multicast voor ontvangers

In dit schema:

- Aanhoudende congestie wordt ingevoerd op 1 G Eth1/40.

- Andere multicast ontvangers (Eth1/1 - 3) op het bufferblok worden beïnvloed door het multicast planningsgedrag.  Ontvangers op andere bufferblokken blijven onaangetast.

- "Multicast slow-ontvanger" kan op e1/40 worden toegepast om verkeersverlies op niet-verzadigde poorten te voorkomen.

- "Multicast langzaam-ontvanger" laat de multicast met een snelheid van 10 G op Eth1/40 weglopen. Er wordt nog steeds verwacht dat er vallen op de verstopte poort.

- Configureerd met de hardwareprofiel, multicast-ontvanger poort <x>opdracht.

Active Buffer-bewaking

Zie Cisco Nexus 3548 Active Buffer Monitoring whitepaper voor een overzicht van deze optie.

Hardware-implementatie

- ASIC heeft 18 emmers en elke emmer correspondeert met een bereik van buffergebruik (bijvoorbeeld 0-384KB, 385-768KB, enzovoort).

- ASIC poelt het buffergebruik voor alle poorten elke 4 milliseconden (standaard).  Dit ASIC-steminterval is configureerbaar tot 10 nanoseconden.

- Op basis van het buffergebruik voor elk hardware pollinginterval wordt de emmer-teller voor het corresponderende bereik verhoogd. Dat wil zeggen, als port 25 500 KB buffer verbruikt, wordt de emmer #2 (385-768KB) verhoogd.

- Deze buffergebruikteller wordt voor elke interface in histogram formaat gehandhaafd.

- Elke emmer wordt weergegeven met 8 bits, zodat de teller op 255 uitkomt en hij wordt teruggezet zodra de software de gegevens leest.

Softwareimplementatie

- Om de één seconde, de software poilt ASIC om alle histogram tellers te downloaden en te wissen.

- Deze histogram tellers worden 60 minuten in het geheugen gehouden met een tweede granulariteit.

- De software zorgt er ook voor dat de bufferhistogram elk uur naar de flitser wordt gekopieerd, wat voor verdere analyse naar de analyzer kan worden gekopieerd.

- Dit handhaaft feitelijk twee uur aan bufferhistogram gegevens voor alle havens, het laatste één uur in het geheugen en het tweede uur in de flitser.