EIGRP

Enhanced Interior Gateway Routing Protocol (EIGRP) är en distansvektor, classless routing-protokoll som släpptes 1992 med IOS version 9.21. Till en början var designat för Cisco nätverkshanterare, men år 2013 blev Cisco EIGRP en multileverantör routing-protokoll.

Som namnet antyder är EIGRP en förbättring av Cisco IGRP (Interior Gateway Routing Protocol). IGRP användes sedan 1985 som svar till begränsningar av RIPv1 och fasades ut från och med IOS 12.2 (13) T och 12.2 (R1s4) S. Båda protokoll utvecklas av Cisco.

Bild 1: Routing-protokoll

EIGRP innehåller flera funktioner som inte vanligtvis finns i andra distansvektor protokoll som RIP (RIPv1 och RIPv2) och IGRP. Dessa funktioner inkluderar:

  • Reliable Transport Protocol (RTP)
  • Bounded Updates
  • Diffusing Update Algorithm (DUAL)
  • Establishing Adjacencies

Skillnader mellan IGRP och EIGRP

IGRP EIGRP
Bellman-Ford eller Ford-Fulkerson algoritm Diffusing Update Algorithm (DUAL)
routing-information åldras routing-information åldras inte
periodiska uppdateringar  
driftar bästa vägar till olika destinationsnätverk. driftar topologi-tabell som innehåller utvalda bästa vägar och deras backup.
om någon väg utvald som bästa är inte längre fungerande åtgärdas inte det utan väntar routrar på nya uppdateringar. om någon väg utvald som bästa är inte längre fungerande använder DUAL en av de bästa backup väggar.
långsamma konvergens på grund av holddown timer snabbare konvergens utan timer

Algoritmen

Bild 2: Hello protokoll

Distansvektor routing-protokoll använder varianter av Bellman-Ford eller Ford-Fulkerson algoritmen. Dessa protokoll, till exempel RIP, behöver regelbundet uppdatera routing-information lagrade i routing-tabellen. Det är just med detta syfte routing-information tidsstämplas för att begränsa dess livslängd.

EIGRP använder istället Diffusing Update Algorithm (DUAL) och med det får EIGRP nya funktioner som inte finns i andra distansvektor routing-protokoll.

EIGRP använder inte periodiska uppdateringar, istället använder EIGRP ett enkelt Hello protokoll för att övervaka anslutningsstatus med sina närliggande grannar. Endast ändringar i routing-informationen, till exempel en ny länk eller en länk som blir otillgänglig, orsakar en uppdatering av routing-information.

Neighbor och Topologi tabeller

Traditionella distansvektor routing-protokoll grundar sitt arbete på information som inkluderas i regelbundna uppdateringar från närliggande grannar. Med hjälp av information i uppdateringar väljs den bästa vägen till specifika destinationsnätverk. Om den bästa vägen blir otillgänglig väntar routern på en routing-uppdatering med förväntan på goda nyheter. Men om ingen bättre uppdatering tas emot raderar routern den otillgängliga vägen efter en viss väntetid.

Bild 3: EIGRP tabeller

EIGRP fungerar annorlunda. Med protokollet Hello bildar routrar en lista på närliggande routrar som inkluderas i en tabell, Neighbor-tabell. DUAL algoritmen bygger upp en topologi-tabell som stämmer med listan i Neighbor-tabellen.

Topologi-tabellen inkluderar både, den bästa vägen och eventuella backup vägar till destinationsnätverk. Dessa vägar  identifieras av DUAL som fria från routing-loopar. Om den bästa vägen till ett destinationsnätverk blir otillgänglig söker DUAL i sin topologi-tabell för en giltig backup route. Om det finns en sådan route inkluderas den omedelbart in i routing-tabellen. Om en backup route inte existerar utför DUAL en sökning efter andra backup route.

Konvergens

På grund av de opålitliga karaktären av periodiska uppdateringar är traditionella distansvektor routing-protokoll känsliga för routing-loopar. RIP och IGRP använder flera mekanismer för att undvika routing-loopar, inklusive timer på timer (väntetider eller holddown på engelska), vilket medför långa konvergenstider.

EIGRP använder inte holddown timers. Istället uppnås loop-fria vägar genom ett system av route-beräkningar (diffusing route calculations) som utförs på ett koordinerat sätt bland de samarbetande EIGRP-routrarna.

Mer om EIGRP

Även om EIGRP kan fungera som ett link-state routing-protokoll är det fortfarande ett distansvektor routing-protokoll.

Obs! Termen hybrid routing protokoll används ibland för att definiera EIGRP. Emellertid är denna term vilseledande eftersom EIGRP inte är en hybrid mellan distansvektor och link-state routing protokoll – det är enbart ett distansvektor routing protokoll.

Unikt för EIGRP är dess Reliable Transport Protocol (RTP) som ger tillförlitlig leverans av EIGRP-paket. EIGRP bygger upp relationer med direktanslutna routrar som också är aktiverade för EIGRP. Förhållanden (samarbete) mellan närliggande routrar som kör EIGRP erhålls när de informerar varandra om deras status. RTP och relationer med närliggande routrar bearbetas av algoritmen DUAL eller Diffusing Update Algorithm.

Som kärna i EIGRP garanterar DUAL datatrafik utan routing-loopar. Flera mekanismer inbyggda i EIGRP och dess algoritmen DUAL underhåller flera backup route som är redo att användas ifall den utvalda bästa route slutar fungera.

Istället för antal hop som metric, använder både IGRP och EIGRP mätvärden som består av bandbredd (bandwidth), fördröjning (delay), tillförlitlighet (reliability) och belastning (load). Dock används som default endast bandbredd och fördröjning i båda routing-protokoll.