Komutacja Pakietów

Nowoczesna metoda dzielenia danych na pakiety w celu niezależnego routingu (np. Internet).

Czym Jest Komutacja Pakietów? Analogia do Poczty

Komutacja pakietów to dominująca metoda transmisji danych w nowoczesnych sieciach, takich jak Internet. Jej podstawową ideą jest dzielenie dużej wiadomości na mniejsze, łatwiejsze w zarządzaniu części, zwane pakietami.

Wyobraź sobie, że chcesz wysłać 100-stronicową książkę do przyjaciela. Zamiast szukać ogromnej, pojedynczej koperty, wyrywasz każdą stronę, wkładasz każdą do standardowej koperty i wysyłasz je indywidualnie. Każda koperta jest jak pakiet. Ta analogia podkreśla kluczowe cechy komutacji pakietów:

  • Adresowanie: Każda koperta (pakiet) jest indywidualnie zaadresowana adresem nadawcy i odbiorcy.
  • Niezależny Routing: Poczta może wysłać każdą kopertę inną trasą, aby zoptymalizować dostawę. Jedna może polecieć przez główny węzeł logistyczny, inna może podróżować transportem naziemnym.
  • Ponowne Składanie: Twój przyjaciel odbiera koperty, potencjalnie w innej kolejności niż zostały wysłane, i używa numerów stron, aby złożyć książkę z powrotem w prawidłowej kolejności.

Kontrast z Komutacją Łączy

Jest to fundamentalnie różne od , technologii starej sieci telefonicznej. Rozmowa telefoniczna ustanawiała dedykowane, fizyczne połączenie między Tobą a drugą osobą na cały czas jej trwania. Ta linia była tylko Twoja i nikt inny nie mógł z niej korzystać, nawet w momentach ciszy. Komutacja pakietów znacznie efektywniej współdzieli zasoby sieci.

Anatomia Pakietu

Każdy pakiet składa się z dwóch głównych części, analogicznych do koperty i listu w środku.

  • Nagłówek (Koperta): Są to informacje kontrolne dodawane na początku pakietu. Zawiera wszystkie niezbędne instrukcje dla sieci, aby dostarczyć pakiet. Kluczowe pola nagłówka to:
    • Adresy źródłowy i docelowy: Skąd pakiet pochodzi i dokąd zmierza (np. adresy IP).
    • Numer sekwencyjny: Pomaga urządzeniu docelowemu uporządkować pakiety we właściwej kolejności.
    • Informacje do kontroli błędów: Dane takie jak suma kontrolna lub CRC, które pozwalają odbiorcy zweryfikować, czy pakiet nie został uszkodzony w transporcie.
    • Inne dane kontrolne, jak długość pakietu czy priorytet.
  • Ładunek (List): To są właściwe dane (niewielki fragment oryginalnej wiadomości, która jest przesyłana). Ładunek pakietu może mieć rozmiar od kilku bajtów do kilku kilobajtów.

Podróż Pakietu: Proces "Zapisz i Podaj Dalej"

Pakiety podróżują przez sieć za pośrednictwem urządzeń zwanych routerami. Każdy router niezależnie decyduje, gdzie wysłać każdy kolejny pakiet na podstawie jego adresu docelowego. Odbywa się to przy użyciu mechanizmu "zapisz i podaj dalej" (store and forward).

  1. Zapisz (Store): Router odbiera kompletny pakiet na jednym ze swoich portów wejściowych i tymczasowo przechowuje go w buforze pamięci.
  2. Przetwórz (Process): Procesor routera odczytuje nagłówek pakietu, aby określić jego ostateczne przeznaczenie. Sprawdza swoją wewnętrzną tablicę routingu, aby znaleźć najlepszy następny "przeskok" (następny router lub urządzenie) na ścieżce do tego celu.
  3. Podaj Dalej (Forward): Router wysyła pakiet przez odpowiedni port wyjściowy w kierunku następnego przeskoku.

Ten proces jest powtarzany w każdym routerze na trasie, aż pakiet ostatecznie dotrze do miejsca przeznaczenia.

Dwa Smaki Komutacji Pakietów: Datagramy vs. Obwody Wirtualne

Sieci z komutacją pakietów mogą działać w jednym z dwóch trybów:

Bezpołączeniowy (Datagramowy)

W tym trybie każdy pakiet (zwany datagramem) jest traktowany jako całkowicie niezależna jednostka. Routery podejmują nową decyzję o trasie dla każdego pojedynczego pakietu. Pakiety z tej samej wiadomości mogą podróżować różnymi trasami, dotrzeć w innej kolejności, a nawet zaginąć. Wymaga to niezawodnego protokołu u odbiorcy (jak TCP) do ponownego uporządkowania pakietów i obsługi retransmisji.

Główny przykład: Protokół Internetowy (IP).

Połączeniowy (Obwód Wirtualny)

W tym trybie, przed wysłaniem jakichkolwiek danych, ustanawiana jest logiczna ścieżka, zwana , między nadawcą a odbiorcą. Wszystkie pakiety należące do tej samej transmisji podążają tą samą, z góry ustaloną ścieżką. Decyzje o routingu są podejmowane tylko raz, na etapie zestawiania połączenia. Gwarantuje to dostarczenie pakietów we właściwej kolejności.

Główny przykład: ATM (Asynchronous Transfer Mode).

Główne Zalety i Wady

Zalety

  • Wydajność: Pozwala wielu użytkownikom na współdzielenie tych samych łącz sieciowych, co zapewnia doskonałe wykorzystanie dostępnej przepustowości. Łącza są zajmowane tylko wtedy, gdy są dane do wysłania.
  • Odporność na awarie: Jeśli jakieś łącze sieciowe ulegnie awarii, routery mogą dynamicznie znaleźć alternatywne trasy dla pakietów, czyniąc sieć odporną na uszkodzenia.
  • Elastyczność: Może obsługiwać wiele usług o różnych przepływnościach na tej samej infrastrukturze, w przeciwieństwie do komutacji łączy, która rezerwuje stałą szybkość transmisji.

Wady

  • Zmienne Opóźnienie (Jitter): Ponieważ pakiety mogą czekać w kolejkach (buforach) w każdym routerze, opóźnienie transmisji nie jest stałe. Może to być problematyczne dla aplikacji czasu rzeczywistego, takich jak rozmowy głosowe i wideokonferencje.
  • Narzut: Każdy pakiet musi zawierać pełny nagłówek z informacjami adresowymi, co zużywa część dostępnej przepustowości.
  • Złożoność: Wymaga skomplikowanych protokołów na urządzeniach końcowych do obsługi ponownego porządkowania pakietów i żądań retransmisji utraconych pakietów (np. TCP działający na protokole IP).