Ogólna enkapsulacja strumienia
Pakiet protokołów internetowych |
---|
Warstwa aplikacji |
Warstwa transportowa |
warstwa internetowa |
Warstwa łącza |
Generic Stream Encapsulation , w skrócie GSE, to protokół warstwy łącza danych zdefiniowany przez DVB . GSE zapewnia środki do przenoszenia protokołów zorientowanych pakietowo, takich jak IP , na wierzchu jednokierunkowych warstw fizycznych, takich jak DVB-S2 , DVB-T2 i DVB-C2 .
GSE zapewnia dodatkowe funkcje wykraczające poza zwykły transport datagramów IP, które zwiększają elastyczność i możliwości zastosowania protokołu. Niektóre kluczowe funkcje/cechy GSE to:
- Obsługa enkapsulacji wieloprotokołowej ( IPv4 , IPv6 , MPEG , ATM , Ethernet , 802.1pQ VLAN itp.)
- Przejrzystość funkcji warstwy sieciowej, w tym szyfrowanie IP i kompresja nagłówków IP .
- Obsługa kilku trybów adresowania. Oprócz 6-bajtowego adresu MAC (w tym multiemisji i emisji pojedynczej ), obsługuje tryb bez adresu MAC i opcjonalny tryb adresu 3-bajtowego.
- Mechanizm fragmentacji datagramów IP lub innych pakietów warstwy sieciowej przez ramki pasma podstawowego w celu obsługi ACM / VCM .
- Obsługa filtrowania sprzętowego .
- Rozszerzalność: dodatkowe protokoły łącza mogą być dołączone poprzez określone wartości typów protokołów (np. zabezpieczenia warstwy 2 , kompresja nagłówka IP itp.).
Zarys protokołu
Specyfikacja protokołu została opublikowana jako ETSI TS 102 606. Towarzyszący dokument z wytycznymi wdrożeniowymi został opublikowany jako ETSI TS 102 771.
Datagramy IP, ramki Ethernet lub inne pakiety warstwy sieciowej są zawarte w jednym lub kilku pakietach GSE. Proces enkapsulacji dodaje informacje kontrolne, takie jak typ protokołu sieciowego i etykieta adresowa, oraz w razie potrzeby zapewnia ogólną kontrolę integralności.
Ramka ładunku może być zawarta w pojedynczym pakiecie GSE lub pocięta na fragmenty i umieszczona w kilku pakietach GSE. Pakiety GSE mają na ogół zmienną długość, aby dopasować wejściowy ruch IP przy minimalnym obciążeniu.
Pakiety GSE mogą być przesyłane w różnych ramkach pasma podstawowego, niekoniecznie następujących po sobie lub z tymi samymi parametrami transmisji (format modulacji, szybkość kodowania). Nie zakłada się żadnych ograniczeń dotyczących pozycji pakietu GSE w ramce pasma podstawowego. Jednak pakiety GSE nie mogą być ponownie uporządkowane między enkapsulatorem a deenkapsulatorem. Ogólnie rzecz biorąc, ramka pasma podstawowego może zawierać więcej niż jeden pakiet GSE. Ramki pasma podstawowego mogą mieć stałą lub zmienną długość.
GSE nie zapewnia mechanizmu sprawdzania integralności pojedynczego pakietu GSE. CRC -32 jest dołączany tylko do ostatniego fragmentu pofragmentowanego ładunku, aby zweryfikować poprawność operacji ponownego składania. GSE polega na tym, że warstwa fizyczna jest w stanie zapewnić wymagane wykrywanie błędów i/lub prawdopodobieństwo korekty.
Nagłówek GSE
Nagłówek pakietu GSE jest bardzo dynamiczny i zapewnia wiele opcji. Minimalny nagłówek ma dwa bajty i zawiera trzy pola flag oraz 12-bitowe pole długości ładunku. Poniższy diagram przedstawia wszystkie możliwe pola.
przesunięcie bitowe | 0 | 1 | 2-3 | 4–7 | 8-15 | 16-23 | 24-31 | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Początek | Koniec | Typ etykiety | Długość GSE | Identyfikator fragmentu | Długość całkowita | ||||||||||||||||||||||||||
32 | Długość całkowita | Typ protokołu | Etykieta (3 bajty) | |||||||||||||||||||||||||||||
64 | Etykieta (3 bajty) | Etykieta (6 bajtów) | ||||||||||||||||||||||||||||||
96 | Etykieta (6 bajtów) | Nagłówki rozszerzeń ULE (opcjonalnie) | ||||||||||||||||||||||||||||||
... | ... | Dane | ||||||||||||||||||||||||||||||
... | Dane |
Fragmentacja i ponowne składanie
Podstawowy mechanizm fragmentacji ładunku GSE wykorzystuje flagi Start i End, gdzie flaga Start wskazuje początek ramki ładunku, a flaga End wskazuje jej koniec. Pokazano to na poniższym diagramie.
Początek | Koniec | Zawartość pakietu GSE |
---|---|---|
1 | 0 | Całkowity rozmiar ładunku / Typ protokołu / Początek ładunku |
0 | 0 | Kontynuacja ładunku |
0 | 1 | Koniec ładunku / CRC-32 |
W przypadku DVB-S2 , DVB-T2 i DVB-C2 tryby ACM/VCM mogą powodować różnice rozmiaru ramek pasma podstawowego w zależności od warunków transmisji. Stąd mogą wystąpić sytuacje, w których pierwsze fragmenty ramki ładunku zostały wysłane, ale enkapsulator jest zmuszony odłożyć na bok bieżącą ramkę danych i rozpocząć pracę nad nową. Może się tak zdarzyć np. gdy duże fragmenty zostały przygotowane przy dobrych warunkach transmisji, ale nagle warunki uległy pogorszeniu i dostępne są tylko małe ramki pasma podstawowego.
W tym momencie pole Identyfikator fragmentu staje się ważne. Jest to krótkoterminowa identyfikacja ramki ładunku. Ilekroć enkapsulator musi przejść do następnej ramki ładunku bez zakończenia transmisji poprzedniej, używa następnego dostępnego identyfikatora fragmentu. W ten sposób do 256 ramek ładunku może być „otwartych” w dowolnym momencie. Dekapsulator używa identyfikatora fragmentu do wybrania bufora ponownego składania, w którym ma być przechowywany fragment.
adresy GSE
Bity „typu etykiety” (LT) określają sposób kodowania adresu pakietu GSE zgodnie z poniższą tabelą:
Bity LT | Tryb adresowania |
---|---|
00 | Wskazuje, że obecna jest 6-bajtowa etykieta, która będzie używana do filtrowania. |
01 | Wskazuje, że obecna jest 3-bajtowa etykieta, która będzie używana do filtrowania. |
10 | Brak etykiety. Wszyscy odbiorcy będą przetwarzać ten pakiet. |
11 | Ponowne użycie etykiety: brak etykiety; etykieta jest taka sama jak poprzedni pakiet GSE w tej samej ramce pasma podstawowego. LT=11 jest również używany dla pakietów pośrednich i końcowych ( tj. Bit startu 0). LT=11 nie będzie używany dla pierwszego pakietu GSE w ramce pasma podstawowego z bitem startu 1. |
Zwiastun CRC-32
Każdy pakiet GSE zawierający ostatni fragment ramki danych użytkowych przenosi sumę kontrolną CRC-32 przez ramkę danych użytkowych. Suma kontrolna służy do wykrywania utraty fragmentów pośrednich.
Suma kontrolna to 32-bitowa wartość obliczona zgodnie z wielomianem generatora reprezentowanym przez 0x104C11DB7:
Jeśli ostatni fragment ramki ładunku zostanie utracony, dekapsulator nie może bezpośrednio wykryć tego faktu. Nigdy nie widzi ramki GSE z ustawioną flagą End i zawierającą CRC-32. W tej sytuacji dekapsulator musi wybrać odpowiedni limit czasu w oparciu o szybkość transmisji danych i aplikację.
Implementacje GSE
Produkty wspierające GSE
Ponieważ pakiety GSE są wstawiane bezpośrednio do ramek pasma podstawowego schematu modulacji, produkty GSE występują w postaci „routerów GSE” lub „modemów GSE”, które z zewnątrz działają bardzo podobnie do używanego routera DSL lub modemu DSL przez konsumentów. Mówiąc bardziej ogólnie, urządzenia te są również określane jako „enkapsulatory GSE”. Produkty te mają standardowy interfejs sieciowy IP (najczęściej Ethernet lub podobny interfejs LAN ) do zbierania ruchu IP, który ma być przekazywany jednokierunkowym łączem na drugim końcu. Aby zoptymalizować pakowanie w ramki pasma podstawowego, urządzenia te zazwyczaj generują kompletne ramki pasma podstawowego z pakietami GSE jako ładunkiem, które są następnie przesyłane do DVB-S2 , DVB-T2 lub DVB-C2 przez drugi interfejs.
Oto (prawdopodobnie niekompletna) lista en- i dekapsulatorów GSE:
- Newtec
- WORK Microwave GmbH
- Tebkom GmbH
- Advantech Wireless Inc. AMT 75e DVB-S/S2
- Comtech EF Data Corporation
- KSTransplaneta Ltd.
- Moduły komputerowe, Inc.
- Ayecka Systemy komunikacyjne LTD
Oferty usług IP oparte na GSE
Istnieje wiele ofert usług IP przez satelitę, w tym na przykład ASTRA2Connect firmy SES lub Tooway firmy Eutelsat . Niewiele jednak wiadomo na temat stosowanych protokołów, ponieważ odbiorniki są dostarczane w ramach usługi przez operatorów i ujawnia się bardzo niewiele szczegółów technicznych.
Linki zewnętrzne
- Uzyskaj bezpłatnie Standard i wytyczne GSE od DVB
- Arkusz informacyjny DVB na temat GSE
- Strona główna projektu GSE w ESA
- Implementacja Open Source GSE