Ethernet flytkontroll - Ethernet flow control

Image
Wireshark -skjermbilde av en Ethernet "Pause" -ramme

Ethernet flytkontroll er en mekanisme for midlertidig å stoppe overføring av data på Ethernet -familiens datanettverk . Målet med denne mekanismen er å unngå tap av pakker i nærvær av nettverkstopp .

Den første strømningsstyringsmekanisme, den pause ramme , ble definert av IEEE 802.3x standard. Den videre prioriteringsbaserte strømningskontrollen , som definert i IEEE 802.1Qbb- standarden, gir en strømningsstyringsmekanisme på koblingsnivå som kan styres uavhengig for hver tjenesteklasse (CoS), som definert av IEEE P802.1p og er gjeldende for datasenterbro (DCB) nettverk, og for å tillate prioritering av tale over IP (VoIP), video over IP og databasesynkroniseringstrafikk over standard datatrafikk og massefiloverføringer.

Beskrivelse

En sendestasjon (datamaskin eller nettverksbryter ) kan sende data raskere enn den andre enden av koblingen kan godta. Ved hjelp av strømningskontroll kan mottaksstasjonen signalisere avsenderen som ber om å suspendere overføringer til mottakeren kommer igjen. Flytkontroll på Ethernet kan implementeres på datalinklaget .

Den første flytkontrollmekanismen, pauserammen , ble definert av Institute of Electrical and Electronics Engineers (IEEE) arbeidsgruppe som definerte full dupleks Ethernet -lenksegmenter. IEEE -standarden 802.3x ble utgitt i 1997.

Sett rammen på pause

En overveldet nettverksnode kan sende en pauseramme, som stopper overføringen av avsenderen i en bestemt periode. En medieaksesskontroll (MAC) ramme ( EtherType 0x8808) brukes til å bære pausekommando, med kontroll opkode satt til 0x0001 ( heksadesimalt ). Bare stasjoner som er konfigurert for full dupleksoperasjon, kan sende PAUSE-rammer. Når en stasjon ønsker å sette den andre enden på en kobling på pause, sender den en pauseamme til enten den unike 48- biters destinasjonsadressen til denne lenken eller til den 48-biters reserverte multicast-adressen til 01-80-C2-00-00- 01 . Bruken av en velkjent adresse gjør det unødvendig for en stasjon å oppdage og lagre adressen til stasjonen i den andre enden av lenken.

En annen fordel ved å bruke denne multicast -adressen oppstår ved bruk av strømningskontroll mellom nettverkssvitsjer. Den bestemte multicast -adressen som brukes, velges fra et adresseområde som er reservert av IEEE 802.1D -standarden, som spesifiserer driften av brytere som brukes til å bygge bro . Normalt vil en ramme med en multicast -destinasjon sendt til en switch videresendes til alle andre porter på switchen. Denne serien med multicast-adresser er imidlertid spesiell og vil ikke bli videresendt av en 802.1D-kompatibel bryter. I stedet forstås rammer som sendes til dette området som rammer som er ment å bli handlet bare i bryteren.

En pauseramme inkluderer den pausetiden som blir forespurt, i form av et to- byte (16-bits), usignert heltall (0 til 65535). Dette nummeret er ønsket lengde på pausen. Pausetiden måles i enheter med pause "quanta", hvor hver enhet er lik 512 bit ganger .

I 1999 støttet flere leverandører å motta pauserammer, men færre implementerte å sende dem.

Problemer

En original motivasjon for pauserammen var å håndtere nettverksgrensesnittkontrollere (NIC) som ikke hadde nok buffering til å håndtere mottak i full hastighet. Dette problemet er ikke like vanlig med fremskritt i busshastigheter og minnestørrelser. Et mer sannsynlig scenario er nettverkstrengsel i en svitsj. For eksempel kan en strøm komme inn i en bryter på en kobling med høyere hastighet enn den den går ut, eller flere strømmer kan komme inn over to eller flere koblinger som totalt utgjør mer enn en utgående lenks båndbredde. Disse vil til slutt tømme enhver mengde buffer i bryteren. Blokkering av sendelinken vil imidlertid føre til at alle strømmer over denne koblingen blir forsinket, selv de som ikke forårsaker overbelastning. Denne situasjonen er et head-of-line-blokkering (HOL), og kan skje oftere i sentrale nettverksbrytere på grunn av at det store antallet strømmer generelt blir samlet. Mange brytere bruker en teknikk som kalles virtuelle utgangskøer for å eliminere HOL -blokkeringen internt, så vil aldri sende pauserammer.

Senere innsats

Overbelastningshåndtering

En annen innsats begynte i mars 2004, og i mai 2004 ble den IEEE P802.3ar Task Force Management Congestion Management Task Force. I mai 2006 ble målene for arbeidsgruppen revidert for å spesifisere en mekanisme for å begrense den overførte datahastigheten til omtrent 1% granularitet. Forespørselen ble trukket tilbake og arbeidsgruppen ble oppløst i 2008.

Prioritert flytkontroll

Ethernet flytkontroll forstyrrer Ethernet -tjenesteklassen (definert i IEEE 802.1p ), ettersom dataene fra alle prioriteringer stoppes for å slette de eksisterende bufferne, som også kan bestå av data med lav prioritet. Som en løsning på dette problemet definerte Cisco Systems sin egen prioritet for flytkontrollkontroll til standardprotokollen. Denne mekanismen bruker 14 byte av 42-bytes polstring i en vanlig pause-ramme. MAC -kontrollkoden for en prioritetspauseramme er 0x0101. I motsetning til den opprinnelige pausen, indikerer Prioritetspause pausetiden i quanta for hver av åtte prioritetsklasser separat. Utvidelsen ble deretter standardisert av Priority-based Flow Control (PFC) -prosjektet som ble godkjent 27. mars 2008, som IEEE 802.1Qbb. Utkast 2.3 ble foreslått 7. juni 2010. Claudio DeSanti fra Cisco var redaktør. Innsatsen var en del av datasenterbro -oppgavegruppen, som utviklet Fiber Channel over Ethernet .

Se også

Referanser

Eksterne linker