Modulo 2 - U.D. 5 - L.3 (parte II) Complementi sul controllo d’errore (parte II) Ernesto Damiani - Sistemi di eleborazione dell'informazione
Modulo 2 - U.D. 5 - L.3 (parte II) Efficienza di Idle RQ Lo schema Idle RQ ha un efficienza di utilizzo del link pari a: U idle= Tix / (Tix+2Tp) = 1 / 1+2a Ernesto Damiani - Sistemi di eleborazione dell'informazione
Efficienza di Continuous RQ Modulo 2 - U.D. 5 - L.3 (parte II) Efficienza di Continuous RQ Se supponiamo che non ci siano errori di trasmissione, uno schema Continuous RQ, che ammetta al più 3 frames “in sospeso” (cioè per i quali non ha sia ancora arrivato un ACK), ha efficienza di utilizzo: U idle= 3Tix / (Tix+2Tp) = 3 / 1+2a =3U idle Ernesto Damiani - Sistemi di eleborazione dell'informazione
Continuous RQ con errori di trasmissione Modulo 2 - U.D. 5 - L.3 (parte II) Continuous RQ con errori di trasmissione Se il frame N arriva al ricevente R corrotto, viene scartato. Quando R riceve il pacchetto successivo, N+1, si rende conto che V(S) N+1: manca un pacchetto! Ci sono due possibili strategie: Selective Repeat: R attende che M, alla scadenza del timer, rimandi il pacchetto N (implicit retransmission) oppure chiede esplicitamente a M di rimandare il pacchetto N tramite un frame di controllo NAK (explicit request). Nel frattempo, accumula i frames corretti che arrivano nella receive list (i pacchetti devono essere trasferiti in ordine al livello superiore e quindi bisogna aspettare il pacchetto N). Go-Back-N: R chiede a M di rimandare il frame N e tutti i successivi tramite un pacchetto speciale NAK chiamato reject. Nel frattempo R scarta tutti i pacchetti corretti che riceve. Ernesto Damiani - Sistemi di eleborazione dell'informazione
Modulo 2 - U.D. 5 - L.3 (parte II) Selective Repeat Il ricevente R attende che M, alla scadenza del timer, rimandi il pacchetto N (implicit retransmission) oppure chiede esplicitamente a M di rimandare il pacchetto N inviandogli un frame di controllo NAK (explicit request). Nel frattempo, R accumula i frame corretti che arrivano nella receive list. I pacchetti devono essere trasferiti al livello superiore in ordine: bisogna aspettare il pacchetto N prima di inoltrare al livello superiore eventuali pacchetti contrassegnati da un numero successivo. Ernesto Damiani - Sistemi di eleborazione dell'informazione
Selective Repeat (ritrasmissione implicita) (1) Modulo 2 - U.D. 5 - L.3 (parte II) Selective Repeat (ritrasmissione implicita) (1) frame N+1 corrotto Ernesto Damiani - Sistemi di eleborazione dell'informazione
Ritrasmissione implicita Modulo 2 - U.D. 5 - L.3 (parte II) Ritrasmissione implicita Man mano che riceve ACK, M rimuove dalla retransmission list i pacchetti corrispondenti. La retransmission list è una lista FIFO. La ritrasmissione avviene se: il timer associato ad un pacchetto scade; M riceve un ACK relativo ad un pacchetto che non è nella coda della lista di ritrasmissione. I due criteri non sono poi così diversi. In generale il tempo di timeout è impostato a 2Tp. R invia al suo livello superiore (il sistema operativo)i pacchetti dopo averli riordinati. Ernesto Damiani - Sistemi di eleborazione dell'informazione
Modulo 2 - U.D. 5 - L.3 (parte II) Selective Repeat (ritrasmissione implicita) (2) ACK N corrotto FINE Ernesto Damiani - Sistemi di eleborazione dell'informazione