Jak działa tryb datagramu: zawodna podstawa Internetu

9

Korzystanie z Internetu jest rodzajem hazardu. Wysyłasz wiadomość. Rozpada się na kawałki. Fragmenty te (zwane datagramami) są wysyłane niezależnie od siebie do miejsc docelowych. Mogą nie dotrzeć w kolejności. Mogą w ogóle nie dotrzeć. Ale system się tym nie przejmuje. Na tym polega istota trybu datagramowego.

Jest to przeciwieństwo trybu wirtualnego z dedykowanymi kanałami. Dzięki przełączaniu obwodów rezerwujesz własną ścieżkę. Wyobraź sobie starą rozmowę telefoniczną. Linia jest Twoja, dopóki się nie rozłączysz. Tryb datagramu nie zapewnia takich gwarancji. Nie nawiązano połączenia. Jest tylko paczka i jej adres.

Definicja datagramu

RFC 1594 definiuje datagram jako kompletny, niezależny zestaw danych. Zawiera wszystko, co potrzebne do routingu. Jest niezależny od wcześniejszych wymian między źródłem a odbiorcą. Nie polega na transporcie sieciowym, który „trzyma ją za rękę”.

Dostawa nie jest gwarantowana. Godzina przyjazdu nieznana. Kolejność jest losowa.

Datagram w rzeczywistości składa się z nagłówka i obszaru danych. Nagłówek zawiera adresy źródłowy i docelowy. Zawiera także pole typu. Informacje te umożliwiają pakietom dotarcie do urządzenia docelowego bez polegania na wcześniejszych interakcjach sieciowych.

„Datagramy są podstawową jednostką transmisji w sieciach z komutacją pakietów i nie można zagwarantować ich dostarczenia, czasu przybycia ani kolejności.”

Często używamy zamiennie terminów pakiet i datagram. Nie jest to do końca prawdą. Pakiet to sformatowana wiadomość. Datagramy odnoszą się do pakietów pochodzących ze szczególnie zawodnych usług.

Ta usługa jest z założenia „niezaufana”. Jeśli dostawa się nie powiedzie, nie otrzymasz powiadomienia. Brak sprzężenia zwrotnego odróżnia czyste datagramy od innych typów pakietów.

Adresy IP zapewniają zarówno zaufane, jak i niezaufane usługi. Zaufana strona korzysta z protokołu TCP. Strona niezaufana korzysta z protokołu UDP. Ponieważ protokół UDP nie zapewnia potwierdzenia dostarczenia, jego pakiety są często nazywane datagramami. TCP i UDP działają w warstwie transportowej. Zaspokajają różne potrzeby.

Kiedy datagram jest pofragmentowany, jego części nazywane są pakietami. Nie są już datagramami.

Dlaczego jest to ważne dla użytkowników

Prawdopodobnie nie myślisz o datagramach codziennie. Ale zawsze jesteś od nich zależny. Cała architektura współczesnego Internetu zbudowana jest na filozofii „najlepszego wysiłku”.

Koncepcja ta narodziła się pod koniec lat 60. ARPANET była pierwszą siecią, która formalnie wdrożyła przełączanie pakietów. Inżynierowie chcieli ominąć tradycyjną technologię telefoniczną, która opierała się na łączach dzierżawionych. Dążyli do tolerancji na błędy. Jeśli węzeł ulegnie awarii, sieć kieruje ruch wokół niego. Chcieli zoptymalizować wykorzystanie przepustowości.

W miarę rozprzestrzeniania się protokołu internetowego (IP) na całym świecie niezależność ta udowodniła swoje znaczenie. Miliardy urządzeń komunikują się obecnie za pomocą tego modelu. Dostawa nie jest gwarantowana. Nie ma gwarancji zamówienia. Tylko surowa transmisja.

Przyjrzyjmy się kompromisom. Przesyłanie wiadomości e-mail i plików powoduje umiarkowaną utratę pakietów. Wymagają uporządkowanych danych. W wideokonferencjach i VoIP priorytetem jest szybkość. Akceptują zagubione lub pomieszane pakiety, aby zapewnić płynny przepływ.

Tryb datagramu jest odpowiedni w obu scenariuszach. Dostosowuje się. Nie narzuca jednego protokołu dla wszystkich typów danych.

Ewolucja i obecne zastosowanie

Datagramy są nadal kamieniem węgielnym technologii sieciowej. Wychodzą daleko poza podstawowe IP.

Nowoczesne aplikacje nadal korzystają z tych zasad. Sieci o małych opóźnieniach opierają się na szybkości niezależnego routingu. Środowiska mobilne i rozproszone korzystają z elastyczności danych.

To nie tylko artefakt historyczny. Jest to aktywny silnik komunikacji internetowej. Chociaż infrastruktura ewoluuje, podstawowa filozofia pozostaje ta sama. Niezależne pakiety. Nie nawiązano połączenia. Maksymalna wydajność.

Przyszłość architektury Internetu prawdopodobnie będzie nadal opierać się na tym fundamencie. Kompromisy pozostają aktualne. Szybkość i elastyczność często przewyższają potrzebę całkowitej niezawodności.

Użytkownicy mogą cieszyć się szybszymi połączeniami. Aplikacje otrzymują skalowalną usługę transportową. Cena to okresowy bałagan. Uczymy się z tym żyć. Ustaliliśmy protokoły, aby sobie z tym poradzić. Jednak podstawowa jednostka pozostaje taka sama. Datagram. Niepewny. Niezbędny.

Główną zaletą Internetu jest brak skomplikowanej infrastruktury przewodowej. To jest architektura datagramu. Ten wybór projektu przedkłada praktyczność nad perfekcję. Każdy fragment danych ma swój własny nagłówek – mały blok metadanych, który wykonuje większość pracy.

Ten nagłówek zawiera źródłowy adres IP, adres docelowy i unikalny numer identyfikacyjny. Śledzi całkowitą długość i określa typ wbudowanego protokołu. Pola fragmentacji pojawiają się, gdy pakiet jest zbyt duży dla danego kanału komunikacyjnego. Paczka jest rozdawana, przenoszona nieco dalej i ponownie składana.

Routing nie wymaga predefiniowanej ścieżki. Routery nie przechowują informacji o lokalizacji danych. Analizują tytuł. Określają następny węzeł. Protokoły IP kierują procesem decyzyjnym. Różni się to całkowicie od trybu kanału wirtualnego. Kanały wirtualne ustalają ścieżki logiczne przed rozpoczęciem transmisji danych. Podejście datagramowe zapewnia elastyczność i niezawodność.

Jeżeli łącze komunikacyjne ulegnie awarii, następny datagram znajdzie nową trasę. Może nie dotrzeć w odpowiedniej kolejności. Rozmowa nie zostaje przerwana. Sieć łagodzi cios.

Dlaczego niezawodność datagramu spada na wyższych poziomach

Ta bezpaństwowa własność stwarza wyjątkowe problemy. Pakiety mogą zostać dostarczone z uszkodzonymi etykietami. Niektóre mogą całkowicie zniknąć. Sieć nie gwarantuje dostawy. Zamówienie również nie jest gwarantowane.

Protokoły wyższego poziomu powinny wypełnić tę lukę.

W tym miejscu do gry wchodzi protokół TCP. Przywraca proces. Żąda ponownego wysłania brakujących części. Gwarantuje integralność. Bez tego surowy strumień datagramów byłby bałaganem.

UDP przyjmuje inne podejście. Jest całkowicie oparty na zasadach datagramu. Porządek i spójność pozostawiono warstwie aplikacji. Dzięki temu idealnie nadaje się do zastosowań w czasie rzeczywistym. Rozmowy wideo. Serwery gier. Systemy, w których szybkość jest ważniejsza niż absolutna dokładność. Aby zmniejszyć opóźnienia, aplikacje akceptują ryzyko małych awarii.

Ta modułowość wyjaśnia, dlaczego datagramy są wszechobecne. Nie dotyczy to tylko publicznego Internetu. Zasilają chmury prywatne. Zasilają przemysłowe sieci sterujące. Wspierają masową ekspansję Internetu rzeczy (IoT).

Dostosuj się do różnych topologii sieci

Modele datagramowe rozwijają się dzięki różnorodności. Nie ma znaczenia czy korzystasz ze światłowodu czy satelity. Dostosuj się do swojej topologii.

Kanał przewodowy zapewnia stabilność. Połączenia bezprzewodowe i satelitarne są różne. Datagramy obsługują oba typy. Dane przemieszczają się niezależnie. Znajdują ścieżkę, która stawia najmniejszy opór. W przypadku wystąpienia przeciążenia router dostosowuje się dynamicznie. Wykorzystanie przepustowości jest w dalszym ciągu optymalizowane. Lokalne wąskie gardła rzadko powodują awarię całego systemu.

To myślenie oparte na „najlepszym wysiłku” jest mieczem obosiecznym. Brak gwarancji oznacza, że ​​programiści muszą zadbać o niezawodność swojego oprogramowania. Zarządzanie bankowością i przemysłem nie może opierać się wyłącznie na Internecie. Potrzebne są dodatkowe mechanizmy. Kontrola dostępu. Kontrola integralności. Logika retransmisji.

Warstwa aplikacji ponosi największy ciężar. Retransmisje muszą być kontrolowane. Konieczne jest ponowne zebranie strumieni danych. Zwiększa to złożoność kodu, ale zapewnia, że ​​ważne informacje pozostaną nienaruszone przez cały proces.

Zabezpieczenie przyszłości dzięki IPv6 i QUIC

Kontynuacja innowacji w zakresie datagramów. Nacisk przesunął się na bezpieczeństwo i produktywność.

Wprowadzenie protokołu IPv6 zapewnia jeszcze bardziej wszechstronne funkcje. Lepsze rozpoznawanie. Ulepszona segmentacja. Udoskonalono zarządzanie usługami Quality of Service (QoS). To nie tylko aktualizacje technologiczne. Umożliwiają sieciom skuteczniejsze ustalanie priorytetów ruchu.

Bezpieczeństwo również staje się lokalne. Uwierzytelnianie i szyfrowanie są wbudowane bezpośrednio w stos protokołów. To Cię nie spowolni. Wymiana staje się bezpieczniejsza bez utraty elastyczności, jaką zapewnia model datagramu.

Na tej podstawie powstają nowe protokoły. Spójrz na QUIC. Łączy w sobie filozofię datagramów z nowoczesnym bezpieczeństwem transportu. Skraca czas uścisku dłoni. Poprawia wydajność połączeń w przypadku utraty pakietów. Stanowi to następną generację myślenia o transmisji danych.

Datagramy pozostają sprawą fundamentalną. Łączą globalną infrastrukturę internetową z lokalnymi sieciami korporacyjnymi. Łączą sieci komórkowe i inteligentne miasta. W miarę jak aplikacje stają się coraz bardziej zróżnicowane, zapotrzebowanie na adaptacyjny routing bezstanowy stale rośnie. Udoskonalane są metody optymalizacji. Monitorowanie staje się jeszcze bardziej złożone. Datagramy pozostają aktualne. Rozszerza się.

Nie chodzi o to, czy się utrzymają. Pytanie brzmi: jak szybko możemy ewoluować, aby sprostać potrzebom coraz bardziej rozdrobnionego i skupionego na bezpieczeństwie środowiska cyfrowego?

Попередня статтяUsuwanie konta Bloggera: przewodnik krok po kroku
Наступна статтяJak działa chemia baterii w urządzeniach