0SPFv2 David Rohleder davroOics.muni.cz 22. dubna 2014 David Rohleder davro@ics.muni.cz 0SPFv2 OSPF - základní charakteristiky OSPF - základní charakteristiky • link state algoritmus • Dijkstrův Shortest Path First • VLSM, CIDR • hierarchický model David Rohleder davro@ics.muni.cz 0SPFv2 0SPFv2 - specifikace 0SPFv2 - specifikace • definován v RFC 1247, 2328 • založen na samotném IP, protokol 89 • výhody? • nevýhody? • bezrozměrná metrika (záleží na rozhodnutí správce, obvykle rychlost) • ECMP (Equal Cost MultiPath) • používá vyhrazené multicastové adresy • 224.0.0.5 - všechny OSPF routery • 224.0.0.6 - DR nebo BDR router David Rohleder davro@ics.muni.cz OSPFv2 Typy sítí, na kterých 0SPFv2 funguje Typy sítí, na kterých 0SPFv2 funguje • Point to Point linky P-t-P (mohou být i unnumbered) • broadcastové sítě (Ethernet, TokenRing, FDDI) • NBMA (X.25, Frame Relay, ATM, ...) - neumí broadcast, komunikace mezi jednotlivými routery funguje (není možné používat volbu DR a BDR) • Point to Multipoint (Frame Relay, vyhrazené okruhy) -speciální případ NBMA, kdy není propojení full mesh David Rohleder davro@ics.muni.cz 0SPFv2 Hierarchický mode Hierarchický model • dvouvrstvá hierarchie • rozdělení do oblastí Area (32b číslo dělené jako IP adresa) • backbone oblast 0.0.0.0 • všechny ostatní oblasti musejí být připojeny k backbone oblasti David Rohleder davro@ics.muni.cz OSPFv2 Typy oblastí Typy oblastí • backbone - všechny oblasti musejí být propojeny s backbone oblastí • standardní oblast • Stub Area - připojena pouze jedním směrovačem k backbone, není nutné tam šířit informace o všech sítích externích k autonomnímu systému, pouze default • NSSA (Not So Stubby Area) - oblast téměř podobná Stub, nicméně někde uvnitř dochází k redistribuci z jiného směrovacího protokolu, tento typ oblasti zabraňuje šíření Externích LSA mimo oblast • Totally Stubby Area (cisco specifické) - Stub a navíc se tam nešíří ani cesty mimo oblast (LSA typ 3) David Rohleder davro@ics.muni.cz 0SPFv2 Typy OSPF paketů Typy OSPF paketü • Hello • Database Description • Link State Request • Link State Update • Link State Acknowledgement David Rohleder davro@ics .muni . cz OSPFv2 Budování sousednosti Budování sousednosti • Router ID • Hello Protokol • stavy pro výměnu LSDB: • objevování sousedů • neighbor (soused) • synchronizace databází • full adjacency (použitelný soused) • volba DR (designated router) a BDR (backup designated router). BDR se volí jako první. David Rohleder davro@ics.muni.cz 0SPFv2 Adajcency Adjacency se vytvářiv následujících případech: • síť mezi dvěma směrovači je typu point-to-point • spojení je pomocí nakonfigurované virtuální linky protokolu OSPF • směrovač je DR • druhá strana je DR • směrovač je BDR • druhá strana je BDR Směrovací informace se vyměňují pouze mezi adjacent směrovači. David Rohleder davro@ics.muni.cz 0SPFv2 Hello Protokol Hello Protokol - parametry • Router ID • Hello interval • Area ID • Router Priority • DR a BDR David Rohleder davro@ics.muni.cz 0SPFv2 Výměna směrovacích informací Výměna směrovacích informací O routery pomocí Hello Protokolu naváží spojení O routery si pomocí OSPF paketů Database Description vymění seznam LSA, které mají ve své databázi O router si pomocí OSPF paketů Link State Request požádá o LSA z předchozí výměny LSDB O druhý router pošle pomocí OSPF Link State Update paketu informaci o celém LSA O router potvrdí pomocí OSPF Link State Acknowledgement, že update dostal David Rohleder davro@ics.muni.cz 0SPFv2 Hello Protokol Hello pakety obsahují následující informace: • Router ID směrovače, který paket generuje • Area ID rozhraní • netmasku rozhraní, přes které je paket posílán • autentizační informace • Hellolnterval daného rozhraní • RouterDeadlnterval daného rozhraní • RouterPriority • DR nebo BDR • volitelné capabilities, které směrovač podporuje • Router ID směrovačů, jejichž Hello pakety už tento směrovač na tomto rozhraní viděl David Rohleder davro@ics.muni.cz 0SPFv2 Typy směrovačů Typy směrovačů v závislosti na jejich umístění v topologii • standardní router - nachází se pouze v jedné oblasti a běží na něm pouze jeden směrovací protokol • ABR (Area Border Router) - nachází se ve více oblastech, možná sumarizace • ASBR (AS boundary Router) - nachází se na rozhraní více autonomních systémů a probíhá u něj redistribuce z jednoho směrovacího protokolu do jiného (včetně redistribuce statických nebo přímo připojených sítí) David Rohleder davro@ics.muni.cz 0SPFv2 Typy LSA Typy LSA • Router LSA (typ 1) • Network LSA (typ 2) • Summary LSA (typ 3) • ASBR summary LSA (typ 4) • AS external LSA (typ 5) - dva subtypy Type 1 a Type 2 • NSSA LSA (typ 7) • group membership LSA (typ 6) - multicast OSPF • další typy (external atributes...) David Rohleder davro@ics.muni.cz 0SPFv2 Router LSA (typ 1) Router LSA (typ 1): • obsahuje Router ID směrovače, který tento paket generuje • obsahuje seznam všech interfaců, které se na daném směrovací účastní směrování protokolem OSPF, včetně metriky • šíří se pouze v jedné area David Rohleder davro@ics.muni.cz 0SPFv2 Network LSA (typ 2) Network LSA (typ 2): • generuje jej DR • obsahuje Router ID DR • obsahuje netmasku dané sítě • obsahuje seznam sousedících směrovačů, včetně DR • šíří se pouze v jedné area David Rohleder davro@ics.muni.cz 0SPFv2 Network Summary LS A (typ 3) Network Summary LSA (typ 3): • je generován ABR • obsahují seznam sítí vyskytujících se v oblasti • u každé sítě je metrika, která říká, jak daleko je ABR od dané sítě (i když zná více cest, je posílána pouze ta nej lepší) • jsou posílány mimo danou oblast (tj. hlavně do backbone oblasti 0 nebo z backbone do oblasti) • tímto způsobem ABR oznamuje ostatním směrovačům mimo oblasti, že je přes něj možné se dostat k oznamovaným sítím • pokud dostane směrovač toto oznámení od ABR, nepočítá SPF, pouze připočítá hodnotu rozhrania umístí jej do směrovací tabulky (DV chování) David Rohleder davro@ics.muni.cz 0SPFv2 ASBR Summary LSA (typ 4) ASBR Summary LSA (typ 4): • jsou podobné Network Summary LSA (typ 3) • neoznam ují sít, ale ASBR David Rohleder davro@ics.muni.cz 0SPFv2 Autonomous System External LSA (External LSA) (typ 5) Autonomous System External LSA (typ 5): • generuje jej ASBR • obsahuje bud default routě nebo sítě externí OSPF autonomnímu protokolu (tj. nemají informaci o tom, ve které leží oblasti) • šíří se celým autonomním systémem David Rohleder davro@ics.muni.cz 0SPFv2 NSSA External LSA (typ 7) NSSA External LSA (typ 7) • používá se při redistribuci směrovacích informací v NSSA oblastech • je podobný External LSA (typ 5), ale nevytváří ze směrovače ASBR • tento typ LSA se šíří pouze v dané NSSA oblasti (narozdíl od External LSA, který se šíří celým OSPF autonomním systémem) David Rohleder davro@ics.muni.cz 0SPFv2 LSA šířené v oblastech Typ oblasti 1 a 2 3 a 4 5 7 Backbone (area 0) ano ano ano ne standardní oblast ano ano ano ne Stub ano ano ne ne Totally stubby ano ne ne ne NSSA ano ano ne ano David Rohleder davro@ics.muni.cz 0SPFv2 Typy OSPF paketů Typ paketu číslo funkce Hello 1 objevuje a udržuje sousedy Database description 2 sumarizuje obsah databáze (hlavičky LSA) Link State Request 3 žádost o LSA Link State Update 4 seznam úplných informací o LSA Link State Acknowledgement 5 potvrzuje přijetí LSU David Rohleder davro@ics.muni.cz 0SPFv2 Ceny linek v grafu Pokud není cena linky nastavena konfiguračně, obvykle se počítá jako: cost = 108/ ba ndwidt h pro dnešní rychlosti to není dostatečná metrika. Je možněji změnit tak, aby odpovídala dnešním linkám (pokud nenastavíme cost ručně). Porovnávání ceny linek (s klesající preferencí): O intra-area O inter-area O External Type 1 - cena externí cesty + cena cesty k ASBR O External Type 2 - cena externí cesty David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Down - směrovač zatím nedostal žádné OSPF pa kety David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Attempt - pouze pro NBMA sítě David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Init - směrovač obdržel Hello paket, ale RID směrovače není v Hello paketu obsaženo (RID bude obsaženo, až směrovač pošle Hello svému sousedovi, který pak pošle nové Hello) David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů 2-way - směrovač obdržel Hello paket, který obsahuje RID tohoto směrovače. Směrovače jsou nyní sousedé. Nastává volba DR a BDR Ve stavu 2-way zůstává směrovač se všemi ostatními směrovači s výjimkou DR a BDR. David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Exstart - první stav ve vytváření adjacency. Ustavuje se master-slave relace pro výměnu LSA. Masterem se stává směrovač s vyšším RID. Příprava k výměně DD paketů (Database Description) - dohoda o počátečním čísle DD paketů. David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Exchange - výměna DD paketů. Směrovače se střídají v posílání DD a vždycky zvýší číslo DD (tím zajistí potvrzení přijetí - pokud směrovač nedostane další DD, patrně se předchozí DD ztratil). David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Loading - výměna směrovacích informací pomocí Link State Request a Link State Update zpráv David Rohleder davro@ics.muni.cz 0SPFv2 konečný automat OSPF stavů Full - výměna LSA je ukončena a směrovače jsou plně synchronizovány. David Rohleder davro@ics.muni.cz 0SPFv2