Routers slaan computeradressen (IP-adressen) niet op dezelfde manier op als een database informatie opslaat. In plaats daarvan gebruiken ze een combinatie van datastructuren en mechanismen om IP-adresinformatie efficiënt te beheren en te gebruiken:
* Routingtabel: Dit is de kern van de adresopslag van een router. Het is een tabel die bestemmingsnetwerkvoorvoegsels (IP-adresbereiken) toewijst aan de volgende hop (de volgende router of netwerkinterface) die nodig is om pakketten naar die bestemming door te sturen. Elke vermelding bevat doorgaans:
* Bestemmingsnetwerkvoorvoegsel: Een reeks IP-adressen (bijvoorbeeld 192.168.1.0/24).
* IP-adres volgende hop: Het IP-adres van de volgende router of de interface op de router die het pakket moet ontvangen.
* Interface: De uitgaande interface (fysiek of virtueel) op de router.
* Statistiek: Een getal dat de kosten of voorkeur voor het gebruik van die route aangeeft (kortere paden hebben doorgaans lagere meetgegevens).
* ARP-cache (Address Resolution Protocol): Deze cache slaat toewijzingen op tussen IP-adressen en MAC-adressen binnen het lokale netwerk van de router. Wanneer een router een pakket naar een apparaat op zijn lokale LAN moet sturen, gebruikt hij de ARP-cache om het MAC-adres te vinden dat overeenkomt met het bestemmings-IP-adres. Als het MAC-adres niet wordt gevonden, stuurt de router een ARP-verzoek om het te ontdekken.
* NDP-cache (Neighbor Discovery Protocol - voor IPv6): Vergelijkbaar met de ARP-cache maar voor IPv6-netwerken. Het wijst IPv6-adressen toe aan de overeenkomstige interface-ID's.
* FIB (Forwarding Information Base): Dit is een uitgebreidere en geoptimaliseerde datastructuur afgeleid van de routeringstabel. Het is ontworpen voor snelle beslissingen over het doorsturen van pakketten. De FIB wordt vaak geïmplementeerd met behulp van gespecialiseerde hardware (zoals TCAM's - Ternary Content Addressable Memories) voor extreem snelle zoekopdrachten.
Het is belangrijk op te merken:
* Routers slaan niet elk afzonderlijk IP-adres op internet op. Ze slaan alleen informatie op over netwerkvoorvoegsels en de paden om die voorvoegsels te bereiken. Dit is uiterst efficiënt omdat het aantal prefixen veel kleiner is dan het aantal individuele IP-adressen.
* Routingtabellen zijn dynamisch. Ze worden voortdurend bijgewerkt via verschillende routeringsprotocollen (zoals OSPF, BGP, RIP) die routeringsinformatie uitwisselen met andere routers. Hierdoor kunnen routers zich aanpassen aan veranderingen in de netwerktopologie en beschikbaarheid.
* De datastructuren die worden gebruikt voor het opslaan en openen van de routeringsinformatie zijn geoptimaliseerd voor snelheid. Het doorsturen van pakketten moet ongelooflijk snel zijn, dus de gebruikte algoritmen en hardware zijn cruciaal.
Samenvattend maakt een router gebruik van geavanceerde datastructuren zoals routeringstabellen, ARP/NDP-caches en FIB's, gecombineerd met dynamische routeringsprotocollen, om IP-adresinformatie efficiënt te beheren en te gebruiken zonder dat elk afzonderlijk IP-adres op internet hoeft te worden opgeslagen. |