R. Cusani - F. Cuomo, Telecomunicazioni - Data link layer: controllo di flusso, Aprile 2010

Documenti analoghi
Livello di trasporto: meccanismi trasferimento dati affidabile

Rete: classificazione in funzione della distanza fra due generici elementi

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK.

Livello di trasporto: meccanismi trasferimento dati affidabile, TCP

Mettiamo i puntini sulle i. 5 min. per pensare 5 min. per discutere la soluzione

Università degli Studi di Bergamo

Protocollo di Controllo della Linea Dati. Controllo della Linea Dati. Individuazione degli Errori. Servizi Offerti

R. Cusani - F. Cuomo, Telecomunicazioni - Data link layer: Protocolli, Aprile 2010

1. Supponendo che il canale trasmissivo sia esente da errori, si determini il throughput di S1.

Controllo di congestione

R. Cusani, F. Cuomo: Telecomunicazioni - DataLinkLayer: Gestione degli errori, Aprile 2010

RETI A COMMUTAZIONE DI PACCHETTO. Caratteristiche e principi di funzionamento

Prestazioni stop-and-wait. Prestazioni

Principi di trasferimento affidabile

Fondamenti di Internet e Reti

RETI DI TELECOMUNICAZIONE

Il livello Data-Link e i suoi protocolli

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

Esercitazione. Livello di Trasporto [Capitolo 3]

RETI DI TELECOMUNICAZIONE

L interfaccia più comune fra il computer (DTE) ed il modem (DCE) è la RS232,

LIVELLO DATA LINK (DI LINEA)

RETI DI CALCOLATORI Home Assignment protocolli a finestra scorrevole. Prima parte

Fondamenti di Internet e Reti Esercizi sui meccanismi di controllo di errore e sul livello di trasporto

Strato di Col o l l e l g e a g m a e m n e t n o

- 5 - Controllo a finestra

Argomenti: ! Servizi dello strato di trasporto! multiplexing/demultiplexing! Servizio senza connessione: UDP

Reti di Comunicazione e Internet

MULTIPLAZIONE PCM MULTIPLAZIONE PCM 2

Reti e Protocolli rassegna (II)

Le reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete

MODELLI ISO/OSI e TCP/IP

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 2

MODELLI ISO/OSI e TCP/IP

Reti di Telecomunicazione Lezione 2

Il tema proposto può essere risolto seguendo due ipotesi:

Standard: OSi vs TCP/IP. Il livello di trasporto. TCP e UDP. TCP: Transmission Control Protocol. TCP: funzionalità

ESERCIZIARIO. Risposte ai quesiti:

Il livello trasporto Protocolli TCP e UDP

Topologia delle reti. Assegnazione fisica dei canali

TRASMISSIONE DELLE INFORMAZIONI

Introduzione (parte III)

LIVELLO 2: DATA-LINK

Il protocollo RS Introduzione. 1.2 Lo Standard RS-232

Standard OSI MODELLO OSI. Caratteristiche generali PRINCIPALI OBIETTIVI DEL MODELLO OSI

Le Reti Informatiche

Livello Data Link. Davide Quaglia. Scopi

Introduzione alle Reti di Calcolatori. Prof. Ing. Mario Catalano

ISO- OSI e architetture Client-Server

Commutazione di pacchetto

I seguenti luicidi sono tratti da: Paolo Corsini, Dalle porte AND OR NOT al sistema calcolatore, Edizioni ETS

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Reti Locali LAN. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Architettura di rete. Modelli di Riferimento: TCP/IP e OSI. Modello di riferimento OSI. Modelli di riferimento. architettura di rete

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Reti di calcolatori. Rete di calcolatori

Gestione della Connessione in TCP

Reti di Calcolatori:

Livello Trasporto Protocolli TCP e UDP

Reti di Calcolatori in Tecnologia IP

Sono dispositivi che consentono di interconnettere tra loro due o piu reti, permettendo:

Nome e Cognome : Anno di corso Numero di matricola : Como, 7 maggio Quiz a risposta multipla

Reti locali. Protocolli di accesso per reti locali

Homework assignment #2. Maurizio Bonuccelli. Dipartimento di Informatica Università di Pisa

ARCHITETTURA DI RETE FOLEGNANI ANDREA

CORSO DI RETI SSIS. Lezione n.3 9 novembre 2005 Laura Ricci

Controllo di Congestione in Reti Internet Docente: Vincenzo Eramo

Esercizi: Telecomunicazioni parte Reti

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

Sistemi di Telecomunicazione

Reti di Calcolatori. Lo Stack ISO-OSI

RETI DI CALCOLATORI Home Assignment protocollo TCP. Prima parte

Reti di Calcolatori e Laboratorio - Compito del 15 Gennaio 2013

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

Tipi di comunicazione

UD 3 PROTOCOLLO ISO-OSI

La tecnologia Ethernet

Generalità sui protocolli Tecniche di multiplazione Tecniche di accesso Tecniche di commutazione

Specifiche del protocollo di comunicazione semplificato per il modulo seriale di I/O

Multiplazione dei segnali

Prova in itinere - Rete Internet (ing. Giovanni Neglia) Mercoledì 23 Maggio 2007, ore 15.00

Telematica di Base. IL Livello di Trasporto TCP

Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni. Esercitazioni del corso di. Telecomunicazioni

Ordinativo Informatico Gateway su Web Services

Protocolli e Architetture. Dr. Greco Polito Silvana

Reti di Calcolatori. Il software

Analisi dell avvio del TCP su canali satellitari a larga banda. Candidato Giovanni Verrecchia

Implementazioni tipiche del protocollo TCP

INTRODUZIONE ALLE RETI. Tipologie di Rete. Perché una rete? Interconnessione di reti

Reti di Telecomunicazione Lezione 18

Capitolo 3 - parte 2. Corso Reti ed Applicazioni Mauro Campanella

Fondamenti di Reti di Telecomunicazioni Prof. Guido Maier IV appello 8 febbraio 2010

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

Soluzione dell esercizio 2 (TCP) dell esame del 16 giugno 2015

LE RETI DI COMPUTER. Il modello ISO/OSI Prima parte

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

UNIVERSITA DEGLI STUDI DI BERGAMO

Indirizzi LAN (MAC) e IP

Reti di Calcolatori a.a

ISDN (INTEGRATED SERVICES DIGITAL NETWORK) Prof. Ing. Maurizio Casoni

Transcript:

1 12: Data link layer: controllo di flusso, protocolli stop-and and-wait e sliding window Dati analogici, segnali numerici 2 Per poter trasmettere un dato analogico con una trasmissione digitale è necessario trasformare il dato analogico in un segnale numerico più precisamente si rappresenta il segnale analogico, corrispondente al dato analogico in banda base, con un dato numerico Il processo di trasformazione si realizza attraverso due fasi: il campionamento del segnale analogico la digitalizzazione del campione 1

Controllo di flusso 3 L implementazione del data link layer prevederà la realizzazione della interfaccia con i livelli adiacenti, ad esempio due procedure from-networklayer() e to-network-layer() per scambiare dati con il livello superiore saranno disponibili due procedure analoghe per scambiare dati con lo strato fisico In aggiunta sarà prevista una procedura wait-for-event() che metterà il data link layer in attesa di un evento Questo evento sarà in generale la segnalazione, da parte di uno dei due livelli adiacenti, che sono disponibili dei dati Infine, saranno definite procedure per il trattamento dei dati (inserimento/rimozione di header, calcolo di checksum, ) Architettura a strati di una LAN 4 Applicazione Presentazione Sessione Trasporto Rete Collegamento Fisico Controllo del collegamento logico LLC Controllo di accesso al mezzo MAC Segnalazione di strato fisico PLS Unità fisica di attacco al mezzo trasmissivo - MAU 2

La famiglia degli standard IEEE 802 5 Controllo di flusso (cont.) 6 In ricezione, il data link layer verrà svegliato per prelevare dati dallo strato fisico, processarli, e passarli allo strato di rete Di fatto il DDL in ricezione non sarà in grado di rispondere ad eventi per il tempo che intercorre tra la chiamata alla procedura from-physical-layer() e la fine della procedura to-network-layer() In questo intervallo di tempo, dati in arrivo saranno messi in buffer, in attesa di essere processati Poiché il tempo di elaborazione non è nullo, si deve gestire l eventualità che i dati arrivino troppo velocemente 3

Controllo di flusso a priori 7 Un semplice meccanismo può essere quello di valutare i tempi di risposta del ricevente, ed inserire dei ritardi nel processo di trasmissione per adattarlo alla capacità di ricezione Il problema è che il tempo di elaborazione in ricezione non è una costante può dipendere dal numero di linee che il nodo ricevitore deve gestire e variare in base al carico sulle altre linee Basarsi sul caso peggiore comporta un grosso limite di efficienza Vedremo esempi di protocolli che implementano un controllo di flusso di complessità crescente al fine di utilizzare al meglio la banda Protocollo simplex stop-and and-wait 8 Ipotizziamo che il canale sia privo di errori e che il traffico dati scorra in una direzione sola, dal trasmittente (A) al ricevente (B) Il protocollo stop-and-wait prevede che A, dopo aver inviato il frame, si fermi per attendere un riscontro B, una volta ricevuto il frame, invierà ad A un frame di controllo, cioè un frame privo di dati, allo scopo di avvisare A che può trasmettere un nuovo frame Il frame di riscontro si indica generalmente con il termine ACK (ACKnowledge) o RR (Receiver Ready) Va osservato che il traffico dati è simplex, ma i frame devono viaggiare nelle due direzioni, quindi il canale fisico deve essere almeno half-duplex 4

Efficienza stop-and-wait 9 L efficienza di utilizzo di una linea si misura in termini del tempo in cui la linea resta inattiva (senza trasportare bit) L efficienza del protocollo stop-and-wait si riduce con: l aumento del tasso trasmissivo l aumento della distanza la riduzione della dimensione del frame Efficienza stop-and-wait (cont.) 10 5

Efficienza stop-and-wait (cont.) 11 Linea telefonica con modem Distanza velocità di propagazione dimensione del frame dimensione frame di ACK bit rate Tempo scrittura frame: Tempo scrittura ACK: Tempo di propagazione: Tempo totale tra due frame: Rate utile: d = 1 Km v = 2 10 8 m/s F = 1000 bit A = 100 bit R = 32 Kbps Tf = F/R = 0.03125 s Ta = A/R = 0.003125 s Tp = d/v = 0.5 10-5 s Tt = Tf+Tp+Ta+Tp = 0.034385 s R eff = F/Tt = 1000/0.034385 29 Kbps Efficienza stop-and-wait (cont.) 12 Connessione T1 d = 1000 Km, F = 193 bit, R=1.544 Mbps (A 0) Tf = 0.000125 s, Tp = 0.005 s Tempo totale tra due frame: Tt = Tf+2 Tp = 0.010125 s Rate utile: R eff = F/Tt = 193/0.010125 19 Kbps 6

Protocollo stop-and and-wait con errori 13 Se è possibile avere errori, occorre gestire la perdita di frame se arriva a B un frame errato, B lo scarta e non fa nulla allo stesso modo se il frame viene perduto, B non saprà che è stato inviato un frame, e l ACK non verrà inviato per evitare che A aspetti per sempre si deve introdurre un timer in A, che viene fatto partire dopo la trasmissione del frame questo implica la necessità di disporre di un buffer in cui A possa memorizzare il frame fino alla ricezione del relativo ACK allo scadere del timer, A invierà nuovamente il frame il valore del timer va valutato accuratamente: un timer troppo corto provoca la ritrasmissione prima che l ACK possa arrivare, mentre un timer troppo lungo costituisce una inutile inefficienza Protocollo stop-and-wait con errori (cont.) 14 La stessa procedura permette di fronteggiare la perdita di ACK, però in questo caso A invierà nuovamente il frame che B ha già ricevuto Per ovviare a questo problema i frame devono essere numerati poiché l ambiguità da risolvere è quella di distinguere un frame da quello precedente, è sufficiente numerare i frame 0 e 1 (un bit nell header) gli ACK riporteranno l informazione di quale sia il frame ricevuto (come regola generale l ACK riporta il numero del prossimo frame che B si aspetta di ricevere) Qualora B dovesse ricevere un duplicato, lo scarta ma rimanda lo stesso ACK precedentemente inviato 7

Protocollo stop-and-wait con errori (cont.) 15 La gestione della trasmissione con errore richiede quindi l utilizzo di un timer dal lato del trasmettitore la durata del timer deve essere valutata correttamente per evitare inefficienze l utilizzo di un buffer dal lato del trasmettitore l utilizzo di un bit nell header del frame per la numerazione dei frame Trasmissioni full duplex 16 Quando il canale di comunicazione permette l invio di dati in entrambe le direzioni contemporaneamente è possibile definire protocolli di comunicazione detti full duplex In caso di linea full duplex il canale trasmette in ciascuna direzione frame di dati e frame di ACK relativi alla comunicazione nel verso opposto, mischiati tra loro I frame sono distinti da una informazione contenuta nell header, che etichetta il frame come dati o come controllo (ACK) 8

Acknowledge in piggybacking 17 Per motivi di efficienza spesso si utilizza una tecnica (detta piggy-backing ) per evitare di dover costruire e trasmettere un frame di ACK: si dedica un campo dell header del frame di dati per trasportare l ACK relativo alla trasmissione in senso inverso Quando si deve trasmettere un ACK, si aspetta di dover trasmettere un frame di dati che possa trasportare l informazione di ACK Se non ci sono dati da inviare, si dovrà comunque inviare un frame di ACK prima che scada il timeout del trasmittente questo implica il dover utilizzare un altro timer, dal lato in ricezione, per decidere dopo quanto tempo inviare comunque l ACK in caso di mancanza di dati da inviare in senso inverso Protocolli a finestra scorrevole 18 I protocolli a finestra scorrevole (sliding window) permettono di inviare piu di un frame prima di fermarsi per attendere il riscontro, fino ad un valore massimo W fissato a priori Poiche in ricezione possono arrivare piu frame consecutivi, i frame devono essere numerati per poterli distinguere: saranno dedicati n bit di controllo per la numerazione, ed i frame potranno avere numero da 0 a 2 n -1 In ricezione non e necessario riscontrare tutti i frame: il ricevente puo attendere di ricevere un certo numero di frame (fino ad un massimo di W) prima di inviare un solo riscontro cumulativo La numerazione dei frame e in modulo 2 n, cioe il frame successivo a quello numerato 2 n -1 avra come identificativo il numero 0 9

Protocolli a finestra scorrevole (cont.) 19 Per non avere sovrapposizione dei numeri identificativi tra i frame in attesa di riscontro, questi non dovranno essere in numero maggiore di 2 n -1, quindi si avrà sempre W 2 n -1 in funzione del protocollo usato si potranno avere restrizioni maggiori Questo tipo di protocolli necessità di maggiori risorse di buffer: in trasmissione devono essere memorizzati i frame inviati in attesa di riscontro, per poterli ritrasmettere in caso di necessità ad ogni riscontro ricevuto, vengono liberati i buffer relativi ai frame riscontrati, per occuparli con i nuovi frame trasmessi a seconda del protocollo anche in ricezione di deve disporre di buffer, ad esempio per memorizzare frame fuori sequenza; La finestra in trasmissione (cont.) 20 per ogni frame riscontrato, il limite superiore della finestra si sposta in avanti di una unità (o più se si è ricevuto un riscontro cumulativo), permettendo al trasmittente di inviare nuovi frame La dimensione della finestra di trasmissione varia, ma non può mai superare il valore di W Frame 1 Frame 2 Frame 3 Frame 4 Frame 5 Frame 6 Window W=4 Se arrivano i riscontri dei frame 1 e 2 la finestra scorre in avanti Frame 1 Frame 2 Frame 3 Frame 4 Frame 5 Frame 6 Window W=4 10

La finestra in trasmissione 21 In trasmissione si deve tenere conto dei frame inviati e non riscontrati, e del numero massimo di frame che possono essere ancora inviati prima di dover fermare la trasmissione Si utilizza una sequenza di numeri, indicanti gli identificativi dei frame Si tiene conto di una finestra che contiene l insieme dei frame che il trasmittente è autorizzato ad inviare Con il procedere della trasmissione la finestra scorre in avanti: inizialmente la finestra ha limiti 0 e W-1 ad ogni frame inviato, il limite inferiore della finestra cresce di una unità; quando la finestra si chiude (cioè quando sono stati inviati W frame in attesa di riscontro) la trasmissione deve fermarsi La finestra in trasmissione (cont.) 22 per ogni frame riscontrato, il limite superiore della finestra si sposta in avanti di una unità (o più se si è ricevuto un riscontro cumulativo), permettendo al trasmittente di inviare nuovi frame La dimensione della finestra di trasmissione varia, ma non può mai superare il valore di W 11

La finestra in ricezione 23 In ricezione si deve tenere conto dei frame ricevuti di cui non è stato ancora inviato l ACK, e del numero di frame ancora accettabili Si utilizza una finestra analoga a quella in ricezione: la finestra contiene i numeri dei frame accettabili il limite inferiore è il numero del frame successivo all ultimo ricevuto, mentre il limite superiore è dato dal primo non ancora riscontrato più W Ad ogni nuovo frame ricevuto il limite inferiore della finestra cresce di una unità, mentre ad ogni acknowledge inviato il limite superiore avanza di una unità La dimensione della finestra non può eccedere il valore di W (tutti i frame ricevuti sono stati riscontrati) La finestra in ricezione (cont.) 24 Quando la finestra si azzera significa che si devono per forza inviare i riscontri, perché la ricezione è bloccata Qualsiasi frame ricevuto con numero fuori dalla finestra di ricezione sarà buttato via La finestra in ricezione non deve necessariamente avere la stessa dimensione della finestra in trasmissione ad esempio una finestra in ricezione più piccola costringerà il ricevente ad inviare ACK prima che in trasmissione sia stata azzerata la finestra 12

Esempio con W = 7 25 Efficienza del protocollo sliding windows senza errori 26 Un protocollo che permette di trasmettere più frame prima di attendere un riscontro comporta un utilizzo più efficiente della linea: se la finestra è sufficientemente ampia da non averla esaurita in trasmissione prima che arrivi l ACK del primo frame inviato, il flusso non si interrompe mai, cioè l efficienza vale 1 questo accade quando il tempo di W trasmissioni supera il tempo necessario a ricevere il riscontro del primo frame se la finestra non è sufficientemente ampia, si ha comunque un miglioramento rispetto allo stop-and-wait in quanto il tempo di riscontro è stato occupato con W trasmissioni e non con una sola 13

Efficienza sliding window (cont.) 27 Linea T1 stop and wait, distanza d = 1000 Km velocità di propagazione v = 2 10 8 m/s dimensione del frame F = 193 bit dimensione frame di ACK A ~ 0 bit bit rate R = 1.544 Mbps Tempo scrittura frame: Tf = F/R = 0.000125 s Tempo di propagazione: Tp = d/v = 0.005 s Tempo totale tra due frame: Tt = Tf+2 Tp = 0.010125 s Rate utile: R eff = F/Tt = 193/0.010125 19 Kbps Linea T1 sliding window, W=8 Tempo totale di attesa del primo riscontro: Tt = Tf+2 Tp = 0.010125 s Rate utile: R eff = W F/Tt 152 Kbps 14