Enhanced Interior Routing Gateway Protocol (EIGRP)

Enhanced Interior Routing Gateway Protocol (EIGRP)

je smerovací protokol vyvinutý Cisco ako interný multiprotokolový protokol (IGP).
Návrh a štruktúry v EIGRP

EIGRP pre svoju správnu činnosť uchováva tri tabuľky



Successor route - je najlepšia/preferovaná cesta.
 

 Tabuľka susedov - neightbor table

EIGRP je multiprotokolovy smerovací protokol, a tak udržiava smerovaciu tabuľku pre každý smerovateľný protokol zvlášť

Smerovač# show ip eigrp neighbors

IP-EIGRP neighbors for process 11
H Address Interface Hold Uptime SRTT RTO Q Seq Type (sec) (ms) Cnt Num 0 192.168.1.1 Se0 14 00:11:39 28 200 0 6

Keď sused pošle hello packet oznámi v ňom tiež aj hold time. Hold time je doba, za ktorú sa susedný smerovač považuje za dostupný a fungujúci.

Obsah tabuľky susedov

Smerovacia tabuľka - routing table

Smerovač#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route
Gateway of last resort is not set C 1.0.0.0/8 is directly connected, Loopback0 D 2.0.0.0/8 [90/2297856] via 172.31.1.2, 00:00:59, Serial0 [90/2297856] via 10.1.0.2, 00:00:59, Serial1 D 3.0.0.0/8 [90/409600] via 10.1.1.3, 00:45:56, Ethernet0 D 4.0.0.0/8 [90/2323456] via 10.1.1.3, 00:00:59, Ethernet0 [90/2323456] via 172.31.1.2, 00:00:59, Serial0 [90/2323456] via 10.1.0.2, 00:00:59, Serial1 172.31.0.0/16 is variably subnetted, 2 subnets, 2 masks C 172.31.1.0/24 is directly connected, Serial0 D 172.31.0.0/16 is a summary, 00:01:01, Null0 10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks D 10.1.3.0/24 [90/2195456] via 10.1.1.3, 00:01:01, Ethernet0 D 10.1.2.0/24 [90/2195456] via 10.1.0.2, 00:01:01, Serial1 C 10.1.1.0/24 is directly connected, Ethernet0 D 10.0.0.0/8 is a summary, 00:41:22, Null0 C 10.1.0.0/24 is directly connected, Serial1

Tabuľka topologie - topology table

Smerovač#show ip eigrp topology I.P.k.a

Hello packety si susedia štandardne posielajú každých 5 sekund. Hello interval sa nastavuje na príslušnom interface:

interface Serial0
ip address 192.168.1.1 255.255.255.0
ip hello-interval eigrp 1 60
ip hold-time eigrp 1 180
clockrate 64000

Počas vytvárania priľahlosti so susedmi si smerovače vymieňajú nasledujúce informácie:


Konvergencia
1. lokálny router zisti chybný route, hľadá v tabuľke topologie feasible successor. Ak taký nenájde prejde do aktívneho stavu
2. pôvodný router sa dotazuje susedov na možné ďalšie cesty, a príma potvrdenia routrov
3. Ak iný router vie alternatívnu cestu pošle ju dotazujucemu routru
4. ak pôvodný router dostane acceptable successor zaradí ho do routovacej tabuľky
5. router pošle flash update pre cestu s vyššou metrikou
6. primaci router pošle potvrdenie

Metrika EIGRP - kalkulácia

IGRP aj EIGRP používajú rovnaký vzorec pre výpočet metriky
metrika=[K1 * bandwidth + (K2 * bandwidth) / (256 - load) + (K3 * delay))] * [K5 / (reliability + K4)]

Konštanty majú štandardne tieto hodnoty: K1 = 1, K2 = 0, K3 = 1, K4 = 0, K5 = 0
takže
metrika = bandwidth + delay

Hodnoty pre IGRP a EIGRP používané v kalkuláciách

RTP - Reliable Transport Protocol - je proprietárnym variantom transportného protokolu. Je používaný iba v EIGRP a jeho účelom je spoľahlivo prenášať informácie. Poskytuje spoľahlivú aj nespoľahlivú službu prenosu a to podľa toho, ktorá sa pravé vyžaduje. Napr. hello packety sa prenášajú nespoľahlivo, pretože sa vysielajú často a mali by ostať malé.

DUAL - Diffusing Update Algorithm Finite-state Machine (FSM) - je to stavový automat - teda algoritmus s definovanými udalosťami a stavmi - realizujúci celu logiku EIGRP prepočítavania ciest. DUAL FSM zároveň garantuje že cesta k sieti nebude obsahovať kruh.

EIGRP je implementovaný modulárne. Jeho moduly sa volajú PDM - Protocol Depend Modules. Teoreticky je teda EIGRP protokolovo nezávislé a jeho adaptácia na siete s IPv6 by mala byt možná pridaním náležitého PDM. Každý PDM je zodpovedný za všetky funkcie, ktoré súvisia s príslušným smerovaným protokolom. Napríklad IP-EIGRP zodpovedá za:


Typy EIGRP packetov
8
16
32 bits
Version
Opcode
Checksum
Flags
Sequence number
Acknowledge number
Autonomous system number
Type
Length
EIGRP header
Version
 Verzia protokolu

Opcode
 1    Update.
 2    Reserved.
 3    Query.
 4    Hello.
 5    IPX-SAP.

Type
 1    EIGRP Parameters.
 2    Reserved.
 3    Sequence.
 4    Software version.
 5    Next Multicast sequence.

Length
 Length of the frame.

Hello packety smerovač posiela v pravidelných intervaloch, ktoré je však možné konfigurovať. V IP sieťach smerovač vysiela hello multicastom na adresu 224.0.0.10. Hold time je obvykle trojnásobok hello intervalu. Na rozdiel od OSPF, hello a hold time nemusia byt v celej sieti rovnaké. Požadované intervaly sa smerovače učia z hello packetov.

priepustnosť technológia default hello interval default hold time
1.544 Mbps a menej Multipoint Frame Relay 60 sekúnd180 sekúnd
viac ako 1.544Mbps T1, Ethernet 5 sekúnd15 sekúnd

EIGRP používa Acknowledgment packets na potvrdenie príjmu každého prijatého EIGRP packetu, čím sa zaisťuje spoľahlivý prenos informácii. Vo väčšine prípadov je aknowledgment packety vlastne iba hello packety bez dát, avšak acknowledgment sa môže pripájať aj k ostatným typom EIGRP packetov. Na rozdiel od hello packetov je acknowledgment packet unicastom.

Update packety smerovač rozošle, keď nájde nového suseda. EIGRP smerovač zašle unicastom update packet svojmu novému susedovi, aby si ho pridal do svojej topologickej databázy. Môže byt potrebne zaslanie aj viac ako iba jedného update packetu na výmenu topologických informácii medzi dvoma novými susedmi.

Update packet sa tiež vysiela v prípadoch, kedy došlo k zmene topologie siete (napr. poruche). Vtedy EIGRP smerovač vyšle multicast update všetkým svojim susedom, aby ich co najrýchlejšie upozornil na vzniklú zmenu. Všetky update packety su posielane spoľahlivo, to jest vždy sú očakávané potvrdenia od príjemcov (acknowledgment).

Query packety EIGRP smerovač používa vtedy, keď od svojich susedov požaduje nejaké špecifické informácie/podrobnosti. Reply packet je odpoveďou na query.

Ak smerovač stratí successor, teda primárnu cestu k sieti a nemôže zároveň nájsť ani feasible successor, teda záložníka, potom DUAL prepne cestu do aktívneho stavu (A). Potom smerovač rozošle svojim susedom požiadavku (query) ktorou sa pokúsi získať nového successora - predvolenú cestu - k cieľovej sieti. Susedia následne musia poskytnúť informáciu o novej predvolenej ceste, alebo informáciu o tom, že žiadna cesta k požadovanému cieľu/sieti im nie je známa. Požiadavky môžu byt unicastove aj multicastove. Odpovede (reply) sú však vždy unicastove.

Pravidla pre vyber záložnej cesty - EIGRP Feasible Successor
  1. Feasibility successor route je iba alternatívnou cestou pre prípady, kedy successor (preferovaná cesta) je dole.
  2. Reported DIstance (RD) k cieľu, ako je poskytnutá susediacim smerovacom, musí byt menšia ako Feasible Distance (FD) primárnej cesty.
  3. Pokiaľ sú predošlé podmienky splnene a nevytvára sa touto cestou kruh, môže byt tato cesta označená za feasible successor - záložníka/záložnú cestu
  4. Feasile successor (FS) sa môže stať preferovanou cestou (successorom)
  5. Ak ma alternatívna cesta rovnakú RD (reported distance), alebo je lepšia nez FD (feasible distance) pôvodnej preferovanej cesty (successora), potom je pôvodná cesta preznačenú za náhradnú a náhradná sa stáva predvolenou.
  6. smerovač musí vyzbierať informácie od svojich susedov a prepočítať sieť
  7. Smerovač zasiela požiadavku (query packet) všetkým susedom, požadujúc dostupne cesty k cieľovej sieti s náležitou metrikou.
  8. Všetky susediace smerovače musia na otázku odpovedať reply packetom.
  9. Smerovač, ktorý informácie požadoval od svojich susedov, si ich zapíše do svojej topologickej tabuľky.
  10. DUAL nakoniec môže na základe nových informácii identifikovať novú predvolenú cestu (successora) a k nemu náležiacu prípadnú záložnú cestu (feasible successor).
EIGRP a IGRP si automaticky vymieňajú informácie medzi autonómnymi systémami s rovnakými číslami. Príkazom show ip route dostaneme výpisy v ktorých I je IGRP a D je EIGRP.

Konfiguracia EIGRP

 
Smerovač(config)# interface serial 0
 
Smerovač(config-if)# bandwidth 64
 
Smerovač(config-if)# eigrp log-neighbor-changes
 
 
Smerovač(config)# router eigrp 4242
 
Smerovač(config-router)# network 10.0.0.0/24
 
Smerovač(config-router)# network 172.16.0.0/24

 
Smerovač(config)# router igrp 4242
 
Smerovač(config-router)# network 192.168.0.0/24

Príkaz eigrp log-neighbor-changes umožňuje logovať priľahlosti smerovačov, čím môžme kontrolovať stabilitu smerovacieho systému, zisťovať a odstraňovať problémy.

Automatická sumarizácia podsieti založená na triedach

EIGRP automaticky sumarizuje cesty do tried (A,B,C). V prípade, ze jednotlivé podsiete nie sú spojene smerovacom do jednej kopy, potom je sumarizáciu rozumne vypnúť a to napríklad takto:

  Smerovač(router-config)# no auto-summary

V EIGRP je možné sumarizáciu na rozhraniach nakonfigurovať aj manuálne. V tom prípade sa jednotlivé agregáty podsieťových adries konfigurujú na príslušné rozhrania. (Administrativna vzdialenosť nie je povinný parameter.)

  Smerovač(config-if)# ip summary-address eigrp cislo-as ip-adr maska adm-dis

Príkazy pre konfigurovanie EIGRP
príkaz popis
Smerovac# show ip eigrp neighbors [type number] [details] Zobrazí tabulku susedov. Voľby [type number] špecifikujú rozhranie, [details] umožňuje rozšíriť výpis o podrobnosti
Smerovac# show ip eigrp interfaces [type number] [as-number] [detaily] Výpis informácií o EIGRP z konkrétneho rozhrania. Argumenty umožňujú obmedziť výpis na rozhranie [type number], alebo autonómny systém [as-number], pripadne rozšíriť výpis o podrobnosti [detaily].
Smerovac# show ip eigrp topology [as-number] [[ip-address] mask] vypíše všetky náhradné cesty (feasible successors) z topologickej tabuľky. Prídavné argumenty umožňujú obmedziť výpis len na konkrétny autonómny systém, ip-adressu alebo masku
Smerovac# show ip eigrp topology [active | pending | zero-successors] V závislosti na pridanom kľúčovom slove vypíše cesty buď aktívne (spracovavane DUALom), použiteľné, alebo také v ktorých chýba successor - predvolená cesta
Smerovac# show ip eigrp topology all-links Vypíše všetky/nie iba záložné/ cesty topologie.
Smerovac# show ip route eigrp Zobrazí aktuálne EIGRP položky/záznamy zo smerovacej tabuľky
Smerovac# show ip protocols Zobrazí parametre a aktualny stav procesov aktívnych smerovacích protokolov. Zobrazí číslo autonómneho systému, údaje tykajúce sa filtrovania a redistribucie, udaje o susedoch a vzdialenostiach
Smerovac# show ip eigrp traffic [as-number] Vypíše počet EIGRP packetov prijatých i odoslaných. Výstup môže byt obmedzený argumentom iba na konkrétny autonómny systém.
Smerovac# debug eigrp fsm Tento príkaz zobrazuje aktivitu - prijate a zmazane updates smerovacím procesom
Smerovac# debug eigrp packet tento príkaz umožňuje sledovať prijímané i vysielane EIGRP packety
Smerovac(config-router)# eigrp log-neighbor-changes Vypíše históriu kedy boli susedia resetovaný a prečo

Vylepsenia - klucove crty EIGRP (v porovnani s IGRP)

doplnenie z porovnávania s IGRP

Porovnanie IGRP a EIGRP základných vlastnosti
Vlastnosť, alebo opis IGRPEIGRP
ClassFul routing protokol ANOnie
ClassLess routing protokol nieANO
Cisco proprietary protocol ANOANO
Distance vector routing protocol ANOnie
Hybrid routing protocol nieANO
Unequal-cost load balancing ANOANO
90 second update interval ANOnie
Uses reliable transport protocol nieANO
VLSM ∧ CIDR support nieANO