Protokołu routowalny pozwala na przesyłanie przez router danych między węzłami znajdującymi się w różnych sieciach. Żeby protokół mógł być routowany, musi umożliwiać przydział numeru sieci i numeru hosta każdemu indywidualnemu urządzeniu.
Maska sieci pozwala na oddzielenie adresu sieci od adresy hosta znajdującego się w tej sieci.
Protokół IP jest protokołem bezpołączeniowym, zawodnym i realizuje dostarczanie danych przy użyciu dostępnych możliwości.
Pakiety IP składają się z danych z wyższych warstw oraz nagłówka IP. Nagłówek IP zawiera następujące pola:
- Wersja — określa format nagłówka pakietu IP.
- Długość nagłówka IP (HLEN) — określa długość nagłówka datagramu jako wielokrotność słów 32-bitowych.
- Typ usługi(TOS, ang. Type-of-service) — określa poziom ważności, który został przypisany przez protokół wyższej warstwy.
- Całkowita długość — określa długość całego pakietu w bajtach z uwzględnieniem danych i nagłówka.
- Identyfikacja — zawiera liczbę całkowitą identyfikującą bieżący datagram.
- Flagi —określa, czy pakiet może zostać podzielony na fragmenty.
- Przesunięcie fragmentu — pole to pozwala na zakończenie poprzedniego pola na granicy 16 bitów.
- Czas życia (TTL, Time To Live) — pole określające liczbę przeskoków, które może wykonać pakiet.
- Protokół — pole wskazujące, który protokół wyższej warstwy, taki jak TCP lub UDP, odbiera pakiety przychodzące po zakończeniu przetwarzania IP.
- Suma kontrolna nagłówka.
- Adres nadawcy — pole określające adres IP węzła nadawczego; 32 bity.
- Adres odbiorcy — pole określające adres IP węzła odbiorczego; 32 bity.
- Opcje — pole umożliwiające protokołowi IP obsługę różnych opcji, takich jak funkcje zabezpieczeń; zmienna długość.
- Wypełnianie — zera dodane w celu zagwarantowania, że długość nagłówka jest wielokrotnością 32 bitów.
- Dane — pole zawierające informacje wyższych warstw.
Przełącznik (warstwa 2) przechowuje tablicę znanych adresów MAC, router (warstwa 3) przechowuje tablicę adresów IP zwaną tablicą routingu.
Do funkcji protokołów routowanych należą:
- Zastosowanie dowolnego zestawu protokołów dostarczającego wystarczającej ilości informacji w adresie warstwy sieci, aby umożliwić routerowi przesłanie danych do następnego urządzenia, a w konsekwencji do celu.
- Zdefiniowanie formatu i sposobu wykorzystania pól wewnątrz pakietu.
Do funkcji protokołów routingu należą:
- Dostarczanie procesów pozwalających na współdzielenie informacji o trasach.
- Umożliwienie komunikacji między routerami w celu aktualizacji i utrzymywania tablic routingu.
Przykładami protokołów routingu są protokoły RIP (ang. Routing Information Protocol), IGRP (ang. Interior Gateway Routing Protocol), OSPF (ang. Open Shortest Path First), BGP (ang. Border Gateway Protocol) oraz EIGRP (ang. Enhanced IGRP).
Routery rejestrują takie informacje w swoich tablicach routingu jak:
- Typ protokołu — typ protokołu routingu, na podstawie którego został utworzony wpis w tablicy.
- Odniesienia do punktu docelowego/następnego przeskoku.
- Metryki routingu — służą do określania zasadności wyboru danej trasy. Na przykład protokół RIP wykorzystuje liczbę przeskoków jako jedyną metrykę routingu. W protokole IGRP w celu obliczenia złożonej metryki używana jest kombinacja metryk szerokości pasma, obciążenia, opóźnienia i niezawodności.
- Interfejsy wyjściowe — interfejsy, przez które należy wysłać dane w celu dostarczenia ich do punktu docelowego.
Router tworzy i utrzymuję swoją tablicę routingu na podstawie aktualizacji tras uzyskiwanych od sąsiednich routerów.
Metryki mogą być obliczane na podstawie pojedynczego parametru charakteryzującego ścieżkę lub kilku różnych parametrów, takich jak:
- Szerokość pasma.
- Opóźnienie — czas potrzebny do przesłania pakietu w każdym łączu na drodze ze źródła do celu.
- Obciążenie — aktywność występująca w ramach zasobu sieciowego, takiego jak router czy łącze.
- Niezawodność — zazwyczaj tym mianem określana jest stopa błędów występujących w danym łączu sieciowym.
- Liczba przeskoków — liczba routerów, przez które musi być przesłany pakiet, zanim dotrze do punktu docelowego.
- Impulsy zegarowe — opóźnienie na łączu danych mierzone impulsami zegarowymi.
- Koszt — dowolna wartość przypisana przez administratora sieci, zwykle oparta na szerokości pasma, wydatku pieniężnym lub innej mierze.
Protokoły wektora odległości to:
- Protokół RIP — najczęściej stosowany w Internecie protokół z rodziny IGP. Protokół RIP wykorzystuje liczbę przeskoków jako jedyną metrykę.
- Protokół IGRP — protokół z rodziny IGP.
- Protokół EIGRP — protokół z rodziny IGP, zaawansowany protokół routingu oparty na wektorze odległości.
Protokoły routingu z wykorzystaniem stanu łącza:
Gdy trasa lub łącze ulegnie zmianie, urządzenie, które wykryło zmianę, tworzy ogłoszenie o stanie łącza LSA. Ogłoszenie to jest następnie wysyłane do wszystkich sąsiednich urządzeń, które aktualizują swoje tablice rutingowe, a następnie wysyłają to ogłoszenie dalej.
Protokół IGRP został utworzony specjalnie w celu rozwiązania problemów związanych z routingiem w dużych sieciach, gdzie zasięg takich protokółów jak RIP okazał się niewystarczający. Protokół IGRP wybiera najszybszą dostępną ścieżkę, opierając się na szerokości pasma, obciążeniu, opóźnieniu i niezawodności.
Protokół OSPF jest protokołem routingu z wykorzystaniem stanu łącza. Został on opracowany na potrzeby dużych skalowanych intersieci, dla których protokół RIP nie był już wystarczający.
Protokół IS-IS jest protokołem routingu z wykorzystaniem stanu łącza stosowanym przez protokoły routowane inne niż protokół IP.
Protokół Integrated IS-IS jest rozszerzoną implementacją protokołu IS-IS obsługującą różne protokoły routowane, w tym także protokół IP.
Protokół EIGRP jest zaawansowaną wersją protokołu IGRP, który wykorzystuje pewne funkcje protokołu stanu łącza.
Protokół BGP jest przykładem protokołu EGP Protokół BGP wymienia informacje o routingu pomiędzy systemami autonomicznymi, gwarantując ścieżki pozbawionej zapętleń. BGP jest głównym protokołem ogłaszania informacji o trasach wykorzystywanym przez największe firmy i dostawców usług sieciowych działających w Internecie. Protokół BGP podejmuje decyzje dotyczące routingu, bazując na regułach sieci lub regułach wykorzystujących różnorodne atrybuty ścieżki BGP.
Liczba podsieci możliwych do wykorzystania = dwa do potęgi równej liczbie przypisanych bitów podsieci lub bitów pożyczonych, minus dwa. Odjęcie dwóch wynika z uwzględnienia adresów zarezerwowanych na identyfikator i adres rozgłoszeniowy sieci.
Liczba hostów możliwych do wykorzystania = dwa do potęgi równej liczbie pozostałych bitów, minus dwa (adresy zarezerwowane na identyfikator i
rozgłaszanie podsieci).