Funkcjonowanie sieci Ethernet
Rodzaje kolizji

Kolizja ma zazwyczaj miejsce, gdy dwie lub więcej stacji sieci Ethernet nadaje równocześnie wewnątrz jednej domeny kolizyjnej. Kolizja pojedyncza to taka, która została wykryta w trakcie próby wysłania ramki, a podczas następnej próby ramka została pomyślnie wysłana. Kolizja wielokrotna wskazuje, że ta sama ramka wielokrotnie brała udział w kolizji, zanim nastąpiło jej pomyślne wysłanie. Powstające w wyniku kolizji fragmenty kolizyjne to częściowe lub uszkodzone ramki, które są krótsze niż 64 oktety i mają błędną sumę FCS. Istnieją trzy rodzaje kolizji:

  • lokalne,
  • zdalne,
  • spóźnione.

Kolizja lokalna w kablu koncentrycznym (10BASE2 i 10BASE5) występuje, gdy sygnał podróżujący wzdłuż kabla napotka sygnał z innej stacji. Przebiegi falowe ulegają wówczas nałożeniu, powodując wzajemne znoszenie niektórych części sygnału oraz wzmocnienie lub podwojenie innych jego części. Podwojenie sygnału powoduje podniesienie poziomu napięcia sygnału powyżej dozwolonego maksimum. Właśnie to przekroczenie napięcia jest wykrywane przez wszystkie stacje podłączone do lokalnego segmentu kabla jako kolizja.

Na początku przebiegu pokazanego na rysunku znajdują się zwykłe dane zakodowane w standardzie Manchester. Kilka cykli dalej amplituda fali w próbce podwaja się. Jest to początek kolizji, w której dwie fale ulegają nałożeniu. Krótko przed końcem próbki amplituda wraca do stanu normalnego. Dzieje się tak, gdy pierwsza stacja przestaje nadawać po wykryciu kolizji, a sygnał zakłócający pochodzący z drugiej kolidującej stacji jest ciągle widoczny.

W kablu UTP, takim jak 10BASE-T, 100BASE-TX lub 1000BASE-T, kolizja jest wykrywana w segmencie lokalnym tylko wtedy, gdy stacja wykryje sygnał w parze RX, prowadząc w tym samym momencie nadawanie w parze TX. Ponieważ oba sygnały są przesyłane w różnych parach przewodów, nie ma żadnych charakterystycznych zmian w sygnale. Kolizje w kablu UTP są rozpoznawane tylko wtedy, gdy stacja pracuje w trybie półdupleksu. Jedyną funkcjonalną różnicę pomiędzy pracą w trybie półdupleksu i pełnego dupleksu w tym kontekście stanowi to, czy pary transmitująca i wysyłająca mogą być używane równocześnie. Jeśli stacja nie jest zajęta nadawaniem, nie może wykryć kolizji lokalnej. Z drugiej strony, wada kabla, taka jak nadmierny przesłuch, może spowodować, że stacja będzie odbierać własną transmisję jako kolizję lokalną.

Zdalna kolizja jest rozpoznawana po wielkości ramki, która jest mniejsza od minimalnego rozmiaru i ma błędną sumę kontrolną FCS, nie zaś po symptomach lokalnej kolizji, takich jak nadmiarowe napięcie czy równoczesna aktywność na liniach RX/TX. Ten rodzaj kolizji jest zwykle wynikiem wystąpienia kolizji po drugiej stronie połączenia z użyciem wtórnika. Wtórnik nie przekaże dalej stanu nadmiernego napięcia i nie może spowodować jednoczesnej aktywności obu par (TX i RX) w tym samym czasie. Aby spowodować wystąpienie aktywności w obu parach przewodów, stacja musiałby nadawać, a to z kolei wywołałoby kolizję lokalną. W sieciach opartych na kablu UTP jest to najczęściej obserwowany rodzaj kolizji.

Nie ma możliwości wystąpienia normalnej (dozwolonej) kolizji po wysłaniu przez stacje nadające pierwszych 64 oktetów danych. Kolizje pojawiające się po pierwszych 64 oktetach są nazywane „kolizjami spóźnionymi". Najbardziej znaczącą różnicą pomiędzy kolizjami spóźnionymi a kolizjami występującymi przed wysłaniem pierwszych 64 oktetów jest fakt, że karta sieciowa Ethernet automatycznie ponowi transmisję ramki, która uległa normalnej kolizji, lecz ponowienie takie nie nastąpi w wypadku kolizji spóźnionej. Z punktu widzenia kart sieciowych transmisja przebiegła pomyślnie, a fakt utraty ramki muszą wykryć wyższe warstwy stosu protokołów. Inaczej niż w wypadku retransmisji, stacja wykrywająca kolizję spóźnioną obsługuje ją w dokładnie ten sam sposób jak kolizję normalną.


Ćwiczenie interaktywne

Przeciągnij i upuść: Rodzaje kolizji

Po wykonaniu tego ćwiczenia uczestnik kursu pozna trzy różne rodzaje kolizji.

Łącza WWW