Seminarium: Ethernet over SDH (EoS)
1. SDH
SDH (ang. Synchronous Digital Hierarchy) czyli Synchroniczna Hierarchia Systemów
Cyfrowych jest międzynarodowym standardem synchronicznej sieci transportowej opartej na
ś
wiatłowodach. Wszystkie urządzenia w SDH pracują w trybie bezawaryjnym i są
synchronizowane do pierwotnego zegara odniesienia (PRC) oraz do siebie nawzajem. Sieci
SDH charakteryzują się wysoką niezawodnością co wnika m.in. z budowy pierścieniowej
oraz czasem rekonfiguracji krótszym niż 50 ms. Systemy SDH w celu lepszego rozłożenia się
mocy sygnału w paśmie transmisyjnym stosują scrambling.
Początki systemów SDH sięgają czasów kiedy wprowadzono nowe medium transmisyjne
- linie światłowodowe. W latach 80. XX wieku w USA pracowano nad standaryzacją styku
optycznego w celu zapewnienia kompatybilności pomiędzy urządzeniami różnych
producentów. W tym czasie w firmie BellCore rozpoczęto pracę nad standardem systemów
teletransmisyjnych umożliwiających transmisję za pośrednictwem światłowodów. Efektem
był standard SONET (Synchronous Optical Network). Standard SDH jest europejskim
odpowiednikiem standardu SONET.
Podstawowe założenia SDH:
♦
czas trwania ramki 125
µ
s, wynikający z podstawowego pulsu modulacji PCM;
♦
synchroniczność określona częstotliwością 10
-11
;
♦
ułatwiony proces wydzielania strumieni składowych z sygnału zbiorczego dzięki
odpowiedniej
strukturze
ramki,
zastosowaniu
mechanizmu
wskaźnika
oraz
synchroniczności wszystkich sygnałów;
♦
jednostki strukturalne - kontenery (ang. Container) i kontenery wirtualne VC (ang.
Virtual Container).
1.1.
Synchroniczny moduł transportowy STM
Podstawową strukturą informacyjną przesyłaną pomiędzy węzłami sieci SDH są
synchroniczne moduły transportowe (STM - Synchronous Transport Module).
Rysunek 1. Budowa ramki STM-1 [źródło: 4]
Synchroniczny moduł transportowy STM-1 zawiera 9x270 bajtów. Składa się z pola
danych "Payload", nagłówka SOH (Section Overhead) i bloku wskaźników. W polu Payload
przenoszone są właściwe dane użyteczne. Blok wskaźników PTR umożliwia określenie
położenia VC względem ramki STM. Wskaźniki są numerami bajtów w których znajduje się
początek VC. Nagłówek SOH zawiera dane utrzymaniowe, np. bajty nadzoru, administracji
siecią i sterowania nią, wzór fazowania ramki.
Nagłówek SOH składa się z dwóch części:
♦
RSOH - nagłówek związany z sekcją regeneracji,
♦
MSOH - nagłówek dla multiplekserów.
A1, A2 - wzór ramkowania (A1 - 1110110, A2 - 00101000)
B1, B2, B3, - bajty kontroli parzystości (kod BIP-N)
C1 - określa numer STM-1 w ramce STM-N
D1-D3 - kanał transmisji danych do zarządzania siecią (192 kbit/s)
D4-D12 - jak D1-D3 (576 kbit/s)
E1 - kanał telefoniczny do łączności służbowej (64 kbit/s) w sekcjach
międzyregeneratorowych
E2 - jak E1 w sekcjach międzykrotnicowych
F1, F2 - kanały użytkownika
G1 - status toru - sygnalizuje zwrotnie błąd BIP-8 (na podstawie bajtu B3)
H4 - wskaźnik wieloramki dla sygnałów 2 Mbit/s (określa jej początek)
J1 - adres węzła dostępu (weryfikuje ciągłość istnienia toru VC-n)
K1, K2 - kanał automatycznego przełączania na rezerwę
K3, K4 - jak K1, K2 na poziomie toru
Z1, Z2, Z5 - bajty rezerwowe
S1 - sposób synchronizacji
M1 - do zliczania błędów w poszczególnych sekcjach
Rysunek 2. Rozróżnienie bajtów w nagłówku SOH oraz POH wraz z objaśnieniem [źródło: 4]
W nagłówku RSOH pierwsze 6 bajtów zajmuje wzór fazowania (synchronizacji) ramki
(bajty A1 i A2). Bajt B1 umożliwia monitorowanie jakości transmisji, uzupełniany jest
wynikiem przeplotowej kontroli parzystości BIP-8 (Binary Interleaved Parity).
STM-1 zapewnia przepływność 155,52 Mbit/s. Przepływności wyższych poziomów są
wielokrotnościami przepływności STM-1 i :
STM-4 to ok. 622 Mbit/s,
STM-16 to ok. 2488 Mbit/s,
STM-32 - 5 Gbit/s,
STM-64 - 10 Gbit/s. Gdzie STM-N to moduł transportowy poziomu N.
1.2.
Kontenery
Kontener typu C (ang. Container) jest zdefiniowaną przepływnością binarną, składa
się z:
♦
informacji użytecznej,
♦
stałych bitów informujących o dopełnieniu,
♦
bitów służących dokładnej synchronizacji oraz
♦
bitów kontrolnych dopełnienia.
Przepływności kontenerów C-n:
C-11
1544 kbit/s
C-12
2048 kbit/s
C-4
139 264 kbit/s
Dodanie do kontenera C nagłówka ścieżki (toru) POH (Path OverHead) powoduje
stworzenie kontenera wirtualnego VC (ang. Virtual Container). Nagłówek POH zawiera
informacje organizacyjne i kontrolno-sterujące. Kontenery wirtualne niższego rzędu VC-12
składają się z jednego bajta. Nagłówki toru kontenerów VC-3 i VC-4 składają się z 9 bajtów.
Kontenery wirtualne dzieli się na kontenery wyższego i niższego rzędu. Grupa
kontenerów niższego rzędu tworzy kontener wyższego rzędu. Kontenery wyższego rzędu są
bezpośrednio transportowane w ramce STM-1. Pozycja kontenerów w ramce STM-1 nie musi
być stała, każdemu kontenerowi przyporządkowany jest znacznik (pointer). Kontener wraz ze
znacznikiem tworzy jednostkę administracyjną AU (Administrative Unit).
1.3.
Zwielokrotnienie
Pierwszym etapem zwielokrotnienia jest multipleksacja kontenerów wirtualnych VC
niższego rzędu do kontenerów VC wyższego rzędu. Gdzie kontenery VC powstają z
połączenia kontenerów C z nagłówkami POH. W drugim etapie kontenery VC łączone są z
nagłówkiem SOH tworząc STM-1.
Moduły wyższych poziomów STM-N tworzone są poprzez przeplot bajtowy N grup
jednostek administracyjnych AUG i dodanie nagłówka SOH. Nie dokonuje się multipleksacji
całych modułów STM-1. Pole nagłówka jest N-krotnie większe niż w STM-1.
Rysunek 3 . Graficzne przedstawienie budowy VC, VC-4 oraz STM-1
2. Ethernet over SDH
Rozwiązanie zapewniające transport ramek ethernetowych poprzez SDH zazwyczaj
opiera się na trzech mechanizmach: procedurze enkapsulacji GFP, mechanizmie tworzenia
wirtualnych grup kontenerów VCAT oraz mechanizmie LCAS mogącym kontrolować ilość
wirtualnych kontenerów (VC) pomiędzy źródłem a celem ścieżki. Rozwiązanie to znane jest
pod pojęciem Ethernet over SDH (EoS) oraz Next Generation SDH (NG SDH).
Przesyłanie ramek ethernetowych poprzez SDH umożliwia wykorzystanie istniejącej już
infrastruktury oraz jej zalet, m.in. możliwość przesyłu danych na dalekie odległości.
2.1.
Generic Framing Procedure
Generic Framing Procedure (GFP) jest protokołem mapowania sygnałów warstwy 1. i 2.
do kontenerów SDH. GFP zorientowany jest punkt-punkt i zaimplementowany na
krańcowych węzłach, reszta struktury SDH nie ulega zmianie.
Wyróżniane są dwa rodzaje GFP:
♦
frame-mapped GFP (GFP-F) który jest enkapsulacją w drugiej warstwie, a pakiety
danych są upakowywane w ramki GFP zmiennej wielkości, stosowany dla Ethernetu,
PPP, DVB;
♦
transparent GFP (GFP-T) będący mapowaniem pierwszej warstwy w którym dane
upakowane są w stały rozmiar ramki, zoptymalizowany jest dla protokołów warstwy
fizycznej używających 8B/10B. GFP-T stosowany jest m.in. dla ESCON, 1000BASE-
X.
GFP-F czeka aż zostanie przysłany cały pakiet danych klienta, następnie "wrzuca" go w
ramkę GFP. W zależności od protokołu klienta, określone sygnały są usuwane, np. nagłówek,
czas przerwy pomiędzy ramkami (ang. interframe gaps) w celu zminimalizowania rozmiaru
transmisji. W przypadku ramki ethernetowej usuwana jest preambuła oraz SFD. Proces ten
zwiększa opóźnienia, dlatego GFP-F jest używany dla protokołów Ethernet, PPP/IP i
podobnych do HDLC (ang. High-Level Data Link Control), gdzie wydajność i elastyczność
są ważniejsze niż opóźnienia.
Rysunek 4. Ramka GFP [źródło: 2]
GFP-T jest metodą enkapsulacji niezależną od protokołu. Dane klienta mapowane są w
ramki o stałej długości. GTP-T enkapsuluje protokoły wykorzystujące technikę kodowania
8B/10B. Dane w kodzie 8B/10B są dekodowane i kodowane ponownie na 64B/65B i
wrzucane do stałej wielkości ramki GFP-T. Po załadowaniu ramki GFP jest ona natychmiast
transportowana, bez czekania na odbiór całego pakietu danych. GFP-T transportuje wszystkie
dane klienta, nie odczytuje znaczenia danych, nie rozróżnia nagłówków itp.
GFP-T jest odpowiedni dla protokołów wrażliwych na opóźnienia tj. ESCON, FISCON,
Gigabit Ethernet.
2.2.
Łączenie (ang. Concatenation)
Łączenie (ang. concatenation) jest procesem tworzenia z pewnej ilości kontenerów SDH
większego kontenera. Wirtualne kontenery niższego i wyższego rzędu mogą być poddawane
łączeniu. Wyróżniamy dwa rodzaje łączenia: "ciągłe" (Contiguous Concatenation) oraz
łączenie wirtualne (Virtual Concatenation - VCAT). "Łączenie ciągłe" (ang. Contiguous
Concatenation) X kontenerów C polega na stworzeniu kontenera zawierającego payload o
rozmiarze X razy większym niż payload kontenera C, tak stworzony kontener jest
transportowany jedną ścieżką poprzez sieć. Metodą elastyczniejszą i bardziej wydajną jest
wirtualne łączenie -VCAT.
Rysunek 5. Porównanie przesyłania danych z wcześniejszym wykorzystaniem łączenia ciągłego i
wirtualnego[źródło:2]
2.2.1. Virtual Concatenation - VCAT
VCAT jest techniką odwrotną do multipleksacji. W węźle źródłowym VCAT tworzy pole
użytkowe (payload)
złożone z pewnej ilości wirtualnych kontenerów VC-n. Zestaw
kontenerów VC-n tworzy VCG (Virtual Concatenation Group).
Wszystkie wirtualne
kontenery wysyłane są do docelowego miejsca niezależnie. W punkcie docelowym VC-n są
ustawiane według znaczników zawartych w bajcie H4 lub V5 i dostarczane do klienta jako
pojedynczy strumień. Aby najlepiej wykorzystać możliwości VCAT kontenery powinny być
transportowane różnymi drogami poprzez sieć.
Wyróżniane są dwa rodzaje VCAT:
♦
VCAT wyższego rzędu (HO-VCAT czyli High Order VCAT) używa od 1 do 256
kontenerów VC3 i VC4, wirtualnie połączone kontenery z (VC-3/4-Xv, X = 1-256)
mapowane są do niezależnych "kopert" VC-3, VC-4 i transportowane osobno poprzez
sieć. Każdy wirtualny kontener w bajcie H4 zawiera MFI (ang. multiframe indicator)
który mówi do kogo należy dany kontener oraz SQ - numer wirtualnego kontenera w
VCG.
♦
VCAT niższego rzędu (LO-VCAT czyli Lower-Order VCAT) używa kontenerów
niższego rzędu: VC11, VC12, VC2. VCG składa zawiera od 1 do 64 elementów VC
(VC11/12/2-Xv, X=1-64). MFI oraz SQ znajdują się w 2. bicie K4. Punkt docelowy
czeka aż wszystkie elementy VCG wpłyną i następnie składa je.
Przesyłanie wirtualnych kontenerów różnymi ścieżkami wiąże się z pewnymi
opóźnieniami wynikającymi przede wszystkim z różnych długości tras jakie przebywają
wirtualne kontenery. Opóźnienie propagacji wynosi 5
µ
s na 1 km, indywidualne elementy
sieci powodują opóźnienia ok. 1-30
µ
s. Różnica w przybyciu najszybszego i najwolniejszego
VC z konkretnego VCG może wynosić kilkanaście milisekund. Standard VCAT pozwala na
maksymalne opóźnienie do 256 ms.
W przypadku gdy choć jeden VC z całej grupy nie trafi do celu cały VCG jest odrzucony.
Obsługą tego problemu zajmuje się LCAS, będący rozszerzeniem VCAT.
3. LCAS
Protokół LCAS (ang. Link Capacity Adjustment Scheme) umożliwia dodawanie i
usuwanie elementów grupy wirtualnych kontenerów (VCG) kontrolując rozmiar kanału
VCAT (LCAS do działania potrzebuje VCAT, VCAT natomiast może działać bez LCAS).
Strony źródłowa (ang. source) i docelowa (ang. sink) wymieniają między sobą informacje,
reagując na uszkodzenia oraz powrót do działania ścieżek. Trwa to kilka milisekund, czas ten
zależy od fizycznej odległości pomiędzy początkiem a końcem ścieżki. Wiadomości
wykorzystywane przez LCAS są składowane w każdym wirtualnym kontenerze z grupy, w
bajcie H4 w wirtualnym kontenerze wyższego rzędu (HO VC) i bajcie K4 w przypadku
wirtualnych kontenerów niższego rzędu (LO VC).
Wyróżniane są wiadomości LCAS nadawane przez źródło, takie jak:
♦
MFI (MultiFrame Indicator) wskazuje numer grupy wirtualnych kontenerów VCG;
♦
SQ (Sequence Indicator) wskazuje numer danego VC w VCG;
♦
CNTRL (Control) zawiera informacje protokołu LCAS, określające w pewien
sposób dany wirtualny kontener:
o
fixed - nie obsługiwany LCAS w danej ścieżce VCAT;
o
add - żąda dodania nowego wirtualnego kontenera do VCG istniejącego
kanału VCAT. Jeśli kanał nie istnieje powinien zostać stworzony;
o
norm - normalny element VCG (nie ostatniego);
o
eos - End of Sequence, ostatni element VCG z najwyższy numerem SQ;
o
idle - kontener nie będący częścią kanału VCG;
o
dnu - element VCG do usunięcia z powodu wykrytego błędu na węźle
końcowym.
♦
GID (Group Identification) jest stałą wartością dla każdego z elementów z grupy
wirtualnych kontenerów VCG.
Wiadomości odbierane przez źródło to:
♦
MST - informuje źródło o statusie ("fail" lub "OK") każdego z elementów VCG,
♦
RS-ack (Re-Sequence Acknowledge) jest potwierdzeniem przenumerowania
sekwencji po otrzymaniu członka oznaczonego jako eos.
4. Przykład - podsumowanie
Rysunek 6. Przesyłanie ramki ethernetowej pomiędzy dwoma punktami z wykorzystaniem wirtualnie
łączonej grupy 3 wirtualnych kontenerów VC-4, opis poniżej [źródło:2]
Przesyłamy ramki ethernethowe pomiędzy CP1 i CP2. W źródle (węzeł R) ethernetowe
ramki klienta mapowane są do ramek GFP, tworząc z asynchronicznych pakietów
ethernetowych synchroniczny strumień danych. Następnie ramki GFP umieszczane są w
wirtualnych kontenerach. VCAT segreguje kontenery (w tym przypadku 4) tworząc wirtualną
grupę kontenerów (VCG) której elementy (VC) będą przesyłane indywidualnie.
VCG składa się z 4 wirtualnych kontenerów VC3. Wysyłane są one następującymi
ś
cieżkami:
♦
jeden VC3 przemierza trasę R-S-T-Z,
♦
jeden VC3 przemierza trasą R-S-W-Y-Z,
♦
dwa VC3 przemierzają trasę R-X-Y-Z.
Ź
ródło LCAS wysyła wiadomość "add" do wszystkich elementów wskazując ich
przynależność do pasma VCAT. Wirtualne kontenery są przesyłane do węzła Z, tam
poddawane demultiplekcasji i demapowaniu.
Punkt docelowy może wysłać 2 rodzaje wiadomości MST i RS-ACK. MST może
zawierać informację "fail" lub "OK", to jest wystarczające do obsługi uszkodzeń, zmiany
rozmiaru pasma VCAT. Dla przykładu uszkodzenie R-S-W-Y-Z powoduje błąd ścieżki b.
Ź
ródło zostanie powiadomione poprzez wiadomość "MST=fail(b)". Natychmiast usunięta
zostaje określona ścieżka. Po krótkiej przerwie max 128 ms, wszystkie dane klienta będą
przesłane trzema drogami.
Bibliografia
1. Dąbrowski A., Kula S., Systemy i sieci SDH, Warszawa 1996.
2. Hens F. J., Caballero J. M., Triple play. Building the Converged Network for IP, VoIP
and IPTV, Trend Communications Ltd., UK 2008.
3. Khurram Kazi, Optical networking standards. A comprehensive guide for
proffessionals, Springer, 2006 USA.
4. http://sdhwdm.banderii.sm.pl/sdh.