Vincenzo Eramo Open Shortest Path First (OSPF) Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 OSPF: Principi Base I router hanno la responsabilità di contattare i router vicini e acquisire la loro identità Un router invia pacchetti di Hello periodicamente per indicare il suo buon stato di funzionamento Ciascun router emette dei Link State Advertisement () contenenti la lista delle reti e dei router a lui connessi ed i loro costi associati (router_) N c c N N R c c N Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page
OSPF: Principi Base Un router, denominato Designated Router, emette descriventi i router a cui una rete di transito è connessa (Network_) Il router appartiene alla rete ed è eletto in accordo ad una opportuna procedura I costi segnalati sono posti a zero Una rete stub non ha un Designated Router R Rd N R R Rd Designated Router Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 OSPF: Principi Base Gli sono inviati a tutti gli altri Router dell Autonomous System mediante una tecnica di flooding un è rilanciato da un router su tutte le sue interfacce tranne quella da cui è stato ricevuto gli trasportano un numero di sequenza Evita il rilancio di pacchetti già rilanciati Consente un corretto riscontro dal ricevente R N R R R Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page
OSPF: Principi Base Ogni router mantiene un database che riflette i dati aggiornati sulla topologia della rete La topologia della rete è rappresentata come un grafo orientato I nodi rappresentano router e reti I rami rappresentano collegamenti diretti tra nodi di tipo router collegamenti tra nodi di tipo router e nodi di tipo network Ogni router calcola lo spanning tree mediante l algoritmo di Dijkstra e si costruisce la sua tabella di routing Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 OSPF N R N R N R9 N R N R R5 R R N 5 R N R N9 R N5 R N N N N R9 N R R N R R5 R R R 5 N R R N N9 R N5 R N Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page
OSPF Ogni router calcola lo spanning tree mediante l algoritmo di Dijkstra N R N R R5 Spanning tree e Routing Table in R Destin. N.H. Cost N R N R N N R R N R R N N R R R9 R N5 N5 N N N N9 N R R R R R R N R R N9 N R N Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 OSPF Metriche Normale peso unitario ad ogni ramo (cammino a distanza minima) Massimizzazione affidabilità peso basato su dati storici di disponibilità dei rami Minimizzazione ritardo peso basato su una stima del ritardo di attraversamento del ramo Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page
Link State Advertisment () Un si compone di un Link State Header e un Link State Data Tutti i tipi di hanno la stessa Header Un campo Type identifica il particolare tipo di Type Link State Header Link State Data Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Router_ (Header) Link State Age indica il tempo (in secondi) di emissione dell advertisement Link State Type Il valore denota un Router_ Link State ID Identifica il link a cui si riferisce l Nel caso di un router_ è riportato l identificativo (ID) del Router generante l L ID di un router è un suo indirizzo di interfaccia Advertising Router ID del router generante il Router_ Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 OSPF Link State Header Link State Age Options Link State Type Link State ID Advertising Router Link State Sequence Number Link State Checksum Length Ottetti Page 5
Router_ (Data) Number of links denota il numero di interfaccia del router Type :connessione punto-punto :connessione a rete di transito :connessione a rete stub TOS metric valore della metrica normale Number of TOS TOS Metric numero di metriche aggiuntive tipo di metrica considerata Ripetuto per ogni link Ripetuto per tutti i valori di TOS OSPF Link State Data Reserved Reserved Number of links Link ID Link Data Type Number of TOS TOS metric TOS Reserved Metric valore della metrica Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Router_ (Data) Connesione punto-punto (Type=) Link ID ID del router adiacente (ID(R)) Link Data Indirizzo di interfaccia (Ind(A)) del router generante l in direzione del router adiacente Connesione a rete di transito (Type=) Link ID Indirizzo di interfaccia (Ind(B)) sulla rete del Designated Router Link Data Indirizzo di interfaccia (Ind(A)) sulla rete del router generante l Connesione a rete Stub (Type=) Link ID Indirizzo della rete (Ind(S)) Link Data Maschera della rete (Mas(S)) Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 R A R R Router generante il router_ R Router adiacente R A R d R Router generante il router_ R d Designated Router della rete N R N S R B R R Router generante il router_ S Rete Stub H H Page
Router_ (Esempio) N 9.../ RT 9... N 9.../ 9... RT N 9.../ RT RT is the Designated router for the transit network 9.../ 9... 9... RT...... RT N 9.../ Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Router_ (Esempio) RT s Router_ ;RT s Router_ LS age= ;always true on origination LS type= ;indicates router_ Link State ID=9... ;RT s Router ID Advertising Router=9... ;RT s Router ID number of links= Link ID=9... ;IP address of the Designated Router RT Link Data=9... ;RT s IP interface to N Type= ;connect to transit network #TOS metric= metric= Link ID=9... ;IP Network number Link Data=55.55.55. ;Network number Type= ;connect to stub network #TOS metric= metric= Link ID=... ;Neighbor s Router ID Link Data=... ;RT s IP interface Type= ;connect to router #TOS metric= metric= Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page
Network_ (Header e Data) Link State Age indica il tempo (in secondi) di emissione dell advertisement Link State Type Il valore denota un Network_ Link State ID Indirizzo IP d interfaccia sulla rete del Designated Router Advertising Router ID del Designated Router Network Mask Maschera della rete Attached Router ID dei router collegati alla rete Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Ripetuto per ogni attached router Link State Age Options Link State Type Link State ID Advertising Router Link State Sequence Number Link State Checksum Length Network Mask Attached Router Header Data Network_ (Esempio) N 9.../ RT 9... RT is the Designated router for the transit network 9.../ N 9.../ 9... RT N 9.../ N s Network_ RT ;N s Network_ for Network N having RT as Designated Router LS age= ;always true on origination LS type= ;indicates network_ Link State ID=9... ;IP address of the Designated Router Advertising Router=9... ;RT s Router ID Network Mask=55.55.55. Attached Router=9... ;Router ID Attached Router=9... ;Router ID Attached Router=9... ;Router ID Attached Router=9... ;Router ID Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 9... 9... RT N 9.../...... RT Page
Protocollo OSPF I pacchetti OSPF sono incapsulati direttamente in datagrammi IP protocol identifier = 9 Tutti i tipi di pacchetti hanno la stessa header Tipi di pacchetti Hello Stabilisce e mantiene le relazioni con i vicini Database description I router devono avere lo stesso database di descrizione della topologia Un router che si attiva deve sincronizzare il suo database con quello dei vicini Contiene le header degli Il router individua gli del vicino che sono più recenti rispetto a quelli che ha memorizzato nel suo database Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Protocollo OSPF Tipi di pacchetti Link State Request Consentono ad un router di richiedere al vicino l invio degli che sono più recenti Link State Update Contiene gli emessi dai router E inviato a seguito di risposte ad un pacchetto di Link State Request per la sincronizzazione dei database E inviato da un router al fine di descrivere le sue interfacce e/o una rete ed è flooded in tutta l area Link State Acknowledgent Consente ad un router di riscontrare gli che sono stati inviati dal vicino Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page 9
Header pacchetti OSPF Version = Version Hello = Database description = Link state request = Link state update = Link state acknowledgement = 5 No authentication = Simple password = Packet Type Packet Length Router ID Area ID Checksum Ottetti Password Authentication type Authentication Data Reti di Telecomunicazioni - Vincenzo Eramo - A.A. /5 Page