La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Protocolli di routing e stack TCP/IP Data Link RIP ICMP BGP OSPFIGRPHello ARP RARP FTP Telnet X-Windows TCP NFS NIS Transport Nework Upper Layers SNMP.

Presentazioni simili


Presentazione sul tema: "Protocolli di routing e stack TCP/IP Data Link RIP ICMP BGP OSPFIGRPHello ARP RARP FTP Telnet X-Windows TCP NFS NIS Transport Nework Upper Layers SNMP."— Transcript della presentazione:

1 Protocolli di routing e stack TCP/IP Data Link RIP ICMP BGP OSPFIGRPHello ARP RARP FTP Telnet X-Windows TCP NFS NIS Transport Nework Upper Layers SNMP EGP IP UDP RPC

2 Protocolli di routing Algoritmo Protocollo Link State Distance Vector Dijkstra SPF Bellman-Ford, OSPF EGP, RIP, IGRP EIGRP DUAL

3 Distance Vector C 4 30 N costo = 5 costo = 15 costo. = 5 R1 R2 R3 R4 N = Network C = Costo NH = Next Hop C 0 10 N C N C N NH R1 R4 R2 Tabella di routing di R3 Vettore delle distanze di R1 Vettore delle distanze di R4 Vettore delle distanze di R2

4 1)quando riceve un messaggio da un router adiacente confronta ogni coppia (destinazione, costo) col contenuto della tabella di routing: a)se la destinazione non è in tabella e il costo dellannuncio non è infinito allora crea una nuova entry per la nuova destinazione e fa partire un timout timer per la nuova entry; b) se la destinazione è in tabella e il next hop è il router adiacente che ha fatto lannuncio allora aggiorna il costo ed il next hop nella entry e fa ripartire il timeout timer; c) se la destinazione è nella tabella e il costo indica un percorso migliore allora aggiorna il costo e fa ripartire il timeout timer; 2) quando scatta il timeout timer pone il costo a infinito e fa partire il garbage collection timer; 3) quando scatta il garbage collection timer cancella la entry dalla tabella di routing; 4) ad intervalli regolari trasmette ai router adiacenti un messaggio che riporta tutte le coppie (destinazione, costo) contenute nella tabella di routing. Distance vector algorithm

5 Loop B --> ? B A C Link local 1 2 Cost= hops 0 1 inf. Tabella di instradamento di B dopo la caduta del link A --> ? A B C Link local 1 1 Cost= hops Distance Vector proveniente da A L1L2 AB C

6 Distance Vector: cold start Cold start: condizione in cui gli apparati inziano a funzionare tutti contemporaneamente Inizialmete tutti i sistemi dispongono di distance vector che rappresentano se stessi e le stazioni ad essi direttamente collegate Protocolli neighbour greetings Configurazione manuale

7 Distance Vector: caratteristiche Vantaggi: –semplice da implementare; –non appesantisce il router in termini di capacità elaborativa e memoria occupata. Svantaggi: –possono innescarsi dei loop a causa di particolari variazioni della topologia; –converge alla velocità del link più lento e del router più lento; –difficile capirne e prevederne il comportamento su reti grandi: nessun nodo ha una mappa della rete (conoscenza locale); –limplementazione di meccanismi migliorativi appesantisce notevolmente il protocollo; –hop-count-limit impone limpiego di questo algoritmo in reti piccole con pochi hop.

8 Routing InformationProtocol (RIP) è stato originariamente progettato da Xerox per la rete XNS. È stato introdotto dalluniversità di Berkeley nellarchitettura TCP/IP nel 1982, Definito come RFC 1058 nel 1988 e aggiornato come RFC 1388 nel 1993.

9 RIP (costo=num hops) 1 L2 L3L4 L6 L5 L8 L7 A --> ? A B D C E Cost Distance Vector di A D --> ? D A B E C Cost Distance Vector di D F --> ? F A B C D E Link local Cost Tabella di instradamento di F A parità di metriche si prende lentry del DV arrivato per primo B C ED A F 64kb/s 1 Mb/S

10 RIP: Timer routing update timer = 30s (intervallo di tempo per linvio periodico dei distance vector); route invalid timer = 180s (intervallo di tempo dopo cui una route è dichiarata non più valida (cost = infinito));

11 Routing update in broadcast No discovery!

12 Loop A = 3 Hop A = 2 Hop A = 5 Hop A = 4 Hop Net A Net BNet C Net D E0S0 S1S0E0 R1R2R3 X hop-count-limit in RIP è 15 (16=infinito) Limite nella dimensione della rete (RIP per reti al massimo di 1000 nodi.)

13 Opzioni per la stabilità Le opzioni usate in RIP per migliorare la stabilità sono: –Split Horizon: un router non annuncia una destinazione sullinterfaccia da cui lha appresa –Split Horizon with Poisonous Reverse: se un router perde la connettività verso una rete, dopo aver inserito il valore 16 (inf) nella entry, la mantiene invariata per un determinato numero di periodi di routing updated; inoltre annuncia in broadcast con valore infinito (16) il costo per raggiungere quella rete. –Triggered update ( inviati immediatamente a fronte di cambiamenti nella rete) Convergenza ancora lenta… Loop che coinvolgono più di 2 router…

14 address family identifier(IP=2) commandversion IP address zero metric zero RIP: formato del pacchetto UDP port n°

15 RIP: sintesi Largamente disponibile Facile da implementare Metrica basata su numero di hop Update periodici (ogni 30 sec.) inviati in broadcast Convergenza lenta Routing loops Count to infinity No load balancing

16 RIP versione 2 RFC 1723 Può interoperare con RIPv1 Permette di trasferire anche le netmask Routing Update trasmessi in multicast –allindirizzo di classe D E possibile effettuare lautenticazione dei messaggi E possibile il subnetting solo se tutti i router della rete hanno la stessa versione (es. RIP2).

17 I messaggi di update vengono trasmessi in multicast RIPv2: routing update in multicast (indirizzo di classe D: )

18 RIPv2: formato del pacchetto address family identifier commandversion IP address subnet mask next hop metric routing domain route tag

19 IGRP Protocollo Distance Vector proprietario Cisco Supera i limiti di RIP Metriche sofisticate contenenti: –ritardo (non misurato, ma associato secondo valori predefiniti a ciascun tipo di sottorete trasmissiva) –banda –affidabilità –carico Trasporta anche: –numero Hop –lunghezza massima del pacchetto si tratta di parametri configurati dal gestore in modo statico; se fossero misurati automaticamente, per via dei diversi istanti di misura attuati dai router, si potrebbero innescare dei loop) Annunci dellIGRP vengono inviati ogni 90 secondi

20 D - delay ( )(1 = 10 s) R - reliability ( )(255 = 100%) L - load( )(255 = 100%) B - bandwidth ( )(1 = 1 kbit/s) Bandwidth e Delay sono per default associati al tipo di portante fisico. Es.: Ethernet -> B=10000, D=100 CDN 64 kbit/s-> B=64, D=2000 Per ciascun link B e D possono comunque essere impostati dal gestore Su un determinato percorso: B è calcolata come il minimo sul percorso D è calcolato come la somma sul percorso Il gestore può impostare 5 parametri di peso: k1, k2, k3, k4, k5 Se k5 = 0 : Metrica = (107/ B) [k1+ k2 / (256-L)] + k3 x D Se k5 0 : Metrica = Metrica x [ k5 / (R + k4) ] Per default : k1=k3=1; k2=k4=k5=0. Metrica IGRP

21 Più entry per una stessa destinazione vengono installate nella tabella di routing (max 6 righe) Il carico può essere ripartito tra le diverse route in funzione della metrica associata: la distribuzione dei pacchetti su link differenti, verso la stessa destinazione avviene in misura inversamente proporzionale al costo espresso nella tabella. Sono usate per il multipath routing solo le route con metrica che rientra nel range definito dal gestore IGRP: multipath routing e load balancing

22 Link State Protocols Link-state database Tabella di routing LSP ricevuto da uninterfaccia Algoritmo di Dijkstra LSP ritrasmesso su tutte le altre interfacce Il Link State Packet (LSP) generato da ogni router contiene: identificativo del router che emette il LSP; stato di ogni link connesso al router; identità di ogni vicino connesso allaltro estremo del link costo del link; numero di sequenza per il LSP, utilizzato per individuare diverse versioni emesse dallo stesso router per scegliere la più recente.

23 Flooding (1) B CD A E LSP

24 B CD A E I router A, C, E ritrasmettono il LSP di D su tutte le interfacce tranne quella da cui lo hanno ricevuto Flooding (2)

25 LSP Database (replicato su ogni Router ) AB/2 BA/2D/3E/2 CD/1 DB/3C/1G/1 EB/2F/5G/2 FE/5H/4 GD/1E/2H/1 HF/4G/1 F E DB A C H G Costo LSP DataBase

26 L1 L2 L2 L3 L3 L3 L3 A C D E F G H Tabella di routing di B H G F E D B A C L1 L2 L3 Tabella di routing: algoritmo di Dijkstra

27 Link State: caratteristiche Vantaggi: –può gestire reti di grandi dimensioni; –ha una convergenza rapida; –difficilmente genera loop; –ogni nodo ha la mappa della rete. Svantaggi: –molto complesso da realizzare (la prima implementazione ha richiesto a Digital 5 anni); È utilizzato nello standard ISO (IS-IS) e nel protocollo OSPF (molto diffuso su reti TCP/IP di grandi dimensioni).

28 OSPF [Open Shortest Path First] Protocollo di tipo link state Definito dallIETF: –RFC 1247 (1991) –RFC 1583 (1994) - OSPFv2

29 Type of service routing Load balancing (più cammini con lo stesso costo) Network partition Message authentication Network/Subnetw/host_specific routing Designed_router to accomodate multiaccess net Virtual Link OSPF [Open Shortest Path First]

30 Type of service routing OSPF consente luso di una metrica per ciascuna delle codifiche ammesse nel campo TOS di IP (D, T, R) Ogni LSP puo contenere una o piu metriche Ogni router calcola un albero distinto per ciascuna metrica Percorsi diversi per pacchetti con requisiti di servizio diversi

31 Esempio di metrica OSPF RTA RTB RTC RTD Costo interfaccia = 10 8 /(bandwidth in bps).

32 Load balancing 10 15

33 Designed_router to accomodate multiaccess net Designated router LSA Designated router LSA

34 Designed_router = Pseudo nodo Designated router LAN Rappresentazione secondo lalgoritmo Link State della rete LAN A B C D A B C D D LSP Vicino metrica A 1 C 1 D 1 LSP Vicino metrica A 1 B 1 D 1 Designated router Rappresentazione a stella della rete LAN (designed router=pseudo nodo) A B C LSP Vicino metrica A 1 C 1 B 1 LSP Vicino metrica D 1

35 Routing gerarchico Backbone Area #0 Area #1 Area #2 Area #3 LSP Database Area 0 LSP Database Area 1 LSP Database Area 0 LSP Database Area 0 LSP Database Area 2 LSP Database Area 3 La grandezza del database in cui vengono memorizzati i LSP, il tempo per lelaborazione delle informazioni di routing e il volume dei messaggi scambiati aumentano al crescere delle dimensioni del dominio!

36 Network partition OSPF ha il concetto di gerarchia –un AS (dominio OSPF) è suddiviso in aree –le aree contengono un gruppo di reti contigue –le aree sono indicate da un area-id su 32 bit deve essere specificato per ogni interfaccia –quando un AS ha più di unarea deve esistere una backbone area con area-id = 0 e tutte le altre debbono interconnettersi a questa

37 OSPF: Topology/Link State Database Un router ha un LSP database distinto per ogni area alla quale appartiene Tutti i router appartenenti alla stessa area hanno lo stesso database Il calcolo SPF è effettuato separatamente per ciascuna area LSP flooding è confinato allinterno di unarea

38 Classificazione dei router Verso altri domini Area 4 Area 0 Area 2 Area 3 Internal Router Backbone Router Area Border Router Autonomous System Boundary Router Ogni area non backbone ha bisogno di un router di frontiera ABR verso larea 0 da cui riceve informazioni sulle destinazioni esterne e in cui inietta informazioni sulle proprie reti.

39 Aree non direttamente connesse con il backbone:Virtual Link Backbone Area 0 Area 2 Area 1 Virtual Link RouterA RouterB I virtual link sono link logici punto-punto tra coppie di ABR che hanno unarea non backbone in comune (detta transit area)

40 OSPF protocol: Header comune vers Router ID checksum authentication autype Area ID typelength

41 OSPF protocol: Type TypeMeaning 1Hello 2Database description 3Link status request 4Link status update 5Link status acknowledgement

42 Hello Hello Protocol Il protocollo di Hello è usato per: - monitorare quali router siano attivi; - monitorare quali link siano in funzione; -eleggere il designated-router e il backup-designated-router nelle reti multi-accesso broadcast e non broadcast.

43 } ripetuto per ogni neighbor Principali campi del pacchetto di Hello BACKUP Due router sono vicini o neighbor quando ognuno si riconosce nel pacchetto di hello dellaltro.

44 Database Description message Ladiacenza è lo step successivo al processo di neighboring. I router adiacenti vanno oltre lo scambio dei pacchetti di Hello e procedono allo scambio dei database. Due router diventano adiacenti quando si sincronizzano, cioè quando verificano la situazione dei propri database e si portano in uno stato comune. A tale scopo si utilizza il Database Description Message.

45 LINK STATE REQUEST

46 LINK STATE UPDATE Link state advertisment

47 DRBDR 2-Way Adiacenze su LAN Ma non adiacenti Vengono eletti il DR e il BDR Sulla LAN tutti i router stabiliscono relazioni di neighbor del tipo two-way tra di loro, ma un router diventa adiacente solo con il DR e con il BDR. La sincronizzazione di tutti i router con il DR e con il BDR fa sì che tutti i router abbiano tutti lo stesso database.

48 Tipi di route (approfondimento ) Un cammino selezionato da OSPF può essere: –intra-area: se è interno ad unarea OSPF –inter-area: se oltrepassa i limiti delle aree –external: se oltrepassa i limiti del dominio OSPF

49 Design Tips Numero di router per area: –tipicamente il numero massimo è di 40/50 router per area Numero di neighbors: –minore è il numero di neighbors presenti su una LAN minori sono il numero di adiacenze che un DR o un BDR deve formare –se possibile, evitare che uno stesso router sia DR su più di un segmento Numero di aree per ABR –gli ABRs mantengono una copia del database per ciascuna delle aree servite –un router non deve stare in più di tre aree, la backbone area più una o due aree non backbone

50 OSPF vs RIP OSPF Buona Bassa Alta Bassa Alta Lenta Facile Veloce Moderata RIP Scalabilità Banda Memoria CPU Convergenza Configurazione

51 Algoritmi utilizzati per propagare le informazioni relative al routing nel core system. Vector Distance (GGP) Shortest Path First (OSPF ) Usato oggi nel Core in Internet

52

53 Problema dellistradamento InterAS Le dimensioni: un router della rete backbone deve essere in grado di istradare verso una qualsiasi rete in Internet (anche con lausilio di CIRD tali router gestiscono circa prefissi..) I vari AS utilizzano diversi protocolli di routing e quindi diverse metriche; confrontare i valori di tali metriche potrebbe non aver senso. Trovare un percorso qualsiasi che permetta di raggiungere la destinazione senza loop

54 For net in AS1 to send traffic to net in AS16: AS16 must announce to AS8. AS8 must accept from AS16. AS8 must announce to AS1 or AS34. AS1 must accept from AS8 or AS34. For two-way packet flow, similar policies must exist from AS1 to AS16. AS1 AS8 AS34 AS16 Net1 Net16 EGP

55 Neighbor acquisition Acquisition request Richiede ad un router di divenire un neighbor Acquisition confirm Il router accetta Acquisition refuse Il router rifiuta Cease request Richiede la fine della relazione Cease confirm Conferma la fine della relazione Neighbor reachability Hello Richiede al neighbor di confermare la relazione precedentemente stabilita I-heard-you Conferma Routing update Poll request Richiede l'update della network reachability Routing update Informazioni di network reachability (solo reti interne allAS se il router non appartiene al Core system) Error response Error Risposta a messaggi scorretti Funzioni del protocollo EGP

56 EGP:routing update No Loop!

57 EGP HEADER

58 EGP: svantaggi EGP presuppone una relazione padre/figlio tra i border gateway. Ciò perche EGP è stato definito quando Internet aveva una struttura ad albero!

59 port 179 (Path Vector)

60 eBGP iBGP

61 Messaggi BGP Open Update Keepalive Notification

62 Header comune Marker dimensionetipo Marker: campo a 16 byte riservato allautenticazione Dimensione: dimensione complessiva del messaggio Tipo: tipo di pacchetto

63 options Messaggio Open Marker dimensionetipoversione mio ASHold time Router che ha inviato mess. open opt dimens. Un BGR crea una relazione di prossimità aprendo una connessione TCP con il vicino e inviandogli un messaggio di OPEN

64 Messaggio update Percorsi annullati Marker dimensionetipo Unfeasible route len. Unfeasible route len Attributi percorso Path attribute len. Rete notificata Usato per annullare destinazioni già notificate o per notificare un percorso verso nuove destinazioni

65 Messaggio keep-alive Marker dimensionetipo

66 Messaggio Notification Error data Marker dimensionetipo Error code. Error sub-code

67

68 AS200

69 Processo di decisione Per quanto riguarda il processo di decisione, occorre osservare quanto segue: –BGP mantiene un solo path-vector per destinazione: il best-path. La scelta è effettuata in base ad attributi contenuti negli annunci (AS_PATH) e a politiche di routing implementate (route-map, access-list) sul router. –Il path-vector di un annuncio indica quali AS bisogna attraversare per raggiungere una certa destinazione. –Lexterior router può scegliere, tra diversi annunci, di mantenere in memoria ed usare quello relativo a degli AS con cui il proprio AS ha degli accordi per il trasporto di traffico. –Anche gli annunci da propagare vengono scelti in base a politiche di routing; in genere BGP annuncia ai suoi neighbor solo il best- path.

70

71

72 Macrolezione 6: Linterconnessione di reti eterogenee


Scaricare ppt "Protocolli di routing e stack TCP/IP Data Link RIP ICMP BGP OSPFIGRPHello ARP RARP FTP Telnet X-Windows TCP NFS NIS Transport Nework Upper Layers SNMP."

Presentazioni simili


Annunci Google