De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document biedt een overzicht van bufferafstemming op basis van huidige platforms en geeft algemene informatie over de opdracht buffers tonen.
Er zijn geen specifieke vereisten van toepassing op dit document.
Dit document is niet beperkt tot specifieke software- en hardware-versies.
De informatie in dit document is gebaseerd op apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als u in een live netwerk werkt, zorg er dan voor dat u de potentiële impact van iedere opdracht begrijpt voor u deze gebruikt.
Raadpleeg Cisco Technical Tips Conventions (Conventies voor technische tips van Cisco) voor meer informatie over documentconventies.
Buffer tuning staat u toe om de manier te wijzigen waarop een router buffers toewijst van zijn beschikbaar geheugen, en helpt pakketdruppels voorkomen tijdens een tijdelijke uitbarsting van verkeer.
Om te bepalen of uw router zijn buffer moet hebben gestemd, gebruik de showinterfaces en toon buffers bevelen.
Als u de output van de show interfaces en buffers opdrachten hebt getoond, of de output van de show Technical-support (vanuit de activeringsmodus) vanaf uw Cisco-apparaat, kunt u Cisco CLI Analyzer gebruiken om potentiële problemen en oplossingen weer te geven. Om Cisco CLI Analyzer te kunnen gebruiken, moet u een geregistreerde klant zijn, aangemeld zijn en JavaScript ingeschakeld hebben.
Hieronder is een voorbeeld van de opdrachtoutput van show interfaces:
Output queue 0/40, 1041 drops; input queue 0/75, 765 drops 35252345 packets input, 547082589 bytes, 940 no buffer
De input en output dalingen zijn toe te schrijven aan de input en outputrijen die door een uitbarsting van verkeer worden overlopen. Dit heeft niets te maken met een bufferprobleem, maar eerder met een prestatiebeperking bij processwitching.
"Geen buffer" vertegenwoordigt het aantal gedropte pakketten omdat er geen vrije buffer is om het pakket te kopiëren.
Gebruik de opdracht show buffers om de buffergrootte te bekijken die overeenkomt met de maximale transmissie-eenheid (MTU) van de interface:
Middle buffers, 600 bytes (total 150, permanent 25): 147 in free list (10 min, 150 max allowed) 61351931 hits, 137912 misses, 51605 trims, 51730 created 91652 failures (0 no memory)
De onderstaande tabel verklaart de output:
Trefwoord | Beschrijving |
---|---|
totaal | Het totale aantal buffers in het depot, inclusief zowel gebruikte als ongebruikte buffers. |
blijvend | Het permanente aantal toegewezen buffers in het depot. Deze buffers zijn altijd in het zwembad, en kunnen niet worden weggesnoeid. |
in gratis lijst | Het aantal buffers momenteel beschikbaar in het zwembad die gratis zijn voor gebruik. |
minuten | Het minimumaantal buffers dat de router zou moeten proberen om "in vrije lijst te houden." Als het aantal buffers "in vrije lijst" onder de "min" waarde daalt, zou de router moeten proberen om meer buffers voor die pool te creëren. |
maximum toegestaan | Het maximum aantal buffers toegestaan "in vrije lijst." Als het aantal buffers "in vrije lijst"groter is dan de "maximum toegestane"waarde, zou de router moeten proberen om buffers van de pool in orde te maken. |
hits | Het aantal buffers dat met succes is toegewezen uit de vrije lijst. |
gemis | Het aantal keren dat een buffer is aangevraagd, maar er zijn geen buffers beschikbaar in de vrije lijst, of wanneer er minder dan "min" buffers in de vrije lijst. |
garnering | Het aantal buffers dat uit het depot is bijgesneden wanneer het aantal buffers "in vrije lijst" het aantal "maximaal toegestane" buffers overschrijdt. |
gemaakt | Het aantal buffers die zijn gecreëerd in het zwembad wanneer het aantal buffers "in vrije lijst" minder was dan "min." |
geen geheugen | Het aantal keren dat de router probeerde om nieuwe buffers te creëren, maar kon niet wegens onvoldoende vrij geheugen in de router. |
mislukkingen | Het aantal mislukkingen om een buffer aan een verzoeker onder onderbreekingstijd te verlenen (herinner dat de router nieuwe buffers op het niveau van de procesomschakeling kan creëren, zodat "mislukking" niet voorkomt tenzij er "geen geheugen" is). Het aantal "storingen" staat voor het aantal pakketten dat is gevallen als gevolg van een buffertekort. |
Hoe buffers door de router worden behandeld
Het aantal buffers "in vrije lijst" is het aantal beschikbare buffers. Wanneer een bufferverzoek binnenkomt, wordt een buffer van de "in vrije lijst" toegewezen.
De IOS-buffers worden om twee belangrijke redenen gebruikt:
Om verkeer te behandelen dat bij de router eindigt.
Wanneer pakketten worden verwerkt.
Als er geen buffers beschikbaar zijn en snel schakelen is ingeschakeld, is er een bufferfout en wordt het pakket verbroken. Wanneer het proces van de bufferpoolbeheerder een bufferstoring detecteert, "creëert" het een nieuwe buffer om toekomstige storingen te voorkomen.
De router maakt geen nieuwe buffer als het getal "in vrije lijst" gelijk is aan de "maximaal toegestane" waarde. Als er niet genoeg geheugen in de router is om een nieuwe buffer te maken, wordt dit geregistreerd als "geen geheugen". Als het aantal "in vrije lijst"groter is dan het "maximum toegestane"aantal, "versiert"de router sommige bovenmatige buffers.
Het aantal "storingen" en "geen geheugen" zijn de enige punten van zorg. Er kunnen fouten optreden, maar die moeten zich na een tijdje stabiliseren. De router maakt of trimt indien nodig buffers om het aantal storingen te stabiliseren. Als het aantal storingen blijft toenemen, kan bufferafstemming nodig zijn.
Als er niet genoeg geheugen is om nieuwe buffers te creëren, zoek dan naar een bufferlek, of een algemener geheugenprobleem. Buffers worden niet gemaakt in het snel-switching pad, dus als de router probeert om een pakket snel te switches en er is geen buffer beschikbaar, wordt het pakket gedropt, en een fout wordt gemeld. De volgende keer dat de beheerder van de bufferpool wordt geëxploiteerd, wordt een nieuwe buffer gecreëerd.
Fast-switched pakketten en proces-switched pakketten delen dezelfde buffers. Deze buffers bevinden zich in het gedeelde geheugen. Het gedeelde geheugen bevindt zich in dynamisch RAM (DRAM) in Cisco 1600 en 2500 Series routers, of in gedeeld RAM (SRAM) voor de Cisco 4000, 4500 en 4700 Series routers.
De eerste lijnen van de opdracht show memory vertellen u hoeveel gedeeld geheugen u hebt, hoeveel momenteel wordt gebruikt en het laagste punt. Wanneer een pakket niet snel kan worden geschakeld, wordt een aanwijzer naar het pakket ingevoegd in de invoerwachtrij voor processwitching, maar het pakket zelf wordt niet gekopieerd.
Hier is de output van het bevel van showbuffers op een laag platform (Cisco 4500):
router# show buffers Buffer elements: 471 in free list (500 max allowed) 870696495 hits, 0 misses, 0 created Public buffer pools: Small buffers, 104 bytes (total 50, permanent 50): 49 in free list (20 min, 150 max allowed) 27301678 hits, 23 misses, 20 trims, 20 created 0 failures (0 no memory) Middle buffers, 600 bytes (total 150, permanent 25): 147 in free list (10 min, 150 max allowed) 61351931 hits, 137912 misses, 51605 trims, 51730 created 91652 failures (0 no memory) Big buffers, 1524 bytes (total 67, permanent 50): 67 in free list (5 min, 150 max allowed) 46293638 hits, 455 misses, 878 trims, 895 created 0 failures (0 no memory) VeryBig buffers, 4520 bytes (total 96, permanent 10): 79 in free list (0 min, 100 max allowed) 11818351 hits, 246 misses, 98 trims, 184 created 243 failures (0 no memory) Large buffers, 5024 bytes (total 10, permanent 0): 10 in free list (0 min, 10 max allowed) 4504003 hits, 873040 misses, 759543 trims, 759553 created 873040 failures (0 no memory) Huge buffers, 18024 bytes (total 0, permanent 0): 0 in free list (0 min, 4 max allowed) 0 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Interface buffer pools: TokenRing0 buffers, 4516 bytes (total 48, permanent 48): 0 in free list (0 min, 48 max allowed) 3099742 hits, 9180771 fallbacks 16 max cache size, 1 in cache TokenRing1 buffers, 4516 bytes (total 48, permanent 48): 0 in free list (0 min, 48 max allowed) 335172 hits, 403668 fallbacks 16 max cache size, 16 in cache Serial1 buffers, 1524 bytes (total 96, permanent 96): 63 in free list (0 min, 96 max allowed) 33 hits, 0 fallbacks 0 max cache size, 0 in cache Serial2 buffers, 1524 bytes (total 96, permanent 96): 63 in free list (0 min, 96 max allowed) 701370936 hits, 268 fallbacks 0 max cache size, 0 in cache Serial3 buffers, 1524 bytes (total 96, permanent 96): 63 in free list (0 min, 96 max allowed) 33 hits, 0 fallbacks 0 max cache size, 0 in cache Serial0 buffers, 4546 bytes (total 96, permanent 96): 28 in free list (0 min, 96 max allowed) 346854 hits, 5377043 fallbacks 32 max cache size, 27 in cache
De interfacebufferpools worden gebruikt door de interfaces voor input/output (I/O). Wanneer er geen buffers meer zijn in de vrije lijst van de interfacebuffer, gaat de router naar de openbare bufferpools als reserve. Er is geen performance hit voor een fallback.
Caching is een software manipulatie die de beschikbaarheid van buffers voor onderbreking niveau driver code versnelt door het omzeilen van enige overhead.
Opmerking: normaal gesproken hoeven interfacebuffers niet te worden afgestemd.
Hier is de output van de show buffers opdracht op een high-end platform:
Router# show buffers Buffer elements: 498 in free list (500 max allowed) 326504974 hits, 0 misses, 0 created Public buffer pools: Small buffers, 104 bytes (total 150, permanent 150): 140 in free list (30 min, 250 max allowed) 564556247 hits, 148477066 misses, 16239797 trims, 16239797 created 29356200 failures (0 no memory) Middle buffers, 600 bytes (total 120, permanent 120): 116 in free list (20 min, 200 max allowed) 319750574 hits, 85689239 misses, 9671164 trims, 9671164 created 26050704 failures (0 no memory) Big buffers, 1524 bytes (total 100, permanent 100): 98 in free list (10 min, 300 max allowed) 20130595 hits, 14796572 misses, 251916 trims, 251916 created 11813639 failures (0 no memory) VeryBig buffers, 4520 bytes (total 15, permanent 15): 14 in free list (5 min, 300 max allowed) 22966334 hits, 3477687 misses, 13113 trims, 13113 created 2840089 failures (0 no memory) Large buffers, 5024 bytes (total 12, permanent 12): 12 in free list (0 min, 30 max allowed) 849034 hits, 1979463 misses, 1028 trims, 1028 created 1979456 failures (0 no memory) Huge buffers, 18024 bytes (total 6, permanent 5): 4 in free list (2 min, 13 max allowed) 338440 hits, 1693496 misses, 1582 trims, 1583 created 1640218 failures (0 no memory)
Kop-groepen
De openbare bufferpools zijn gevestigd in DRAM, en worden systeembuffers genoemd. Het gedeelde geheugen op de Route/Switch Processor (RSP) wordt systeem pakketgeheugen (MEMD) genoemd, en staat 2 MB geheugen toe. Op de Routeprocessor (RP) en de Switch Processor (SP) (of Silicon Switch Processor - SSP), zijn de systeembuffers op de RP gevestigd, en de MEMD bevindt zich op de SP (of SSP).
Wanneer een pakket binnenkomt, wordt het in MEMD opgeslagen door de ontvangende interfaceprocessor (behalve in het geval van de Veelzijdige interfaceprocessor - VIP). Als het niet snel-kan worden geschakeld, wordt het gehele pakket gekopieerd in een systeembuffer in DRAM. Daarom zijn de buffers die u in de opdracht show buffers ziet de systeembuffers in DRAM.
De show controllers cbus opdracht toont u de interface buffers in MEMD. Opnieuw, wordt het niet geadviseerd om de interfacebuffers te stemmen. Wanneer een pakket niet snel-switched kan zijn, en gekopieerd wordt naar een systeembuffer, wordt het pakket gevallen, en een fout wordt geteld als er geen systeembuffer beschikbaar is.
De Cisco 3600 en 7200 Series routers gebruiken deeltjes. De interfacebuffers zijn atomaire buffers, deeltjes genoemd, waarin de pakketten worden verdeeld. Wanneer een pakket niet snel-switched kan zijn, moet de router het in één systeembuffer reassembleren, omdat de code van de procesomschakeling geen deeltjes kan behandelen.
Hieronder staat de uitvoer van de opdracht showbuffers op Cisco 3600:
Router# show buffers Buffer elements: 499 in free list (500 max allowed) 136440 hits, 0 misses, 0 created Public buffer pools: Small buffers, 104 bytes (total 50, permanent 50): 49 in free list (20 min, 150 max allowed) 4069435 hits, 141 misses, 73 trims, 73 created 52 failures (0 no memory) Middle buffers, 600 bytes (total 25, permanent 25): 25 in free list (10 min, 150 max allowed) 628629 hits, 21 misses, 21 trims, 21 created 3 failures (0 no memory) Big buffers, 1524 bytes (total 50, permanent 50): 50 in free list (5 min, 150 max allowed) 9145 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) VeryBig buffers, 4520 bytes (total 10, permanent 10): 10 in free list (0 min, 100 max allowed) 0 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Large buffers, 5024 bytes (total 0, permanent 0): 0 in free list (0 min, 10 max allowed) 0 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Huge buffers, 18024 bytes (total 0, permanent 0): 0 in free list (0 min, 4 max allowed) 0 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Interface buffer pools: CD2430 I/O buffers, 1524 bytes (total 0, permanent 0): 0 in free list (0 min, 0 max allowed) 0 hits, 0 fallbacks Header pools: Header buffers, 0 bytes (total 265, permanent 256): 9 in free list (10 min, 512 max allowed) 253 hits, 3 misses, 0 trims, 9 created 0 failures (0 no memory) 256 max cache size, 256 in cache Particle Clones: 1024 clones, 0 hits, 0 misses Public particle pools: F/S buffers, 256 bytes (total 384, permanent 384): 128 in free list (128 min, 1024 max allowed) 256 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) 256 max cache size, 256 in cache Normal buffers, 1548 bytes (total 512, permanent 512): 356 in free list (128 min, 1024 max allowed) 188 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) 128 max cache size, 128 in cache Private particle pools: Ethernet0/0 buffers, 1536 bytes (total 96, permanent 96): 0 in free list (0 min, 96 max allowed) 96 hits, 0 fallbacks 96 max cache size, 64 in cache Serial0/0 buffers, 1548 bytes (total 14, permanent 14): 0 in free list (0 min, 14 max allowed) 14 hits, 0 fallbacks 14 max cache size, 14 in cache BRI0/0 buffers, 1548 bytes (total 14, permanent 14): 0 in free list (0 min, 14 max allowed) 14 hits, 0 fallbacks 14 max cache size, 14 in cache BRI0/0:1 buffers, 1548 bytes (total 14, permanent 14): 0 in free list (0 min, 14 max allowed) 14 hits, 0 fallbacks 14 max cache size, 14 in cache BRI0/0:2 buffers, 1548 bytes (total 14, permanent 14): 0 in free list (0 min, 14 max allowed) 14 hits, 0 fallbacks 14 max cache size, 14 in cache TokenRing0/0 buffers, 1548 bytes (total 64, permanent 64): 0 in free list (0 min, 64 max allowed) 64 hits, 0 fallbacks 64 max cache size, 64 in cache 4 buffer threshold, 0 threshold transitions
Particuliere deeltjespools worden gebruikt door de interfaces en dienen niet te worden afgestemd. Wanneer geen buffer in de vrije lijst beschikbaar is, valt de router terug naar de openbare deeltjespools.
De buffers van de kopbal worden gebruikt om een lijst van alle deeltjes te registreren die tot een pakket behoren.
Opmerking: systeembuffers worden gebruikt voor processwitching. Op Cisco 3600 bevinden al deze buffers zich in het I/O-geheugen dat zich in DRAM bevindt. U kunt de hoeveelheid I/O-geheugen specificeren met de opdracht geheugengrootte-iomem. Op Cisco 7200 zijn de interface particle bufferpools voor de poortadapters met hoge bandbreedte (PA’s) te vinden in SRAM.
Hieronder is een voorbeeld van de opdracht show buffers:
Middle buffers, 600 bytes (total 150, permanent 25): 147 in free list (10 min, 150 max allowed) 61351931 hits, 137912 misses, 51605 trims, 51730 created 91652 failures (0 no memory)
In dit voorbeeld hebben de middelste buffers veel fouten. Dit is geen ernstig probleem, want het is slechts 0, 1 % van de hits. Deze aantallen zouden gemakkelijk met één of andere buffertuning moeten worden verbeterd.
Buffer tuning wordt alleen uitgevoerd wanneer pakketten niet kunnen worden geschakeld naar CEF.
Afhankelijk van de architectuur van de router, behoren de buffers die u afstemt over het algemeen tot I/O-geheugen (low-end) of hoofdgeheugen (high-end). Alvorens de buffers te stemmen, controleer eerst of u genoeg vrije I/O of hoofdgeheugen hebt die de eerste lijnen van het bevel van het showgeheugen gebruiken.
Hier zijn enkele algemene waarden die u kunt gebruiken:
permanent: neem het aantal totale buffers in een pool en voeg ongeveer 20% toe.
min-vrij: min-vrij instellen op ongeveer 20-30% van het permanente aantal toegewezen buffers in het zwembad.
max-free: stel max-free in op iets dat groter is dan de som van de permanenten en minima.
In het bovenstaande voorbeeld voor het afstemmen van buffers kunnen we deze opdrachten in de globale configuratiemodus invoeren:
buffers middle permanent 180 buffers middle min-free 50 buffers middle max-free 230
Normaal gesproken maakt Cisco IOS® Software buffers dynamisch zodat deze instellingen fijn zijn. In het geval van een verkeersbreuk heeft de router mogelijk niet voldoende tijd om de nieuwe buffers aan te maken en kan het aantal storingen blijven toenemen. Gebruik de opdracht buffers om de standaardinstellingen van de bufferpool te wijzigen. Zorg ervoor dat veranderingen in de bufferwaarden met voorzichtigheid worden aangebracht aangezien de ongepaste bufferinstellingen de systeemprestaties kunnen beïnvloeden. Als u de buffertellers wilt wissen, zal de router moeten worden herladen.
Er zijn twee soorten verkeersuitbarstingen:
Langzame uitbarsting: In dit geval, heeft de router genoeg tijd om nieuwe buffers te creëren. Verhoog het aantal min-vrije buffers. Door het gebruik van vrije buffers, kunt u de min-vrije waarde bereiken, en vervolgens nieuwe buffers maken.
Snelle uitbarsting: Met snelle verkeersuitbarstingen heeft de router niet genoeg tijd om nieuwe buffers te maken, dus u moet de gratis buffers gebruiken. Om dit te doen, wijzig het aantal permanente buffers.
Conclusie: Als de aanmaakteller na de eerste afstemming toeneemt, verhoogt u de min-free (slow burst). Als de mislukkingsteller toeneemt, maar niet de aanmaakteller (snel barsten), verhoog de permanente waarde.
U kunt de opdracht fabric buffer-reserve invoeren om de doorvoersnelheid van het systeem te verbeteren en de ASIC-buffers te reserveren.
Deze opdracht wordt ondersteund op deze modules:
WS-X670 M4-10 GE
WS-X674-SFP switch
WS-X6748-GE-TX SWITCH
WS-X672-SFP switch
Deze opdracht wordt niet ondersteund op Cisco 7600 Series routers die zijn geconfigureerd met een Supervisor Engine 32.
fabric buffer-reserve [high | low | medium | value]
Waarschuwing: gebruik deze opdracht alleen onder leiding van Cisco TAC.
Dit zijn algemene omstandigheden waarin deze opdracht nuttig is:
Het lijnprotocol wordt omlaag gebracht voor meerdere interfaces
Overschrijdingen worden op meerdere interfaces gezien
Poorten verlaten vaak EtherChannel en voegen zich daar bij
TestMacNotification test herhaaldelijk mislukt voor lijnkaarten met DFC
Hieronder is een voorbeeld van de output van het bevel van showbuffers:
Big buffers, 1524 bytes (total 1556, permanent 50): 52 in free list (5 min, 150 max allowed) 43670437 hits, 5134 misses, 0 trims, 1506 created 756 failures (0 no memory)
Deze output duidt op een bufferlek in de grote bufferpool. Er is een totaal van 1556 grote buffers in de router en slechts 52 zijn in de vrije lijst. Iets gebruikt alle buffers, en bevrijdt ze niet. Zie Bufferlekken oplossen voor meer informatie over bufferlekkage.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
14-Dec-2001 |
Eerste vrijgave |