Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 14.

Slides:



Advertisements
Presentazioni simili
Le reti informatiche Maiocchi Mattia Sozzoni Marcella Porcari Beatrice
Advertisements

Indirizzamento LAN e ARP
I bridge Standard IEEE 802.1D.
Laboratorio di Telematica
Il livello di trasporto
Reti Fotoniche (Optical Networks) Gruppo Reti Politecnico di Torino- Dipartimento di.
Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Messaggi di errore e di controllo Alberto Polzonetti
Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Protocollo Internet Alberto Polzonetti
I protocolli TCP/UDP prof.: Alfio Lombardo.
4-1 Il Livello di Rete Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
I modelli di riferimento OSI e TCP/IP
5-1 ATM Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
La rete in dettaglio: rete esterna (edge): applicazioni e host
3-1 User Datagram Protocol: UDP Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All.
Moving Moving Young Young Turin Turin Hydrogen Hydrogen Olympic Olympic Safe RETE MANET informazioni in movimento.
Esercizio 1 1)      Un collegamento end-to-end è formato da tre tratte, la prima AB con la velocità di 5 Mb/s, la seconda BC di 20 Mb/s e la terza CD di.
Reti di Calcolatori Domande di riepilogo Terza Esercitazione
Reti di Calcolatori Domande di riepilogo Quarta Esercitazione
Reti di Calcolatori Domande di riepilogo Quinta Esercitazione
Programmazione su Reti
Internet Control Message Protocol rfc. Error Reporting Testing di affidabilità Controllo di congestione Notifica di route-change Misurazione di performance.
1 Protocollo di comunicazione. 2 Reti eterogenee.
RETI E INTERNET.
Reti di Calcolatori IL LIVELLO RETE.
Concetti introduttivi
Reti di Calcolatori IL LIVELLO RETE.
Reti di Calcolatori MODELLI ISO/OSI e TCP/IP.
1 THE INTERNET: una rete di reti La storia in breve Le regole della comunicazione.
ICMP - PING - TRACEROUTE
ADSL VOIP Voice Over IP.
Univ. Studi di Roma FORO ITALICO Prof. Stefano Razzicchia 1 UNIVERSITA STUDI DI ROMA FORO ITALICO Corso di Laurea Triennale INFORMATICA Lez. 6.
Il Firewall Sistemi di elaborazione dellinformazione : Sicurezza Anno Accademico 2001/2002 Martini Eros.
Corso di Informatica per Giurisprudenza Lezione 7
1 Esercizio 1 Un router riceve da un collegamento A lungo 10 km a 100 Mb/s e instrada i pacchetti ricevuti, lunghi 1000 bit verso una linea duscita B a.
Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 15.
Modulo 2 – U.D. 1 – Lez. 2 Ernesto Damiani – Sistemi di elaborazione dell'informazione.
I protocolli TCP/UDP prof.: Alfio Lombardo.
Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 7.
Reti di Calcolatori Lezione 11 a.a. 2005/06 Reti di Calcolatori
Il modello di riferimento OSI
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
TCP/IP.
Corso di Reti di Calcolatori A.A Prof. D. Rosaci Capitolo Quarto: Il livello di Rete.
Informatica Lezione 9 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Reti di Calcolatori ed Internet Fabio Massimo Zanzotto.
L’architettura a strati
RETI DI CALCOLATORI Domande di riepilogo Prima Esercitazione.
Sistemi e Tecnologie della Comunicazione
Livello di trasporto Protocolli TCP e UDP.
Sistemi e Tecnologie della Comunicazione
1: Introduction1 Stratificazione protocollare (Protocol “Layering”) Le reti sono complesse! r Molti elementi: m host m router m link fisici dalle caratteristiche.
Consuntivo corso Reti diCalcolatori Reti di Calcolatori (F1I063) Docente Luigi Vetrano Durata Ore di lezione56 di cui, ore di.
Livello 3 Network (Rete)
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 6 -User Datagram Protocol Ernesto Damiani Lezione 1 – UDP.
Reti di calcolatori Modulo 2 -Protocolli di rete TCP/IP Unità didattica 2 – Il protocollo TCP/IP Ernesto Damiani Università degli Studi di Milano - SSRI.
Reti II Stefano Leonardi
Controllo congestione. Controlli: della congestione e di flusso Problema Controllo della congestione Evitare che più mittenti inseriscano troppi dati.
Strato di accesso alla rete (network access layer); comprende le funzioni che nel modello OSI sono comprese negli strati fisico, di collegamento e parte.
Sistemi e Tecnologie della Comunicazione
Tecniche di gestione della congestione 1/2 Il fenomeno della congestione si ha quando un nodo intermedio (IS)non è più in grado di soddisfare le richieste.
1 Sistemi e Tecnologie della Comunicazione Lezione 21: network layer: protocolli di routing in IP, IPV6.
Corso reti di Calcolatori Preparazione al compito.
ARCHITETTURA DI RETE Protocollo: insieme di regole che governano le comunicazioni tra i nodi di una rete. La condivisione di queste regole tra tutte gli.
Applicazione Presentazione Sessione Trasporto Rete Data link Fisico OSI Processo / Applicazione Trasporto Rete- Internet Interfaccia di.
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
- Token bucket - Addressing Exercises on. Si condideri il meccanismo di controllo del traffico in ingresso con token bucket il rate di generazione dei.
II PROVA Svolgimento tramite protocollo ISO/OSI. I LIVELLO : LIVELLO FISICO Scelta del mezzo fisico; tenere conto degli standard IEEE Procedura di codifica.
Raccogliere informazioni ALCUNE DOMANDE FONDAMENTALI È stato modificato qualche componente HW o SW? Il sintomo si presenta regolarmente o ad intermittenza?
INTERNET MAP SCENARIO Primi anni ’90: Rapida crescita della rete Internet. Nuove applicazioni multimediali. Esigenza di applicazioni security – sensitive.
Slide #: 1/232 Internet - Architettura, principali protocolli e linee evolutive Nicola Blefari Melazzi Copyright © 2005 – The McGraw-Hill Companies srl.
Transcript della presentazione:

Reti di CalcolatoriAndrea Frosini1 Reti di Calcolatori a.a. 2005/06 Lezione 14

Reti di CalcolatoriAndrea Frosini2 Nel modello di riferimento: Application Transport Network Data Link Fisico

Reti di CalcolatoriAndrea Frosini3 Controllo della congestione Il controllo della congestione della communication subnet è uno dei compiti fondamentali del livello Network Non è da confondere con il controllo del flusso! Il controllo del flusso è relativo ad una singola connessione tra due entità sorgente e destinazione: un canale di comunicazione (gestito a livello Data Link), un circuito virtuale (gestito a livello Network), una connessione tra due applicazioni (gestito a livello Transport o superiore)… Il controllo della congestione è globale, ossia relativo allintera communication subnet, ed è svolto dal livello Network o dal livello Transport

Reti di CalcolatoriAndrea Frosini4 Si verifica congestione quando un router non è più in grado di gestire i pacchetti che gli arrivano E un meccanismo a cascata, perché i pacchetti scartati causano ritrasmissioni (da parte dei router vicini a quello congestionato oppure da parte degli host trasmittenti) Generalmente la congestione è dovuta a componenti della subnet non adeguati per gestire il carico: Cause della congestione troppi pochi buffer in un router (ma una quantità infinita di buffer nei router non necessariamente allevia la congestione) processore troppo lento in un router linea di trasmissione troppo lenta

Reti di CalcolatoriAndrea Frosini5 Tipologie di controllo della congestione open loop (senza contro-reazione): – corretto dimensionamento degli elementi della communication subnet – opportune strategie per accettazione di nuovi pacchetti o nuove connessioni – opportune strategie di scheduling dei pacchetti nei router – opportune scelte per i parametri dei protocolli di livello Data Link, Network e Transport – non è adattivo closed loop (con contro-reazione): – monitorizza il sistema per rilevare quando e dove si verifica congestione – invia le informazioni nei luoghi in cui si può rimediare – modifica i parametri dei protocolli per correggere il problema

Reti di CalcolatoriAndrea Frosini6 Una delle principali difficoltà nel controllo della congestione è che il traffico è spesso di tipo burst (alte punte di traffico in tempi brevi alternate a lunghi periodi di traffico più basso) Un metodo per controllare la congestione consiste nel modellare il traffico (traffic shaping) in modo da renderlo predicibile E un approccio di tipo open loop (non adattivo) algoritmo leaky bucket algoritmo token bucket Traffic shaping

Reti di CalcolatoriAndrea Frosini7 Lalgoritmo leaky bucket (secchio che perde) regolarizza il traffico uscente da un host ritardando il traffico burst: è basato su un buffer a coda (queue) di dimensione finita i pacchetti possono essere rimossi dalla coda e trasmessi ad una frequenza massima prefissata se la coda si riempie completamente, nuovi pacchetti vengono scartati se i pacchetti hanno dimensione variabile, si può modificare lalgoritmo in modo da inviare byte con frequenza massima prefissata Algoritmo leaky bucket I

Reti di CalcolatoriAndrea Frosini8 Algoritmo leaky bucket II Host Livello Fisico

Reti di CalcolatoriAndrea Frosini9 Algoritmo token bucket I Lalgoritmo token bucket (secchio di gettoni) è simile allalgoritmo leaky bucket, ma è più flessibile nel tagliare il traffico di tipo burst e non perde pacchetti quando la coda è piena. In pratica si consentono irregolarità controllate nel flusso in uscita sulla rete Il secchio contiene gettoni (token) e non pacchetti Per spedire un pacchetto si deve prelevare un gettone dal secchio Nuovi gettoni vengono immessi nel secchio ad intervalli di tempo regolari (ad esempio, uno ogni millisecondo) Il secchio ha una capacità massima prefissata

Reti di CalcolatoriAndrea Frosini10 Se i pacchetti hanno dimensione variabile, un gettone può rappresentare il diritto di trasmettere un numero prefissato di byte invece di un intero pacchetto Le trasmissioni di pacchetti avvengono alla massima velocità possibile del canale di comunicazione finché il secchio è pieno, poi secondo il tasso di generazione dei gettoni Se il secchio è vuoto, i pacchetti non vengono perduti: lhost deve bloccare e attendere che venga generato un nuovo gettone Consente alte punte di traffico, ma limita la lunghezza del burst. Per ridurre i picchi si usa spesso un leaky bucket dopo il token bucket Algoritmo token bucket II Leaky bucket e token bucket sono utili per il traffico host-router e router-router Se il router sorgente deve fermarsi e non ha spazio sufficiente, si può aver perdita

Reti di CalcolatoriAndrea Frosini11 Gli algoritmi di traffic shaping sono molto efficaci quando sono adottati consistentemente da sorgente, communication subnet e ricevente. In particolare, sorgente, subnet e ricevente devono accordarsi in anticipo su: le caratteristiche del traffico generato (data rate, frequenza dei burst,... ) la qualità del servizio garantita dalla subnet (ritardo di trasmissione, varianza del tempo di trasmissione (jitter ), tasso di pacchetti persi,... ) E possibile adottare il flow specification sia nelle subnet organizzate con circuiti virtuali (più facile) che in quelle organizzate con datagram (più difficile) Flow specification: controllo della congestione

Reti di CalcolatoriAndrea Frosini12 Il metodo più semplice per controllare la congestione delle subnet organizzate con circuiti virtuali è ladmission control (controllo daccesso) Quando viene rilevata congestione in una parte della subnet: i nuovi circuiti virtuali vengono instradati su percorsi non sovraccarichi se non è possibile trovare un percorso non sovraccarico, viene impedita la creazione di nuovi circuiti virtuali fino alla scomparsa della congestione E un algoritmo di tipo closed loop, perché si adatta al traffico della subnet E anche possibile utilizzare il flow specification per prenotare le risorse della subnet utilizzate da ciascun circuito virtuale Controllo della congestione con circuiti virtuali

Reti di CalcolatoriAndrea Frosini13 Gli algoritmi closed loop utilizzati nelle subnet a commutazione di pacchetto possono essere utilizzati anche nelle subnet con circuiti virtuali In ogni algoritmo closed loop, ciascun router monitorizza lutilizzo delle sue linee di comunicazione e delle altre sue risorse Ad esempio, si associa a ciascuna linea una variabile reale u che rappresenta il suo utilizzo; ad intervalli regolari la linea viene monitorata e la variabile aggiornata: u new = a × u old + (1 - a) × f f rappresenta lutilizzo istantaneo della linea, ed a (0, 1) il peso che viene dato alla storia passata Controllo della congestione in subnet basate su datagram

Reti di CalcolatoriAndrea Frosini14 Se per una certa linea di un router la variabile u supera una soglia prefissata, allora per ogni pacchetto P che transita su una linea sovraccarica, il router: invia un choke packet all host sorgente del pacchetto prima di ri-trasmettere P al router successivo, imposta un flag nella testata del pacchetto cosicché il router seguente non generi un altro choke packet Quando l host sorgente riceve un choke packet: riduce il tasso di trasmissione (ad esempio, del 50%) fa partire un timer ed ignora i choke packet che arrivano prima che il timer scada dopo la scadenza del timer: – se arriva un altro choke packet, riduce ulteriormente il tasso di trasmissione (ad esempio, per un ulteriore 25%) – se non arrivano altri choke packet, aumenta gradualmente il tasso di trasmissione (ad esempio, del 5% alla volta) Algoritmo choke packet

Reti di CalcolatoriAndrea Frosini15 Algoritmo hop-by-hop choke packet Il principale difetto dellalgoritmo choke packet è la sua lentezza quando il router congestionato è molto distante dall host sorgente oppure la subnet è molto veloce Lalgoritmo hop-by-hop choke packet è una variante del choke packet in cui ciascun router che riceve il choke packet rallenta il tasso di trasmissione (oltre a ritrasmettere allindietro il choke packet stesso) Il router congestionato ha immediato sollievo La capacità dei buffer nei router deve essere maggiore

Reti di CalcolatoriAndrea Frosini16 Per connettere fra loro reti eterogenee si devono superare problemi non banali, tra i quali: - Difformità nei formati dei pacchetti e degli indirizzi - Difformità, nelle subnet, dei meccanismi di controllo dell'errore e della congestione - Diverse architetture di rete, diversi servizi offerti dai vari livelli, diverse modalità di indirizzamento, diverse dimensioni massime dei pacchetti Tecniche - Bridge livello data link - Router multiprotocollo: gestione contemporanea di più pile di protocolli Internetworking

Reti di CalcolatoriAndrea Frosini17 Un dispositivo operante a livello Network in grado di gestire pacchetti appartenenti a reti con diversa architettura di rete è chiamato router multiprotocollo, o anche gateway Il termine gateway talvolta indica anche dispositivi che operano a livello differente: ripetitori (livello Fisico) e bridge (livello Data Link), transport gateway e application gateway Il termine router multiprotocollo denota un dispositivo che opera solamente a livello Network In pratica i dispositivi in vendita hanno caratteristiche tali per cui non è sempre facile stabilire a quale livello essi operano. Ad esempio, molti dispositivi operano come ripetitori, come bridge e come router multiprotocollo (brouter) Router multiprotocollo

Reti di CalcolatoriAndrea Frosini18 Concatenazione di circuiti virtuali Se tutte le reti interessate offrono servizi della stessa tipologia a livello Network (ad esempio, connection-oriented affidabile, con determinate garanzie sulla qualità del servizio,... ) è possibile costruire un circuito virtuale che si estende attraverso più reti eterogenee come concatenazione di circuiti virtuali che attraversano ciascuno una delle reti (ricordiamo: circuito virtuale = connessione logica tra due host, anche non consecutivi, della rete). Ciascun circuito virtuale di una subnet omogenea termina in un router multiprotocollo che lo collega al circuito virtuale di unaltra subnet e che instrada successivamente i pacchetti lungo tale circuito virtuale E una tipica strategia di internetworking tra communication subnet organizzate con circuiti virtuali

Reti di CalcolatoriAndrea Frosini19 Connectionless internetworking La strategia connectionless internetworking è utilizzata quando le communication subnet sono organizzate con datagram E alternativa ai circuiti virtuali concatenati I pacchetti viaggiano indipendentemente e possono arrivare fuori ordine router multiprotocollo rete A rete C rete B rete A router

Reti di CalcolatoriAndrea Frosini20 Sebbene i router multiprotocollo possano in teoria permettere la comunicazione tra host in reti con architetture molto differenti tra loro, in pratica questo avviene molto raramente: ciascun host dovrebbe possedere non solo lindirizzo relativo alla rete di cui fa parte, ma anche un indirizzo valido per ciascuna rete da cui potrebbe ricevere pacchetti (IP, DECnet, IPX, SNA, AppleTalk,... ) i formati dei pacchetti nelle due reti possono essere troppo differenti perché una completa conversione di formato sia possibile funzionalità quali trasmissione di pacchetti broadcast, qualità del servizio e sicurezza potrebbero essere supportate da una rete ma non dallaltra Quindi anche se i router multiprotocollo possono gestire pacchetti di diverso tipo, le reti in cui si trovano gli host sorgente e destinazione sono generalmente dello stesso tipo o almeno compatibili Limiti dellinternetworking

Reti di CalcolatoriAndrea Frosini21 Il tunneling è una strategia di internetworking che consente di collegare due reti A e B utilizzanti la stessa architettura tramite una rete C utilizzante una architettura differente Il pacchetto Network proveniente da una rete viene incapsulato da un router multiprotocollo allinterno di un pacchetto Network della rete C Il nuovo pacchetto viaggia normalmente allinterno della rete C fino ad un altro router multiprotocollo Il secondo router multiprotocollo estrae il vecchio pacchetto Network e lo invia sulla rete B Tunneling rete A rete C rete A Head A Head C tunnel

Reti di CalcolatoriAndrea Frosini22 Il livello Transport di quasi tutte le architetture di rete offre un servizio di tipo connection oriented affidabile E quindi naturale definire un meccanismo di internetworking a livello Transport basato sulla concatenazione di circuiti virtuali E analogo allinternetworking basato sulla concatenazione di circuiti virtuali a livello Network, ma si appoggia ai protocolli del livello Transport I dispositivi che svolgono questo servizio sono chiamati transport gateway Internetworking a livello Transport

Reti di CalcolatoriAndrea Frosini23 Un ulteriore servizio di internetworking può essere offerto dal livello Application da dispositivi chiamati application gateway Ad esempio è possibile definire un servizio di posta elettronica che converta il formato dei messaggi di posta quando sorgente e destinazione sono in reti con diverse architetture Ad esempio per inviare un messaggio da un host TCP/IP ad un host OSI: si compone il messaggio di posta elettronica nel formato Internet; lindirizzo è quello dellutente OSI, codificato secondo lo standard TCP/IP il messaggio viene inviato ad un mail gateway il mail gateway converte il messaggio nel formato OSI, e lo invia allutente OSI Internetworking a livello Application

Reti di CalcolatoriAndrea Frosini24 In una internetwork le singole reti componenti sono entità autonome e vengono chiamate AS (Autonomous System) Il routing complessivo è a due livelli: 1. Un primo livello è costituito dall'Interior Gateway Protocol (IGP) che identifica l'algoritmo di routing usato da un AS al proprio interno. Diversi AS possono utilizzare diversi IGP 2. Un secondo livello è dato dallExterior Gateway Protocol (EGP), che è l'algoritmo che si usa per gestire il routing fra diversi AS. Deve tener conto di specifiche leggi nazionali (divieto di far transitare dati sul suolo di una nazione ostile), per cui le decisioni di routing devono adattarsi a tali direttive Internetwork routing

Reti di CalcolatoriAndrea Frosini25 Una particolare internetwork è chiamata Internet è molto grande ed estesa è costituita da molti AS (Autonomous Systems) connessi tra loro le linee di comunicazione principali sono le backbone: communication subnet con linee ad alta capacità e router veloci ai backbones sono collegati le communication subnet nazionali e regionali (midlevel subnet) alle midlevel subnet sono collegate le LAN di università, compagnie, Internet service provider,... Internet

Reti di CalcolatoriAndrea Frosini26 Schema di Internet

Reti di CalcolatoriAndrea Frosini27 Il livello Network dellInternet Protocol Suite è il più importante: svolge principalmente i servizi di internetworking e routing è basato sul protocollo IP (Internet Protocol) offre un servizio connectionless non affidabile è organizzato con datagram Il livello Network dellIPS

Reti di CalcolatoriAndrea Frosini28 riceve i dati dal livello Transport incapsula i dati in pacchetti di max 64 Kbyte (in genere la lunghezza è di byte) instrada i pacchetti sulla subnet, eventualmente frammentandoli riassembla (se necessario) i frammenti ricevuti in pacchetti estrae dai pacchetti ricevuti i dati del livello Transport consegna al livello Transport i dati nellordine in cui sono arrivati (che non è necessariamente quello in cui sono partiti) Schema del protocollo IP

Reti di CalcolatoriAndrea Frosini29 Formato del pacchetto IP

Reti di CalcolatoriAndrea Frosini30 Version (4 bit): numero di versione del protocollo IP IHL (4 bit): lunghezza dell header del pacchetto in parole da 32 bit (minimo=20 byte, massimo=60 byte) Type of service (8 bit, non tutti necessariamente utilizzati): codifica la qualità del servizio richiesto dall host alla communication subnet; in pratica `e ignorato Total length (16 bit): lunghezza totale del pacchetto, compreso lheader (massimo=65535 byte) Identification (16 bit): Identificatore del datagram utilizzato in caso di frammentazione DF (1 bit, Dont Fragment): indica che il datagram non può essere frammentato (il ricevente non è in grado di riassemblare il pacchetto) MF (1 bit, More Fragments): indica che il frammento non è lultimo del datagram Lheader IP I

Reti di CalcolatoriAndrea Frosini31 Fragment offset (13 bit): posizione relativa del frammento allinterno del datagram in multipli di 8 byte (non è il numero dordine del frammento!) Time to live o TTL (8 bit): contatore per limitare la vita del pacchetto; in teoria è decrementato una volta al secondo, in pratica ad ogni hop; quando raggiunge zero il pacchetto viene scartato ed un avvertimento inviato allhost sorgente Protocol (8 bit): indica quale protocollo deve ricevere i dati nel pacchetto (generalmente un protocollo di livello Transport come TCP o UDP; in RFC 1700 sono definiti un centinaio di numeri, ma il database completo oggi on-line su Header checksum (16 bit): bit di controllo per il solo header, calcolati raggruppando i bit dellheader in parole da 16 bit (escluso il campo Header checksum stesso), calcolandone la somma in complemento ad 1, e prendendo il complemento ad 1 del risultato; deve essere ricalcolato ad ogni hop Source address (32 bit): network number e host number dellhost sorgente Lheader IP II

Reti di CalcolatoriAndrea Frosini32 Lheader IP III Destination address (32 bit): network number e host number dellhost destinazione Options (da 0 a 10 parole da 32 bit): alcune possibili opzioni sono: – Security: indica la segretezza del datagram – Strict source routing: indica il percorso che il datagram deve seguire – Loose source routing: indica alcuni router da includere nel percorso – Record route: forza ogni router ad appendere il proprio indirizzo IP – Timestamp: come sopra, ma i router appendono anche un timestamp In totale sono state definite una ventina di opzioni In generale le opzioni non sono molto utilizzate, e non tutti i router sono in grado di gestirle