Rete: classificazione in funzione della distanza fra due generici elementi WAN: Wide Area Network MAN: Metropolitan Area Network LAN: Local Area Network 1
Distanza - velocità 2
WAN Topologia tipica a maglia Estensione dalle decine ai migliiaia di km 3
Protocolli: modello a strati 4
Livello Data Link 5
FEC e ARQ 6
Bit di parità per il controllo dell errore PDU: Protocol Data Unit PCI:Protocol Control Information SDU: Service Data Unit 7
FEC e ARQ: correzione e rilevazione di errore 8
FEC L informazione di controllo (codice a correzione di errore) viaggia nella stessa direzione dell informazione di utente L informazione di controllo permette di correggere gli errori Per le tecniche FEC si usano: q Codici a blocchi q Codici convoluzionali Si usa nel caso di link unidirezionali senza canale di 9 Dr. ritorno Greco Polito Silvana
10
11
ARQ: rilevazione errore L informazione di controllo (codice a rilevazione di errore) permette al ricevitore di verificare se la trama ricevuta è corretta Se la trama contiene errori: q Il ricevitore comunica l errore al trasmettitore q Il trasmettitore rispedisce la trama 12
ARQ: rilevazione errore L informazione di controllo (codice a rilevazione di errore) permette al ricevitore di verificare se la trama ricevuta è corretta Il ricevitore conferma la ricezione della trama al trasmettitore e notifica l eventuale presenza di errore Se la trama contiene errori: q Il trasmettitore rispedisce la trama 13
14
Strategie ARQ per il controllo dell errore 15
Stop and Wait Il trasmettitore trasmette la trama e aspetta il riscontro di trama ricevuta correttamente prima di trasmettere la trama successiva Il ricevitore invia riscontro solo per trame ricevute senza errore IL trasmettitore memorizza la trama spedita fino alla ricezione del riscontro 16
Esempio Stop and wait in assenza di errore ACK: ACKNOWLEDGMENT Tempo per trasmissione di una trama: T=Tf+Ta+2Tp+2 τ Tempo per trasmissione di Nf trame: T tot =N f (T f +Ta+2Tp+2 τ) 17
Stop and wait in presenza di errore Due tipi di errore: q Errore sulla trama trasmessa q Errore sul riscontro di trama 18
Esempio Stop and wait in presenza di errore sul riscontro To= tempo di time-out A attiva un timer di durata To alla fine della trasmissione In assenza di riscontro, Allo scadere di To, A riinoltra la trama 19
Esempio Stop and wait in presenza di errore sul riscontro To= tempo di time out To Ta+2Tp+2τ 20
Stop and wait: numerazione di trama Problema: B puo ricevere piu volte la stessa trama Soluzione: numerazione di trama 21
Stop and wait: meccanismo di numerazione Numerazione a 1 bit: q Il trasmettitore numera le trame alternativamente con i simboli 0 e 1 q Il ricevitore scarta una trama se questa ha lo stesso numero della precedente 22
Stop and wait: valutazione Siano τ= tempo di propagazione Tf= tempo di trasmissione della trama Ta= tempo di trasmissione ACK Tp= tempo di elaborazione (trama e ACK) 23
Stop and wait: valutazione Si definisce tempo di propagazione normalizzato Si definisce efficienza η = Tf / T 24
Stop and wait: efficienza in assenza di errore OSS: l efficienza diminuisce all aumentare di a Fissato C, a aumenta al diminuire di Lf -> Per dato C l efficienza puo essere aumenta aumentando la dimensione della trama 25
Stop and wait: Tp e numerazione dei riscontri OSS: il tempo Tp è variabile Normalmente To viene definito assumendo per Tp un valore ragionevole 26
Stop and wait: Tp e numerazione dei riscontri Problema: è possibile ricevere un riscontro dopo lo scadere di To Soluzione: numerazione dei riscontri 27
Necessità di numerazione degli ACK 0 Tx, alla ricezione del secondo ACK trasmette la trama 0 perché pensa che tale ACK è relativo alla trama 1 28
Protocolli ARQ di tipo continous 29
Protocolli ARQ di tipo continous Obiettivo: aumentare l efficienza rispetto a quella del protocollo Stop and Wait Metodo: permettere la trasmissione di una o piu trame mentre si è ancora in attesa di un riscontro relativo ad una trama precedente Strumenti: q Numerare le trame 30
Strumenti: numerazione trame in trasmissione q Numerare le trame in trasmissione cosi da distinguere tra trame riscontrate e non riscontrate q Numerazione ciclica modulo N con N=2 b e b= bit usati per la numerazione b=3 N=8 Numerazione delle trame: 0,1,2 7 31
Tempo di trasmissione di Nf trame T tot =N f T f +Ta+2 τ Tempo di riscontro e doppio tempo di propagazione conteggiati una sola volta Stop and wait: tempo per trasmissione di Nf trame: T tot =N f (T f +Ta+2Tp+2 τ) 32
Strumenti: sliding window 3 4 Problema 1: q L ACK (i) non viene ricevuto -> la sorgente puo trasmettere le trame successive fino all (i-1) Soluzione: q Sliding window in trasmissione: Ws q Ws= numero trame che il trasmettitore puo inviare senza ricevere il riscontro 33
Strumenti: sliding window Problema 2: q Il ricevente deve ordinare le trame prima di trasmetterle al livello superiore, quante trame possono essere accettate fuori sequenza? q Sliding window in ricezione: Wr q Wr=numero di trame che possono essere accettate dal ricevitore 34
Ws= numero trame che il trasmettitore puo inviare senza ricevere il riscontro per avere piena utilizzazione del collegamento: WsT f T f +Ta+2τ Assumendo Ta=0 -> WsT f T f +2τ=1+2a 35
Ws e Wr: vincolo Ws+Wr N 36
Protocollo go-back-n Main points: q Il ricevitore accetta solo trame in sequenza q Due tipi di riscontro: ACK (i) = riscontro positivo, tutte le trame fino alla i-ma sono state ricevute correttamente NACK (i)= riscontro negativo, la i-ma trama non è stata ricevuta (implica riscontro positivo trame precedenti) 37
3 2 1 0 4 5 6 7 3 4 2 5 1 6 0 7 Wr=1: si accettano solo trame in sequenza Ws=N-1: Se la trama 3 non viene ricevuta, le trame successive 4,5..2 possono essere trasmesse senza ambiguità 38
Selective repeat Main points: q Il ricevitore accetta trame fuori sequenza q Buffer in ricezione q Due tipi di riscontro: ACK (i) = riscontro positivo, tutte le trame fino alla i-ma sono state ricevute correttamente NACK (i)= riscontro negativo, la i-ma trama non è stata ricevuta (non implica riscontro positivo trame precedenti) 39
3 2 1 0 4 5 6 7 Wr=Ws=N/2: Se Ws>Wr il ricevitore puo scartare trame corrette ricevute fuori sequenza perché non rientrano nella propria finestra Se Wr>Ws, Wr non puo mai essere usata pienamente Wr=Ws=4 40
3 2 1 0 4 5 6 7 Wr=Ws=N/2 Wr=Ws=4 41
Ipotesi: Ws=Wr=7 TX trasmette 2,3,4,5,6,7,0 RX riceve correttamente le trame e: q riscontra le trame con un riscontro cumulativo ACK [0] q Ruota in avanti la finestra di ricezione di 7 posizioni e si prepara a ricevere le trame 1,2,3,4,5,6,7 TX non riceve ACK[0] perché si verifica un errore Alla scadenza del time out TX ritrasmette le 2,3,4,5,6,7,0 RX interpreta le trame ricevute come nuove trame e non ripetizione delle precedenti Soluzione: quando la finestra di ricezione ruota in avanti della massima quantità in seguito a ricezione corretta, non deve sovrapporsi con la finestra in 42 Dr. trasmissione Greco Polito Silvana -> Ws+Wr N
Scelta ottimale di Ws e Wr Condizione: Ws+Wr N Soluzione ottimale Ws=Wr=N/2 Se Ws>Wr il ricevitore puo scartare trame corrette ricevute fuori sequenza perché non rientrano nella propria finestra Se Wr>Ws, l apertura della finestra in ricezione non puo mai essere usata pienamente 43
Time out 3 4 2 5 1 6 0 7 Condizione su To: To Ta+2Tp+2τ Ipotesi q To=5Tf, La seconda trama 2 non viene accettata perché non rientra nella finestra di ricezione L ACK[5] conferma la ricezione di tutte le trame fino alla 544
Gli slide sono stati realizzati usando il materiale didattico fornito unitamente al libro Reti di telecomunicazioni di Achille Pattavina 45