Technologia sieci Ethernet. Formaty ramek Ethernet Podstawowe warianty algorytmów losowego dostępu do mediów

Standard Ethernet IEEE 802.3

Jest to obecnie najczęściej używany standard technologii sieciowej.

Osobliwości:

  • współpracuje z kablem koncentrycznym, skrętką, kablami optycznymi;
  • topologia - magistrala, gwiazda;
  • metoda dostępu - CSMA/CD.

Architektura technologii sieci Ethernet w rzeczywistości łączy cały zestaw standardów, które mają zarówno wspólne cechy, jak i różnice.

Technologia Ethernet została opracowana wraz z wieloma pierwszymi projektami Xerox PARC Corporation. Powszechnie przyjmuje się, że Ethernet został wynaleziony 22 maja 1973 roku, kiedy Robert Metcalfe napisał notatkę do szefa PARC na temat potencjału technologii Ethernet. Ale Metcalfe uzyskał prawo do technologii kilka lat później. W 1976 roku on i jego asystent David Boggs opublikowali broszurę zatytułowaną Ethernet: Distributed Packet Switching for Local Computer Networks. Metcalfe opuścił Xerox w 1979 r. i założył firmę 3Com, aby promować komputery i usługi lokalne sieć komputerowa. Udało mu się przekonać firmy DEC, Intel i Xerox do współpracy i opracowania standardu Ethernet (DIX). Ten standard został opublikowany po raz pierwszy 30 września 1980.

Dalszy rozwój technologii EtherNet:

  • 1982-1993 rozwój sieci 10Mbps EtherNet;
  • 1995-1998 rozwój Fast EtherNet;
  • 1998-2002 rozwój sieci GigaBit EtherNet;
  • 2003-2007 rozwój sieci 10GigaBit EtherNet;
  • 2007-2010 rozwój sieci 40 i 100GigaBit EtherNet;
  • 2010 prezentacja rozwoju Terabit Ethernet.

Na poziomie MAC, który zapewnia dostęp do nośnika i transmisję ramek, do identyfikacji interfejsów sieciowych węzłów sieci wykorzystywane są unikatowe 6-bajtowe adresy regulowane przez standard, zwane adresami MAC. Zazwyczaj adres MAC jest zapisywany jako sześć par cyfr szesnastkowych oddzielonych myślnikami lub dwukropkami, na przykład 00-29-5E-3C-5B-88. Każda karta sieciowa ma adres MAC.

Struktura adresów MAC w sieci Ethernet:

  • Pierwszy bit docelowego adresu MAC jest nazywany bitem I/G (indywidualnym/grupowym lub rozgłoszeniowym). W adresie źródłowym nazywa się to wskaźnikiem trasy źródłowej;
  • drugi bit określa sposób przypisania adresu;
  • trzy górne bajty adresu są nazywane Burned In Address (BIA) lub Organizationally UniqueIdentifier (OUI);
  • za unikalność trzech dolnych bajtów adresu odpowiada producent.

Trochę programy sieciowe, w szczególności wireshark, potrafi od razu wyświetlić zamiast kodu producenta - nazwę producenta danej karty sieciowej.

Format ramki w technologii EtherNet

W sieciach Ethernet występują 4 rodzaje ramek (ramek):

  • ramka 802.3/LLC (lub ramka Novell802.2),
  • Surowa ramka 802.3 (lub ramka Novell 802.3),
  • ramka Ethernet DIX (lub ramka Ethernet II),
  • Ramka Ethernet SNAP.

W praktyce w sprzęcie EtherNet używany jest tylko jeden format ramki, a mianowicie ramka EtherNet DIX, która według najnowszego standardu DIX jest czasami określana jako numer ramki.

  • Pierwsze dwa pola nagłówka są zarezerwowane dla adresów:
    • DA (Destination Address) – adres MAC hosta docelowego;
    • SA (Source Address) – adres MAC węzła źródłowego. Aby dostarczyć ramkę wystarczy jeden adres - adres docelowy, adres źródłowy umieszczany jest w ramce, aby węzeł, który odebrał ramkę wiedział od kogo ramka przyszła i kto ma na nią odpowiedzieć.
  • Pole T (Typ) zawiera warunkowy kod protokołu Najwyższy poziom, którego dane znajdują się w polu danych ramki, na przykład wartość szesnastkowa 08-00 odpowiada protokołowi IP. To pole jest wymagane do obsługi funkcji interfejsu multipleksowania i demultipleksowania ramek podczas interakcji z protokołami wyższej warstwy.
  • Pole danych. Jeśli długość danych użytkownika jest mniejsza niż 46 bajtów, to pole jest uzupełniane do minimalnego rozmiaru bajtami dopełniającymi.
  • Pole Frame Check Sequence (FCS) składa się z 4 bajtów sumy kontrolnej. Wartość ta jest obliczana przy użyciu algorytmu CRC-32.

Ramka EtherNet DIX (II) nie odzwierciedla separacji warstwy łącza EtherNet na warstwę MAC i warstwę LLC: jej pola obsługują funkcje obu warstw, na przykład funkcje interfejsu pola T należą do funkcji warstwa LLC, podczas gdy wszystkie inne pola obsługują funkcje warstwy MAC.

Rozważ format ramki EtherNet II na przykładzie przechwyconego pakietu przy użyciu analizatora sieci Wireshark

Należy pamiętać, że ponieważ adres MAC składa się z kodu producenta i numeru interfejsu, analizator sieci natychmiast konwertuje kod producenta na nazwę producenta.

Dlatego w technologii EtherNet adresy MAC działają jako adresy docelowe i docelowe.

Standardy technologii Ethernet

Fizyczne specyfikacje technologii Ethernet obejmują następujące media transmisyjne.

  • l0Base-5 - kabel koncentryczny o średnicy 0,5 cala (1dm = 2,54cm), zwany kablem koncentrycznym „grubym”, o impedancji charakterystycznej 50 omów.
  • l0Base-2 to kabel koncentryczny 0,25 cala, zwany „cienkim” koncentrykiem, o impedancji charakterystycznej 50 omów.
  • l0Base-T - kabel oparty na skrętce nieekranowanej (Skrętka Nieekranowana, UTP), kategoria 3,4,5.
  • l0Base-F - kabel światłowodowy.

Liczba 10 oznacza nominalną przepływność standardu, czyli 10 Mb/s, a słowo „Baza” to metoda transmisji na jednej częstotliwości bazowej. ostatni znak wskazuje typ kabla.

Kabel jest używany jako monokanałowy dla wszystkich stacji, maksymalna długość segmentu to 500m. Stacja jest podłączona do kabla poprzez transceiver - transceiver. Transceiver podłącza się do karty sieciowej złącza DB-15 za pomocą kabla interfejsu AUI. Terminatory są wymagane na każdym końcu w celu pochłaniania sygnałów rozchodzących się w kablu.

Reguły „5-4-3” dla sieci koncentrycznych:

Standard dla sieci na kablu koncentrycznym pozwala na użycie sieci nie większej niż 4 repeatery i odpowiednio nie więcej niż 5 odcinków kabla. Przy maksymalnej długości segmentu kabla 500 m daje to maksymalną długość sieci 500 * 5 = 2500 m. Tylko 3 z 5 segmentów mogą być obciążone, to znaczy te, do których podłączone są węzły końcowe. Pomiędzy wczytanymi segmentami muszą znajdować się rozładowane segmenty.

l0Baza-2

Kabel jest używany jako monokanałowy dla wszystkich stacji, maksymalna długość segmentu wynosi 185 m. Aby podłączyć kabel do karta sieciowa potrzebujesz trójnika, a kabel musi mieć złącze BNC.

Stosowana jest również zasada 5-4-3.

l0Base-T

Tworzy topologię gwiazdy w oparciu o koncentrator, koncentrator działa jako repeater i tworzy pojedynczy kanał, maksymalna długość segmentu to 100m. Węzły końcowe są połączone za pomocą dwóch zakręcona para. Jedna para do przesyłania danych z węzła do węzła to Tx, a druga do przesyłania danych z węzła do węzła to Rx.
Zasady „4 koncentratorów” dla sieci opartych na skrętce:
Standard dla sieci skrętkowych określa maksymalną liczbę koncentratorów pomiędzy dowolnymi dwiema stacjami sieciowymi, czyli 4. Ta zasada jest nazywana „regułą 4 koncentratorów”. Oczywiście, jeśli pomiędzy dowolnymi dwoma węzłami sieci nie powinny znajdować się więcej niż 4 wtórniki, to maksymalna średnica sieci skrętki wynosi 5 * 100 = 500 m (maksymalna długość segmentu wynosi 100 m).

10Base-F

Funkcjonalnie sieć Ethernet na kablu optycznym składa się z tych samych elementów, co sieć 10Base-T.

Standard FOIRL (Fiber Optic Inter-Repeater Link) był pierwszym standardem komitetu 802.3 dotyczącym używania światłowodów w sieciach Ethernet. Maksymalna długość segmentu 1000m, maksymalna ilość hubów 4, o łącznej długości sieci nie większej niż 2500m.

Standard 10Base-FL jest niewielkim ulepszeniem standardu FOIRL. Maksymalna długość segmentu 2000 m. Maksymalny numer 4 huby, a maksymalna długość sieci to 2500 m.

Standard 10Base-FB służy wyłącznie do podłączania przemienników. Węzły końcowe nie mogą używać tego standardu do podłączania do portów koncentratora. Maksymalna ilość koncentratorów 5, maksymalna długość jednego segmentu 2000m i maksymalna długość sieci 2740m.

Stół. Parametry specyfikacji warstwy fizycznej dla standardu Ethernet

Rozważając zasadę „5-4-3” lub „4-huby”, w przypadku pojawienia się wyimaginowanego sygnału urządzenia „switch” na ścieżce propagacji przez kable, obliczanie ograniczeń topologicznych zaczyna się od zera.

Przepustowość sieci Ethernet

Przepustowość jest mierzona liczbą ramek lub liczbą bajtów danych przesyłanych przez sieć na jednostkę czasu. Jeśli nie ma kolizji w sieci, maksymalna prędkość minimalny rozmiar ramki (64 bajty) to 14881 klatek na sekundę. Jednocześnie przydatne wydajność dla ramek Ethernet II - 5,48 Mb/s.

Maksymalna liczba klatek na sekundę największy rozmiar(1500 bajtów) to 813 klatek na sekundę. Użyteczna przepustowość wyniesie wówczas 9,76 Mb/s.

W sieciach Ethernet w warstwie łącza ramki 4 różne formaty. Wynika to z długiej historii rozwoju technologii Ethernet, sięgającej okresu przed przyjęciem standardów IEEE 802, kiedy podwarstwa LLC nie była oddzielona od protokołu ogólnego, a co za tym idzie nagłówek LLC nie był używany.

Różnice w formatach ramek mogą prowadzić do niezgodności między sprzętem a oprogramowaniem sieciowym zaprojektowanym do pracy tylko z jednym standardem ramek Ethernet. Obecnie jednak praktycznie wszystkie karty sieciowe, sterowniki kart sieciowych, mosty/przełączniki i routery są w stanie pracować ze wszystkimi formatami ramek Ethernet używanymi w praktyce, a rozpoznawanie typu ramek odbywa się automatycznie.

Poniżej znajduje się opis wszystkich czterech typów ramek Ethernet (tu ramka oznacza cały zestaw pól, które odnoszą się do warstwy łącza, czyli pól poziomów MAC i LLC). Ten sam typ ramki może mieć różne nazwy, więc poniżej znajdują się niektóre z najczęstszych nazw dla każdego typu ramki:

    rama 802.3/LLC (ramka 802.3/802.2 lub rama Novell 802.2);

    Surowa ramka 802.3 (lub ramka Novell 802.3);

    Ramka Ethernet DIX (lub ramka Ethernet II);

    Ramka Ethernet SNAP.

Formaty dla wszystkich tych czterech typów ramek Ethernet pokazano na rysunku 1. 10.3.

Rama 802.3/LLC

Nagłówek ramki 802.3/LLC jest wynikiem połączenia pól nagłówka ramki zdefiniowanych w standardach IEEE 802.3 i 802.2.

Standard 802.3 definiuje osiem pól nagłówka (rysunek 10.3; pole preambuły i ogranicznik ramki początkowej nie są pokazane na rysunku).

    Pole preambuły (Preambuła) składa się z siedmiu bajtów synchronizujących 10101010. W przypadku kodowania Manchester kombinacja ta jest reprezentowana w medium fizycznym przez okresowy sygnał falowy o częstotliwości 5 MHz.

    Ogranicznik początku ramki (SFD) składa się z jednego bajtu 10101011. Wystąpienie tej kombinacji bitów wskazuje, że następny bajt jest pierwszym bajtem nagłówka ramki.

    Adres docelowy (DA) może mieć długość 2 lub 6 bajtów. W praktyce zawsze używane są adresy 6-bajtowe.

    Adres źródłowy (SA) - jest to 2- lub 6-bajtowe pole zawierające adres hosta, który wysłał ramkę. Pierwszy bit adresu to zawsze 0.

    Długość (długość, L) - Pole 2-bajtowe określające długość pola danych w ramce.

    Pole danych (Dane) może zawierać od 0 do 1500 bajtów. Ale jeśli długość pola jest mniejsza niż 46 bajtów, to następne pole - pole wypełniające - służy do wypełnienia ramki do minimalnej dopuszczalnej wartości 46 bajtów.

    Pole dopełniania składa się z kilku bajtów dopełnienia, które zapewnia minimalną długość pola danych wynoszącą 46 bajtów. Zapewnia to prawidłowe działanie mechanizmu wykrywania kolizji. Jeśli długość pola danych jest wystarczająca, to pole wypełniające nie pojawia się w ramce.

    Pole sumy kontrolnej (sekwencja kontroli ramki, PCS) składa się z 4 bajtów zawierających sumę kontrolną. Wartość ta jest obliczana przy użyciu algorytmu CRC-32.

Ramka 802.3 jest ramką podwarstwy MAC, dlatego zgodnie ze standardem 802.2 ramka podwarstwy LLC z usuniętymi flagami początku i końca ramki jest osadzona w jej polu danych. Format ramki LLC został opisany powyżej. Ponieważ ramka LLC ma nagłówek 3 (w trybie LLC1) lub 4 bajty (w trybie LLC2), maksymalny rozmiar pola danych jest zmniejszony do 1497 lub 1496 bajtów.

Rysunek 10.3. Formaty ramek Ethernet

Surowa ramka 802.3, znana również jako ramka Novell 802.3, została pokazana na rysunku 1-3. 10.3. Na rysunku widać, że jest to ramka podwarstwy 802.3 MAC, ale bez zagnieżdżonej ramki podwarstwy LLC. Novell przez długi czas nie wykorzystywał pól usługi ramek LLC w swoim systemie operacyjnym NetWare ze względu na brak konieczności identyfikowania typu informacji osadzonej w polu danych - zawsze był pakiet protokołu IPX, który przez długi czas był tylko protokół warstwy sieciowej w systemie NetWare OS.

Rama Ethernet DIX/Ethernet II

Ramka Ethernet DIX, znana również jako ramka Ethernet II, ma strukturę (patrz Rysunek 10.3) taką samą jak ramka Raw 802.3. Jednak pole 2-bajtowe Długość (L) Rama Surowa ramka 802.3 Ethernet DIX używane jako pole typu protokołu. To pole, teraz nazywane Type(T) lub EtherType, służy temu samemu celowi, co pola DSAP i SSAP ramki LLC - aby wskazać typ protokołu wyższej warstwy, który zamknął swój pakiet w polu danych tej ramki.

Rama Ethernet PSTRYKNĄĆ

Aby rozwiązać niespójność w kodowaniu typów protokołów, których komunikaty są osadzane w polu danych ramek Ethernet, komisja 802.2 podjęła prace nad dalszym standaryzacją ramek Ethernet. Rezultatem była ramka Ethernet SNAP (SNAP - Subnetwork Access Protocol). Ramka Ethernet SNAP (patrz Rysunek 10.3) jest rozszerzeniem ramki 802.3/LLC o dodatkowy nagłówek protokołu SNAP składający się z dwóch pól: OUI i Type. Pole Type składa się z 2 bajtów i powtarza format i przeznaczenie pola Type ramki Ethernet II (to znaczy używa tych samych wartości kodu protokołu). Pole OUI (Organizationally Unique Identifier) ​​określa identyfikator organizacji, która kontroluje kody protokołów w polu Type. Wykorzystując nagłówek SNAP uzyskano zgodność z kodami protokołów w ramkach Ethernet II oraz stworzono uniwersalny schemat kodowania protokołów. Kody protokołów dla technologii 802 są kontrolowane przez IEEE, który ma OUI 000000. Jeśli inne kody protokołów będą wymagane dla jakiejkolwiek nowej technologii w przyszłości, wystarczy określić inny identyfikator dla organizacji przypisującej te kody, a stare wartości kodu pozostaną w mocy (w połączeniu z innym OUI).

W sieci wiele komputerów musi współdzielić medium transmisyjne. Jeśli jednak dwa komputery spróbują przesłać dane w tym samym czasie, nastąpi kolizja i dane zostaną utracone.

Wszystko komputery sieciowe musi korzystać z tej samej metody dostępu, w przeciwnym razie sieć ulegnie awarii. Komputery indywidualne, którego metody będą dominować, nie pozwolą na dokonanie przelewu przez resztę. Metody dostępu służą zapobieganiu jednoczesnemu dostępowi wielu komputerów do kabla, sekwencjonowaniu transmisji i odbierania danych przez sieć oraz zapewnianiu, że tylko jeden komputer może jednocześnie przesyłać dane.

W Carrier Sense Multiple Access with Collision Detection (w skrócie CSMA/CD) wszystkie komputery w sieci — zarówno klienci, jak i serwery — „nasłuchują” kabla, dążąc do wykrycia przesyłanych danych (tj. ruchu).

1) Komputer "rozumie", że kabel jest wolny (czyli nie ma ruchu).

2) Komputer może rozpocząć przesyłanie danych.

3) Dopóki kabel nie zostanie zwolniony (podczas przesyłania danych), żaden z komputerów w sieci nie może przesyłać danych.

Jeśli więcej niż jedno urządzenie sieciowe próbuje jednocześnie uzyskać dostęp do medium transmisyjnego, dochodzi do kolizji. Komputery rejestrują wystąpienie kolizji, zwalniają linię transmisyjną na pewien losowo określony (w granicach normy) czas, po którym próba transmisji jest powtarzana. Komputer, który jako pierwszy przechwycił linię transmisyjną, zaczyna przesyłać dane.

CSMA/CD jest znana jako metoda kontradyktoryjna, ponieważ komputery w sieci „konkurują” (konkurują) między sobą o prawo do przesyłania danych.

Możliwość wykrywania kolizji jest powodem, który ogranicza zakres samego CSMA/CD. Ze względu na skończoną prędkość propagacji sygnału w przewodach na odległości ponad 2500 m (1,5 mili) mechanizm wykrywania kolizji nie jest skuteczny. Jeśli odległość do komputera transmitującego przekroczy ten limit, niektóre komputery nie mają czasu na wykrycie obciążenia kabla i rozpoczęcie transmisji danych, co prowadzi do kolizji i zniszczenia pakietów danych.

Przykładami protokołów CDSMA/CD są DEC Ethernet w wersji 2 i IEEE 802.3.

Specyfikacja fizycznego nośnika Ethernet

Dla technologii Ethernet opracowano różne warianty warstwy fizycznej, różniące się nie tylko rodzajem kabla i parametrami elektrycznymi impulsów, jak to ma miejsce w technologii Ethernet 10 Mb/s, ale także sposobem kodowania sygnałów i liczba żył użytych w kablu. Dlatego warstwa fizyczna Ethernetu ma bardziej złożoną strukturę niż klasyczny Ethernet.

Dzisiejsze specyfikacje technologii Ethernet obejmują następujące media transmisyjne.

  • 10Baza-2- kabel koncentryczny o średnicy 0,25 cala, zwany cienkim koncentrykiem. Ma impedancję falową 50 omów. Maksymalna długość segmentu to 185 metrów (bez repeaterów).
  • 10Base-5- kabel koncentryczny o średnicy 0,5 cala, zwany „grubym” koncentrykiem. Ma impedancję falową 50 omów. Maksymalna długość segmentu bez repeatera to 500 metrów.
  • 10Base-T- kabel oparty na skrętce nieekranowanej (UTP). Tworzy topologię gwiazdy opartą na piaście. Odległość między węzłem a węzłem końcowym nie przekracza 100 metrów.
  • 10Base-F- światłowód. Topologia jest podobna do standardu 10Base-T. Istnieje kilka wariantów tej specyfikacji - FOIRL (odległość do 1000 m), 10Base-FL (odległość do 2000 m).

Formaty ramek Ethernet

Podobnie jak w produkcji, ramki w sieci Ethernet to wszystko. Służą one jako pojemnik na wszystkie pakiety wysokiego poziomu, dlatego aby zrozumieć się nawzajem, nadawca i odbiorca muszą używać tego samego typu ramki Ethernet. Standard technologii Ethernet, zdefiniowany w dokumencie IEEE802.3, opisuje pojedynczy format ramki warstwy MAC.Ramki mogą mieć łącznie cztery różne formaty i nie różnią się zbytnio od siebie. Ponadto istnieją tylko dwa podstawowe formaty ramek (w terminologii angielskiej nazywane są "formatami surowymi") - Ethernet_II i Ethernet_802.3, a różnią się one przeznaczeniem tylko jednego pola.

  • Rama Ethernet DIX (Ethernet II). Pojawił się w wyniku prac konsorcjum trzech firm Digital, Intel i Xerox w 1980 roku, które przedstawiło swoją autorską wersję standardu Ethernet do komisji 802.3 jako projekt standardu międzynarodowego.
  • 802.3/LLC, 802.3/802.2 lub Novell 802.2. Przyjęty przez komisję 802.3 przyjął standard, który różni się niektórymi szczegółami od Ethernet DIX.
  • Surowa ramka 802.3, lub Novell 802.3- pojawił się w wyniku starań firmy Novell o przyspieszenie działania jego stosu protokołów w sieciach Ethernet

Każda ramka zaczyna się preambułą (preambułą) o długości 7 bajtów, wypełnioną wzorem 0b10101010 (w celu synchronizacji źródła i celu). Po preambule pojawia się bajt początkowego ogranicznika ramki (Start of Frame Delimiter, SFD), zawierający sekwencję 0b10101011 i wskazujący początek własnej ramki. Następnie przychodzą pola adresu docelowego (DA) i źródła (Adres źródłowy, SA). Ethernet używa 48-bitowych adresów warstwy MAC IEEE.

Poniższe pole ma różne znaczenie i różną długość w zależności od typu ramy.

Na końcu ramki znajduje się 32-bitowe pole sumy kontrolnej (Frame Check Sequence, FCS). Suma kontrolna jest obliczana za pomocą algorytmu CRC-32. Rozmiar ramki Ethernet od 64 do 1518 bajtów (bez preambuły, ale z polem sumy kontrolnej)

Typ ramki Ethernet DIX

Ramka Ethernet DIX, zwana również ramką Ethernet II, jest podobna do ramki Raw 802.3 tym, że również nie używa nagłówków podwarstwy LLC, ale różni się tym, że definiuje pole typu protokołu (pole Typ) zamiast długości pole. To pole służy temu samemu celowi, co pola DSAP i SSAP ramki LLC - do wskazania typu protokołu wyższej warstwy, który zamknął swój pakiet w polu danych tej ramki. Kodowanie typu protokołu wykorzystuje wartości większe niż maksymalna długość pola danych wynosząca 1500, dzięki czemu ramki Ethernet II i 802.3 są łatwo rozróżnialne.

Surowy typ ramki 802.3.

Po adresie źródłowym zawiera 16-bitowe pole długości (L) określające liczbę bajtów następujących po polu długości (z wyłączeniem pola sumy kontrolnej). Pakiet protokołu IPX jest zawsze osadzony w tym typie ramki. Pierwsze dwa bajty nagłówka protokołu IPX zawierają sumę kontrolną datagramu IPX. Jednak to pole nie jest używane domyślnie i ma wartość 0xFFFF.

Typ ramy 802.3.LLC

Po polu adresu źródłowego następuje 16-bitowe pole określające liczbę bajtów, które następują po tym polu (z wyłączeniem pola sumy kontrolnej), po którym następuje nagłówek LLC. Nagłówek ramki 802.3/LLC jest wynikiem połączenia pól nagłówka ramki zdefiniowanych w standardach 802.3 i 802.2.

Standard 802.3 definiuje osiem pól nagłówka:

Pole preambuły składa się z siedmiu bajtów danych synchronizacji. Każdy bajt zawiera tę samą sekwencję bitów - 10101010. W przypadku kodowania Manchester ta kombinacja jest reprezentowana w medium fizycznym przez okresowy sygnał falowy. Preambuła jest wykorzystywana do zapewnienia czasu i możliwości, aby obwody nadawczo-odbiorcze doszły do ​​stałej synchronizacji z odebranymi sygnałami zegarowymi.

Początkowy ogranicznik ramka składa się z jednego bajtu z zestawem bitów 10101011. Pojawienie się tej kombinacji jest oznaką zbliżającego się odbioru ramki.

Adres odbiorcy- może mieć długość 2 lub 6 bajtów (docelowy adres MAC). Pierwszy bit adresu odbiorcy jest znakiem, czy adres jest indywidualny czy grupowy: jeśli 0, to adres wskazuje konkretną stację, jeśli 1, to jest to adres grupowy kilku (ewentualnie wszystkich) stacji sieciowych. W adresowaniu rozgłoszeniowym wszystkie bity pola adresu są ustawione na 1. Powszechnie stosuje się adresy 6-bajtowe.

Adres nadawcy- 2 lub 6 bajtowe pole zawierające adres stacji nadawcy. Pierwszy bit to zawsze 0.

podwójny bajt pole długości określa długość pola danych w ramce.

Pole danych może zawierać od 0 do 1500 bajtów. Ale jeśli długość pola jest mniejsza niż 46 bajtów, to używane jest następne pole - pole dopełniające, aby wypełnić ramkę do minimalnej dozwolonej długości.

Wypełnij pole składa się z pewnej liczby bajtów dopełnienia, które zapewnia określoną minimalną długość pola danych (46 bajtów). Zapewnia to prawidłowe działanie mechanizmu wykrywania kolizji. Jeśli długość pola danych jest wystarczająca, to pole wypełniające nie pojawia się w ramce.

Pole sumy kontrolnej- 4 bajty zawierające wartość obliczaną według określonego algorytmu (wielomian CRC-32). Po odebraniu ramki stacja robocza wykonuje własne obliczenia sumy kontrolnej dla tej ramki, porównuje odebraną wartość z wartością pola sumy kontrolnej i w ten sposób określa, czy odebrana ramka jest uszkodzona.

Ramka 802.3 jest ramką podwarstwy MAC, zgodnie ze standardem 802.2, ramka podwarstwy LLC jest osadzona w jej polu danych z usuniętymi flagami początku i końca ramki.

Wynikowa ramka 802.3/LLC jest pokazana poniżej. Ponieważ ramka LLC ma 3-bajtowy nagłówek, maksymalny rozmiar pola danych jest zmniejszony do 1497 bajtów.

Ramka Ethernet typu SNAP

Ramka Ethernet SNAP (SNAP - SubNetwork Access Protocol) jest rozszerzeniem ramki 802.3/ LLC poprzez wprowadzenie dodatkowego nagłówka protokołu SNAP. Nagłówek składa się z 3-bajtowego pola identyfikatora organizacji (OUI) i 2-bajtowego pola typu (Typ, Ethertype). Typ identyfikuje protokół najwyższego poziomu, a pole OUI określa tożsamość organizacji, która kontroluje przypisywanie kodów typu protokołu. Kody protokołów dla standardów IEEE 802 są kontrolowane przez IEEE, który ma kod OUI równy 0x000000. W przypadku tego kodu OUI pole typu dla Ethernet SNAP jest takie samo, jak wartość typu Ethernet DIX.

Tabela podsumowująca użycie różnych typów ramek przez protokoły wyższych warstw.

Rodzajrama

Ethernet II

Ethernet surowy 802.3

Ethernet 802.3/LLC

SNAP Ethernet

Siećprotokoły

IPX, IP, AppleTalk, faza I

IPX, IP, AppleTalk, faza II

szybki Ethernet

Różnica między technologią Fast Ethernet a Ethernet

Wszystkie różnice między technologiami Ethernet i Fast Ethernet koncentrują się na poziomie fizycznym. Celem technologii Fast Ethernet jest uzyskanie znacznie, o rząd wielkości wyższej, prędkości w porównaniu z 10 Base T Ethernet - IEEE 802.3, przy zachowaniu tej samej metody dostępu, formatu ramki i systemu nagrywania.Poziomy MAC i LLC w Fast Ethernet pozostały absolutnie to samo.

Organizacja warstwy fizycznej technologii Fast Ethernet jest bardziej złożona, ponieważ wykorzystuje trzy warianty systemów kablowych:

  • Kabel światłowodowy wielomodowy (dwa włókna)
  • Skrętka kategorii 5 (dwie pary)
  • Skrętka kategorii 3 (cztery pary)

Kabel koncentryczny nie jest używany w Fast Ethernet. Sieci Fast Ethernet na współdzielonym medium, takie jak sieci 10Base-T/10Base-F, mają hierarchiczną strukturę drzewa zbudowaną na koncentratorach. Główną różnicą w konfiguracji sieci Fast Ethernet jest zmniejszenie średnicy do 200 metrów, co tłumaczy się skróceniem czasu transmisji ramek. minimalna długość 10 razy w porównaniu do sieci Ethernet 10 MB.

Jednak w przypadku korzystania z przełączników protokół Fast Ethernet może działać w trybie pełnego dupleksu, w którym nie ma limitu całkowitej długości sieci, a jedynie poszczególne segmenty fizyczne.

Specyfikacja środowiska fizycznego Ethernet

  • 100BASE-T- Ogólny termin określający jeden z trzech standardów Ethernet 100 Mb/s, w których medium transmisyjne jest skrętka. Długość segmentu do 200-250 metrów. Obejmuje 100BASE-TX, 100BASE-T4 i 100BASE-T2.
  • 100BASE-TX, IEEE 802.3u- Rozwój technologii 10BASE-T, stosowana jest topologia gwiazdy, stosowana jest skrętka kategorii 5, która faktycznie wykorzystuje 2 pary przewodników, maksymalna szybkość przesyłania danych wynosi 100 Mb/s.
  • 100BASE-T4- Ethernet 100 Mbit/s przez kabel kategorii 3. Używane są wszystkie 4 pary. Teraz praktycznie nie używany. Transmisja danych odbywa się w trybie half-duplex.
  • 100BASE-T2- Nieużywany. Ethernet 100 Mb/s przez kabel kategorii 3. Używane są tylko 2 pary. Obsługiwany jest tryb transmisji full duplex, gdy sygnały rozchodzą się w przeciwnych kierunkach w każdej parze. Szybkość transmisji w jednym kierunku - 50 Mb/s.
  • 100BASE-FX- Ethernet 100 Mb/s przez kabel światłowodowy. Maksymalna długość segmentu to 400 metrów w trybie half duplex (dla gwarantowanego wykrywania kolizji) lub 2 km w trybie full duplex w światłowodzie wielomodowym i do 32 km w trybie single mode.

Gigabit Ethernet

  • 1000BASE-T, IEEE 802.3ab- Standardowy Ethernet 1 Gb/s. Stosowana jest skrętka kategorii 5e lub kategorii 6. Wszystkie 4 pary są zaangażowane w transmisję danych. Szybkość transmisji danych - 250 Mbit/s na jednej parze.
  • 1000BASE-TX, - Standard Ethernet 1 Gb/s wykorzystujący wyłącznie skrętkę kategorii 6. nieużywany.
  • 1000Base-X- ogólne określenie technologii Gigabit Ethernet wykorzystującej kabel światłowodowy jako medium transmisji danych, obejmuje 1000BASE-SX, 1000BASE-LX i 1000BASE-CX.
  • 1000BASE-SX, IEEE 802.3z- Technologia Ethernet 1 Gbps, wykorzystuje światłowód wielomodowy, odległość transmisji sygnału bez repeatera wynosi do 550 metrów.
  • 1000BASE-LX, IEEE 802.3z- Technologia Ethernet 1 Gbps, wykorzystuje światłowód wielomodowy, odległość transmisji sygnału bez repeatera wynosi do 550 metrów. Zoptymalizowany pod kątem dużych odległości przy użyciu światłowodu jednomodowego (do 10 kilometrów).
  • 1000BASE-CX- Technologia Gigabit Ethernet na krótkie odległości (do 25 metrów), przy użyciu specjalnego kabla miedzianego (Skrętka ekranowana (STP)) o impedancji charakterystycznej 150 omów. Zastąpiony przez 1000BASE-T, a teraz nieużywany.
  • 1000BASE-LH (długociągi)- Technologia Ethernet 1Gbps, wykorzystująca jednomodowy kabel optyczny, odległość transmisji sygnału bez repeatera do 100 kilometrów.

Problemy z Gigabit Ethernet

  • Zapewnienie akceptowalnej średnicy sieci do pracy w środowisku współdzielonym. Ze względu na ograniczenia długości kabla CSMA/CD, współdzielona wersja Gigabit Ethernet pozwalałaby na długość segmentu tylko 25 metrów. Trzeba było rozwiązać ten problem.
  • Osiągnięcie szybkości transmisji 1000 Mb/s na kablu optycznym. Technologia Fibre Channel, której warstwa fizyczna została przyjęta jako podstawa światłowodowej wersji Gigabit Ethernet, zapewnia transfer danych na poziomie nawet 800 Mb/s.
  • Użyj jako skrętki.

Aby rozwiązać te problemy, konieczne było wprowadzenie zmian nie tylko w warstwie fizycznej, ale także w warstwie MAC.

Sposoby zapewnienia średnicy sieci 200 m na współdzielonym medium

Aby rozszerzyć maksymalną średnicę sieci Gigabit Ethernet w trybie half-duplex do 200 m, twórcy technologii podjęli całkiem naturalne środki w oparciu o znany stosunek czasu transmisji o minimalnej długości ramki do podwójnego czasu podróży w obie strony.

Minimalny rozmiar ramki został zwiększony (z wyłączeniem preambuły) z 64 do 512 bajtów lub 4096 bt. W związku z tym czas podróży w obie strony można teraz również zwiększyć do 4095 bt, co pozwala na akceptowalną średnicę sieci około 200 m przy użyciu pojedynczego wzmacniaka. Przy podwójnym opóźnieniu sygnału wynoszącym 10 bt/m, kable światłowodowe o długości 100 m przyczyniają się do podwójnego obrotu o wartości 1000 bt, a jeśli wzmacniacz i karty sieciowe przyczyniają się do takich samych opóźnień, jak technologie Fast Ethernet (dane dla których podano w poprzedniej sekcji ), wówczas opóźnienie przemiennika o wartości 1000 bt i para kart sieciowych o wartości 1000 bt zwiększą czas podróży w obie strony o wartości 4000 bt, co spełnia warunek wykrywania kolizji. Aby zwiększyć długość ramki do wartości wymaganej w nowej technologii, karta sieciowa musi uzupełnić pole danych do długości 448 bajtów o tzw. rozszerzenie (rozszerzenie), czyli pole wypełnione zabronionymi znakami kodu 8V/10V których nie można pomylić z kodami danych.

Aby zmniejszyć narzut podczas używania zbyt długich ramek do przesyłania krótkich potwierdzeń, twórcy standardu umożliwili węzłom końcowym przesyłanie kilku ramek z rzędu, bez przesyłania medium do innych stacji. Ten tryb nosi nazwę Burst Mode — ekskluzywny tryb zdjęć seryjnych. Stacja może przesłać kilka ramek z rzędu o łącznej długości nie większej niż 65536 bitów lub 8192 bajtów. Jeśli stacja musi przesłać kilka małych ramek, może nie wypełniać ich do rozmiaru 512 bajtów, ale transmitować jeden rząd aż do wyczerpania limitu 8192 bajtów (limit ten obejmuje wszystkie bajty ramki, w tym preambuła, nagłówek, dane i suma kontrolna) . Limit 8192 bajtów nazywa się BurstLength. Jeśli stacja zaczęła nadawać ramkę i limit BurstLength został osiągnięty w środku ramki, ramka może zostać przesłana do końca.

Zwiększenie ramki „łączonej” do 8192 bajtów nieco opóźnia dostęp do współdzielonego środowiska innych stacji, ale przy prędkości 1000 Mb/s opóźnienie to nie jest tak duże

Literatura

  1. V.G.Olifer, N.A.Olifer Sieci komputerowe

Standard Gigabit Ethernet wykorzystujący kabel kategorii 5 (nieekranowana skrętka) jako medium transmisyjne, opisany w IEEE 802.3ab, został ostatecznie zatwierdzony 28 czerwca 1999 roku.

Czas minął i już teraz możemy powiedzieć, że gigabitowy Ethernet po „miedzi” na stałe wpisał się w historię rozwoju sieci lokalnych. Gwałtowny spadek cen zarówno gigabitowych kart sieciowych 1000Base-T, jak i gigabitowych modułów do przełączników doprowadził stopniowo do tego, że instalowanie takich kart w serwerach staje się de facto standardem. Na przykład niektórzy producenci serwerów już zaczęli integrować gigabitowe adaptery 1000Base-T z serwerem płyty główne, a liczba firm produkujących takie adaptery osiągnęła na początku tego roku 25. Ponadto rozpoczęto produkcję adapterów przeznaczonych do instalacji w stacjach roboczych (różnią się tym, że są przeznaczone do 32-bitowej magistrali PCI 33-MHz) . Wszystko to pozwala nam śmiało powiedzieć, że za rok lub dwa gigabitowe karty sieciowe staną się tak powszechne, jak obecnie karty Fast Ethernet.

Rozważmy fundamentalne innowacje zawarte w standardzie IEEE 802.3ab, które umożliwiły osiągnięcie tak dużej prędkości transmisji przy zachowaniu tej samej maksymalnej odległości między dwoma komputerami wynoszącej 100 m, jak miało to miejsce w przypadku standardu Fast Ethernet.

Przede wszystkim przypominamy, że karty sieciowe działają w warstwie fizycznej i łącza danych w siedmiowarstwowym modelu OSI (Open System Interconnection). Warstwa łącza jest zwykle podzielona na dwie podwarstwy: MAC i LCC. Podwarstwa MAC (Media Access Control) to podpoziom kontroli dostępu do nośnika transmisji danych, który zapewnia prawidłowe współdzielenie wspólnego współdzielonego nośnika transmisji danych, udostępniając go zgodnie z określonym algorytmem do dyspozycji danej stacji. Podwarstwa LCC (Logical Link Control) odpowiada za transmisję ramek między węzłami o różnym stopniu niezawodności, a także realizuje funkcje interfejsu z przylegającą do niej trzecią warstwą (sieciową).

Wszystkie różnice między Ethernetem i Fast Ethernetem koncentrują się tylko w warstwie fizycznej. Jednocześnie MAC i LCC nie uległy żadnym zmianom.

Warstwę fizyczną można z grubsza podzielić na trzy elementy: warstwę negocjacji, interfejs niezależny od mediów (MII) i urządzenie warstwy fizycznej (PHY). Urządzenie warstwy fizycznej można również podzielić na kilka podwarstw: fizyczną podwarstwę kodującą, podwarstwę przyłączania nośnika fizycznego, podwarstwę zależną od nośnika fizycznego i podwarstwę autonegocjacji.

Jeśli różnice między Ethernetem a Fast Ethernetem są minimalne i nie wpływają na warstwę MAC, to przy opracowywaniu standardu Gigabit Ethernet 1000Base-T twórcy musieli nie tylko wprowadzić zmiany w warstwie fizycznej, ale także wpłynąć na warstwę MAC (rys. 1).

Niemniej jednak istnieje wiele podobieństw między wszystkimi trzema technologiami. Przede wszystkim jest to sposób dostępu do nośnika transmisji danych CSMA/CD, tryby pracy half-duplex i full-duplex oraz formaty ramek Ethernet. Jednocześnie użycie skrętki kategorii 5 wymagało znacznych zmian w implementacji warstwy fizycznej adaptera.

Pierwszym problemem związanym z implementacją 1 Gb/s było zapewnienie akceptowalnej średnicy sieci podczas pracy w trybie half-duplex. Jak wiadomo, minimalny rozmiar ramki w sieciach Ethernet i Fast Ethernet to 64 bajty. Jednak rozmiar ramki 64 bajty przy szybkości transferu 1 GB/s prowadzi do tego, że do niezawodnego wykrywania kolizji konieczne jest, aby maksymalna średnica sieci (odległość między dwoma najbardziej oddalonymi od siebie komputerami) nie była większa. niż 25 m. pomyślne wykrycie kolizji jest możliwe tylko wtedy, gdy czas pomiędzy wysłaniem dwóch kolejnych ramek o minimalnej długości jest większy niż dwukrotność czasu propagacji sygnału pomiędzy dwoma najbardziej oddalonymi węzłami w sieci. Dlatego, aby zapewnić maksymalną średnicę sieci 200 m (dwa kable 100 m i przełącznik), minimalna długość ramki w standardzie Gigabit Ethernet została zwiększona do 512 bajtów. Aby zwiększyć długość ramki do wymaganej długości, karta sieciowa dopełnia pole danych do długości 448 bajtów z tzw. rozszerzeniem. Pole rozszerzenia to pole wypełnione niedozwolonymi znakami, których nie można pomylić z kodami danych (rys. 2). Jednocześnie zwiększenie minimalnej długości ramki ma negatywny wpływ na transmisję krótkich wiadomości serwisowych, takich jak paragony, ponieważ użyteczna przesyłane informacje staje się znacznie mniejsza niż całkowita przekazywana informacja. W celu zmniejszenia narzutu przy używaniu długich ramek do przesyłania krótkich kwitów, standard Gigabit Ethernet umożliwia transmisję kilku ramek z rzędu w trybie wyłącznego przechwytywania medium, czyli bez przesyłania medium do innych stacji. Taki tryb ekskluzywny przechwytywanie nazywa się trybem serii. W tym trybie stacja może transmitować kilka ramek z rzędu o łącznej długości nie większej niż 8192 bajtów (BurstLength).

Jak już wspomniano, wraz ze zmianą warstwy MAC osiągnięcie gigabitowych prędkości transmisji stało się możliwe dzięki istotnej zmianie warstwy fizycznej, czyli technologii prezentacji (kodowania) danych podczas transmisji danych po skrętce.

Aby zrozumieć zmiany, które zaszły na poziomie fizycznym, przypomnijmy sobie, czym jest kabel do transmisji danych i jakie zakłócenia występują podczas transmisji sygnału.

Nieekranowany kabel kategorii 5 składa się z czterech par przewodów, z których każda jest skręcona razem. Taki kabel jest przeznaczony do pracy na częstotliwości 100 MHz (rys. 3).

Z fizyki wiadomo, że każdy kabel ma oprócz aktywnych, także pojemnościowych i indukcyjnych rezystancji, przy czym dwie ostatnie zależne są od częstotliwości sygnału. Wszystkie trzy rodzaje rezystancji określają tzw. impedancję obwodu. Obecność impedancji powoduje, że sygnał rozchodzący się wzdłuż kabla stopniowo się tłumi, tracąc część swojej pierwotnej mocy.

Jeśli wzajemna indukcja zostanie obliczona na początku kabla, to odpowiedni rodzaj zakłóceń zostanie nazwany NEXT (przesłuchy bliskiego końca). Jeśli na końcu kabla uwzględnimy zakłócenia wywołane wzajemną indukcją, to nazywamy je FEXT (przesłuchy dalekiego końca – rys. 4).

Ponadto podczas propagacji sygnału dochodzi do innego rodzaju zakłóceń, związanych z niedopasowaniem impedancji wejściowej adapter sieciowy i kabel. W wyniku tego niedopasowania następuje odbicie sygnału, co również prowadzi do powstawania szumu.

Transmisja sygnałów w opisanych powyżej warunkach interferencji wymaga zastosowania pomysłowych metod zapewniających niezbędną szybkość transmisji i jednocześnie bezbłędne rozpoznawanie przesyłanych sygnałów.

Przede wszystkim przypomnijmy, jakie metody służą do reprezentowania sygnałów informacyjnych.

Podczas cyfrowego kodowania bitów „zera” i „jedynki” używane są kody potencjałowe lub impulsowe. W kodach potencjałów (rys. 5) tylko wartość potencjału sygnału jest używana do reprezentowania logicznych zer i jedynek. Na przykład jeden jest reprezentowany jako potencjał wysokiego poziomu, a zero jest reprezentowane jako potencjał niskiego poziomu. Kody impulsowe umożliwiają reprezentowanie bitów przez potencjalny spadek w określonym kierunku. Zatem spadek potencjału z niskiego do wysokiego poziomu może odpowiadać logicznemu zerowi.

W przypadku wykorzystania impulsów prostokątnych do transmisji danych konieczne jest wybranie metody kodowania, która jednocześnie spełnia kilka wymagań.

Po pierwsze, przy tej samej przepływności miałby najmniejszą szerokość widma sygnału wynikowego.

Po drugie, miałby umiejętność rozpoznawania błędów.

Po trzecie, zapewniłoby synchronizację między odbiornikiem a nadajnikiem.

Kod NRZ

W najprostszym przypadku kodowania potencjału jedynka logiczna może być reprezentowana przez wysoki potencjał, a logiczne zero przez niski potencjał. Podobny sposób przedstawiania sygnału nazywa się „kodowaniem bez powrotu do zera lub kodowaniem NRZ (bez powrotu do zera)”. Termin „bez powrotu” oznacza w tym przypadku, że w całym okresie zegara nie ma zmiany poziomu sygnału. Metoda NRZ jest łatwa do wdrożenia, dobrze rozpoznaje błędy, ale nie ma właściwości samosynchronizacji. Brak samosynchronizacji powoduje, że w przypadku pojawienia się długich ciągów zer lub jedynek odbiornik nie jest w stanie określić z sygnału wejściowego tych momentów w czasie, kiedy konieczne jest ponowne odczytanie danych. Dlatego niewielkie niedopasowanie częstotliwości zegara odbiornika i nadajnika może prowadzić do błędów, jeśli odbiornik odczytuje dane w niewłaściwym czasie, gdy jest to potrzebne. Zjawisko to jest szczególnie istotne przy dużych szybkościach transmisji, gdy czas jednego impulsu jest wyjątkowo krótki (przy szybkości transmisji 100 Mb/s czas jednego impulsu wynosi 10 ns). Inną wadą kodu NRZ jest obecność składowej o niskiej częstotliwości w widmie sygnału, gdy pojawiają się długie ciągi zer lub jedynek. Dlatego kod NRZ nie jest używany w czystej postaci do transmisji danych.

Kod NRZI

Innym rodzajem kodowania jest nieco zmodyfikowany kod NRZ o nazwie NRZI (Non Return to Zero with one Inverted). Kod NRZI to najprostsza realizacja zasada kodowania poprzez zmianę poziomu sygnału lub kodowanie różnicowe. Przy takim kodowaniu, gdy przesyłane jest zero, poziom sygnału się nie zmienia, to znaczy potencjał sygnału pozostaje taki sam jak w poprzednim cyklu. Kiedy jednostka jest przenoszona, potencjał jest odwracany na przeciwny. Porównanie kodów NRZ i NRZI pokazuje, że kod NRZI ma lepszą samosynchronizację, jeśli w zakodowanej informacji jest więcej logicznych jedynek niż logicznych zer. Tak więc kod ten pozwala „walczyć” długimi sekwencjami jedynek, ale nie zapewnia właściwej samosynchronizacji, gdy pojawiają się długie sekwencje zer logicznych.

Kod Manchesteru

W kodzie Manchester wykorzystuje się różnicę potencjałów do kodowania zer i jedynek, czyli kodowanie odbywa się za pomocą czoła impulsu. Spadek potencjału następuje w połowie impulsu zegarowego, podczas gdy jednostka jest kodowana przez spadek od niskiego do wysokiego potencjału, a zero jest odwrotnie. Na początku każdego cyklu, w przypadku pojawienia się kilku zer lub jedynek pod rząd, może nastąpić spadek potencjału serwisowego.

Ze wszystkich kodów, które braliśmy pod uwagę, Manchester ma najlepszą samosynchronizację, ponieważ zmiana sygnału następuje co najmniej raz na cykl zegara. Dlatego kod Manchester jest używany w sieciach Ethernet o szybkości transmisji 10 Mb/s (10Base 5, 10Base 2, 10Base-T).

Kod MLT-3

Kod MLT-3 (Multi Level Transmission-3) jest zaimplementowany podobnie do kodu NRZI. Zmiana poziomu sygnału liniowego następuje tylko wtedy, gdy wejście kodera wynosi 1, jednak w przeciwieństwie do kodu NRZI algorytm generowania jest tak dobrany, że dwie sąsiednie zmiany mają zawsze przeciwne kierunki. Wada kodu MLT-3 jest taka sama jak kodu NRZI - brak odpowiedniej synchronizacji w przypadku pojawienia się długich ciągów zer logicznych.

Jak już wspomniano, różne kody różnią się od siebie nie tylko stopniem samosynchronizacji, ale także szerokością widma. Szerokość widma sygnału jest określana przede wszystkim przez te harmoniczne, które wnoszą główny wkład energii w tworzenie sygnału. Harmoniczna podstawowa jest łatwa do obliczenia dla każdego typu kodu. W kodzie NRZ lub NRZI maksymalna częstotliwość harmonicznej podstawowej (rys. 6) odpowiada okresowemu ciągowi zer i jedynek logicznych, to znaczy gdy kilka zer lub jedynek nie występuje w jednym rzędzie. W tym przypadku okres podstawowej harmonicznej jest równy odstępowi czasu dwóch bitów, to znaczy przy szybkości transmisji 100 Mb/s częstotliwość podstawowej harmonicznej powinna wynosić 50 Hz.

W kodzie Manchester maksymalna częstotliwość podstawowej harmonicznej odpowiada sytuacji, gdy do wejścia enkodera wchodzi długi ciąg zer. W tym przypadku okres podstawowej harmonicznej jest równy odstępowi czasu jednego bitu, co oznacza, że ​​przy szybkości transmisji 100 Mb/s maksymalna częstotliwość podstawowej harmonicznej wyniesie 100 Hz.

W kodzie MLT-3 maksymalna częstotliwość podstawowej harmonicznej (rys. 7) jest osiągana, gdy na wejście enkodera podawane są długie ciągi jednostek logicznych. W tym przypadku okres podstawowej harmonicznej odpowiada czterobitowemu odstępowi czasu. Dlatego przy szybkości transmisji 100 Mb/s maksymalna częstotliwość podstawowa wyniesie 25 MHz.

Jak już wspomniano, kodowanie Manchester jest stosowane w sieciach Ethernet 10 Mb/s, co wiąże się zarówno z dobrymi właściwościami samosynchronizacji kodu, jak i dopuszczalną maksymalną częstotliwością harmonicznej podstawowej, która przy prędkości 10 Mb/s będzie 10 MHz. Ta wartość jest wystarczająca dla kabla nie tylko 5, ale także 3 kategorii, który jest przeznaczony do częstotliwości 20 MHz.

Jednocześnie stosowanie kodowania Manchester w sieciach o większej szybkości (100 Mb/s, 1 Gb/s) jest niedopuszczalne, ponieważ kable nie są przystosowane do pracy na tak wysokich częstotliwościach. W związku z tym stosowane są inne kody (NRZI i MLT-3), ale są one poddawane dodatkowej obróbce w celu poprawy właściwości samosynchronizujących kodu.

Kody nadmiarowe

Takie dodatkowe przetwarzanie polega na logicznym kodowaniu blokowym, w którym jedna grupa bitów jest zastępowana inną grupą zgodnie z określonym algorytmem. Najpopularniejszymi typami takiego kodowania są kody redundantne 4B/5B, 8B/6T i 8B/10T.

W tych kodach oryginalne grupy bitów są zastępowane nowymi, ale dłuższymi grupami. W kodzie 4B/5B grupa czterech bitów jest odwzorowywana na grupę pięciu bitów. Powstaje pytanie - po co nam te wszystkie komplikacje? Faktem jest, że takie kodowanie jest zbędne. Np. w kodzie 4B/5B w pierwotnym ciągu czterech bitów jest 16 różnych kombinacji bitowych zer i jedynek, a w grupie pięciu bitów są już 32 takie kombinacje. możesz wybrać 16 takich kombinacji, które nie zawierają duża liczba zera (przypomnij sobie, że w kodach źródłowych NRZI i MLT-3 długie ciągi zer prowadzą do utraty synchronizacji). W takim przypadku pozostałe niewykorzystane kombinacje można uznać za sekwencje zabronione. Tak więc, oprócz poprawy właściwości samosynchronizujących kodu źródłowego, kodowanie nadmiarowe umożliwia odbiornikowi rozpoznawanie błędów, ponieważ pojawienie się sekwencji bitów zakazanych wskazuje na wystąpienie błędu. Zgodność kodów początkowych i wynikowych przedstawia tab. jeden .

Z tabeli widać, że po zastosowaniu redundantnego kodu 4B/5B wynikowe sekwencje nie zawierają więcej niż dwa zera z rzędu, co gwarantuje samosynchronizację sekwencji bitowej.

W kodzie 8B/6T sekwencja ośmiu bitów oryginalnej informacji jest zastępowana sekwencją sześciu sygnałów, z których każdy może przyjmować trzy stany. W sekwencji ośmiobitowej jest 256 różnych stanów, a w sekwencji sześciu sygnałów trójpoziomowych jest już 729 takich stanów (36 = 729), a więc 473 stany uważa się za zabronione.

W kodzie 8B/10T każda sekwencja ośmiobitowa jest zastępowana sekwencją dziesięciobitową. W tym przypadku oryginalna sekwencja zawiera 256 różnych kombinacji zer i jedynek, a wynikowa sekwencja zawiera 1024. Zatem 768 kombinacji jest zabronionych.

Wszystkie brane pod uwagę kody nadmiarowe są używane w sieciach Ethernet. Tak więc kod 4B/5B jest stosowany w standardzie 100Base-TX, a kod 8B/6T w standardzie 100Base-4T, który praktycznie już nie jest stosowany. Kod 8B/10T stosowany jest w standardzie 1000Base-X (gdy jako medium transmisyjne wykorzystywane jest światłowód).

Oprócz zastosowania kodowania redundantnego, szeroko stosowana jest również inna metoda poprawiania początkowych właściwości kodów – jest to tzw. szyfrowanie.

Szyfrowanie

Scrambling (scramble - miksowanie) polega na mieszaniu oryginalnej sekwencji zer i jedynek w celu poprawy charakterystyki widmowej i właściwości samosynchronizacji wynikowej sekwencji bitowej. Szyfrowanie jest przeprowadzane przez bitowe wykluczające OR (XOR) oryginalnej sekwencji z sekwencją pseudolosową. Rezultatem jest „zaszyfrowany” strumień, który jest przywracany po stronie odbiorcy za pomocą deszyfratora.

Ze sprzętowego punktu widzenia scrambler składa się z kilku bramek XOR i rejestrów przesuwnych. Przypomnijmy, że element logiczny XOR (exclusive OR) wykonuje operację logiczną na dwóch operandach logicznych x i y, które mogą przyjmować wartość 0 lub 1, w oparciu o tabelę prawdy (Tabela 2).

Główna właściwość operacji XOR wynika bezpośrednio z tej tabeli:

Ponadto łatwo zauważyć, że prawo kombinacji stosuje się do operacji XOR:

Na diagramach element logiczny XOR jest zwykle oznaczony tak, jak pokazano na ryc. 8 .

Jak już wspomniano, kolejnym elementem skramblera jest rejestr przesuwny. Rejestr przesuwny składa się z kilku elementarnych komórek pamięci połączonych ze sobą szeregowo, wykonanych w oparciu o układy wyzwalające i przesyłających sygnał informacyjny z wejścia na wyjście za pomocą sygnału sterującego - impulsu taktowania. Rejestry przesuwne mogą odpowiadać zarówno na dodatnie zbocze impulsu zegarowego (to znaczy, gdy sygnał sterujący przechodzi ze stanu 0 do stanu 1), jak i na ujemne zbocze.

Rozważ najprostszą komórkę pamięci rejestru przesuwnego, kontrolowaną przez dodatnią krawędź impulsu zegarowego C (ryc. 9).

W momencie zmiany impulsu taktowania ze stanu 0 na stan 1, na wyjście komórki przesyłany jest sygnał, który był na jego wejściu w poprzednim momencie czasu, czyli gdy sygnał sterujący C był równy 0. Po że stan wyjścia nie zmienia się (komórka jest zablokowana) aż do nadejścia następnego dodatniego zbocza impulsu zegarowego.

Wykorzystując łańcuch składający się z kilku sekwencyjnie połączonych komórek pamięci z tym samym sygnałem sterującym, możliwe jest utworzenie rejestru przesuwnego (rys. 10), w którym bity informacji będą przesyłane sekwencyjnie z jednej komórki do drugiej synchronicznie wzdłuż dodatniego zbocza impuls zegarowy.

Integralnym elementem każdego scramblera jest generator sekwencji pseudolosowych. Taki generator jest tworzony z rejestru przesuwnego podczas tworzenia sprzężenia zwrotnego między wejściem i wyjściami komórek pamięci rejestru przesuwnego przez elementy logiczne XOR.

Rozważmy generator sekwencji pseudolosowych pokazany na ryc. jedenaście . Niech w początkowym momencie wszystkie cztery komórki pamięci przechowają jakiś ustawiony stan. Na przykład możemy założyć, że Q1=1, Q2=0, Q3=0 i Q4=1, a na wejściu pierwszej komórki D=0. Po nadejściu impulsu taktującego wszystkie bity przesuną się o jeden bit, a na wejście D pojawi się sygnał, którego wartość będzie określona wzorem:

Korzystając z tego wzoru, łatwo jest określić wartości wyjść ogniw magazynujących w każdym cyklu zegarowym generatora. W tabeli. 3 przedstawia stan wyjść komórek pamięci generatora sekwencji pseudolosowych w każdym cyklu działania. Jednocześnie łatwo zauważyć, że w początkowym momencie czasu i po 15 cyklach stan generatora całkowicie się powtarza, czyli 15 cykli pracy to okres powtórzenia naszej sekwencji pseudolosowej (to jest to spowodowane obecnością okresu powtórzeń, które nazywają sekwencją pseudolosową). Ogólnie rzecz biorąc, jeśli generator składa się z n komórek, okres powtarzania wynosi:

Rozważany przez nas generator wykorzystywał dowolny stan początkowy komórek, to znaczy miał ustawienie wstępne. Jednak zamiast takiego presetu, scramblery często używają samej oryginalnej sekwencji, która jest szyfrowana. Takie szyfratory nazywane są samosynchronizującymi się. Przykład takiego skramblera pokazano na rys. 12 .

Jeżeli oznaczymy cyfrę binarną kodu źródłowego, otrzymaną w i-tym cyklu pracy na wejściu scramblera, poprzez A i , oraz cyfrę binarną kodu wynikowego otrzymanego w i-tym cyklu pracy, poprzez B i , łatwo zauważyć, że rozważany scrambler wykonuje następującą operację logiczną: , gdzie B i -3 i B i -4 - cyfry binarne otrzymanego kodu wynikowego odpowiednio w poprzednich cyklach scramblera, 3 i 4 cykle wcześniej niż w chwili obecnej.

Po zdekodowaniu tak otrzymanej sekwencji, po stronie odbiornika używany jest deszyfrator. Najbardziej zdumiewającą rzeczą jest to, że obwód deszyfratora jest całkowicie identyczny z obwodem deszyfratora. Prostym rozumowaniem nietrudno zweryfikować, czy rzeczywiście tak jest. Jeżeli oznaczymy przez B i cyfrę dwójkową kodu źródłowego, która pojawia się w i-tym cyklu pracy na wejściu deszyfratora, oraz cyfrę dwójkową kodu wynikowego otrzymanego w i-tym cyklu pracy, przez C i , to deszyfrator działający według tego samego schematu co scrambler musi zaimplementować następujący algorytm:

Dlatego też, jeśli schemat deszyfratora pasuje do schematu szyfratora, wówczas deszyfrator całkowicie przywraca oryginalną sekwencję bitów informacji.

Rozważany czterobitowy obwód scramblera jest jednym z najprostszych. Technologia 1000Base-T wykorzystuje znacznie bardziej złożony 33-bitowy scrambler, który zwiększa okres powtarzania do 8 589 934 591 bitów (233-1), czyli generowane pseudolosowe sekwencje są powtarzane co 68,72 sekundy.

Kodowanie PAM-5

Po zorientowaniu się, jakie kody są używane do reprezentacji danych i rozważeniu metod poprawy samo-taktowania i właściwości spektralnych tych kodów, spróbujemy dowiedzieć się, czy te środki są wystarczające, aby zapewnić transmisję danych z prędkością 1000 Mb/s przy użyciu czteroparowy kabel kategorii 5.

Jak już zauważono, kodowanie Manchester ma dobre właściwości samosynchronizujące iw tym sensie nie wymaga żadnych modyfikacji, jednak maksymalna częstotliwość podstawowej harmonicznej jest liczbowo równa szybkości transmisji danych, to znaczy liczbie transmitowanych bitów na sekundę. To wystarcza do transmisji danych z prędkością 10 Mb/s, ponieważ kabel III kategorii (a w standardzie 10Base-T taki kabel można zastosować) jest ograniczony do częstotliwości 16 MHz. Jednak kodowanie Manchester nie jest odpowiednie dla szybkości transmisji danych 100 Mb/s lub wyższych.

Zastosowanie kodu NRZI, po dalszym udoskonaleniu redundantnym kodem blokowym 4B/5B i szyfrowaniem, a także trójpozycyjnym kodem MLT-3 (w celu zmniejszenia maksymalnej częstotliwości podstawowej harmonicznej), umożliwia transmisję danych z prędkością prędkość 100 Mb/s przez kabel kategorii 5. Rzeczywiście, przy użyciu kodu MLT-3 maksymalna częstotliwość podstawowej harmonicznej jest liczbowo równa jednej czwartej szybkości przesyłania danych, to znaczy przy szybkości transmisji 100 Mb/s częstotliwość podstawowa nie przekracza 25 MHz, co wystarczy dla kabla kategorii 5. Jednak ta metoda nie nadaje się do transmisji danych z prędkością 1000 Mb/s.

Dlatego standard 1000Base-T wykorzystuje zasadniczo inną metodę kodowania. Aby zmniejszyć częstotliwość taktowania do wartości, które umożliwiają przesyłanie danych przez skrętki kategorii 5, dane na linii są reprezentowane w tak zwanym kodzie PAM-5 (ryc. 13). W nim transmitowany sygnał ma zestaw pięciu stałych poziomów (-2, -1, 0, +1, +2). Cztery z nich służą do kodowania bitów informacji, a piąty do korekcji błędów. Na zestawie czterech ustalonych poziomów jeden dyskretny stan sygnału może zakodować dwa bity informacji naraz, ponieważ kombinacja dwóch bitów ma cztery możliwe kombinacje (tzw. dibity) - 00, 01, 10 i 11.

Przełączenie na dibity pozwala podwoić szybkość transmisji. Aby odróżnić bit lub informację, prędkość i prędkość różnych dyskretnych stanów sygnału, wprowadzono pojęcie szybkości transmisji. Baud to liczba różnych dyskretnych stanów sygnału na jednostkę czasu. Dlatego, jeśli dwa bity są zakodowane w jednym stanie dyskretnym, szybkość transmisji jest dwukrotnością szybkości transmisji, tj. 1 bod = 2 bps.

Jeśli weźmiemy pod uwagę, że kabel 5. kategorii jest przeznaczony do częstotliwości 125 MHz, czyli może działać z szybkością 125 Mbodów, to przepływność informacji na jednej skrętce wyniesie 250 Mb/s. Przypomnijmy, że w kablu są cztery skręcone pary, więc jeśli użyjesz wszystkich czterech par (rys. 14), to możesz zwiększyć prędkość transmisji do 250 Mbps4 = 1000 Mbps, czyli osiągnąć pożądaną prędkość.

Jak już wspomniano, w kodowaniu PAM-5 istnieje pięć dyskretnych poziomów, ale tylko cztery poziomy są wykorzystywane do przesyłania dibitów. Piąty nadmiarowy poziom kodu (Forward Error Correction, FEC) jest używany w mechanizmie konstrukcyjnym korekcji błędów. Jest realizowany przez koder Trellis i dekoder Viterbi. Zastosowanie mechanizmu korekcji błędów umożliwia zwiększenie odporności odbiornika na zakłócenia o 6 dB.

Kodowanie kraty

Rozważmy zasady kodowania kratowego w oparciu o najprostszy koder składający się z dwóch komórek pamięci i elementów XOR (rys. 15). Niech wejście takiego enkodera odbierze sekwencję bitów 010111010 z szybkością k bitów/s. Jeśli na wyjściu enkodera zainstalowana jest komórka odczytowa pracująca z szybkością dwukrotnie większą niż przepływność na wejściu enkodera, wówczas szybkość strumienia wyjściowego będzie dwa razy większa niż szybkość strumienia wejściowego. W tym przypadku komórka odczytu dla pierwszej połowy cyklu enkodera odczytuje dane najpierw z elementu logicznego XOR 2, a drugiej połowy cyklu - z elementu logicznego XOR 3. W efekcie do każdego bitu wejściowego przypisane są dwa bity wyjściowe, czyli dibit, którego pierwszy bit tworzy element XOR 2, a drugi - element XOR 3. Z wykresu czasowego stanu enkodera łatwo to zauważyć za pomocą wejściowej sekwencji bitów 01011101010, sekwencja wyjściowa to 00 11 10 00 01 10 01 11 11 10.

Zwracamy uwagę na jeden ważna cecha zasada tworzenia dibitów. Wartość każdego wygenerowanego dibitu zależy nie tylko od przychodzącego bitu informacyjnego, ale także od dwóch poprzednich bitów, których wartości są przechowywane w dwóch komórkach pamięci. Rzeczywiście, jeśli założymy, że A i jest bitem przychodzącym, to wartość elementu XOR 2 jest określona przez wyrażenie , a wartość elementu XOR 3 jest określona przez wyrażenie . Zatem dibit składa się z pary bitów, z których wartość pierwszego to , a wartość drugiego to . Dlatego wartość dibitu zależy od trzech stanów: wartości bitu wejściowego, wartości pierwszej komórki pamięci i wartości drugiej komórki pamięci. Takie enkodery są nazywane enkoderami trójstanowymi (K = 3) splotowymi z szybkością wyjściową ½.

Wygodnie jest rozpatrywać pracę enkodera na podstawie nie wykresów czasowych, ale tzw. diagramu stanów. Stan enkodera zostanie wskazany za pomocą dwóch wartości - wartości pierwszej i drugiej komórki pamięci. Na przykład, jeśli pierwsza komórka przechowuje wartość 1 (Q1=1), a druga komórka przechowuje 0 (Q2=0), to stan enkodera jest opisany wartością 10. Istnieją cztery różne stany enkodera: 00, 01, 10 i 11.

Niech w pewnym momencie stan enkodera będzie równy 00. Interesuje nas, jaki stan enkodera stanie się w następnym momencie i jaki dibit zostanie w tym przypadku wygenerowany. Istnieją dwa możliwe wyniki, w zależności od tego, który bit trafia na wejście enkodera. Jeśli na wejściu enkodera zostanie odebrane 0, to następnym stanem enkodera będzie również 00, ale jeśli odebrane zostanie 1, to następny stan (czyli po przesunięciu) wyniesie 10. Wartość dibitów wygenerowanych w ten przypadek jest obliczany za pomocą wzorów i . Jeśli wejście enkodera to 0, to zostanie wygenerowany dibit 00 (), jeśli wejście to 1, to zostanie wygenerowany dibit 11 (). Wygodnie jest zwizualizować powyższe rozumowanie za pomocą diagramu stanów (rys. 16), gdzie stany enkoderów zaznaczono kółkami, a przychodzący bit i wygenerowany dibit są zapisane z ukośnikiem. Na przykład, jeśli bit przychodzący to 1, a wygenerowany dibit to 11, to piszemy: 1/11.

Kontynuując podobne rozumowanie dla wszystkich innych możliwych stanów enkodera, łatwo jest skonstruować kompletny diagram stanów, na podstawie którego można łatwo obliczyć wartość dibitu generowanego przez enkoder.

Korzystając z diagramu stanów enkodera, łatwo jest zbudować diagram czasowy przejść dla rozważanej już sekwencji bitów wejściowych 01011101010. W tym celu budowana jest tabela, której kolumny wskazują możliwe stany enkodera, a wiersze wskazują punkty w czasie. Możliwe przejścia pomiędzy różnymi stanami enkodera są oznaczone strzałkami (na podstawie pełnego schematu stanów enkodera - rys. 17), powyżej których zaznaczono bit wejściowy odpowiadający temu przejściu oraz odpowiedni dibit. Na przykład dla pierwszych dwóch razy diagram stanu enkodera wygląda tak, jak pokazano na rys. osiemnaście . Czerwona strzałka pokazuje przejście odpowiadające rozważanej sekwencji bitów.

Kontynuując wyświetlanie możliwych i rzeczywistych przejść pomiędzy różnymi stanami enkodera odpowiadających różnym punktom w czasie (rys. 19 , , ), otrzymujemy kompletny wykres czasowy stanów enkodera (rys. 22).

Główną zaletą powyższej metody kodowania kratowego jest odporność na zakłócenia. Jak zostanie wykazane później, ze względu na nadmiarowość kodowania (przypomnijmy, że każdemu bitowi informacji przypisany jest dibit, to znaczy nadmiarowość kodu wynosi 2), nawet w przypadku błędów odbioru (na przykład błędnie odebrany jest dibit 10 zamiast dibit 11), oryginalna sekwencja bitów może być bezbłędnie przywrócona.

Aby przywrócić oryginalną sekwencję bitów po stronie odbiornika, używany jest dekoder Viterbi.

Dekoder Viterbiego

Dekoder Viterbiego w przypadku bezbłędnego odbioru całej sekwencji dibitów 00 11 10 00 01 10 01 11 11 10 będzie posiadał informację o tej sekwencji, a także o strukturze enkodera (czyli o jego stanie diagram) oraz o stanie początkowym (00). Na podstawie tych informacji musi przywrócić oryginalną sekwencję bitów. Zastanówmy się, jak odbywa się odzyskiwanie oryginalnych informacji.

Znając stan początkowy enkodera (00), a także możliwe zmiany tego stanu (00 i 10), konstruujemy wykres czasowy dla dwóch pierwszych punktów w czasie (rys. 22). Na tym schemacie są tylko dwie możliwe ścieżki od stanu 00, odpowiadające różnym dibitom wejściowym. Ponieważ dibit wejściowy dekodera to 00, to używając diagramu stanów kodera Trellis, ustalamy, że następnym stanem kodera będzie 00, co odpowiada oryginalnemu bitowi 0.

Nie mamy jednak 100% gwarancji, że otrzymany dibit 00 jest poprawny, więc nie powinniśmy jeszcze odrzucać drugiej możliwej ścieżki ze stanu 00 do stanu 10, odpowiadającej dibitowi 11 i oryginalnemu bitowi 1. Dwie ścieżki pokazane w wykresy różnią się od siebie inną tak zwaną metryką błędu, która dla każdej ścieżki obliczana jest w następujący sposób. Dla przejścia odpowiadającego odebranemu dibitowi (czyli dla przejścia uznanego za poprawny) metryka błędu jest przyjmowana jako równa zeru, a dla pozostałych przejść obliczana jest z liczby różnych bitów w odebranym dibicie i dibit odpowiadający danemu przejściu. Na przykład, jeśli odebrany dibit to 00, a dibit odpowiadający danemu przejściu to 11, to metryka błędu dla tego przejścia wynosi 2.

Dla następnej chwili czasu odpowiadającej odebranemu dibitowi 11 możliwe będą dwa stany początkowe kodera: 00 i 10 oraz cztery stany końcowe: 00, 01, 10 i 11 (rys. 23). W związku z tym dla tych stanów końcowych istnieje kilka możliwe sposoby, które różnią się między sobą metrykami błędów. Przy obliczaniu metryki błędu należy wziąć pod uwagę metrykę poprzedniego stanu, to znaczy, jeśli w poprzednim czasie metryka dla stanu 10 była równa 2, to przy przejściu z tego stanu do stanu 01 błąd metryka nowego stanu (metryka całej ścieżki) stanie się równa 2 + 1 = 3 .

Dla następnej chwili czasu odpowiadającej otrzymanemu dibitowi 10 zauważamy, że dwie ścieżki prowadzą do stanów 00, 01 i 11 (rys. 24). W takim przypadku konieczne jest pozostawienie tylko tych przejść, które odpowiadają mniejszej metryce błędu. Ponadto, ponieważ przejścia ze stanu 11 do stanu 11 i do stanu 01 są odrzucane, przejście od stanu 10 do stanu 11 odpowiadające poprzedniemu punktowi czasowemu nie ma kontynuacji, dlatego też można je odrzucić. Podobnie przejście odpowiadające poprzedniemu momentowi czasu ze stanu 00 do 00 jest odrzucane.

Kontynuując podobne rozumowanie, możemy obliczyć metrykę wszystkich możliwych ścieżek i zobrazować wszystkie możliwe ścieżki.

Jednocześnie sama liczba możliwych ścieżek okazuje się nie tak duża, jak mogłoby się wydawać, ponieważ większość z nich jest odrzucana w procesie budowy, jako nie mająca kontynuacji (ryc. 25). Na przykład w szóstym cyklu dekodera, zgodnie z opisanym algorytmem, pozostają tylko cztery możliwe ścieżki.

Podobnie, w ostatnim cyklu dekodera istnieją tylko cztery możliwe ścieżki (rys. 26), a ścieżka prawdziwa, jednoznacznie przywracając oryginalną sekwencję bitów 01011110010, odpowiada metryce błędu równej 0.

Podczas konstruowania rozważanych diagramów taktowania wygodnie jest wyświetlić skumulowane metryki błędów dla różnych stanów kodera w formie tabeli. To właśnie ta tablica jest źródłem informacji, na podstawie której można odtworzyć pierwotny ciąg bitów (tabela 4).

W przypadku opisanym powyżej założyliśmy, że wszystkie dibity odebrane przez dekoder były bezbłędne. Rozważmy dalej sytuację, gdy otrzymany ciąg dibitów zawiera dwa błędy. Niech zamiast poprawnej sekwencji 00 11 10 00 01 10 01 11 11 10, dekoder otrzyma sekwencję 00 11 11 00 11 10 01 11 11 10, w której trzeci i piąty debet są wadliwe. Spróbujmy zastosować omówiony powyżej algorytm Viterbiego, polegający na wybraniu ścieżki o najmniejszej metryce błędu, do danej sekwencji i dowiedzmy się, czy możemy przywrócić oryginalną sekwencję bitów w prawidłowej postaci, czyli poprawić złe błędy.

Do momentu otrzymania trzeciego (nieudanego) dibitu algorytm obliczania metryki błędu dla wszystkich możliwych przejść nie różni się od przypadku rozważanego wcześniej. Aż do tego momentu ścieżka zaznaczona na rys. 1 miała najmniejszą metrykę skumulowanego błędu. 27 na czerwono. Po otrzymaniu takiego dibitu nie ma już ścieżki z metryką skumulowanego błędu równą 0. Jednak w tym przypadku pojawią się dwie alternatywne ścieżki z metryką równą 1. Dlatego nie można na tym etapie ustalić który bit oryginalnej sekwencji odpowiada otrzymanemu dibitowi.

Podobna sytuacja wystąpi w przypadku otrzymania piątego (również wadliwego) dibitu (rys. 28). W takim przypadku będą już trzy ścieżki o równej metryce skumulowanych błędów, a ustalenie prawdziwej ścieżki jest możliwe dopiero po odebraniu kolejnych dibitów.

Po otrzymaniu dziesiątego dibitu liczba możliwych ścieżek z różnymi metrykami błędów skumulowanych stanie się dość duża (rys. 29), jednak na powyższym diagramie (za pomocą Tabeli 5, która pokazuje metryki błędów skumulowanych dla różnych ścieżek), wybór jedynej ścieżki o najmniejszej metryce nie jest trudny (na rys. 29).

Rozważany przykład enkodera splotowego miał tylko cztery różne stany: 00, 01, 10 i 11. Technologia 1000Base-T wykorzystuje enkoder splotowy dla ośmiu różnych stanów (z trzema elementami opóźniającymi), dlatego nazywa się go enkoderem ośmiopozycyjnym . Ponadto, ponieważ znaki są przesyłane na wszystkich czterech skręconych parach kabla jednocześnie przy użyciu pięciopoziomowego kodowania PAM-5, kodowanie to nazywa się czterowymiarowym 4D/PAM-5.

Kolejną istotną różnicą enkodera Trellis stosowanego w technologii 1000Base-T jest algorytm przejścia między różnymi stanami enkodera. W naszym najprostszym przykładzie stan enkodera w następnym momencie był określony wyłącznie przez aktualny stan i bit wejściowy. Tak więc, jeśli bieżący stan to 00, a bit wejściowy to 1, to następny stan, czyli pole przesunięcia bitowego dla komórek pamięci, będzie odpowiadał 10. W prawdziwym ośmiopozycyjnym enkoderze Trellis są dwa elementy sterujące (wejściowe) bity i przejścia między różnymi stanami są określane przez algorytm największą odległością między punktami konstelacji sygnału. Jak wynika z ryc. 30 , koder Trellis realizuje zależność:

gdzie d 6 , d 7 i d 8 są odpowiednio bitami danych w liniach 6, 7 i 8.

Wyjaśnijmy to na konkretnym przykładzie.

Przypomnijmy, że kod PAM-5 wykorzystuje pięć poziomów sygnalizacji: -2, -1, 0, +1, +2. Jednocześnie poziomy +2/–2 odpowiadają napięciu +1/–1 V, a poziomy +1/–1 odpowiadają napięciu +0,5/–0,5 V. Biorąc pod uwagę, że cztery sygnały poziomy są jednocześnie transmitowane przez cztery skręcone pary, a każdy z tych poziomów może przyjąć jedną z pięciu wartości, w sumie otrzymujemy 625 (5x5x5x5) różnych kombinacji sygnałów. Wygodne jest zobrazowanie różnych możliwych stanów sygnału na tak zwanej płaszczyźnie sygnałowej. Na tej płaszczyźnie każdy możliwy stan sygnału jest reprezentowany przez punkt sygnału, a zbiór wszystkich punktów sygnału nazywany jest konstelacją sygnału. Oczywiście nie jest możliwe zobrazowanie przestrzeni czterowymiarowej, dlatego dla jasności rozważmy dwuwymiarową konstelację sygnału 5x5. Taka konstelacja może formalnie odpowiadać dwóm skręconym parom. Narysujmy punkty wzdłuż osi X odpowiadające jednej skręconej parze, a wzdłuż osi Y - drugiej. Wtedy nasza konstelacja 2D będzie wyglądać tak, jak pokazano na rys. 31 .

Zauważ, że minimalna odległość między dwoma punktami takiej konstelacji wynosi 1.

Pod wpływem szumu i tłumienia konstelacja sygnału ulega zniekształceniom (rys. 32), w wyniku czego położenie każdego punktu sygnału ulega rozmyciu, a odległość między nimi ulega zmniejszeniu. W rezultacie punkty w konstelacji sygnału stają się trudne do rozróżnienia i istnieje duże prawdopodobieństwo ich pomylenia.

Dlatego jednym z zadań enkodera Trellis jest utworzenie konstelacji sygnału, która zapewni maksymalną odległość między różnymi punktami sygnału. Aby zrozumieć, jak to się robi, oznaczamy poziomy sygnałów od -1 i +1 do X oraz poziomy od -2, 0, +2 do Y. Następnie można przedstawić początkową konstelację, jak pokazano na rys. 33 .

Dzieląc tę ​​konstelację na dwie podkonstelacje, z których jedna składa się z punktów XX i YY, a druga z punktów XY i YX, można zwiększyć odległość między punktami sygnału do (rys. 34).

W przypadku używania dwóch skrętek, zadaniem enkodera Trellis jest wysyłanie tylko symboli należących do dowolnej z konstelacji sygnału, na przykład D0=XX+YY, przez jedną skrętkę oraz symboli należących do innej konstelacji, na przykład D1= XY+YX. Wtedy odległość między wysyłanymi symbolami będzie dwukrotnie większa niż w oryginalnej konstelacji. W rezultacie poprawia się rozpoznawanie punktów w konstelacji sygnału, czyli wzrasta odporność na zakłócenia.

Prawdziwy enkoder kratowy działa mniej więcej w ten sam sposób, generując symbole przesyłane przez cztery skręcone pary, jednak ponieważ każdy punkt konstelacji odpowiada czterem współrzędnym (po jednej na każdą parę), a każdy punkt może przyjąć wartość X lub Y, to tam to 16 różnych kombinacji tworzących osiem podkonstelacji:

W powstałych podkonstelacjach minimalna odległość między punktami jest dwukrotnie większa niż w oryginalnej konstelacji. Ponadto minimalna odległość między punktami dwóch różnych podkonstelacji jest również równa 2. To właśnie te osiem konstelacji sygnałowych tworzy diagram stanów enkodera Trellis. Na przykład, stan kodera 000 odpowiada kombinacji punktów z konstelacji D0D2D4D6 w tym sensie, że punkty z konstelacji D0 są przesyłane w pierwszej parze, punkty z konstelacji D2 w drugiej parze i tak dalej. Kolejny możliwy stan enkodera będzie odpowiadał takiej kombinacji, w której minimalna odległość między wysyłanymi symbolami dla każdej pary wynosi 2.

Zastosowanie kodowania kratowego zgodnie z opisanym schematem umożliwia zmniejszenie stosunku sygnału do szumu (SNR) o 6 dB, czyli znaczne zwiększenie odporności na zakłócenia podczas transmisji danych.

Prasa komputerowa 2 "2002

Szablon technologii Ethernet, napisany w dokumencie IEEE 802.3. Jest to jedyny opis ramki formatu warstwy MAC. W sieci Ethernet zaimplementowany jest tylko jeden rodzaj ramki warstwy łącza, której nagłówek jest zbiorem nagłówków podwarstw MAC i LLC, co jest pewnym .

  • Ethernet DIX/Ethernet II, pojawił się w 1980 roku w wyniku wspólnej pracy trzech firm, Xerox, Intel i Digital, które wprowadziły wersję 802.3 jako międzynarodowy standard;
  • Komisja przyjęła 802.3 i nieco ją przeredagowała. Więc były 802.3/LLC, 802.3/802.2 lub Novell 802.2;
  • Surowy 802.3 lub Novell 802.3- zaprojektowane w celu przyspieszenia stosu protokołów w sieciach Ethernet;
  • SNAP Ethernet jest wynikiem komitetu 802.2, który został doprowadzony do wspólnego standardu i stał się elastyczny pod kątem ewentualnego dodawania pól w przyszłości;

Dzisiaj sprzęt sieciowy i oprogramowanie może pracować ze wszystkimi formatami ramek, a rozpoznawanie ramek działa automatycznie, co również zmniejsza jeden z . Formaty ramek pokazano na rys.1.

Obrazek 1

Rama 802.3/LLC

Ten nagłówek ramki łączy pola nagłówka ramek IEEE 802.3 i 802.2. Standard 802.3 składa się z:

  • Pole preambuły- zwane polem synchronizacji bajtów - 10101010. W kodowaniu Manchester kod ten jest modyfikowany w fizycznym nośniku na sygnał o częstotliwości 5 MHz.
  • Rozpocznij ogranicznik ramki- to jeden bajt 10101011. To pole wskazuje, że następny bajt jest pierwszym bajtem nagłówka ramki.
  • Adres przeznaczenia- To pole może mieć długość 6 lub 2 bajtów. Zazwyczaj to pole jest używane dla 6-bajtowego adresu MAC.
  • Adres źródłowy- jest to pole zawierające 6 lub 2 bajty adresu MAC hosta nadawcy. Pierwszy bit to zawsze 0.
  • Długość- pole, które ma rozmiar 2 bajtów i zawiera długość pola danych w ramce.
  • Pole danych— pole może mieć od 0 do 1500 bajtów. Ale jeśli nagle dane zajmą mniej niż 46 bajtów, to pole jest używane symbol zastępczy, który uzupełnia pole do 46 bajtów.
  • Pole zastępcze- Zapewnia wypełnienie pola danych, jeśli waga jest mniejsza niż 46 bajtów. Potrzebne do prawidłowego działania mechanizmu wykrywania kolizji.
  • Pole sekwencji kontrolnej ramki- To pole zawiera sumę kontrolną 4 bajtów. Wykorzystywany jest algorytm CRC-32/

Ta ramka jest ramką podwarstwy MAC, jej pole danych zawiera ramkę podwarstwy LLC z usuniętymi flagami na końcu i na początku ramki, która jest transmitowana przez .

Surowa rama 802.3/Novell 802.3

Ramka ta była wcześniej protokołem warstwy sieciowej w systemie operacyjnym MetWare. Ale teraz, gdy identyfikacja protokołu wyższej warstwy nie jest już potrzebna, ramka została zamknięta w ramce MAC ramki LLC.

Ramka Ethernet DIX/Ethernet II

Ta ramka ma strukturę podobną do Ras 802.3. Ale tutaj pole o długości 2 bajtów ma przypisania pól typu protokołu. Wskazuje typ protokołu wyższej warstwy, który zamknął swój pakiet w polu danych tej ramki. Ramki te rozróżnia się długością pola, jeśli wartość jest mniejsza niż 1500, to jest to pole długości, jeśli więcej, to typ.

Ramka Ethernet SNAP

Ramka pojawiła się w wyniku wyeliminowania niespójności w kodowaniach typu protokołu. Protokół jest również używany w protokole IP do enkapsulacji następujących sieci: pierścień tokena, FDDI, 100VC-AnyLan. Jednak podczas przesyłania pakietów IP przez Ethernet protokół wykorzystuje ramki Ethernet DIX.

Protokół IPX

Ten protokół może wykorzystywać wszystkie cztery typy ramek Ethernet. Określa typ, sprawdzając brak lub obecność pola LLC. Również za polami DSAP/SSAP. Jeśli pola to 0xAA, to jest to ramka SNAP, w przeciwnym razie jest to 802.3/LLC.