Ethernet flödeskontroll - Ethernet flow control

Image
Wireshark -skärmdump av en Ethernet -pausram

Ethernet flödeskontroll är en mekanism för att temporärt stoppa överföringen av uppgifter om Ethernet familjen datornätverk . Målet med denna mekanism är att undvika paketförlust i närvaro av överbelastning av nätverket .

Den första flödeskontrollmekanismen, pausramen , definierades av IEEE 802.3x -standarden. Den uppföljningsprioritetsbaserade flödeskontrollen , enligt definitionen i IEEE 802.1Qbb- standarden, tillhandahåller en flödeskontrollmekanism på länkenivå som kan styras oberoende för varje tjänsteklass (CoS), enligt definitionen av IEEE P802.1p och är tillämpliga på nätverk för datacenterbryggning (DCB), och för att möjliggöra prioritering av röst över IP (VoIP), video över IP, och databassynkroniseringstrafik över standard datatrafik och bulkfilöverföringar.

Beskrivning

En sändarstation (dator eller nätverksomkopplare ) kan överföra data snabbare än den andra änden av länken kan acceptera den. Med hjälp av flödeskontroll kan mottagningsstationen signalera avsändaren som begär avstängning av sändningar tills mottagaren kommer ikapp. Flödeskontroll på Ethernet kan implementeras på datalänkskiktet .

Den första flödeskontrollmekanismen, pausramen , definierades av Institute of Electrical and Electronics Engineers (IEEE) arbetsgrupp som definierade full duplex Ethernet -länksegment. IEEE -standarden 802.3x utfärdades 1997.

Pausa ramen

En överväldigad nätverksnod kan skicka en pausram, som stoppar överföringen av avsändaren under en viss tidsperiod. Ett mediaåtkomststyr (MAC) ram ( EtherType 0x8808) används för att bära pauskommandot, med Styr opcode uppsättningen till 0x0001 ( hexadecimalt ). Endast stationer som är konfigurerade för full duplex kan skicka PAUS-ramar. När en station önskar pausa den andra änden av en länk, sänder den en paus ram till antingen den unika 48- bitars destinationsadressen för denna länk eller till den 48-bitars reserverade multicast-adress av 01-80-C2-00-00- 01 . Användningen av en välkänd adress gör det onödigt för en station att upptäcka och lagra adressen till stationen i andra änden av länken.

En annan fördel med att använda denna multicast -adress härrör från användningen av flödeskontroll mellan nätverksomkopplare. Den specifika multicast -adress som används väljs från ett adressintervall som har reserverats av IEEE 802.1D -standarden som specificerar driften av switchar som används för överbryggning . Normalt vidarebefordras en ram med en multicast -destination som skickas till en switch till alla andra switchar. Detta intervall av multicast-adress är dock speciellt och kommer inte att vidarebefordras av en 802.1D-kompatibel switch. I stället förstås ramar som skickas till detta område som ramar som är avsedda att ageras endast inom omkopplaren.

En paus ram inkluderar perioden paustid som begärs, i form av en två- bitgrupp (16-bitars), unsigned heltal (0 genom 65535). Detta nummer är den begärda längden på pausen. Pausstiden mäts i enheter med paus "quanta", där varje enhet är lika med 512 bit gånger .

År 1999 stödde flera leverantörer att ta emot pausramar, men färre implementerade att skicka dem.

Frågor

En ursprunglig motivation för pausramen var att hantera nätverksgränssnittskontroller (NIC) som inte hade tillräckligt med buffert för att hantera fullhastighetsmottagning. Detta problem är inte lika vanligt med framsteg i busshastigheter och minnesstorlekar. Ett mer troligt scenario är överbelastning av nätverk inom en switch. Till exempel kan ett flöde komma in i en switch på en högre hastighetslänk än den som den går ut, eller flera flöden kan komma in över två eller flera länkar som totalt är mer än en utgångslänks bandbredd. Dessa kommer så småningom att ta ut hur mycket buffert som helst i omkopplaren. Om du blockerar sändlänken kommer dock alla flöden över den länken att försenas, även de som inte orsakar överbelastning. Denna situation är ett head-of-line blocking (HOL), och kan hända oftare i centrala nätväxlar på grund av att det stora antalet flöden generellt aggregeras. Många switchar använder en teknik som kallas virtuella utmatningsköer för att eliminera HOL -blockeringen internt, så kommer aldrig att skicka pausramar.

Efterföljande insatser

Trängselhantering

Ytterligare en insats började i mars 2004, och i maj 2004 blev det IEEE P802.3ar Task Force Management Task Force. I maj 2006 reviderades arbetsgruppens mål för att specificera en mekanism för att begränsa den överförda datahastigheten till cirka 1% granularitet. Begäran drogs tillbaka och arbetsgruppen upplöstes 2008.

Prioriterad flödeskontroll

Ethernetflödeskontroll stör Ethernet -tjänsteklassen (definierad i IEEE 802.1p ), eftersom data från alla prioriteringar stoppas för att rensa befintliga buffertar som också kan bestå av data med låg prioritet. Som en lösning på detta problem definierade Cisco Systems sin egen prioritetsflödesstyrning till standardprotokollet. Denna mekanism använder 14 byte av 42-bytes vaddering i en vanlig pausram. MAC -kontrollens opcode för en prioritetspausram är 0x0101. Till skillnad från den ursprungliga pausen indikerar prioritetspaus paustiden i quanta för var och en av åtta prioritetsklasser separat. Tillägget standardiserades därefter av det Priority-based Flow Control (PFC) -projekt som godkändes den 27 mars 2008 som IEEE 802.1Qbb. Utkast 2.3 föreslogs den 7 juni 2010. Claudio DeSanti från Cisco var redaktör. Insatsen var en del av den datacenter överbryggande arbetsgruppen, som utvecklade Fibre Channel över Ethernet .

Se även

Referenser

externa länkar