802.3 ba
1
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Mirosław Rakowski (113764)
KAMS + KTI
Informatyka sem. 1 (II st)
WETI PG
802.3 ba
Ethernet 40Gb/s / 100 Gb/s
Sieci Ethernet 2011
802.3 ba
2
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Spis treści
XLGMII / CGMII (Media Independent Interface) .................................................. 14
802.3 ba
3
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
1 Wstęp.
Poniższy referat jest częścią teoretyczną seminarium wygłoszonego 17.05.2011 na
temat „802.3ba – Ethernet 40Gb/s / 100Gb/s”. Postaram się w tej pracy ponownie
przybliżyć tematykę tego standardu oraz wyjaśnić wszelkie niejasności, które pojawiły się
podczas wspomnianej prezentacji.
802.3 ba
4
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
2 802.3 ba – krótkie wprowadzenie
.
2.1 802.3 ba – geneza powstania.
Na początku XXI wieku światło dzienne ujrzał standard opisujący sieci Ethernet o
niespotykanej do tej pory prędkości – 10 GbE – Ethernet 10 gigabitowy. Skok z 1GbE
pozwolił zaspokoić rosnące potrzeby całego świata na rozwiązania sieciowe przez kilka
kolejnych lat. W roku 2009 po świecie rozsianych było około 124 milionów portów 10GbE,
lecz niestety ciągły popyt na coraz to szybsze rozwiązania doprowadził do kolejnego
wielkiego przełomu. Wraz z upływem czasu, stale rośnie liczba użytkowników Internetu, a
wraz z nimi rośnie obciążenie sieci szkieletowych, dla których prędkość 10Gb/s przestała
już wystarczać. Dodatkowo, na przestrzeni ostatnich lat zmienił się sposób wykorzystania
łącz sieciowych. Ważnymi czynnikami wpływającymi na konieczność opracowania nowych
rozwiązań były trend na przetwarzanie (cloud / grid computing) oraz rosnące
wykorzystanie obciążających usług sieciowych, takich jak VoD, video konferencje. Ten
zwiększający się stopień wykorzystania zasobów sieciowych, doprowadził do powstania
przy IEEE grupy Higher Speed Study Group (HSSG), której zadanie było opracowanie
nowego standardu sieci Ethernet, który zapewniłby możliwość dalszego, globalnego
rozwoju sieci komputerowych. Nowy standard miał spełniać następujące wymagania:
Wspierać tylko full-duplex.
Zachować dotychczasowy format ramki ethernetowej.
Zachować minimalną i maksymalną długość dotychczasowej ramki.
Zapewniać BER na poziomie 10
-12
Umożliwiać wykorzystanie łącz optycznych.
W oparciu o te wymagania powstał szereg rozwiązań sieci o dwóch prędkościach –
najpierw 40 Gbit/s, a następnie 100Gb/s:
802.3 ba
5
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
40GbE
100GbE
Długość łączy
Backplane
*
1 m
Kable miedziane
*
*
10 m
OM3 MMF
*
*
100 m
SMF
*
*
10 km
MMF
*
40 km
Tabela 1. Dostępne rozwiązania w standardzie 802.3ba
Całość tych rozwiązań została zebrana i opublikowana na początku 2010 roku w
postaci standardu 802.3 ba.
Nowe rozwiązania zostały zdefiniowane w następującym formacie:
Oznaczenie
Wartość
Prędkości
40
40Gb/s
100
100Gb/s
Typ medium
K
Backplane
C
Kabel miedziany
S
Światłowód krótkiego
zasięgu (100 m)
L
Światłowód dalekiego
zasięgu (10 km)
E
Światłowód bardzo
dalekiego zasięgu (100 km)
Schemat kodowania
R
64B/66B
Ilość linii
Miedź
4 lub 10
Światłowód
Liczba linii lub długości fal
Tabela 2. Nomenklatura w standardzie 802.3ba wraz z legendą.
802.3 ba
6
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
2.2
802.3 ba, a poprzednicy.
Wszystkie rozwiązania opisane w standardzie 802.3 ba opierają się o zestawienie
szeregu pojedynczych linii o prędkościach 10Gb/s lub 25 Gb/s, w sposób taki, że możliwa
jest transmisja danych z wydajnościami wielokrotnie większymi, niż na pojedynczych
liniach o wcześniej wspomnianych prędkościach. Pomysł taki może w pierwszej chwili
przypominać rozwiązanie, które zostało wprowadzone kilka lat wcześniej – agregacje łączy,
lecz w rzeczywistości te dwa standardy nie mają aż tak wiele wspólnego. Podstawowymi
elementami różniącymi łącza ze standardu 802.3ba, od ich odpowiedników z 802.1ax są:
•
Brak dodatkowego nakładu sygnalizacyjnego.
•
Większa rzeczywista przepustowość.
•
Mniej sprzętu / portów / przełączania.
•
Mniejsza elastyczność niż w przypadku łącz agregowanych.
802.3 ba
7
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
3 Opis standardu.
W tym rozdziale zostaną szczegółowo opisane rozwiązania wykorzystane w
standardzie 802.3 ba. Wszystkie opisy w tym rozdziale, dotyczące kolejności realizacji
poszczególnych fragmentów transmisji są zaprezentowane dla ramek wysyłanych przez
stacje – dla ramek odbieranych kolejność ta będzie odwrotna (chyba, że sytuacja dla
ramek wyjściowych zostanie wprost sprecyzowana).
3.1 Schemat warstwy fizycznej.
3.2 PCS – Physical Coding Sublayer.
Physical Coding Sublayer jest pierwszą podwarstwą warstwy fizycznej, na którą
natrafiają wysyłane ramki. Podwarstwa ta odpowiada za szereg niesamowicie ważnych dla
standardu elementów:
Schemat 1. Schemat warstwy fizycznej.
802.3 ba
8
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Podział ramki na części możliwe do przesłania na poszczególnych liniach.
Transport sygnałów kontrolnych umożliwiających kompozycje i dekompozycje ramek.
Rozdział i składanie danych na / z linii.
Scrambling.
Strumień danych wejściowych, który wchodzi do podwarstwy PCS zostaje poddany
następującym czynnościom:
Kodowanie oraz scrambling.
MLD (multilane distribution) – podział na wirtualne linie transmisyjne.
Przekazanie do kolejnej podwarstwy warstwy fizycznej (PMA).
Zatrzymajmy się najpierw na chwilę przy kodowaniu i scramblingu. W standardzie
802.3ba zostało wykorzystane takie samo kodowanie jak w przypadku 10GbE, a
mianowicie kodowania 64b/66b – na 66 bitach zostają przesłane 64 bity danych, ale
rozkład 1 i 0 jest zdecydowanie bardziej równomierny, niż w przypadku braku
jakiegokolwiek kodowania. Aby jeszcze bardziej zrównoważyć bilans 1 i 0 zastosowany
został identyczny jak w 10GbE scrambler. Wielomian opisujący działanie scramblera ma
format 1 + x
39
+ x
58
, natomiast schemat logiczny całego układu wygląda następująco:
Jak można zauważyć na powyższym rysunku, wartość wyjścia zależy od
poprzednich wejść, dając w ten sposób różne 'ziarno' do generowania wyników dla każdej
z wirtualnych linii. Jakość pracy scramblera jest na tyle dobra, że wynik jest działania może
być określany, jako pseudolosowa sekwencja binarna (PRBS) – ciąg zbliżony do ciągu
'idealnie' losowego.
Schemat 2. Scrambler
802.3 ba
9
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Mając przygotowany strumień danych wejściowych możemy zająć się jego
podziałem oraz zagadnieniem wirtualnych linii. Zakodowane i przemieszane dane są
dzielone na 66 bitowe słowa i są przekazywane na wirtualne linie (zwane też liniami PCS)
– linie symulujące pojedyncze, wirtualne połączenia pomiędzy nadawcą, a odbiorcą, na
których transmisja odbywa się szeregowo, w oparciu o otrzymywane dane. Ilość linii jest
różna dla poszczególnych prędkości / rozwiązań, lecz w ogólności jest to najmniejsza
wspólna wielokrotność pomiędzy ilością linii interfejsu elektrycznego (XLAUI, CAUI – więcej
o nich w rozdziale poświęconym interfejsom) a ilością linii medium (więcej w rozdziale o
PMD). 40GbE opiera się na 4 liniach wspierających 1, 2 lub 4 kanały / długości fal w
interfejsie XLAUI, natomiast 100GbE opiera się o 20 wirtualnych linii wspierających 1, 2, 4,
5, 10 lub 20 kanałów / długości fal w interfejsie CAUI. Mając zdefiniowane takie wirtualne
linie, możemy zagwarantować, że dane zawsze będą przesyłane tylko jedną parą
elektrycznych / optycznych linii w XLAUI/CAUI oraz PMD – nie zdarzy się, żeby transmisja z
jednej linii PCS była przesyłana jednocześnie na więcej niż jednej parze linii fizycznych.
Takie rozwiązanie gwarantuje z kolei zachowanie kolejności bitów transmitowanych danych.
Dane na poszczególne linie są wydzielane w następujący sposób:
Całość podziału jest oparta o prosty algorytm typu Round Robin – pierwsze 66
bitowe słowo wędruje na pierwszą linie PCS, drugie słowo na drugą linie, n-te słowo na n-
tą linie, n+1-sze słowo na pierwszą linię – i tak aż do wyczerpania danych. Co jakiś czas
Tabela 3.
Schemat 3. Schemat algorytmu rozdziału na wirtualne linie.
802.3 ba
10
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
na liniach dodatkowo zostaje wysłane 66 bitowe słowo kontrolne, umożliwiające podczas
ponownej kompozycji danych na określenie z której linii wirtualnej akurat są pobierane
dane. Znając kolejność przesyłanych słów, ich wielkość oraz indeks linii, po której zostały
przesłane, stacja odbierająca może bez problemów odtworzyć początkowych ciąg danych.
3.3
FEC – Forward Error Corection.
Strumień danych, podzielony na wirtualne linie, opuszczając podwarstwę PCS, w
zależności od realizacji standardu (medium, prędkości itp.) może zostać dodatkowo
przepuszczony przez warstwę FEC, której zadaniem jest zapobieganie błędom transmisji i
korekcja ich zawczasu – dzięki temu możliwe jest osiągnięcie stopy błędów BER na
zakładanym poziomie 10
-12
. FEC umożliwia jednoczesną naprawę do 11 bitów, co
umożliwia otrzymanie wspomnianego BER. Wykorzystanie FEC jest uzgadniane w procesie
autonegocjacji i w przypadku jego aktywowaniu, algorytm jest realizowany niezależnie dla
każdej z wirtualnych linii PCS.
3.4
PMA – Phisical Medium Attachment.
Kolejną podwarstwą, przez którą przechodzi strumień danych jest podwarstwa PMA
– łączy ona PCS z PMD (o której w następnym rozdziale). Głównym zadaniem tej
podwarstwy jest multipleksacja i demultipleksacja linii danych, zarządzanie i odzyskiwanie
sygnału zegarowego oraz dostarczenie informacji o łaczu. Struktura podwarstwy i ilość
etapów, jakie przechodzą dane, zanim uzyskają końcową formę jest różna dla
poszczególnych rozwiązań standardu. Dodatkowo, w przeciwieństwie do podobnej
podwarstwy w standardzie 10GbE, podwarstwa PMA składa się z układów wyłącznie
jednokierunkowych – do realizacji komunikacji dwukierunkowej konieczne są dwa układy.
Wróćmy teraz do samych zadań PMA. Otrzymując dane z pewnej liczby linii wirtualnych
PCS, koniecznym jest, aby transmisja była zrealizowana na ściśle określonej liczbie linii w
samym medium (zazwyczaj mniejsza niż liczba linii PCS – co najwyżej równa), dlatego
często konieczna jest multipleksacja danych, aby zmniejszyć liczbę linii do ilości docelowej.
Ilość kroków multipleksacji nie jest identyczna dla poszczególnych rozwiązań. Poniżej
zaprezentowane zostały dwa przykłady realizacji transmisji (z wyróżnioną w podwarstwach
PMA multipleksacją):
802.3 ba
11
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Logiczna struktura jednego z bloków tworzących całą podwarstwę PMA wygląda
następująco:
Gdzie:
•
Na każdą linię wejściową przypada V/N linii wirtualnych.
•
Na każdą linię wyjściową przypada V/M linii wirtualnych.
Schemat 4. PMA w 40GBASE - R oraz 100GBASE - R
Schemat 5. Schemat bloku multipleskującego w PMA.
802.3 ba
12
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Stosuje się następujące warianty multipleksacji:
40GbE
o PMA 4:4 Mapping
o PMA 4:1 Mapping
100GbE
o PMA 20:10 Mapping
o PMA 10:10 Mapping
o PMA 10:4 Mapping
o PMA 4:1 Mapping
Poniżej został zaprezentowany przykładowy proces multipleksacji i demultipleksacji
zrealizowany u obu klientów. W mapowaniu PMA 10:4 mapping zachodzą następujące
procesy:
Nadawanie:
Przejście z 10 linii na 4.
Dostarczenie źródła zegarowego do
klienta.
Transmisja równoległa do PMD.
Odbiór:
Odbiór równoległych danych.
Przejście z 4 linii na 10.
Odebranie źródła zegarowego.
Transmisja równoległa do PMA.
Dostarczenie informacji o łączu.
Schemat 6. Pojedyńczy blok PMA.
Schemat 7. Efekt multipleksacji 10:4.
802.3 ba
13
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Tak jak zostało to wspomniane wcześniej, podwarstwa PMA zajmuje się również
podziałem i odzyskiwaniem źródła zegarowego. Proces ten polega na podział
częstotliwości zegara z wejścia na mniejsze (w przypadku multipleksacji) i przypisanie ich
do poszczególnych linii. W przypadku demultipleksacji, taktowanie zegara jest zwięszkane
odpowiednio w zależności od ilości linii wejściowych i wyjściowych. Ogólny wzór dla tych
dwóch przypadków, pozwalający obliczyć częstotliwość zegara po przejściu przez moduł
mapujący wygląda następująco:
Taktowanie = <wartość_początkowa> * M / N [Hz]
gdzie 'M' oznacza liczę linii wyjściowych, natomiast 'N' oznacza liczbę linii wejściowych.
3.5
PMD – Phisical Medium Dependent.
Ostatnią, obowiązkową podwarstwą dla wszystkich typów połączeń opisanych w
standardzie 802.3ba jest podwarstwa Physical Medium Dependent, która jest
odpowiedzialna za realizację połączenia na samym medium. Podstawowym założeniem jest
wspieranie transmisji typu Full–Duplex w formie: 'n' linii wysyła, kolejne 'n' linii odbiera, co
powoduje konieczność podwojenia liczby linii medium. W tabelach poniżej zaprezentowane
zostały możliwe rozwiązania dla poszczególnych prędkości:
Typ
Długość łączy
Medium transmisyjne
Backplane
40GBASE-KR4
1 m
4 x 10Gb/s backplane (10GBASE-KR)
Kable miedziane
40GBASE-CR4
> 7 m
4 x 10Gb/s, 8 kabli dwużyłowych
Światłowody
40GBASE-SR4
> 100 m
4 x 10Gb/s, 8 równoległych, wielomodowych
światłowodów kategorii OM3
40GBASE-LR4
10 km
4 x 10Gb/s, 4 linie (CWDM) na parze
światłowodów jednomodowych
Tabela 4. PMD w 40GbE.
802.3 ba
14
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
Typ
Długość łączy
Medium transmisyjne
Kable miedziane
100GBASE-CR10
> 7 m
10 x 10Gb/s, 20 kabli dwużyłowych
Światłowody
100GBASE-SR10
> 100 m
10 x 10Gb/s, 20 równoległych, wielomodowych
światłowodów kategorii OM3
100GBASE-LR4
> 10 km
4 x 25Gb/s, 4 linie (DWDM) na parze
światłowodów jednomodowych
100GBASE-ER4
40 km
4 x 25Gb/s, 4 linie (DWDM) na parze
światłowodów jednomodowych
Tabela 5. PMD w 100GbE.
3.6
AN – Autonegotiation.
Podwarstwa autonegocjacji wymagana jest tylko w rozwiązaniach opartych o
backplane – w pozostałych przypadkach jest opcjonalna (rozwiązanie 40GBASE-KR4
bazuje na poprzednim standardzie 10GBASE-KR, który wymaga zaimplementowanej
autonegocjacji). Głównym zadanie autonegocjacji – poza ustaleniem prędkości i sposobu
realizacji połączenia jest uzgodnienie formatu FEC pomiędzy stacjami. W celu
autonegocjacji zawsze wykorzystywana jest linia oznaczona indeksem zerowym.
Dodatkowo, w formie ciekawostki, warto wspomnieć, że aby w autonegocjacji w
backplanie można było wybrać rozwiązanie 40GBASE-4KR, konieczne było wykorzystanie
dodatkowe bity (A3), który reprezentuje tą formę połączenia.
3.7
Interfejsy w standardzie.
W warstwie fizycznej standardu 802.3ba możemy wyróżnić 2 podstawowe interfejsy:
MII (XLGMII, CGMII) oraz AUI (XLAUI, CAUI). Wartości w nawiasach są nazwami tych
interfejsów dla poszczególnych prędkości: XLG / XL = 40GbE, CG / C = 100GbE.
3.7.1 XLGMII / CGMII (Media Independent Interface)
Interfejs ten jest elementem łączącym podwarstwy warstwy fizycznej z warstwą
MAC i został on wprowadzony aby być niezależnym od implementacji standardu
802.3 ba
15
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
poszczególnych producentów hardware'u. Interfejst ten zapewnia prostą komunikację
pomiędzy warstwami, a rozwiązania dla 40GbE i 100GbE różnią się tylko i wyłącznie
taktowaniem zegara (brak różnic w samej logice działania). Interfejs XLGMII jest
taktowany zegarem o częstotliwości 625MHz, natomiast CGMII 1,5625 GHz.
3.7.2 XLAUI / CAUI (Attachment Unit Interface)
Na ten interfejs składają się fizyczne połączenia pomiędzy poszczególnymi układami
scalonymi używanymi przy realizacji standardu – dla 40GbE są to 4 równoległe linie,
natomiast dla 100GbE tych linii jest 10. Każda z tych linii ma przepustowość 10Gb/s, co z
kodowaniem 64b/66b daje przepustowość rzędu 10.3125 Gbaud/s. Linie mogą mieć
maksymalnie 25 cm długości.
802.3 ba
16
Mirosław Rakowski (KAMS + KTI) – Sieci Ethernet 2011
4 Inne architektury.
Istnieją dwie architektury realizujący podobny zakres funkcjonalności jak 40GbE:
40G InfiniBand – wykorzystanie przełączanej topologii światłowodowe w systemach
o wysokiej wydajności, by połączyć węzły procesorów z węzłami szybkich urządzeń
I/O.
OC – 768 POS – rozwiązanie telekomunikacyjne oparte o kilka, równoległych linii
SONET/SDH w światłowodzie z multipleksacją typu DWDM (Dense Wavelength
Division Multiplexing). Architektura ma przepustowość danych rzędu 37.584 Gbit/s,
przy prędkości transmisji na poziomie 39813.12Mbit/s.
Obie architektury, mimo zdecydowanie niższej jakości usług w porównaniu do 40GbE
lub 100GbE, które wykorzystują wszystkie dobrodziejstwa Ethernetu, znalazły swoje
zastosowanie w dzisiejszym przemyśle.