Uitvoerschema waarborgt dat belangrijk verkeer niet wordt gedropt in het geval van zware overabonnement. Dit document beschrijft alle technieken en algoritmen die bij uitvoerschema's betrokken zijn op Cisco Catalyst 6500/6000 Series switches die Catalyst OS (CatOS) systeemsoftware uitvoeren. Dit document biedt ook een kort overzicht van de wachtrijcapaciteit van Catalyst 6500/6000 switches en hoe u de verschillende parameters van uitvoerschema's kunt configureren.
N.B.: Als u Cisco IOS®-software op uw Catalyst 6500/6000 gebruikt, raadpleeg dan QoS-uitvoerplanning op Catalyst 6500/6000 Series Switches die Cisco IOS-systeemsoftware uitvoeren voor meer informatie.
Er zijn geen specifieke vereisten van toepassing op dit document.
De voorbeelden in dit document zijn gemaakt van Catalyst 6000 met een Supervisor Engine 1a en een Policy functiekaart (PFC). Maar de voorbeelden zijn ook geldig voor Supervisor Engine 2 met een PFC2 of voor een Supervisor Engine 720 met een PFC3.
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u de potentiële impact van elke opdracht begrijpen.
Uitvoerdruppels worden veroorzaakt door een verstopte interface. Een gemeenschappelijke oorzaak van dit kan verkeer van een hoge bandbreedte verbinding zijn die naar een lagere bandbreedte verbinding of verkeer van meerdere inkomende verbindingen wordt geschakeld die naar één enkele uitgaande verbinding worden geschakeld.
Bijvoorbeeld, als een grote hoeveelheid bursty verkeer op een gigabit interface in komt en uitgeschakeld wordt naar een 100 Mbps interface, kan dit uitvoerdruppels aan toename op de 100 Mbps interface veroorzaken. Dit komt doordat de uitvoerwachtrij op die interface wordt overweldigd door het overtollige verkeer vanwege de snelheidswanverhouding tussen de inkomende en uitgaande bandbreedte. De verkeerssnelheid op de uitgaande interface kan niet alle pakketten accepteren die moeten worden verzonden.
De uiteindelijke oplossing voor dit probleem is het verhogen van de lijnsnelheid. Er zijn echter manieren om output druppels te voorkomen, te verminderen of te controleren als u de lijnsnelheid niet wilt verhogen. U kunt een daling van de uitvoer alleen voorkomen als de daling van de uitvoer een gevolg is van korte gegevensuitbarstingen. Als de afvoerdruppels worden veroorzaakt door een constante snelle stroom, kunt u de druppels niet voorkomen. Maar je kunt ze wel controleren.
Stapeldruppels zijn een basismechanisme om congestie te voorkomen. De val van de lijn behandelt al verkeer gelijk en maakt geen onderscheid tussen dienstklassen (CoS) wanneer de rijen tijdens perioden van congestie beginnen te vullen. Wanneer de uitvoerrij vol is en de munt in werking is, worden de pakketten geworpen totdat de congestie is geëlimineerd en de rij niet langer vol is. Taildruppels is het meest basale type van congestievermijding en houdt geen rekening met een QoS-parameter.
Catalyst 6000 heeft een geavanceerde versie van het vermijden van staartdruppels geïmplementeerd die alle pakketten met een bepaalde CoS laat vallen wanneer een bepaald percentage van de buffervulling wordt bereikt. Met gewogen staart-daling kunt u een reeks drempels definiëren en een CoS met elke drempel associëren. In het voorbeeld in dit deel zijn er vier mogelijke drempels. De definities van elke drempel zijn:
Drempel 1 wordt bereikt wanneer 50% van de buffer is gevuld. CoS 0 en 1 worden aan deze drempel toegewezen.
Drempel 2 wordt bereikt wanneer 60% van de buffer is gevuld. CoS 2 en 3 worden aan deze drempel toegewezen.
Drempel 3 wordt bereikt wanneer 80% van de buffer is gevuld. De CoS 4 en 5 worden aan deze drempel toegewezen.
Drempel 4 wordt bereikt wanneer 100 procent van de buffer is gevuld. De CoS 6 en 7 worden aan deze drempel toegewezen.
In het schema in afbeelding 1 worden alle pakketten met een CoS van 0 of 1 verwijderd als de buffer met 50 procent is gevuld. Alle pakketten met een CoS van 0, 1, 2, of 3 worden ingetrokken als de buffers 60 procent vol zijn. Pakketten met een CoS van 6 of 7 worden verbroken wanneer de buffers volledig zijn gevuld.
Figuur 1
Opmerking: Zodra de buffervulling onder een bepaalde drempel zakt, worden pakketten met de bijbehorende CoS niet langer verwijderd.
Gewogen willekeurige vroegtijdige detectie (WRED) is een mechanisme om congestie te voorkomen, dat pakketten willekeurig laat vallen met een bepaalde IP-voorrang wanneer de buffers een bepaalde vuldrempel bereiken. WRED is een combinatie van deze twee functies:
daling
Willekeurige vroegtijdige detectie (RED)
ROOD is geen precedent of CoS-bewust. RED gebruikt één van de enkele drempelwaarden wanneer de drempelwaarde voor de buffer vult. RED begint willekeurig pakketten te drogen (maar niet alle pakketten, zoals in de staartdruppel), totdat de maximale (max) drempel is bereikt. Nadat de max. drempelwaarde is bereikt, worden alle pakketten verzonden. De waarschijnlijkheid dat een pakje wordt gevallen neemt lineair toe met de toename van de buffervulling boven de drempel. In afbeelding 2 wordt de waarschijnlijkheid van de pakketdaling weergegeven:
Afbeelding 2 - Probability van Packet Discard
Opmerking: De mark-waarschijnlijkheid in dit schema is in ROOD afstembaar, wat betekent dat de helling van de lineaire druppelwaarschijnlijkheid aanpasbaar is.
RED en WRED zijn zeer nuttige congestievermijdingsmechanismen voor TCP-gebaseerd verkeer. Voor andere soorten verkeer is ROOD niet erg efficiënt. Dit komt doordat RED gebruik maakt van het raammechanisme dat TCP gebruikt om congestie te beheren. RED vermijdt de typische congestie die op een router plaatsvindt wanneer de meerdere TCP sessies door dezelfde routerpoort gaan. Het mechanisme wordt globale netwerksynchronisatie genoemd. In het schema in figuur 3 wordt aangegeven hoe ROOD een vloeiend effect heeft op de belasting:
Afbeelding 3 - RED voor congestievermijding
Voor meer informatie over hoe RED congestie kan verminderen en het verkeer door de router kan gladstrijken, raadpleeg de sectie Hoe de router met TCP interageert in het overzicht van de congestievermijding van het document.
WRED is vergelijkbaar met RED in die beide minimum (min) drempels definiëren en, wanneer die drempels worden bereikt, worden pakketten willekeurig geworpen. WRED definieert ook bepaalde max-drempels en, wanneer deze max-drempels worden bereikt, worden alle pakketten verzonden. WRED is ook CoS-bewust, wat betekent dat één of meer CoS-waarden worden toegevoegd aan elk min drempel/max drempelpaar. Wanneer de min-waarde wordt overschreden, worden de pakketten willekeurig gedropt met de CoS die wordt toegewezen. Neem dit voorbeeld met twee drempels in de rij:
CoS 0 en 1 worden toegewezen aan de minimale drempelwaarde 1 en aan de max. drempelwaarde 1. Min drempelwaarde 1 wordt ingesteld op 50 procent van de buffervulling en max drempelwaarde 1 wordt ingesteld op 80 procent.
CoS 2 en 3 worden toegewezen aan de min-drempel 2 en aan de max-drempel 2. Min-drempel 2 wordt ingesteld op 70 procent van de buffervulling en max-drempel 2 wordt ingesteld op 100 procent.
Zodra de buffer meer dan 1 minuten (50%) bedraagt, worden pakketten met CoS 0 en 1 willekeurig verdwenen. Meer pakketten worden verzonden als het buffergebruik toeneemt. Als de minimale drempelwaarde 2 (70 procent) wordt bereikt, worden pakketten met CoS 2 en 3 willekeurig naar beneden geworpen.
Opmerking: In dit stadium is de uitvalwaarschijnlijkheid voor pakketten met CoS 0 en 1 veel hoger dan de uitrolwaarschijnlijkheid voor pakketten met CoS 2 of CoS 3.
Wanneer max. drempelwaarde 2 wordt bereikt, worden pakketten met CoS 0 en 1 allemaal ingetrokken, terwijl pakketten met CoS 2 en 3 willekeurig worden verwijderd. Tenslotte worden, wanneer 100 procent is bereikt (max. drempelwaarde 2), alle pakketten met CoS 2 en 3 verwijderd.
De diagrammen in figuur 4 en figuur 5 illustreren een voorbeeld van deze drempels:
Afbeelding 4 - WRED met twee reeksen van Min-drempels en maximale drempels (twee services)Afbeelding 5 - WRED met twee reeksen services, maar beide mini-drempels gelijk aan 0
De vroege CatOS-implementatie van WRED stelde alleen de max-drempel in, terwijl de min-drempel moeilijk tot 0% werd gecodeerd. Het onderste deel van het schema in afbeelding 5 benadrukt het resulterende gedrag.
Opmerking: de vervolgkeuzemogelijkheid voor een pakje is altijd niet ongeldig, omdat deze waarschijnlijkheid altijd boven de minimale drempel ligt. Dit gedrag is gecorrigeerd in softwareversie 6.2 en later.
Weighted round-robin (WRR) is een ander mechanisme voor uitvoerschema op Catalyst 6000. WRR werkt tussen twee of meer wachtrijen. De wachtrijen voor WRR worden in een ronde band geleegd, en u kunt het gewicht voor elke rij configureren. Standaard hebben poorten twee WRR-wachtrijen op Catalyst 6000. De standaardinstelling is:
70% van de tijd besteden aan de prioriteitswachtrij voor WRR
Om de WRR-wachtrij met lage prioriteit 30% van de tijd te dienen
Het schema in Afbeelding 6 toont een WRR die drie rijen heeft die op een WRR-manier worden gediend. De rij met hoge prioriteit (rode pakketten) verzonden meer pakketten dan de twee andere rijen:
Afbeelding 6 - uitvoerplanning: WRR
Opmerking: de meeste van de 6500 lijnkaarten passen WRR per bandbreedte toe. Deze implementatie van WRR per bandbreedte betekent dat elke keer dat de planner een wachtrij voor het verzenden van pakketten toestaat, een bepaald aantal bytes mag worden verzonden. Dit aantal bytes kan meer dan één pakket weergeven. Als u bijvoorbeeld 5120 bytes in één bocht verzenden, kunt u drie pakketten met 1518 bytes verzenden. De teveel bytes zijn verloren (5120 - 4554 = 566 bytes). Daarom wordt met een of ander extreem gewicht (zoals 1 procent voor rij 1 en 99 procent voor rij 2) het exacte gewicht mogelijk niet bereikt. Dit verzuim om het exacte gewicht te bereiken is vaak het geval voor grotere verpakkingen.
Sommige nieuwe-generatie lijnkaarten, zoals de 6548-RJ-45, overwinnen deze beperking door de tenuitvoerlegging van een tekortgewogen round robin (DWRR). DWRR zendt vanuit de rijen toe maar verhongert niet de rij met lage prioriteit. DWRR houdt de rij met lage prioriteit bij die wordt uitgezonden en compenseert in de volgende ronde.
Een ander type wachtrij in Catalyst 6000, een rij met strikte prioriteit, wordt altijd eerst geleegd. Zodra er een pakje in de rij met strikte prioriteit is, wordt het pakje verzonden.
De WRR- of WRED-wachtrijen worden alleen gecontroleerd nadat de strikte prioriteitswachtrij is geleegd. Nadat elk pakje van of de WRR- of de WRED-wachtrij is verzonden, wordt de strikte prioriteitswachtrij waar nodig afgevinkt en geleegd.
Opmerking: Alle lijnkaarten met een wachtend type vergelijkbaar met 1p2q1t, 1p3q8t en 1p7q8t gebruik DWRR. Andere lijnkaarten gebruiken standaard WRR.
Als u niet zeker bent over de wachtrijen capaciteit van een haven, kunt u de show port mogelijkheden opdracht geven. Dit is de uitvoer van de opdracht op een WS-X6408-GBIC lijnkaart:
Model WS-X6408-GBIC Port 4/1 Type No GBIC Speed 1000 Duplex full Trunk encap type 802.1Q,ISL Trunk mode on,off,desirable,auto,nonegotiate Channe yes Broadcast suppression percentage(0-100) Flow control receive-(off,on,desired),send-(off,on,desired) Security yes MembershIP static,dynamic Fast start yes QOS scheduling rx-(1q4t),tx-(2q2t) CoS rewrite yes ToS rewrite DSCP UDLD yes SPAN source,destination COPS port group none
Deze poort heeft een type van het in de wachtrij plaatsen van uitvoer die 2q2t wordt genoemd.
Er zijn verschillende soorten wachtrijen beschikbaar op Catalyst 6500/6000 switches. De tabellen in deze sectie kunnen onvolledig worden naarmate nieuwe lijnkaarten worden vrijgegeven. Nieuwe lijnkaarten kunnen nieuwe wachtrijen combinaties introduceren. Voor een huidige beschrijving van alle wachtrijen die beschikbaar is voor Catalyst 6500/6000 switch modules, raadpleegt u het gedeelte QoS configureren voor uw CatOS-versie van Catalyst 6500 Series softwaredocumentatie.
Opmerking: Cisco CMM ondersteunt niet alle QoS-functies. Controleer de releaseopmerkingen voor uw specifieke softwarerelease om de functies te bepalen die worden ondersteund.
In deze tabel wordt de notatie van de QoS-architectuur van de poort uitgelegd:
TX1/RX2-ide | Wachtrijmelding | Aantal rijen | Prioritaire wachtrij | Aantal WRR-wachtrijen | Aantal en type drempel voor WRR-wachtrijen |
---|---|---|---|---|---|
TX | 2q2t | 2 | — | 2 | 2 Configureerbare staartdruppels |
TX | 1p2q2t | 3 | 1 | 2 | 2 configureerbare WRED |
TX | 1p3q1t | 4 | 1 | 3 | 1 configureerbare WRED |
TX | 1p2q1t | 3 | 1 | 2 | 1 configureerbare WRED |
RV | 1q4t | 1 | — | 1 | 4 Configureerbare staart |
RV | 1p1q4t | 2 | 1 | 1 | 4 Configureerbare staart |
RV | 1p1q0t | 2 | 1 | 1 | Niet configureerbaar |
RV | 1p1q8t | 2 | 1 | 1 | 8 configureerbare WRED |
1 Tx = verzenden.
2 Rx = ontvangen.
Deze tabel toont alle modules en de wachtrijtypen in de Rx- en Tx-kant van de interface of poort:
Module | RX-wachtrijen | TX-wachtrijen |
---|---|---|
WS-X6K-S2-PFC2 | 1p1q4t | 1p2q2t |
WS-X6K-SUP1A-2GE | 1p1q4t | 1p2q2t |
WS-X6K-SUP1-2 GE | 1q4t | 2q2t |
WS-X6501-10GEX4-software | 1p1q8t | 1p2q1t |
WS-X6502-10 GE switch | 1p1q8t | 1p2q1t |
WS-X6516-GBIC | 1p1q4t | 1p2q2t |
WS-X6516 GE-TX switch | 1p1q4t | 1p2q2t |
WS-X6416-GBIC | 1p1q4t | 1p2q2t |
WS-X6416 GE-M MT | 1p1q4t | 1p2q2t |
WS-X6316 GE-TX switch | 1p1q4t | 1p2q2t |
WS-X6408A-GBIC | 1p1q4t | 1p2q2t |
WS-X6408-GBIC | 1q4t | 2q2t |
WS-X6524-100 FX-M switch | 1p1q0t | 1p3q1t |
WS-X6324-100FX-SM | 1q4t | 2q2t |
WS-X6324-100FX-M switch | 1q4t | 2q2t |
WS-X6224-100FX-MT switch | 1q4t | 2q2t |
WS-X6548-RJ-21 | 1p1q0t | 1p3q1t |
WS-X6548-RJ-45 | 1p1q0t | 1p3q1t |
WS-X6348-RJ-21 | 1q4t | 2q2t |
WS-X6348-RJ21V-Z switch | 1q4t | 2q2t |
WS-X6348-RJ-45 | 1q4t | 2q2t |
WS-X6348-RJ-45V switch | 1q4t | 2q2t |
WS-X6148-RJ-45V | 1q4t | 2q2t |
WS-X6148-RJ21V-D switch | 1q4t | 2q2t |
WS-X6248-RJ-45 | 1q4t | 2q2t |
WS-X6248A-TEL | 1q4t | 2q2t |
WS-X6248-TEL | 1q4t | 2q2t |
WS-X6024-10FL-MT | 1q4t | 2q2t |
Drie velden in Catalyst 6500/6000 worden gebruikt om QoS te maken:
Het IP-voorrang-de eerste drie bits van het veld Type of Service (ToS) in de IP-header
Het gedifferentieerde servicescoderingspunt (DSCP) - de eerste zes bits van het ToS-veld in de IP-header
CoS—de drie bits die op Layer 2 (L2) niveau worden gebruikt
Deze drie bits maken deel uit van de Inter-Switch Link (ISL)-header of bevinden zich in de IEEE 802.1Q-tag (dot1q). Er is geen CoS in een niet gelabeld Ethernet-pakket.
Wanneer een frame uit de gegevensbus wordt verzonden om te worden verzonden, is CoS van het pakket de enige parameter die wordt overwogen. Het pakket gaat dan door een planner, die de rij kiest waarin het pakket wordt gezet. Denk er daarom aan dat uitvoerschema's en alle mechanismen waarover dit document het heeft, alleen CoS-bewust zijn.
Catalyst 6500/6000 met een functiekaart voor meerlaagse Switch (MSFC) gebruikt een interne DSCP om het pakket te classificeren. Catalyst 6500/6000 dat met QoS enabled is ingesteld, wijst een DSCP-waarde toe wanneer de verzendingsbeslissing op PFC-niveau wordt genomen. Deze DSCP wordt aan elk pakje toegewezen, dat ook niet-IP-pakketten bevat, en wordt in kaart gebracht aan de CoS om uitvoerplanning mogelijk te maken. U kunt de mapping van DSCP naar CoS-waarden configureren op Catalyst 6500/6000. Als u de standaardwaarde verlaat, kunt u de CoS afgeleid uit de DSCP. De formule is:
DSCP_value / 8
Daarnaast wordt de DSCP-waarde in kaart gebracht in de CoS van het uitgaande pakket, als het pakket een IP-pakket is dat door ISL of punt1q (niet-inheems VLAN) is gelabeld. De DSCP-waarde wordt ook geschreven in het ToS-veld van de IP-header.
Het schema in afbeelding 7 toont een 1p2q2t wachtrij. De WRR rijen worden geleegd met het gebruik van de planner van de WRR. Er is ook een 'arbiter' die tussen elk pakket controleert vanuit de WRR-wachtrijen om te bepalen of er iets in de strikte prioriteitswachtrij staat.
Figuur 7
Het veld ToS wordt opnieuw geschreven in de IP-kop en het veld 802.1p/ISL CoS.
De planningsrij en de drempel worden geselecteerd op basis van de CoS, door middel van een configureerbare kaart.
Elke rij heeft configureerbare grootte en drempels, en sommige rijen hebben WRED.
Wachtrij gebruikt WRR tussen twee wachtrijen.
Uitgaande insluiting kan zijn: dot1q, ISL, of geen.
Deze sectie verschaft voorbeelduitvoer van de standaard QoS-configuratie op een Catalyst 6500/6000, naast informatie over wat deze waarden betekenen en hoe u de waarden kunt instellen.
QoS is standaard uitgeschakeld als u deze opdracht geeft:
set qos disable
De opdrachten in deze lijst tonen de standaardtoewijzing voor elke CoS in een 2q2t poort. Wachtrij 1 heeft CoS 0 en 1 toegewezen aan de eerste drempel en heeft CoS 2 en 3 toegewezen aan de tweede drempel. Wachtrij 2 heeft CoS 4 en 5 toegewezen aan de eerste drempel en heeft CoS 6 en 7 toegewezen aan de tweede drempel:
set qos map 2q2t tx 1 1 cos 0 set qos map 2q2t tx 1 1 cos 1 set qos map 2q2t tx 1 2 cos 2 set qos map 2q2t tx 1 2 cos 3 set qos map 2q2t tx 2 1 cos 4 set qos map 2q2t tx 2 1 cos 5 set qos map 2q2t tx 2 2 cos 6 set qos map 2q2t tx 2 2 cos 7
Deze opdrachten geven voor elke wachtrij het drempelniveau standaard weer op een 2q2t-poort:
set qos drop-threshold 2q2t tx queue 1 80 100 set qos drop-threshold 2q2t tx queue 2 80 100
U kunt het standaardgewicht toewijzen aan elk van de WRR-wachtrijen. Geef deze opdracht uit om de standaardgewichten voor rij 1 en rij 2 toe te wijzen:
Opmerking: de rij met lage prioriteit heeft 5/260 procent van de tijd en de rij met hoge prioriteit wordt bediend 255/260 procent van de tijd.
set qos wrr 2q2t 5 255
De totale beschikbaarheid van de buffer wordt verdeeld tussen de twee wachtrijen. De rij met lage prioriteit wordt correct toegewezen aan 80% van de buffers die beschikbaar zijn omdat dit de rij is die waarschijnlijk pakketten gebufferd en zit voor een tijdje. Geef deze opdracht uit om de beschikbaarheid te definiëren:
set qos txq-ratio 2q2t 80 20
U kunt vergelijkbare instellingen voor de 1p2q2t-poort in deze configuratie bekijken:
set qos map 1p2q2t tx 1 1 cos 0 set qos map 1p2q2t tx 1 1 cos 1 set qos map 1p2q2t tx 1 2 cos 2 set qos map 1p2q2t tx 1 2 cos 3 set qos map 1p2q2t tx 2 1 cos 4 set qos map 1p2q2t tx 3 1 cos 5 set qos map 1p2q2t tx 2 1 cos 6 set qos map 1p2q2t tx 2 2 cos 7 set qos wrr 1p2q2t 5 255 set qos txq-ratio 1p2q2t 70 15 15 set qos wred 1p2q2t tx queue 1 80 100 set qos wred 1p2q2t tx queue 2 80 100
Opmerking: Standaard wordt CoS 5 (spraakverkeer) toegewezen aan de rij met strikte prioriteit.
De eerste configuratiestap is QoS mogelijk te maken. Onthoud dat QoS standaard uitgeschakeld is. Als QoS is uitgeschakeld, is de CoS-mapping irrelevant. Er is één rij die als FIFO wordt gediend en alle pakketten worden daar laten vallen.
bratan> (enable) set qos enable QoS is enabled bratan> (enable) show qos status QoS is enabled on this switch
De CoS-waarde moet aan de wachtrij of drempel voor alle wachtrijtypen worden toegewezen. De mapping die wordt gedefinieerd voor een 2q2t-type poort wordt niet toegepast op een 1p2q2t-poort. Bovendien wordt de mapping die wordt gemaakt voor 2q2t toegepast op alle poorten die een 2q2t wachtend mechanisme hebben. Deze opdracht geven:
set qos map queue_type tx Q_number threshold_number cos value
Opmerking: Queues zijn altijd genummerd om te beginnen met de laagst mogelijke prioriteitswachtrij en te eindigen met de strikte prioriteitswachtrij die beschikbaar is. Hierna volgt een voorbeeld:
Wachtrij 1 is de WRR-wachtrij met lage prioriteit
Wachtrij 2 is de WRR-wachtrij met hoge prioriteit
Wachtrij 3 is de strikte prioritaire wachtrij
U moet deze handeling voor alle soorten wachtrijen herhalen. Anders behoudt u de standaard CoS-toewijzing. Hier is een voorbeeld voor 1p2q2t:
set qos map 1p2q2t tx 1 1 cos 0 !--- This is the low-priority WRR queue threshold 1, CoS 0 and 1. set qos map 1p2q2t tx 1 1 cos 1 and 1 set qos map 1p2q2t tx 1 2 cos 2 !--- This is the low-priority WRR queue threshold 2, CoS 2 and 3. set qos map 1p2q2t tx 1 2 cos 3 and 3 set qos map 1p2q2t tx 2 1 cos 4 !--- This is the high-priority WRR queue threshold 1, CoS 4. set qos map 1p2q2t tx 3 1 cos 5 !--- This is the strict priority queue, CoS 5. set qos map 1p2q2t tx 2 1 cos 6 !--- This is the high-priority WRR queue threshold 2, CoS 6. set qos map 1p2q2t tx 2 2 cos 7 and 7
tamer (enable) set qos map 1p2q2t tx 1 1 cos 0 QoS tx priority queue and threshold mapped to cos successfully
U dient het WRR-gewicht te configureren voor de twee WRR-wachtrijen. Deze opdracht geven:
set qos wrr Q_type weight_1 weight_2
Weight_1 heeft betrekking op rij 1, wat de WRR-wachtrij met lage prioriteit zou moeten zijn. Gewicht_1 moet altijd lager zijn dan weight_2. Het gewicht kan elke waarde tussen 1 en 255 nemen. U kunt het percentage toewijzen met deze formules:
Wachtrij 1:
weight_1 / (weight_1 + weight_2)
Wachtrij 2:
weight_2 / (weight_1 + weight_2)
U moet ook het gewicht voor de verschillende soorten wachtrijen definiëren. Het gewicht hoeft niet hetzelfde te zijn. Bijvoorbeeld, voor 2q2t, waar rij 1 wordt bediend 30% van de tijd en rij 2 70% van de tijd wordt bediend, kan je deze opdracht uitgeven om het gewicht te definiëren:
set qos wrr 2q2t 30 70 !--- This ensures that the high-priority WRR queue is served 70 percent of the time !--- and that the low-priority WRR queue is served 30 percent of the time.
tamer (enable) set qos wrr 2q2t 30 70 QoS wrr ratio is set successfully
U moet ook de opgegeven wachtrijratio definiëren, die verwijst naar de manier waarop de buffers tussen de verschillende wachtrijen worden verdeeld. Deze opdracht geven:
set qos txq-ratio port_type queuel_val queue2_val ... queueN_val
Opmerking: Als u drie wachtrijen hebt (1p2q2t), moet u de WRR-wachtrij met hoge prioriteit en de wachtrij met strikte prioriteit om hardwareredenen op hetzelfde niveau instellen.
set qos txq-ratio 1p2q2t 70 15 15 !--- This gives 70 percent of the buffer of all 1p2q2t ports to the low-priority WRR !--- queue and gives 15 percent to each of the other two queues. set qos txq-ratio 2q2t 80 20 !--- This gives 80 percent of the buffer to the low-priority queue, !--- and gives 20 percent of the buffer to the high-priority queue.
tamer (enable) set qos txq-ratio 1p2q2t 70 15 20 Queue ratio values must be in range of 1-99 and add up to 100 Example: set qos txq-ratio 2q2t 20 80 tamer (enable) set qos txq-ratio 1p2q2t 70 30 30 Queue ratio values must be in range of 1-99 and add up to 100 Example: set qos txq-ratio 2q2t 20 80 tamer (enable) set qos txq-ratio 1p2q2t 80 10 10 QoS txq-ratio is set successfully
Zoals deze console-uitvoer illustreert, moet de som van de wachtrijwaarden 100 zijn. Laat het grootste deel van de buffers voor de WRR-wachtrij met lage prioriteit achter omdat deze wachtrij de meeste buffers nodig heeft. De andere rijen worden bediend met een hogere prioriteit.
De laatste stap is het instellen van het drempelniveau voor de WRED-wachtrij of voor de wachtrij voor staart. Geef deze opdrachten uit:
set qos wred port_type [tx] queue q_num thr1 thr2 ... thrn set qos drop-threshold port_type tx queue q_num thr1 ... thr2
set qos drop-threshold 2q2t tx queue 1 50 80 !--- For low-priority queues in the 2q2t port, the first threshold is defined at 50 !--- percent and the second threshold is defined at 80 percent of buffer filling. set qos drop-threshold 2q2t tx queue 2 40 80 !--- For high-priority queues in the 2q2t port, the first threshold is defined at 40 !--- percent and the second threshold is defined at 80 percent of buffer filling. set qos wred 1p2q2t tx queue 1 50 90 !--- The commands for the 1p2q2t port are identical. set qos wred 1p2q2t tx queue 2 40 80
tamer (enable) set qos drop-threshold 2q2t tx queue 1 50 80 Transmit drop thresholds for queue 1 set at 50% 80% tamer (enable) set qos drop-threshold 2q2t tx queue 2 40 80 Transmit drop thresholds for queue 2 set at 40% 80% tamer (enable) set qos wred 1p2q2t tx queue 1 50 90 WRED thresholds for queue 1 set to 50 and 90 on all WRED-capable 1p2q2t ports tamer (enable) set qos wred 1p2q2t tx queue 2 40 80 WRED thresholds for queue 2 set to 40 and 80 on all WRED-capable 1p2q2t ports
De ingestelde qos werkt in combinatie met de CoS voor drempelomzetting in 1p2q2t-wachtrij 2 40 80. Bijvoorbeeld, wanneer u de opdrachten in de onderstaande lijst uitgeeft, verzekert u dat—op de 1p2q2t poort in de verzendrichting—pakketten met CoS 0,1, 2, en 3 in de eerste rij (de lage WRR rij) worden verzonden. Als de buffers in die rij 50 procent vol zijn, laat WRED pakketten met CoS 0 en 1 vallen. Pakketten met CoS 2 en 3 worden alleen gevallen als de buffers in de rij 90 procent vol zijn.
set qos map 1p2q2t tx 1 1 cos 0 set qos map 1p2q2t tx 1 1 cos 1 set qos map 1p2q2t tx 1 2 cos 2 set qos map 1p2q2t tx 1 2 cos 3 set qos wred 1p2q2t tx queue 1 50 90
Een simpele opdracht om te gebruiken om de huidige run configuratie voor de uitvoer planning van een poort te controleren is show qos info mod/poort. De opdracht geeft deze informatie weer:
Het type wachtrijen op de poort
Het in kaart brengen van CoS aan de verschillende wachtrijen en drempels
De bufferverdeling
Het WRR-gewicht
In dit voorbeeld zijn de waarden bij 20% WRR voor rij 1 en 80% WRR voor rij 2:
tamer (enable) show qos info runtime 1/1 Run time setting of QoS: QoS is enabled Policy Source of port 1/1: Local Tx port type of port 1/1 : 1p2q2t Rx port type of port 1/1 : 1p1q4t Interface type: port-based ACL attached: The qos trust type is set to untrusted Default CoS = 0 Queue and Threshold Mapping for 1p2q2t (tx): Queue Threshold CoS ----- --------- ------- 1 1 0 1 1 2 2 3 2 1 4 6 2 2 7 3 1 5 Queue and Threshold Mapping for 1p1q4t (rx): All packets are mapped to a single queue Rx drop thresholds: Rx drop thresholds are disabled Tx drop thresholds: Tx drop-thresholds feature is not supported for this port type Tx WRED thresholds: Queue # Thresholds - percentage (* abs values) ------- ------------------------------------------ 1 80% (249088 bytes) 100% (311168 bytes) 2 80% (52480 bytes) 100% (61440 bytes) Queue Sizes: Queue # Sizes - percentage (* abs values) ------- ------------------------------------- 1 70% (311296 bytes) 2 15% (65536 bytes) 3 15% (65536 bytes) WRR Configuration of ports with speed 1000Mbps: Queue # Ratios (* abs values) ------- ------------------------------------- 1 20 (5120 bytes) 2 80 (20480 bytes) (*) Runtime information may differ from user configured setting due to hardware granularity. tamer (enable)
In het volgende voorbeeld, merk op dat de WRR-gewichten niet de standaardwaarde van 1 zijn. De gewichten zijn ingesteld op de waarden van 20 voor rij 1 en 80 voor rij 2. Dit voorbeeld gebruikt een verkeersgenerator om 2 Gb van verkeer naar een Catalyst 6000 te sturen. Deze 2 Gb van verkeer moet via poort 1/1 worden verzonden. Omdat poort 1/1 wordt oversubscript, worden veel pakketten verzonden (1 Gbps). De opdracht Show mac toont aan dat er een veel output daling is:
tamer (enable) show mac 1/1 Port Rcv-Unicast Rcv-Multicast Rcv-Broadcast -------- -------------------- -------------------- -------------------- 1/1 0 1239 0 Port Xmit-Unicast Xmit-Multicast Xmit-Broadcast -------- -------------------- -------------------- -------------------- 1/1 73193601 421 0 Port Rcv-Octet Xmit-Octet -------- -------------------- -------------------- 1/1 761993 100650803690 MAC Dely-Exced MTU-Exced In-Discard Out-Discard -------- -------------- ---------------- --------------- ----------------- 1/1 0 - 0 120065264 Last-Time-Cleared -------------------------- Fri Jan 12 2001, 17:37:43
Neem de pakketten die worden gedropt. Zo wordt het voorgestelde verkeerspatroon verdeeld:
1 GbE verkeer met IP voorrang 0
250 Mb van verkeer met IP voorrang 4
250 Mb van verkeer met IP voorrang 5
250 Mb van verkeer met IP voorrang 6
250 Mb van verkeer met IP voorrang 7
Volgens CoS mapping wordt dit verkeer verzonden:
1 Gbps verkeer in de rij 1 drempel 1
0 Mb van verkeer naar rij 1 drempel 2
500 Mb van verkeer naar rij 2 drempel 1
250 Mb van verkeer naar rij 2 drempel 2
250 MB aan verkeer naar rij 3 (rij met strikte prioriteit)
De switch moet het ontvangen verkeer vertrouwen zodat het inkomende IP-voorrang in de switch bewaard blijft en gebruikt wordt om in kaart te brengen naar de CoS-waarde voor uitvoerschema.
Opmerking: de standaard IP voorrang op CoS mapping is IP-voorrang gelijk aan CoS.
Geef de opdracht show qos stat 1/1 uit om de geworpen pakketten en het geschatte percentage te zien:
Op dit punt worden geen pakketten in rij 3 (CoS 5) gelaten.
91.85 procent van de pakketten zijn CoS 0 pakketten in rij 1.
8 procent van de geworpen pakketten zijn CoS 4 en 6 in rij 2, drempel 1.
0,15 procent van de gedode pakketten zijn CoS 7 in rij 2, drempel 2.
Deze uitvoer illustreert het gebruik van de opdracht:
tamer (enable) show qos stat 1/1 Tx port type of port 1/1 : 1p2q2t Q3T1 statistics are covered by Q2T2. Q # Threshold #:Packets dropped --- ------------------------------- 1 1:110249298 pkts, 2:0 pkts 2 1:9752805 pkts, 2:297134 pkts 3 1:0 pkts Rx port type of port 1/1 : 1p1q4t Rx drop threshold counters are disabled for untrusted ports Q # Threshold #:Packets dropped --- --------------------------------- 1 1:0 pkts, 2:0 pkts, 3:0 pkts, 4:0 pkts 2 1:0 pkts
Als u het WRR-gewicht terugbrengt naar de standaardwaarde nadat de tellers zijn gewist, komt slechts 1 procent van de geworpen pakketten voor in rij 2 in plaats van de 8 procent die eerder verschenen:
Opmerking: De standaardwaarde is 5 voor rij 1 en 255 voor rij 2.
tamer (enable) show qos stat 1/1 TX port type of port 1/1 : 1p2q2t Q3T1 statistics are covered by Q2T2 Q # Threshold #:Packets dropped --- ---------------------------------- 1 1:2733942 pkts, 2:0 pkts 2 1:28890 pkts, 2:6503 pkts 3 1:0 pkts Rx port type of port 1/1 : 1p1q4t Rx drop threshold counters are disabled for untrusted ports Q # Threshold #:Packets dropped --- ------------------------------------ 1 1:0 pkts, 2:0 pkts, 3:0 pkts, 4:0 pkts 2 1:0 pkts
Het voorbeeld in de sectie Monitor Output Scheduling en verify de Configuration demonstreert het voordeel van de implementatie van uitvoerschema's, die een druppel VoIP of missie-kritiek verkeer in het geval van overabonnement op de uitvoerpoort voorkomt. Overabonnement gebeurt zelden in een normaal netwerk, vooral op een Gigabit-link. Gewoonlijk vindt overabonnement slechts plaats tijdens piekuren of tijdens drusten in een zeer korte periode.
Zelfs zonder enige overabonnement kan uitvoerschema's van grote hulp zijn in een netwerk waar QoS van eind tot eind wordt geïmplementeerd. Uitvoerschema's helpt de vertraging en scherpte te verminderen. Dit gedeelte geeft voorbeelden van de manier waarop uitvoerschema's vertraging en jitter kunnen helpen verminderen.
De vertraging van een pakket wordt verhoogd met de tijd "verloren" in de buffer van elke switch tijdens het wachten op transmissie. Een klein spraakpakket met een CoS van 5 wordt bijvoorbeeld tijdens een grote back-up of bestandsoverdracht via een poort verzonden. Als u geen QoS voor de uitvoerpoort hebt en als u ervan uitgaat dat het kleine spraakpakket na 10 grote pakketten met 1500 bytes wordt gewachtrij staat, kunt u eenvoudig de Gigabit-snelheid berekenen die nodig is om de 10 grote pakketten te verzenden:
(10 × 1500 × 8) = 120,000 bits that are transmitted in 120 microseconds
Als dit pakket acht of negen switches moet overschrijden terwijl het door het netwerk passeert, kan een vertraging van ongeveer 1 ms resulteren. Dit bedrag telt alleen vertragingen in de uitvoerwachtrij van de switch die in het netwerk wordt overschreden.
Opmerking: Als u dezelfde 10 grote pakketten op een 10 Mbps interface in een rij moet zetten (bijvoorbeeld met een IP-telefoon en een PC aangesloten), is de vertraging die wordt geïntroduceerd:
(10 × 1500 × 8) = 120,000 bits that are transmitted in 12 ms
Uitvoerplanningsimplementatie zorgt ervoor dat spraakpakketten met een CoS van 5 in de strikte prioriteitswachtrij worden geplaatst. Deze plaatsingen verzekeren dat deze pakketten vóór om het even welke pakketten met een CoS van minder dan 5 worden verzonden, die de vertragingen verminderen.
Een ander belangrijk voordeel van de uitvoering van de uitvoerschema's is dat het de jitter vermindert. Jitter is de variatie in vertraging die voor pakketten binnen dezelfde stroom wordt waargenomen. Het diagram in figuur 8 toont een voorbeeldscenario van hoe uitvoerplanning jitter kan verminderen:
Figuur 8
In dit scenario zijn er twee stromen die één uitvoerpoort moet verzenden:
Eén spraakstroom die op een 10 Mbps Ethernet-poort wordt ontvangen
Eén FTP-stream die binnenkomt op een 1 Gbps Ethernet-uplinks
Beide stromen verlaten de switch door dezelfde uitvoerpoort. Dit voorbeeld toont wat kan gebeuren zonder het gebruik van uitvoerschema. Alle grote gegevenspakketten kunnen tussen twee spraakpakketten worden uitgewisseld, waardoor een jitter wordt gecreëerd in de ontvangst van het spraakpakket uit dezelfde stream. Er is een grotere vertraging tussen de ontvangst van pakketreizen en pakketten die n+1 bevatten, doordat de switch het grote gegevenspakket doorgeeft. De vertraging tussen n+1 en n+2 is echter verwaarloosbaar. Dit resulteert in jitter in de stroom van het spraakverkeer. U kunt dit probleem eenvoudig vermijden door gebruik te maken van een strikte prioriteitenrij. Zorg ervoor dat de CoS-waarde van de spraakpakketten in kaart is gebracht in de strikte prioriteitswachtrij.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
13-Apr-2007 |
Eerste vrijgave |