Protocolli strato 3. Strato 3: Instradamento. Gruppo Reti TLC. Funzioni strato rete. Funzioni strato rete. Instradamento. Costo

Documenti analoghi
RETI DI CALCOLATORI - Instradamento

RETI DI CALCOLATORI - Instradamento

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

Routing. Forwarding e routing

Networking e Reti IP Multiservizio

RETI DI CALCOLATORI II

Routing IP. IP routing

Parte 4: Livello Network

Routing. Parte prima

Reti a commutazione di pacchetto

Strato di rete (parte 3) Funzione di instradamento: generalità

Parte II: Reti di calcolatori Lezione 17

Reti di Calcolatori:

Instradamento per servizi di tipo circuito virtuale. Dr. S. Greco Polito,

INTERNET e RETI di CALCOLATORI A.A. 2015/2016 Capitolo 4 Instradamento e Algoritmi di instradamento Fausto Marcantoni

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE

Dr. S. Greco Polito, Instradamento

Livello di Rete. Prof. Filippo Lanubile. Obiettivo

Risorse riservate al circuito Se ci sono troppi circuiti le risorse si esauriscono Non è possibile stabilire una nuova connessione

Reti di calcolatori. Lezione del 10 giugno 2004

Livello di Rete. Prof. Filippo Lanubile. Obiettivo

Fondamenti di Internet e Reti

Protocolli di Routing

4c. Esercizi sul livello di Rete Instradamento in Internet

Algoritmi e protocolli di Routing

Livello rete strato di Rete

Routing statico. Routing statico. Tolleranza ai guasti. Routing statico. Fase di progetto. 09CDUdc Reti di Calcolatori.

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

Argomenti: ! Servizi dello strato di rete! Routing: selezione del cammino. ! Routing gerarchico! IP! Protocolli di routing in Internet

28/05/2015 Laura Ricci

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

Homework assignment Ipv4 e algoritmi di routing. Maurizio Bonuccelli. Dipartimento di Informatica Università di Pisa

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

ROUTER NOTE. Dispositivo attivo di rete che lavora a livello 3 della pila ISO-OSI, si occupa di instradare pacchetti di dati tra reti eterogenee

Formato del datagramma IP

Esercizi: Telecomunicazioni parte Reti

Programmazione in Rete

UNIVERSITA DEGLI STUDI DI PAVIA

Svantaggi della Commutazione di Circuito. Commutazione di Pacchetto. Struttura di un Pacchetto

Open Shortest Path First (OSPF)

Algoritmi e protocolli di Routing

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Telematica di Base. Livello Network

Dal livello di linea al livello di rete: il problema dell instradamento nel livello di rete

Reti di calcolatori TCP/IP. Slide a cura di Simon Pietro Romano

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

Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1

TFA 2014/15 SISTEMI E RETI DI CALCOLATORI PER L'INSEGNAMENTO UNITA' DIDATTICA: ALGORITMI DI ROUTING

R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing, Maggio 2010

Definizione. Introduzione alle MANET. Host Mobili (2) Host Mobili (1)

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori (a.a. 2011/12)

IL LIVELLO RETE. Il Livello RETE. Reti di Calcolatori

Appello Esempio d esame. Es1 (6 pt) Es2 (6 pt) Es3 (6 pt) Ques (9 pt) Lab (6pt)

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

CORSO DI RETI DI CALCOLATORI II (Docente Luca Becchetti) Esercizi su instradamento e tabelle di routing 1

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

Strato di rete. Argomenti: Obiettivi:

Il Livello Network. Panoramica: Obiettivi:

R. Cusani - F. Cuomo, Telecomunicazioni - Network layer: Routing in IP, Maggio 2010

Il routing in Internet Exterior Gateway Protocols

Se due computer sono sulla stessa rete Sappiamo come possono fare per scambiarsi datagram Usano gli indirizzi fisici

Routing nelle reti a pacchetto

Routing. Slides partly based on L. Peterson s course slides. Obiettivi

Corso di Laurea in Informatica Esame di Reti Prof. Panzieri frame con source address uguale a MAC_UNI X X X X X

Reti di calcolatori a.a. 2005/06 Prima verifica in itinere

IGRP Interior Gateway Routing Protocol

Algoritmo di Dijkstra

Sommario. Il modello TCP/IP. Introduzione al modello TCP/IP. Imbustamento in OSI. TCP/IP e OSI Applicazione (telnet, ftp, smtp,...

Instradamento in IPv4

Topologie delle reti di telecomunicazione

Livello di Rete: NAT, Forwarding, ICMP, algoritmo a stato del collegamento (Dijsktra) Protocollo OSPF

Appello 18 Luglio Importante: usare lo spazio dopo ogni esercizio per le risposte. Esercizio 1 Esercizio 2 Esercizio 3 Domande Laboratorio

8. IP: Instradamento dei datagrammi

Contesto. Host Mobili (1) Definizione. Mobile Computing non è SmartPhone: Sicurezza nei Sistemi Mobili

Anno Accademico Lucidi del corso di Reti di Calcolatori e Comunicazione Digitale. Modulo 4 - TCP/IP : algoritmi di routing.

Algoritmi distribuiti su reti sincrone. Introduzione alle reti sincrone

P2p la teoria dei sistemi complessi per modellare reti p2p

Laboratorio di Reti di Comunicazione ed Internet Mod. 2

Laboratorio di Reti di Comunicazione ed Internet Mod. 2

Wireless Mesh Routing. Antonino Ciurleo e Fabrizio Giordano

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Gli Apparati di Rete. Repeater, Hub, Bridge, Router. arcipelago scrl

Seconda Prova in itinere Esempio

RETI DI CALCOLATORI. Che cosa sono gli IS e gli ES?

Homework assignment Ipv4 e algoritmi di routing

Homework assignment Ipv6 e protocolli di routing TUNNEL

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Tipi di comunicazione

TCP/IP : livello 3, algoritmi di routing

Reti di Calcolatori IL LIVELLO RETE

Funzionalità e servizi del livello Rete

PROTOCOLLI DI ROUTING. Vittorio Prisco

Commutazione di pacchetto

Evoluzione del livello di rete

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Homework assignment Ipv4 e algoritmi di routing

RoutingInternet Protocol. Algoritmi di instradamento di tipo Distance vector

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

Parte I. Ibrido MPLS. Figura 1.1

Indirizzi LAN (MAC) e IP

Transcript:

Protocolli strato Strato : Instradamento Gruppo Reti TL nome.cognome@polito.it http://.telematica.polito.it/ Funzioni strato rete Instradamento (routing) ffettuato consultando tabelle di instradamento per ogni PU in rete datagram per ogni connessione in rete a circuito virtuale Tabelle di instradamento contengono informazioni tipo per ogni next-hop (prossimo router) Tre elementi Protocolli di instradamento (routing protocols) lgoritmi di instradamento (routing algorithms) Procedure di inoltro pacchetti (forarding) Strato - Instradamento - Strato - Instradamento - Funzioni strato rete Indirizzamento Indirizzi univoci Risoluzione indirizzi (mapping) Tariffazione su rete pubblica ontrollo di congestione Pre-allocazione memorie Scarto pacchetti Invio segnali di congestione Instradamento Protocollo di instradamento: definizione delle modalità di scambio di informazioni sullo stato della rete al fine di costruire tabelle di instradamento lgoritmo di instradamento: operazioni necessarie per scegliere il percorso verso la, date le informazioni sullo stato della rete crea tabelle di instradamento Procedura di forarding: operazioni necessarie per instradare i singoli pacchetti verso la corretta porta di uscita usa tabelle per inoltrare pacchetti Strato - Instradamento - Strato - Instradamento - lgoritmi di instradamento Obiettivo degli algoritmi di instradamento: determinare un buon percorso (sequenza di link o nodi) nella rete da nodo sorgente a nodo per semplicità si utilizza un solo identificativo per ogni nodo, che rappresenta un aggregato di sorgenti/destinazioni Si trasforma la topologia in un grafo nodi sono vertici link fisici sono archi Si assegnano costi agli archi uon percorso: percorso a costo minimo F osto istanza, ritardo, euro, livello di congestione Statico o dipendente dallo stato della rete Influenza le politiche di aggiornamento Possibili oscillazioni: sempio: costo canali legato al carico trasportato +e 0 0 0 e e Situazione iniziale +e 0 +e 0 0 0 +e 0 0 +e +e 0 +e 0 0 ricalcolo percorsi ricalcolo ricalcolo Strato - Instradamento - Strato - Instradamento - 6 Pag.

Protocolli strato lgoritmi di instradamento: esempi Semplici algoritmi senza necessità di coordinamento da parte dei nodi Random Scelgo a caso una porta di uscita Flooding Instrado verso tutte le porte disponibili eflessione o hot potato Su topologie regolari Instrado verso la porta corretta. Se occupata, instrado verso una altra porta libera lgoritmi complessi per il calcolo del percorso ottimo iversa classificazione lassificazione algoritmi di instradamento alcolo percorso entralizzato: Un nodo si occupa di raccogliere l informazione da tutti gli altri nodi alcola i percorsi Ridistribuisce il risultato del calcolo a tutti gli altri nodi istribuito: Tutti i nodi si scambiano informazione tra loro (utilizzando protocolli di instradamento) alcolano i percorsi (indipendentemente o in base a quanto fatto dai nodi adiacenti) Strato - Instradamento - Strato - Instradamento - 8 lassificazione algoritmi di routing entralizzato: Vantaggi: Possibile usare di calcolo percorsi algoritmi e metriche complesse Tutti i nodi usano piano di instradamento coerente Svantaggi: Sensibile al guasto nodo centrale Scambio informazione da/verso nodo centralizzato genera congestione istribuito: Vantaggi: Robusto ai guasti Scambio informazione uniforme su tutta la rete Svantaggi: Richiede intelligenza nei nodi Scambio informazione parziale/errata porta a incongruenze nell instradamento Strato - Instradamento - 9 lassificazione algoritmi di routing lgoritmi distribuiti - informazione: Globale: Tutti i nodi conoscono la topologia completa, compresi i costi dei canali Scambio informazione tra tutti i nodi lgoritmi link state Parziale: I nodi conoscono i nodi cui sono fisicamente collegati ed i costi dei canali cui sono collegati Scambio di informazione solo con i nodi adiacenti lgoritmi distance vector Strato - Instradamento - 0 lgoritmi Link-State Ogni nodo invia informazioni di costo (stato) dei soli suoi canali in (multi)broadcast a tutti gli altri nodi della rete Tutti nodi si costruiscono topologia della rete e conoscono i costi di tutti gli archi ata la topologia, ogni nodo calcola i percorsi a minimo costo verso tutti gli altri nodi Si ottengono tabelle di routing per questo nodo lgoritmo di ijkstra: usato per determinare cammini ottimi lgoritmo iterativo: dopo k iterazioni si ottengono i cammini a costo minimo per k destinazioni Funziona solo con costi positivi lgoritmo di ijkstra Notazione: c(i,j): costo del canale dal nodo i al nodo j Infinito se nodo non collegato direttamente al canale (n): costo corrente del percorso migliore da sorgente alla n p(n): nodo che precede n nel percorso da sorgente a n N: insieme di nodi per cui il cammino ottimo è noto Strato - Instradamento - Strato - Instradamento - Pag.

Protocolli strato lgoritmo di ijkstra ijkstra: esempio Inizializzazione (nodo ): N = {} per tutti i nodi n N if n adiacente ad then (n) = c(,n), p(n) = 6 else (n) = infinito 8 repeat 9 trova nodo N tale per cui () è minimo 0 aggiungi ad N aggiorna (n) per tutti gli n adiacenti a, n N: if ( (n) > () + c(,n)) then (n) = () + c(,n), p(n) = /* il nuovo costo verso n è o il vecchio costo verso n o il cammino a minimo costo verso più costo da a n*/ until tutti i nodi in N Strato - Instradamento - Step 0 start N F (),p(),,, (),p(),,,, F (),p(), F (),p() infinity, Prossimo nodo, costo,,,,, Strato - Instradamento - (F),p(F) infinity infinity,,, lgoritmo di ijkstra: proprietà omplessità con M nodi Ogni iterazione: ontrollo tutti i nodi N ggiungo a distanza minima M*(M+)/ confronti: O(M**) sistono implementazioni migliori: O(M log(m)) lgoritmi istance Vector lgoritmi iterativi: continuano fino a quando i nodi non scambiano più informazioni Termina in modo autonomo: nessun segnale esplicito di fine algoritmo istribuito: ogni nodo comunica solo con nodi adiacenti Strato - Instradamento - Strato - Instradamento - 6 istance Vector Ogni nodo scambia periodicamente con i vicini diretti un vettore contenente: le destinazioni che può raggiungere la distanza dalle destinazioni misurata in costo (ad esempio: numero nodi da attraversare compreso se stesso) Il nodo che riceve il vettore lo confronta con le proprie RT ed effettua modifiche: aggiunge nuove destinazioni cambia instradamenti se nuovi sono più brevi modifica costi se usa nodo adiacente come miglior scelta istance Vector Vantaggi facile da implementare Problemi: lento a convergere propaga errori di routing non molto scalabile (le dimensioni dei messaggi scambiati dai nodo crescono al crescere della rete) Strato - Instradamento - Strato - Instradamento - 8 Pag.

Protocolli strato istance Vector Implementazione Struttura dati: tabella distanze Ogni nodo possiede la propria Una riga per ogni possibile Una colonna per ogni nodo adiacente sempio: nel nodo, per la attraverso nodo adiacente : Sorgente estinazione (,) = Next hop c(,) + min { (,)} Strato - Instradamento - 9 (,) (,) (,) Tabella distanze: esempio 8 c(,) + min { (,)} = = + = c(,) + min { (,)} = = + = anello! = c(,) + min { (,)} = 8+6 = anello! () osto verso attraverso nodo 6 8 9 Strato - Instradamento - 0 () Tabella di instradamento a partire da tabella distanze osto verso atttraverso nodo 6 8 9 Prossimo nodo, costo,,,, Instradamento istance Vector Iterativo, asincrono: una iterazione (locale al nodo) causata da: modifica costo canale a cui nodo collegato messaggio ricevuto da nodo adiacente, che causa modifica del cammino ottimo istribuito: ogni nodo avvisa i vicini solo quando il suo cammino migliore verso una certa è cambiato i vicini avviseranno a loro volta nodi vicini se necessario Tabella distanze Tabella di Routing Strato - Instradamento - Strato - Instradamento - Instradamento istance Vector Ogni nodo esegue un loop infinito aspetta modifica costo canale locale oppure messaggio da nodo adiacente ricalcola tabella distanze se percorso migliore verso qualche cambiato, avvisa i vicini lgoritmo istance Vector d ogni nodo : Inizializzazione: per tutti i nodi adiacenti v: (*,v) = infinito /* l operatore * significa per ogni riga" */ (v,v) = c(,v) per tutte le destinazioni, y 6 invia min (y,) verso ogni nodo adiacente /* sono tutti i vicini di */ Strato - Instradamento - Strato - Instradamento - Pag.

Protocolli strato lgoritmo istance Vector 8 loop 9 ait (until I see a link cost change to neighbor V 0 or until I receive update from neighbor V) if (c(,v) changes by d) /* change cost to all dest's via neighbor V by d */ /* note: d could be positive or negative */ for all destinations y: (y,v) = (y,v) + d 6 else if (update received from V rt destination ) 8 /* shortest path from V to some has changed */ 9 /* V has sent a ne value for its min W V (,) */ 0 /* call this received ne value is "neval" */ for the single destination y: (,V) = c(,v) + neval if e have a ne min W (,) for any destination send ne value of min W (,) to all neighbors 6 forever Strato - Instradamento - istance Vector: esempio (,) = c(,) + min W = + = 8 (,) = c(,) + min W = + = Strato - Instradamento - 6 { (,)} { (,)} istance Vector: esempio lgoritmo V: modifica costo canale Nodo riconosce modifica costo canale Modifica tabella distanze (passo ) good nes travels fast Se modifica implica modifica del cammino migliore avvisa nodi adiacenti (passi,) 0 algoritmo termina Strato - Instradamento - Strato - Instradamento - 8 lgoritmo V: modifica costo canale Modifica costo canale: good nes travels fast bad nes travels slo - problema del count to infinity! 60 0 algoritmo prosegue istance Vector: poisoned reverse Se instrada via per raggiungere : comunica ad sua distanza verso è infinito ( non instraderà verso passando da ) non risolve il problema completamente 60 0 algoritmo termina Strato - Instradamento - 9 Strato - Instradamento - 0 Pag.

Protocolli strato onfronto tra algoritmi LS e V omplessità messaggi: con M nodi, canali per nodo LS: ogni nodo invia O(M) messaggi, ciascuno lungo O() V: ogni messaggio contiene tutte le destinazioni O(M), ed è mandato a O() vicini O( M) Velocità di convergenza LS: ogni volta che un link state è propagato, ho nuova topologia: convergenza immediata V: scelte nodo dipendono da scelte nodi vicini; si richiedono più scambi di messaggi: tempo di convergenza variabile onfronto tra algoritmi LS e V ffidabilità: cosa succede se un nodo funziona non correttamente? LS: i nodi possono annunciare costi dei canali scorretti Ogni nodo calcola la propria tabella: tutti sbagliano Non si possono creare anelli l prossimo annuncio tutto si corregge V: i nodi possono annunciare costi dei cammini scorretti Ogni annuncio è usata da tutti i nodi (indirettamente) Gli errori si propagano nella rete rrori di routing creano anelli Strato - Instradamento - Strato - Instradamento - Pag. 6