Technologiczne, Gadżety, Telefony Komórkowe, Pobieranie Aplikacji!

W jaki sposób Internet przesyła pakiety informacji o użytkowniku ze źródła do miejsca docelowego?

W Internecie warstwa sieciowa służy do dostarczania datagramów ze źródła do jednego lub większej liczby miejsc docelowych.

Jeśli datagram jest wysyłany tylko do jednego miejsca docelowego, mamy wzorzec dostarczania jeden do jednego, zwany routingiem emisji pojedynczej.

Jeśli datagram jest wysyłany do wielu miejsc docelowych, mamy routing multiemisji, dostarczanie jeden do wielu.

W sieciach komunikacyjnych routing jest możliwy, jeśli router ma tablicę przekazywania, która przekazuje pakiet do następnego węzła na ścieżce, aby dotrzeć do miejsca docelowego.

Aby zbudować tabele routerów forward, Internet wykorzystuje różne protokoły routingu, które mają stan dynamiczny. Tabele routingu routerów są stale aktualizowane.

Co to jest routing?

Routing unicast jest wykonywany na Internet z wieloma routerami i hostami i opiera się na hierarchii rozgromienie i w kilku etapach przy użyciu algorytmów routingu. W przypadku routingu emisji pojedynczej pakiet jest przekazywany od źródła do miejsca docelowego i od jednego przeskoku do następnego poprzez tablice przekazywania.

Host źródłowy nie musi wysyłać tabeli, ponieważ dostarcza swój pakiet do domyślnego routera w sieci lokalnej. Host docelowy również nie musi wysyłać tabeli, ponieważ odbiera pakiet od domyślnego routera w sieci lokalnej.

Oznacza to, że tylko routery łączą sieci na Internet potrzebujesz tabel przekazywania. Po powyższym wyjaśnieniu musimy to powiedzieć rozgromienie paczka od nadania do środka przeznaczenia rozgromienie Pakiet z routera źródłowego (domyślnego routera hosta źródłowego) do routera docelowego (routera podłączonego do sieci docelowej).

Chociaż pakiet musi przejść przez router źródłowy i docelowy, pytanie brzmi, przez jakie inne routery musi przejść pakiet, czyli innymi słowy, ile ścieżek pokonuje pakiet od źródła do miejsca docelowego.

Internet można sobie wyobrazić jako wykres umożliwiający znalezienie najlepszej trasy. Do modelowania Internet W formie wykresu każdy router możemy traktować jako węzeł, a każdą sieć pomiędzy parą routerów jako brzeg. Internet jest modelowany jako graf ważony, w którym każda krawędź ma swój koszt. Jeśli wykres ważony przedstawia region geograficzny, węzłami mogą być miasta, a granice mogą być drogami łączącymi miasta. Wagą są w tym przypadku odległości pomiędzy miastami. Jednak w rozgromienie, koszt krawędzi jest różny dla różnych protokołów routingu. Załóżmy, że każdy kęs ma swoją cenę. Jeżeli pomiędzy węzłami nie ma krawędzi, cena jest nieskończona. Rysunek 1 pokazuje, jak działa mechanizm Internet jest narysowane w formie wykresu.

rysunek 1

Routing przy najniższych kosztach

Kiedy modelujemy Internet jako graf ważony, jednym ze sposobów interpretacji najlepszej trasy od routera początkowego do routera docelowego jest obliczenie najniższego kosztu między dwoma punktami. Innymi słowy, router źródłowy wybiera ścieżkę dotarcia do routera docelowego w taki sposób, aby całkowity koszt trasy był najniższy spośród wszystkich możliwych sposobów. Rysunek 1 przedstawia najlepszą ścieżkę między A i E to ABE o koszcie 6. Każdy router musi znaleźć najtańszą ścieżkę między sobą a innymi routerami, aby wysłać pakiet do miejsca docelowego w jak najkrótszym czasie.

Drzewa najtańsze

Jeśli w Internecie jest N routerów, (N-1) reprezentuje najtańsze ścieżki między każdym routerem. Potrzebujemy N×(N-1) tanich kursów, aby przepustowość sieci nie była marnowana. Na przykład, jeśli mamy tylko dziesięć routerów w Internecie, potrzebujemy 90 tanich tras. Lepszym sposobem wizualizacji tych ścieżek jest połączenie ich w niedrogie drzewo. Drzewo tanie to drzewo, którego korzeniem jest router źródłowy, które jest odwiedzane przez wszystkie węzły w sieci i gdzie ścieżka między sercem a każdym węzłem jest najkrótsza.

W tym przypadku drzewo będzie miało najkrótszą ścieżkę dla każdego węzła. W prawdziwym świecie mamy N drzew ścieżek o najniższych kosztach dla całego Internetu. Jednak niektóre z nich są ważniejsze. Rysunek 2 przedstawia siedem tanich drzew wykorzystywanych w Internecie.

Drzewa kosztów minimalnych dla wykresu ważonego mogą mieć kilka ważnych właściwości.

Najtańsza ścieżka z X do Y w drzewie X jest odwrotnością najtańszej ścieżki z Y do X w drzewie Y. Koszt jest taki sam w obu kierunkach. Na przykład na rysunku 2 ścieżka od A do F w drzewie A to (A → B → E → F), ale ścieżka od F do A w drzewie F to (F → E → B → A). W każdym przypadku koszt wynosi 8.

Zamiast przemieszczać się od X do Z za pomocą drzewa X, możemy przechodzić z X do Y za pomocą drzewa X i kontynuować od Y do Z za pomocą drzewa Y. Na przykład na rysunku 2 możemy poruszać się od A do G w drzewie A, korzystając ze ścieżki (A → B → E → F → G). Możemy także przejść od A do E w drzewie A (A → B → E), a następnie kontynuować w drzewie E, korzystając ze ścieżki (E → F → G). Połączenie obu ścieżek w drugim przypadku jest takie samo jak w pierwszym. W rezultacie koszt w pierwszym przypadku wynosi dziewięć, a w drugim przypadku wynosi 9 (6 + 3).

Rysunek 2

Algorytmy routingu

Niedrogie drzewa i tablice przekazywania to istotne elementy używane przez protokół sieciowy do wysyłania pakietów po najniższym koszcie. Rozgromienie algorytmy to kolejny istotny element, który odgrywa kluczową rolę w tej dziedzinie. Do tej pory różne trasy opracowano algorytmy. Algorytmy te różnią się interpretacją najniższego kosztu i tworzeniem najmniejszego drzewa kosztów dla każdego węzła.

Trasowanie wektora odległości

Do znalezienia najlepszej trasy wykorzystywana jest metoda wektora odległości (DV).. W przypadku routingu wektora odległości pierwszą rzeczą, którą tworzy każdy węzeł, jest drzewo najniższych kosztów zawierające podstawowe informacje, jakie posiada o swoich najbliższych sąsiadach. Niekompletne drzewa są wysyłane i odbierane pomiędzy sąsiadami, aby stopniowo stać się coraz bardziej kompletnymi drzewami, które można wykorzystać w Internecie. W wektorze odległości rozgromienierouter w sposób ciągły informuje wszystkich swoich sąsiadów o tym, co wie o całym Internecie, nawet jeśli informacje te są niekompletne. Zanim pokażemy, jak tanim kosztem można połączyć niekompletne drzewa w kompletne drzewa, musimy zająć się dwoma kluczowymi tematami, równaniem Bellmana-Forda i koncepcją wektorów odległości.

Równanie Bellmana-Forda

W sercu wektora odległości rozgromienie jest słynnym równaniem Bellmana-Forda. Równanie to służy do znalezienia najniższego kosztu (najkrótszej odległości) między węzłem źródłowym x, węzłem docelowym y i przez niektóre węzły pośrednie (a, b, c), aby obliczyć koszt między węzłem źródłowym a węzłami pośrednimi i najniższym cena pomiędzy węzłami Uzyskaj pośrednika i miejsce docelowe danych. W poniższym wzorze dzień oznacza najkrótszą odległość.

Dxy=min{(cxa+dzień), (cxb + Dby), (cxc + Dcy), …}

W wektorze odległości rozgromienie, rozważamy aktualizację dostępnego kosztu minimalnego o najniższy koszt za pośrednictwem węzła pośredniego, takiego jak z, aby sprawdzić, czy drugi węzeł jest krótszy. W takim przypadku można zapisać równanie w następującej prostszej formie:

Dxy = min {Dxy, (cxz + Dzy)}

Graficzną reprezentację równania Bellmana-Forda pokazano na rysunku 3.

Wdrażajmy nowe z poprzednich tanich drzew. Równanie Bellmana-Forda pozwala nam skonstruować nową ścieżkę o najniższym koszcie na podstawie poprzednich ścieżek o najniższym koszcie. Na rysunku 3 możemy uznać (a → y), (b → y) i (c → y) jako poprzednie ścieżki o najniższych kosztach oraz (x → y) jako nową ścieżkę o najniższych kosztach, a nowe równanie jako konstruktor drzewa najmniejszych kosztów. Innymi słowy, używając tego równania w wektorze odległości rozgromienie dowodzi, że w tej metodzie do znalezienia najlepszej trasy wykorzystuje się tanie drzewa.

Rysunek 3

Wektory odległości

Wektor odległości stanowi podstawę wektora odległości rozgromienie.

Tanie drzewo łączy ścieżki od korzenia drzewa do wszystkich miejsc docelowych.

Ścieżki te są graficznie połączone, tworząc drzewo.

Trasowanie wektora odległości otwiera te trasy, aby zdefiniować wektor odległości i jednowymiarową tablicę reprezentującą drzewo.

Teraz wiemy, że wektor odległości może reprezentować ścieżki o najniższych kosztach w drzewie najniższych kosztów, ale w jaki sposób każdy węzeł w Internecie tworzy odpowiedni wektor. Wchodząc w fazę operacyjną, każdy węzeł w Internecie tworzy bezpośredni wektor odległości z minimalną ilością informacji uzyskanych od sąsiedniego węzła. Węzeł wysyła komunikaty hello do sąsiednich interfejsów, aby odkryć tożsamość swoich sąsiadów i odległość między nim a każdym sąsiadem. Następnie wstawienie odkrytych długości do odpowiednich komórek tworzy prosty wektor odległości i uznaje wartość pozostałych komórek za nieskończoną. Czy te wektory odległości reprezentują tanie ścieżki? Na początku wygląda to tak. Na początku pracy początkowa ścieżka jest uważana za najtańszą, gdy znamy tylko odległość między dwoma węzłami. Jednakże w miarę kompletowania informacji stopniowo uzyskuje się dokładniejsze zrozumienie najtańszej ścieżki. Rysunek 4 przedstawia wektory odległości, z których korzysta Internet. Zwróć uwagę, że wektory te są tworzone asynchronicznie.

Rysunek 4

Te wektory elementarne nie mogą pomóc sieci internetowej w optymalnym wysłaniu pakietu. Na rysunku 4 węzeł A zakłada, że ​​nie jest połączony z węzłem G, ponieważ odpowiednia komórka pokazuje najniższy nieskończony koszt. Aby poprawić wydajność tych wektorów, węzły w Internecie muszą sobie pomagać poprzez wymianę informacji. Gdy każdy węzeł utworzy swój wektor, wysyła kopię wektora do wszystkich swoich najbliższych sąsiadów. Gdy węzeł otrzyma wektor odległości od swojego sąsiada, aktualizuje swój wektor za pomocą równania Bellmana-Forda (przypadek 2).

Rysunek 5

Na rysunku 5 widzimy dwa niesynchroniczne zdarzenia, które zachodzą jedno po drugim w pewnym odstępie czasu. W pierwszym przypadku węzeł A wysyła swój wektor do węzła B. Węzeł B aktualizuje swój wektor przy użyciu kosztu CBA = 2. W drugim przypadku węzeł E wysyła swój wektor do węzła B, a węzeł B aktualizuje swój wektor przy użyciu cEA = 4. Po pierwszym zdarzeniu wektor węzła B nieznacznie się poprawia, a jego minimalny koszt dla węzła D zmienia się z nieskończoności na 5 (przez węzeł A). Po drugim zdarzeniu wektor węzła B ponownie się poprawia, a jego minimalny koszt dla węzła F zmienia się z nieskończoności na 6 (przez węzeł E). Wymiana wektorów ostatecznie stabilizuje wydajność sieci i pozwala węzłom znaleźć minimalny koszt między sobą a każdym innym węzłem. Należy pamiętać, że po aktualizacji węzła zaktualizowany wektor jest natychmiast wysyłany do wszystkich sąsiadów. Nawet jeśli sąsiedzi mają poprzedni wektor, nadal otrzymają zaktualizowaną wersję. Uproszczony pseudokod dla instancji algorytmu routing wektorowy pokazano na rysunku 6. Wspomniany algorytm jest wykonywany przez każdy węzeł niezależnie i asynchronicznie.

Rysunek 6

Linie od 4 do 11 inicjują wektor węzła. Linie od 14 do 23 pokazują, jak zaktualizować bieżący wektor po otrzymaniu nowego wektora od sąsiada. Pętla for w liniach od 17 do 20 umożliwia aktualizację wszystkich wpisów (komórek) wektora po otrzymaniu nowego wektora. Należy zauważyć, że węzeł wysyła swój wektor w linii 12 po inicjalizacji i linii 22 po aktualizacji.

Pobierz bezpłatne motywy WordPress PremiumBezpłatne pobieranie motywów WordPressPobierz bezpłatne motywy WordPress PremiumPobierz motywy WordPress za darmodarmowy kurs on-linepobierz oprogramowanie mobilneBezpłatne pobieranie motywów WordPressudemy do pobrania za darmo