Open Shortest Path First



Documenti analoghi
Open Shortest Path First

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Multicast e IGMP. Pietro Nicoletti

I protocolli di routing dell architettura TCP/IP

ARP e RARP. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it Fulvio RISSO

Interdomain routing. Principi generali e protocolli di routing. Mario Baldi

Il protocollo VTP della Cisco

Interdomain routing. Principi generali e protocolli di routing. Argomenti della presentazione. Nota di Copyright. Routing interdominio

Il routing in Internet Interior Gateway Protocols

IGRP Interior Gateway Routing Protocol

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Introduzione. Algoritmi Link-State. Principi. Adiacenze OSPF (2) Adiacenze OSPF (1) Open Shortest Path First Protocol (OSPF)

ICMP. Internet Control Message Protocol. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it

ACCESS LIST. Pietro Nicoletti

INFOCOM Dept. Software Router

I protocolli di routing dell architettura TCP/IP

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Autenticazione tramite IEEE 802.1x

Progettazione di reti locali basate su switch - Switched LAN

SIP e SDP. Segnalazione nelle reti VoIP. Fulvio Risso. Politecnico di Torino

Ricerca ed analisi della causa di un problema o guasto di rete

Routing dinamico: OSPF

Reti di Calcolatori. Il software

Routing Dinamico EIGRP con Manual Summarization e Default Route 16/12/2014 Autore Roberto Bandiera

IP Multicast. Mario Baldi staff.polito.it/mario.baldi. Silvano Gai Nota di Copyright. Comunicazioni di gruppo

Laboratorio di Reti di Comunicazione ed Internet Mod. 2

Hot Standby Routing Protocol e Virtual Router Redundancy Protocol

Il routing in Internet Exterior Gateway Protocols

Reti di calcolatori. Lezione del 10 giugno 2004

Suddivisione di grandi reti in aree (1/3)

SMDS: Switched Multi-Megabit Data Service. Silvano GAI

ARP e instradamento IP

SWITCH. 100 Mb/s (UTP cat. 5E) Mb/s SWITCH. (UTP cat. 5E) 100 Mb/s. (UTP cat.

FONDAMENTI DI MATEMATICA BINARIA

Reti diverse: la soluzione nativa

Gli indirizzi di IPv6

Routers e LAN aggregati in regioni prendono il nome di Autonomous System quando sono controllati dalla stessa amministrazione; in un AS:

Cenni sull ingegneria del software e sulla qualità dei programmi

Wireless monitoring & protection

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Forme di indirizzamento

RETI DI CALCOLATORI. Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI. Facoltà di Ingegneria Università degli Studi di Udine

Reti di Calcolatori

Open Shortest Path First (OSPF)

Internet e Peering. Fulvio RISSO

OSPF Open Shortest Path First

Livello di Rete. Prof. Filippo Lanubile. Obiettivo

Gestione della memoria centrale

INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP FORME DI INDIRIZZI IP CINQUE FORME DI INDIRIZZI IP

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori (a.a. 2010/11)

RoutingInternet Protocol. Algoritmi di instradamento di tipo Distance vector

Domain Name Service. Mario BALDI. Silvano GAI. Fulvio RISSO. staff.polito.it/mario.baldi. sgai[at]cisco.com. fulvio.risso[at]polito.

Esercizi di Sniffing

SNMP e RMON. Pietro Nicoletti Studio Reti s.a.s. Mario Baldi Politecnico di Torino. SNMP-RMON - 1 P. Nicoletti: si veda nota a pag.

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Link Aggregation - IEEE 802.3ad

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

Progetto di RHS MicroAODV per Reti di Sensori A.A. 2007/2008

Cognome Nome Matricola Tempo a disposizione per lo svolgimento: 1 ora e 20 min Avvertenza: Si usi lo spazio dopo ogni quesito per lo svolgimento.

Reti diverse: la soluzione nativa

Inizializzazione degli Host. BOOTP e DHCP

Reti di Calcolatori I. Prof. Roberto Canonico Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione

Hot Standby Routing Protocol e Virtual Router Redundancy Protocol

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

ICMP OSI. Internet Protocol Suite. Telnet FTP SMTP SNMP TCP e UDP NFS. Application XDR. Presentation. Session RPC. Transport.

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente

Protocollo IP e collegati

il progetto ieee 802

Argomenti della lezione

ARP (Address Resolution Protocol)

Transmission Control Protocol

Interconnessione di reti

Instradamento IP A.A. 2005/2006. Walter Cerroni. IP: instradamento dei datagrammi. Routing : scelta del percorso su cui inviare i dati

Gestione degli indirizzi

INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

il trasferimento di file

Esempio quesiti d esame per il laboratorio del corso. Reti di Comunicazione ed Internet Mod 2, Prof. G. A. Maier

Sicurezza a livello IP: IPsec e le reti private virtuali

COMPLESSO SCOLASTICO INTERNAZIONALE GIOVANNI PAOLO II. Pianificazione di reti IP (subnetting)

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Reti di Calcolatori I. Prof. Roberto Canonico Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione

VPN CIRCUITI VIRTUALI

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Gestione degli indirizzi

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Venerdì 18 Febbraio 2005, ore 9.30

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto

Internet. Introduzione alle comunicazioni tra computer

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Reti di Telecomunicazione Lezione 6

Servizi integrati su Internet

TEST DI RETI DI CALCOLATORI I (9400N) anno 1999/2000

GLI INDIRIZZI DELL INTERNET PROTOCOL (IP ADDRESS) 2. Fondamenti sugli indirizzi dell Internet Protocol 2. Struttura di un indirizzo IP 2

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

3. Introduzione all'internetworking

INFOCOM Dept. Antonio Cianfrani. Virtual LAN (VLAN)

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

Protocolli di Comunicazione

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

Transcript:

Open Shortest Path First Fulvio Risso http://sites.google.com/site/fulviorisso/ Questa raccolta di trasparenze è basata su una versione precedente creata da Mario Baldi e Giogio Valent 1

Nota di Copyright Questo insieme di trasparenze (detto nel seguito slides) è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio, musica e testo) sono di proprietà degli autori indicati a pag. 1. Le slides possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero dell Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di lucro. In tal caso non è richiesta alcuna autorizzazione. Ogni altra utilizzazione o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su supporti magnetici, su reti di calcolatori e stampate) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte degli autori. L informazione contenuta in queste slides è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza preavviso. Gli autori non assumono alcuna responsabilità per il contenuto di queste slides (ivi incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento dell informazione). In ogni caso non può essere dichiarata conformità all informazione contenuta in queste slides. In ogni caso questa nota di copyright non deve mai essere rimossa e deve essere riportata anche in utilizzi parziali. 2

Concetti generali Protocollo di tipo Link State Definito dall IETF con la RFC 1247 (1991) e la RFC 1583 (1994) OSPF ha il concetto di gerarchia Permette di gestire reti di dimensioni notevoli Un AS è suddiviso in aree Le aree contengono un gruppo di reti contigue Backbone: area particolare, non necessariamente contigua, alla quale si affacciano tutte le altre aree 3

Terminologia Backbone rete di livello 2 Backbone router IS di livello 2 Area border router backbone router che si affaccia su più aree esegue una copia dell algoritmo per ogni area Internal router IS di livello 1 4

Terminologia Autonomous System (AS) dominio di routing AS boundary router IS collegato a IS appartenenti ad altri AS Link State Advertisement (LSA) diffondono informazioni sullo stato dei link equivalenti ai tradizionali LSP non sono pacchetti 5

Esempio di rete OSPF R1 R2 Area 1 R3 Backbone router Autonomous System border router Internet R1 Internal router R2 R3 R2 R4 Area 0 (backbone) R5 Area border router R1 Area 2 R3 R2 R2 R1 Area 3 R3 Stub area 6

Metriche Non ha una formula precisa come IGRP Il best path può essere, a seconda dell esigenza dei pacchetti il percorso più breve quello a capacità maggiore quello a ritardo minore OSPF supporta contemporaneamente più metriche sullo stesso link 7

Metriche e Loop Metriche diverse attenzione ad avere delle metriche consistenti nei vari nodi e evitare il pericolo dei loop Serve una indicazione univoca della metrica da adottare la scelta della metrica è determinata dal campo TOS del pacchetto IP Verso D (costo minore) R1 R4 D 8 Verso D (ritardo minore) R2 R3

Metriche: TOS OSPF permette di definire metriche in base al campo TOS del pacchetto IP in teoria 64 possibili tipi di servizio in pratica precedence è ignorato --> 8 TOS si sta pensando di aggiungere una metrica di spesa proibire l impostazione di più bit contemporaneamente campo in fermento per l opera di gruppi quali DiffServ precedence Delay Throughput Reliability 0 0 3 1 1 1 1 1 9

Costi Assegnati dal costruttore in base alla banda Compresi tra 1 e 65535 Ogni costruttore ha i suoi valori di default Costo (Cisco) = 10 8 /banda Consigliato personalizzarli sui link più importanti interface <name> ip ospf cost <value> Interfaccia Costo OSPF default (Cisco) Fast Ethernet 1 T3 (45 Mbps) 2 T1 (1.5 Mbps) 64 10

Equal Cost Multi-Path Routing Possibile quando più percorsi hanno lo stesso costo Detto anche Load Sharing Implementazione: non è obbligatoria Meccanismo di distribuzione del traffico Dipende dal costruttore Flow Based Preserva l ordinamento dei pacchetti Complicato Packet Based Può essere costoso (richiede informazioni di stato) Destination-Based Più semplice Può portare ad una distribuzione non ottimale del traffico 11

Propagazione delle informazioni I router sul backbone sono configurati per aggregare gli indirizzi all esterno dell area sono diffusi address summary ad esempio un area contiene indirizzi nella forma 5.12.*.* e 5.7.*.* il router di livello 2 dichiara di essere collegato a 5.*.*.* I router sul backbone diffondono nelle aree non backbone riassunti delle informazioni provenienti da altre aree i router all interno di un area non backbone possono scegliere un punto ottimale di uscita dall area 12

Aree di tipo Stub (1) È un area dove tutte le External route all area stessa sono sostituite da una sola Default Route È usata spesso quando un area ha un solo Area Border Router In questo caso non è necessario inviare le route esterne, in quanto per uscire dall Area vi è un solo router e quindi la strada è obbligata Le route esterne servono solo per scegliere il migliore Egress Router Non comunque vietato avere una Stub Area con più di un Area Border Router, anche se la cosa è inutile 13

Aree di tipo Stub (2) Una stub area non può essere usata come transito versi altri domini Non è quindi possibile collegate un AS Boundary Router ad un area Stub Si supponga di collegare un Boundary Router ad una Stub Se i pacchetti che entrano nell area sono destinati ad un altra area all interno dell AS, viene applicata la Default Route (all interno dell area Stub si conoscono solo le route interne ad essa) Il pacchetto seguendo la Default Route riesce dal Boundary Router, in altre parole ritorna da dove è arrivato Non sono ammessi Virtual Link che attraversano la Stub Area 14

Propagazione degli LSA su LAN Un router R che deve propagare un LSA sulla LAN, lo invia al DR mediante l indirizzo multicast data-link AllDrouters Il DR e il backup DR ricevono all indirizzo AllDrouters Il DR manda il LSA all indirizzo multicast data-link AllSPFrouters I router inviano le conferme di ricezione (acknowledgment) all indirizzo AllDrouters Se il DR non riceve conferme da un sottoinsieme di router, invia copie dell LSA ad ognuno di questi router (in unicast) 15

Propagazione degli LSA su LAN Il DR concentra su di esso molte informazioni sullo stato delle basi dati degli altri router La sostituzione del DR richiederebbe un intenso scambio di messaggi con cui il nuovo DR per raccogliere tali informazioni molto tempo prima di essere effettivamente operante Viene eletto un backup designated router sente i messaggi diretti al DR memorizza le stesse informazioni raccolte dal DR DR e backup DR non decadono se funzionanti Attenzione: la funzione di DR/BDR è decisa per-lan Uno stesso router può essere DR in una LAN e nulla in un altra È una proprietà dell interfaccia del router 16

Autenticazione In ogni pacchetto sono presenti informazioni per l autenticazione Ad ogni link è associata una (e una sola) password sono accettati solo pacchetti che contengono la password associata al link da cui arrivano difficile cambiare la password di un link basta intercettare un messaggio per avere la password ed utilizzarla in entrambe le direzioni 17

Aree partizionate (1) È un problema classico se si vogliono gerarchizzare le route In OSPF si risolve diversamente a seconda che a trovarsi partizionata sia un area il backbone A L B C F G Area 1 Backbone Area 2 D E H I 18

Aree partizionate: Area (2) Essendo le route summarizzate, un pacchetto da I a B può essere iniettato nell area 1 sia da C che da E Il percorso migliore è I-H-E-D-B Se è iniettato da E il pacchetto non può giungere a destinazione A L B C F Backbone Area 1 Area 2 G D E H I 19

Aree partizionate: Area (3) Soluzione: gli Area Border Router non summarizzano le informazioni in base a tutte le reti presenti nell area in esame, ma sono di quelle che riescono a raggiungere Nel backbone continua ad esserci solo una entry per ogni network, in quanto anche se 2 border router annunciano la stessa network (come accade per la rete B quando non c è il guasto) viene comunque selezionata la route migliore Non usando aggregazione nei router di livello 2 le partizioni non creano problemi di raggiungibilità si sfruttano solo parzialmente i vantaggi del routing gerarchico 20

Aree partizionate: Backbone (1) Un guasto sul backbone può isolare il router E anche se esisterebbe un percorso alternativo attraverso l area 1 La soluzione consiste nel creare un Virtual Link tra E ed un altro nodo del backbone (ad es C, passando per B e D) A B C F G Area 1 Area 2 D E Backbone H I 21

Aree partizionate: Backbone (2) I router di backbone possono essere collegati da link virtuali la backbone può essere non connessa Non c è un meccanismo automatico tramite cui due router comprendono se tra loro è necessario un link di livello 2 i link virtuali devono essere configurati a mano 22

Aree partizionate: Virtual Link I messaggi di routing sono imbustati in pacchetti IP la destinazione ed il sorgente sono gli estremi del link virtuale (C e E) I pacchetti di dato instradati da C verso E devono attraversare l area 1 i router di livello 1 devono sapere che i pacchetti devono andare verso E l informazione deve arrivare dalle informazioni di livello 2 propagate all interno dell area Alternativa: incapsulamento (tunneling) tra C e E 23

Timers Valori annunciati nel pachetto di Hello HelloInterval: 10s RouterDeadInterval: 40 sec Ignorato se si riceve un segnale di interruzione dell adiacenza dal livello disico L adiacenza di un router con un altro si stabilisce solo se i valori dei timer sono uguali sui due router Influenzano la velocità di convergenza di una rete Non specificati dallo standard Alcuni valori suggeriti (es. HelloInterval=10s per una LAN) Altri timers LSA Refresh: ogni 30 min Migliora la robustezza della rete 24

Contenuto del database OSPF Il database di un router appartenente ad un area contiene: Link State Records relativi e tutti i router presenti in quell area Summary Records, emessi dagli Area Border Router dell area in esame e relativi a tutte le reti appartenenti alle altre aree e al backbone; queste route sono summarizzate, a differenza di quelle del punto precedente External Records, emessi dagli AS Boundary Router relativi alle route esterne all AS Questa suddivisione contribuisce ad aumentare la scalabilità di OSPF Le entry sono rimosse se invalidate da un apposito messaggio o allo scadere di un timer 25

Link State Records: tipi Negli algoritmi di tipo LS ogni adiacenza viene modellata come un link punto-punto Adiacenza = router adiacente, network IP adiacente Nel caso di LAN, le adiacenze possono esplodere Viene definita una adiacenza particolare (pseudo-nodo) OSPF definisce due tipi di link Router Link Collegamento punto-punto tra due router (ad es. link seriale) Collegamento punto-punto tra un router e una rete IP adiacente Network Link Collegamento punto-punto tra un router e una rete di transito sulla quale sono presenti più router OSPF 26

Struttura generale dei pacchetti OSPF IP, Protocol #89 OSPF packet OSPF Header OSPF Data Hello Link Type Link ID Link Data 1 (Point-to-point link to another router) 2 (Link to a transit network) Neighboring router s RouterID IP address of the DR s interface IP address of the originating router s interface to the network IP address of the originating router s interface to the network Database Description 3 (Link to a stub network) IP network address IP network mask Link State Request 4 (Virtual Link) Neighboring router s RouterID The MIB-II ifindex value for the originating router s interface Link State Update LSA Header Router LSA Network LSA Network Summary LSA ASBR Summary LSA AS External LSA 27 Link State Acknowledgement

Link State in OSPF (1) NetA/MaskA NetA/MaskA IP1 R1 Link State Database: Router LSA (Link State ID: R1, Adv Router: R1, #links: 1) Router Link: Link ID (Network ): NetA Link Data (Netmask): MaskA - Link to a stub network 28

Link State in OSPF (2) R1 R1 IP1 NetA/MaskA IP2 IP1 IP2 NetA/MaskA R2 R2 Link State Database: Router LSA (Link State ID: R1, Adv Router: R1, #links: 2) Router Link: Link ID (Network) : NetA Link Data (Netmask): MaskA - Link to a stub network Router Link: Link ID (Neighbor RouterID): R2 Link Data (Router If. Addr.): IP1 - Point-to-point link to another router Router LSA (Link State ID: R2, Adv Router: R2, #links: 2) Router Link: Link ID (Network): NetA Link Data: MaskA (Netmask) - Link to a stub network Router Link: Link ID (Neighbor RouterID): R1 Link Data: IP2 (Router If. Addr.) - Point-to-point link to another router 29

Link State Database: Link State in OSPF (3) R1 IP1 IP2 R1 R2 NetA/MaskA IP1 Transit Network NetA/MaskA IP2 IP3 R2 R3 IP3 R3 Router LSA (Link State ID: R1, Adv Router: R1, #links: 2) Router Link: Link ID (Network) : NetA Link Data (Netmask): MaskA - Link to a stub network Router Link: Link ID (DR IP Address): IP3 Link Data (Router If. Addr.): IP1 - Link to a transit network Network LSA (Link State ID: IP3, Adv Router: R3) Netmask: MaskA Attached Routers: R1, R2, R3 Router LSA (Link State ID: R2, Adv Router: R2, #links: 2) Router Link: Link ID (Network) : NetA Link Data (Netmask): MaskA - Link to a stub network Router Link: Link ID (DR IP Address): IP3 Link Data (Router If. Addr.): IP2 - Link to a transit network Router LSA (Link State ID: R3, Adv Router: R3, #links: 2) Router Link: Link ID (Network) : NetA Link Data (Netmask): MaskA - Link to a stub network Router Link: Link ID (DR IP Address): IP3 Link Data (Router If. Addr.): IP3 - Link to a transit network 30

OSPF: Formato dei pacchetti È imbustato in IP (protocol Type = 89) Non ci sono campi di lunghezza variabile Non ci sono campi per estensioni ignorate dalle versioni precedenti Codifica più compatta Elaborazione dei pacchetti più veloce Maggiore rigidità all evoluzione È formato in effetti da 3 sotto-protocolli Hello Exchange Flooding Tutti i pacchetti iniziano però con un header comune 31

Formato dei pacchetti: header (1) 0 8 16 31 Version Type Packet Lenght Router ID Area ID Checksum Autentication Type Autentication 32

Router ID Nome proprio del router Lo standard non specifica come deve essere ricavato Cisco È sufficiente che sia univoco Indirizzo più grande presente sulle interfacce di loopback Le interfacce di loopback non dipendono dallo stato delle interfacce fisiche e quindi sono più stabili Nel caso non ci siano interfacce di loopback presenti, si sceglie l indirizzo IP più alto configurato sulle interfacce Il RouterID è calcolato alla partenza del processo OSPF e non viene cambiato qualora gli indirizzi IP sul router venissero modificati In questo caso il router potrebbe avere un nuovo RouterID ad un successivo reboot 33

Formato dei pacchetti: header (2) Version: attualmente 2 Type: può assumere i seguenti valori: Hello, Database Description, Link State Request, Link State Update, Link State Acknowledgement Rappresenta il tipo di pacchetto OSPF trasportato Router_ID: Router ID del router che genera il messaggio Nel caso di pacchetti mandati il flooding, è l identificativo del router che sta attualmente trasmettendo il pacchetto e non il Router ID di chi ha creato inizialmente il Link State Advertisement 34

Formato dei pacchetti: header (3) Area_ID: numero che identifica univocamente l area all interno del dominio OSPF spesso viene scelto un indirizzo IP un valore 0 identifica il backbone Autentication Type: ne sono definiti 2 tipi: No Authentication Simple Password 35

Pacchetti Hello (1) Sono utilizzati per: vedere se il link è operativo, quindi per costruire la tabella delle adiacenze eleggere il Designated Router e il Backup DR sulle LAN Trasmessi solo tra nodi vicini e mai propagati Header OSPF: Type = 1 36

Pacchetti Hello (2) 0 8 16 31 Network Mask Hello Interval Dead Interval Options Priority Designated Router Backup Designated Router Neighbor....... Neighbor 37

Pacchetti Hello (3) Network Mask: netmask associata all interfaccia da cui viene emesso il pacchetto Hello Interval: comunica ogni quanti secondi viene emesso un pacchetto di Hello Options: vengono definiti solo gli ultimi 2 bit E: se il router è in grado di inviare e ricevere route esterne; è pari a 0 se l interfaccia appartiene ad una stub area T: se il router è in grado di gestire pacchetti con diversi TOS Priority: serve per l elezione del DR Viene eletto DR router chi ha la priorità più alta Un router con priorità 0 non potrà mai diventare DR È un parametro settato da management 38

Pacchetti Hello (4) Dead_Interval: intervallo di tempo di validità dei pacchetti di Hello ricevuti oltrepassato questo intervallo gli Hello ricevuti vengono ritenuti decaduti DR, BDR: indirizzo del Designated Router - BDR (0 se non sono ancora stati definiti) Neighbor: lista di router_id da cui è stato ricevuto il pacchetto di Hello negli ultimi Dead_Interval secondi Il link tra due router è dichiarato operativo se i pacchetti possono scorrere in ambedue le direzioni Ambedue i router hanno lo stesso valore del bit E 39

Protocollo di Exchange (1) Comprende due tipi di pacchetti Database Description (Header OSPF: Type = 2) Link State Request (Header OSPF: Type = 3) Lo scambio degli LSA completi avviene con altri due tipologie di pacchetti Link State Update Link State Acknowledgement È usato per sincronizzare i router quando diventano adiacenti ad esempio all accensione oppure quando un nuovo link diventa operativo È un protocollo asimmetrico il primo passo consiste nel definire uno dei due router come Master e l altro come Slave 40

Protocollo di Exchange (2) Sincronizzazione non vuol dire semplicemente Inizializzazione Fasi del protocollo Exchange Scambio dei tutti gli LSA (o meglio, del solo sommario) in possesso di ciascun router Richiesta all altro router degli LSA mancanti/vecchi Trasmissione degli LSA richiesti Solo a questo punto l LSA viene trasferito in maniera completa 41

Pacchetti Database Description (1) 0 16 24 293031 0 Options 0 I MMs DD Sequence Number Link State Type Link State ID Advertising Router Link State Sequence Number LS Checksum............ LS Age 42

Pacchetti Database Description (2) Options: come nel pacchetto Hello E: se il router è in grado di inviare e ricevere route esterne; è pari a 0 se l interfaccia appartiene ad una stub area T: se il router è in grado di gestire pacchetti con diversi TOS I: Initialize M: More MS: Master - Slave (1= Master) DD SN: numero di sequenza del pacchetto DD I campi successivi (che possono essere ripetuti) sono la descrizione dell header di un LSA, ed hanno quindi lo stesso significato 43

Protocollo di Exchange (2) Il router che vuole iniziare la procedura Emette un pacchetto vuoto DD con I, M, Ms settati L altro router risponde Emette un pacchetto DD di acknowledgment con I, M Il primo router può iniziare ad inviare le descrizioni da lui possedute Emette paccheti DD con M, Ms (eccetto l ultimo pacchetto che ha solo Ms) Lo slave risponde Emette un pacchetto DD di acknowledgment con M, riportando la sua descrizione del database Se il master non riceve l Ack entro un certo intervallo ri-invia il pacchetto originale DD 44

Protocollo di Exchange (3) Se viceversa lo slave non ha finito di trasmettere le sue descrizioni In corrispondenza del pacchetto del Sender con M=0 emette un pachetto DD con M = 1 Il master continua ad inviare pacchetti vuoti con M = 0, ed accettare gli Ack (pieni) che gli arrivano dallo slave La procedura di sincronizzazione termina quando anche lo Slave invia un pacchetto con M = 0 Durante lo scambio sia il master che lo slave controllano di avere l LSA inviato dalla controparte, e questo LSA non deve essere più vecchio di quello ricevuto se questo non è verificato l LSA viene inserito nella lista degli LSA da richiedere 45

Pacchetti Link State Request Vengono inviati alla fine dei DD se sono stati rilevati LSA da sincronizzare richiedono all altro router di trasmettere il LSA completo corrispondente ai campi Link_State_Type, Link_State_ID e Advertising_Router indicati Possono essere fatte più richieste insieme i tre campi possono essere ripetuti più volte in un pacchetto OSPF Gli LSA richiesti sono inviati attraverso il protocollo di flooding In questo modo è posibile aggiornare tutta la rete con le informazioni mancanti 46 0 31 Link State Type Link State ID Advertising Router

Protocollo di flooding È usato per inoltrare a tutta la rete il nuovo stato di un link vengono inviati: in caso di cambiamento di stato del link allo scadere di un timer (normalmente 60 min) anche se utilizza un ACK la ri-generazione allo scadere del timer garantisce una maggiore immunità ai guasti Comprende due tipi di pacchetti Link State Update (Header OSPF: Type = 4) Link State Acknowledgement (Header OSPF: Type = 5) 47

Flooding e Lollipop space Problema: come capire se un nuovo LSA è più recente di uno attualmente in possesso del nodo Possibili soluzioni Spazio lineare della sequenza Cosa succede quando si esaurisce lo spazio? Cosa succede quando si ricomincia (ad es. a causa di un reboot del router?) Spazio circolare a > b se: (a-b) <= N/2 a < b se: (b-a) > N/2 Risolve il primo problema, non il secondo, perchè non è banale dire quale tra due numeri è più piccolo Spazio a lecca-lecca OSPF usa uno spazio lineare 48

Link State Update Number of Advertisement: il numero di LSA che vengono trasportati dal pacchetto in esame possono essere trasportati più LSA LSA è il Link State vero e proprio 0 31 Number of Advertisements LSA 49

Link State Acknowledgement È il messaggio di conferma della ricezione del LS Update Comprende l Acknowledgement nello stesso formato del DD Ack 0 16 31 Link State Type Link State ID Advertising Router Link State Sequence Number LS Checksum LS Age 50

Link State Advertisement È effettivamente la struttura dati che trasporta le informazioni È la corrispondente del LSP degli algoritmi teorici 51

LSA Header (1) Tutti gli LSA hanno lo stesso header Advertising Router: uno degli indirizzi IP del router (quello selezionato come OSPF_ROUTER_ID) 0 8 16 31 LS Age Options LS Type Link_State_ID Advertising Router LS Sequence Number LS Checksum Length 52

LSA Header (2) Age: anzianità dell LSA corrente (secondi) Options Solo 2 degli 8 bit a disposizione hanno significato E: External Link, usato dal protocollo di Hello T: settato quando il router supporta il TOS Routing Type: tipo di LSA trasportato Link_State_ID: identificativo dell LSA scelto dall Advertising Router, ma il significato preciso può variare a seconda di Type Basta genericamente che la combinazione Router_ID, Link_State_ID e Type sia univoco (per riuscire ad identificare univocamente l LSA) 53

LSA Type Ne esistono di 5 tipi Router Link Network Link Summary Link (IP Network) Summary Link (to a border router) External Link I formati dei pacchetti di questi 5 tipi di LSA (riportati nelle slide successive) DEVONO essere sempre preceduti dall LSA Header 54

LSA Type 1: Router Link (1) riporta le informazioni su tutti i link connessi al router che sta facendo l advertising le informazioni riportate comprendono quindi tutti i router adiacenti e tutte le LAN collegate siccome gli LSA generati da un internal router devono raggiungere tutti i router della sua area, le reti contenute in un'area devono essere contigue, cioè deve essere possibile spostare un pacchetto da un qualsiasi router interno all'area ad un qualsiasi altro transitando esclusivamente su collegamenti (e router) interni all'area. propagato solo all interno dell area (sia per le aree non backbone che per il backbone) I campi dal Link_ID fino alla fine sono ripetuti N volte pari al numero di link presenti simile ad un LSP tradizionale Type = 1 55

LSA Type 1: Router Link (2) 0 6 7 8 16 31 0 E B 0 Number of links Link ID Link Data Link Type # TOS TOS 0 metric TOS = x 0 TOS x metric........ TOS = z 0 TOS z metric 56

LSA Type 1: Router Link (3) E: settato se il router è un Area Border Router (External) B: settato se il router è un AS Boundary Router (Border) Link Type: tipo di Router Link Point-to-point connection to another router Connection to a transit network Connection to a stub network Virtual Link Link_State_ ID, Link Data Significato diverso a seconda del valore di Link Type (vedi slide) 57

LSA Type 1: Router Link (4) # TOS: il numero di tipi di servizio con cui vengono differenziate le metriche essendo i valori del campo TOS 2 8 non è necessario riportare la metrica per tutti i TOS, ma solo per quelli che differiscono dal TOS 0 TOS 0 metric: il costo di percorrenza del link per i pacchetti con TOS = 0 TOS = x: il TOS dei pacchetti IP che utilizzano una metrica alternativa a quella standard TOS x metric: la metrica associata ai pacchetti che hanno TOS pari a x 58

LSA Type 2: Network Link (1) Type = 2 È generato dal Designated Router per le reti di transito (transit networks) simile ad un tradizionale LSP generato per conto di una LAN elenca tutti i router presenti sulla LAN propagato sul backbone dai backbone router 59

LSA Type 2: Network Link (2) 0 31 Network Mask Attached Router....... Attached Router 60

LSA Type 2: Network Link (3) Network Mask: netmask della rete di transito Attached Router: indirizzo IP di tutti i router che vi si affacciano sulla LAN (o meglio, tutti i router che hanno creato una adiacenza con il designated router) Non è necessario indicare il numero di router adiacenti in quanto la lunghezza del messaggio è data dal campo LENGHT dell header Link_State_ID (dell header LSA): è il corrispondente indirizzo IP dell interfaccia del Designated Router collegata alla rete di transito 61

LSA Type 3-4: Summary Links (1) Generati ambedue dagli Area Border Routers, e ne esistono di due tipi: Summary Links for IP Networks (Type = 3): propagano le informazioni summarizzate relative alla distanza tra l ABR e le destinazioni interne all AS Summary Links for Border Routers (Type = 4): propagano le informazioni summarizzate relative alla distanza tra l ABR e gli AS Border Router Sono diversi dai Router Links fondamentalmente perché propagano delle informazioni summarizzate Ogni LSA contiene una sola destinazione (contrariamente ai Router Links) ogni ABR ne genera molti, inseriti nello stesso pacchetto 62

LSA Type 3-4: Summary Links (2) Summary Links for IP Networks Un ABR genera LSA con contenuto diverso per ognuna delle aree su cui si affaccia Gli LSA inviati da un area A1 verso un area A2 (connesse attraverso un singolo ABR) sono composti da un LSA distinto per ogni indirizzo IP appartenente all area A1 Gli LSA inviati sul backbone comprendono un LSA per ogni indirizzo IP appartenente alle aree su cui si affaccia l ABR È utilizzato dagli ABR per riassumere e propagare le informazioni su una singola area Summary Links for Border Routers Viene propagato senza variazioni su tutte le aree (e sul backbone) dove si affaccia l ABR 63

LSA Type 3-4: Summary Links (3) 0 8 16 31 Network Mask TOS = 0 0 TOS 0 metric TOS = x 0 TOS x metric........ TOS = z 0 TOS y metric 64

LSA Type 3-4: Summary Links (4) Network Mask Summary Links for IP Networks: quella della rete o della subnet che viene summarizzata Summary Links for Border Routers: fissata a 0xFFFFFFFF TOS = x, TOS x metric: stesso significato di quello dei Router Links Non serve il campo # TOS in quanto la lunghezza si ricava dall header LSA Link_State_ID (dell header LSA) Summary Links for IP Networks: l indirizzo IP della rete o della subnet che viene summarizzata Summary Links for Border Routers: l indirizzo IP del Border Router 65

LSA Type 5: External Links (1) Type =5 Riportano le informazioni relative a destinazioni esterne al dominio (costo dal router che ha generato il LSA ad una destinazione esterna all AS) generati dagli AS Border Router propagati a tutti i router del dominio OSPF Comprendono una destinazione per LSA (come i Summary Links) 66

67 LSA Type 5: External Links (2) 0 8 16 31 Network Mask E, TOS = 0 0 TOS 0 metric External Route Tag (0) E, TOS = x 0 TOS x metric External Route Tag (x)........ E, TOS = z 0 TOS y metric External Route Tag (z)

LSA Type 5: External Links (3) Network Mask: netmask della rete o della sottorete destinazione E: bit 0 del campo TOS indica se la metrica le route esterne vengono acquisite tramite protocolli quali EGP e BGP, i quali non necessariamente forniscono una metrica comparabile con quella di OSF se è settato indica che la metrica non è compatibile con OSPF e quindi la distanza deve essere considerata maggiore di ogni altra route interna nel caso la metrica sia compabilile è possibile farne la somma con i costi interni al dominio OSPF ricavando il costo effettivo per raggiungere la destinazione 68

LSA Type 5: External Links (4) External Route Tag: utilizzato dai Border Router per scambiarsi informazioni in riferimento a quella route non è utilizzata né analizzata da OSPF TOS = x, TOS x metric: stesso significato di quello dei Router Links Non serve il campo # TOS in quanto la lunghezza si ricava dall header LSA Link_State_ID (header LSA): indirizzo IP della rete o della sottorete destinazione 69

LSA Type 3-4-5: confronto destinazione IP esterna all AS destinazione IP interna all AS A R AS BoundaryRouter Area Border Router Costo riportato negli LSA: tipo 3 tipo 4 tipo 5 A A R R area R R A AS A A 70