Routingprotokoll är en samling formaliserade metoder avsedda att implementeras i en router i syfte att automatiskt och dynamiskt hantera flera routrars routinginformation (routingtabellen). Till skillnad från statisk routing som konfigureras och hanteras manuellt. Målet är att varje router ska besitta tillräcklig information om det omgivande nätets topologi och därmed kunna dirigera inkommande nätverktrafik på ett effektivt sätt. Med routingprotokoll blir det möjligt att dynamiskt hantera förändringar och fel i ett nät. Routingprotokollets uppgift är att beräkna ett pakets bästa väg mellan dess källa och dess destination. Varje routerhopp ges en kostnad. För att avgöra vilken väg som är bäst beräknas alla möjliga vägars totala kostnad (även benämnd metric). Informationen sparas i en routingtabell. Olika protokoll använder olika metoder och parametrar för att beräkna routingtabellen. Exempel på kostnader är antal routerhopp, bandbredd, bandbreddsutnyttjande och administrativ kostnad.

Rent praktiskt fungerar det så att en router via routingprotokollet annonserar för sina grannar vilka subnät routern själv har. Kostnaden är vanligtvis noll till dessa nät. Via sina grannar får routern reda på vilka subnät dessa har och respektive routers kostnad till dessa. Routern vet sin egen kostnad till grannen, och kan då beräkna den totala kostnaden. Till övriga grannar redistribuerar den dessa nät tillsammans med sin kostnad.

Görs en förändring i nätet tar det en viss tid innan routingprotokollet konvergerar. Under denna tid kan routingloopar uppkomma.

När ett datapaket anländer till en router kontrollerar routern i routingtabellen vilket det optimala nästa hoppet är, och skickar paketet dit.

Routingprotokoll redigera