Esercizio - Throughput di SR-ARQ e stabilità della coda ARQ
Questa pagina non ha ancora la versione ripasso: qui sotto c'è il testo completo.
In questa pagina 5
Testo (scheda "Data link layer", esercizio 1). Un sistema ARQ opera su un canale a velocità fissa di Mbit/s con . Si trasmettono pacchetti di dimensione fissa con payload di bit e intestazione di byte. Calcolare il throughput dell'ARQ SR se il tasso di arrivo è: a. pacchetti/s; b. pacchetti/s. Infine c. discutere, per un generico, la stabilità della coda ARQ per Stop-and-Wait, Go-Back-N, Selective-Repeat.
Teoria usata: Tecniche ARQ e loro prestazioniARQ (Automatic Repeat reQuest) rende affidabile un collegamento che sbaglia: il ricevitore risponde a ogni pacchetto con ACK (corretto) o NACK (errato), e il trasmettitore ritrasmette. Con probabilità di pacchetto errato $p$, $t_{RTT}=t_P+t_A+2\tau_P$ e coda sempre piena, il throughput massimo (frazione di tempo d'aria) è: Stop-and-Wait $S=\frac{t_P(1-p)}{t_{RTT}}$; Go-Back-N con $N=t_{RTT}/t_P$ $S=\frac{1-p}{(N-1)p+1}$; Selective Repeat $S=1-p$. Il ritardo medio è $m_{delay}=t_P+\tau_P+\frac p{1-p}t_{RTT}$ (a coda vuota). Sono solo valori massimi: la coda ARQ è stabile solo se $\lambda$ è minore della velocità di servizio, $\lambda<1/m_y$; altrimenti il throughput è $\min(\lambda,\mu)$. L'efficienza (payload) è $\eta=S,L_D/L$.Tecniche ARQ e loro prestazioni →, Livello di collegamento - LLC, MAC e ipotesi di lavoroIl livello di collegamento vede un canale fisico con errori residui e deve offrire ai livelli superiori un canale affidabile; ha due sottolivelli: LLC (correzione residua, ARQ con ACK/NACK) e MAC (chi trasmette, perché con più trasmettitori il rapporto giusto è la SINR e non l'SNR e la capacità cala). Per analizzarlo si usano ipotesi standard: pacchetti di $L$ bit, probabilità $p$ di pacchetto errato (i.i.d., $p=1-(1-P_{bit})^L\simeq LP_{bit}$), coda sempre piena (heavy traffic), tempo di pacchetto $t_P=L/R_b$, $t_{RTT}=t_P+t_A+2\tau_P$, timeout stringente, ACK/NACK senza errori, ritrasmissioni illimitate ($E[#tx]=1/(1-p)$). Le metriche sono throughput (frazione di tempo d'aria) e ritardo (fino alla ricezione corretta). Una collisione è la sovrapposizione, anche minima, di due pacchetti.Livello di collegamento - LLC, MAC e ipotesi di lavoro →.
1. Dati del pacchetto e probabilità di errore
Payload bit; intestazione bit; lunghezza totale bit. Su un BSC senza memoria il pacchetto è sbagliato se almeno un bit è sbagliato: (: l'approssimazione è praticamente identica.) .
Tempo di pacchetto e velocità massima di trasmissione dei pacchetti:
2. Attenzione: è una trappola
Il throughput dell'ARQ SR è , ma solo se la coda è sempre piena, cioè se la sorgente offre più traffico di quanto il canale smaltisce. Bisogna prima verificare se il sistema è stabile, cioè se con la velocità di servizio.
Per l'SR la velocità di servizio, tenendo conto delle ritrasmissioni (trucco ispirato all'ALOHA: ogni pacchetto è trasmesso in media volte, quindi il tasso totale di pacchetti trasmessi è ), è la velocità totale del canale: il sistema regge se , cioè (il corso confronta con pkt/s, il tasso totale del canale al lordo delle ritrasmissioni; la differenza è irrilevante qui).
3. Caso a. pkt/s
: stabile. Tutto ciò che arriva esce (e le ritrasmissioni sono assorbite), quindi (di cui kbit/s di payload). Non si usa : quella è la frazione di tempo d'aria utile se il canale fosse saturo.
4. Caso b. pkt/s
: instabile. Il traffico offerto è Mbit/s, più del doppio del canale ( Mbit/s): la coda cresce senza limite. Il canale è saturo e il throughput è quello massimo, (frazione di tempo d'aria utile): (di cui Mbit/s di payload).
5. Caso c. Stabilità in generale
In generale il throughput vale : se la coda è stabile e il throughput è , altrimenti è instabile e il throughput è il valore massimo di prima. Per calcolare si usa il tempo di servizio medio per pacchetto, :
- Stop-and-Wait: ogni tentativo occupa un round-trip, con e : , quindi e la condizione è .
- Go-Back-N: con probabilità si spende , con probabilità un e poi si ricomincia: , da cui e .
- Selective Repeat: , cioè .
Questi valori non sono i ritardi: il ritardo è per ogni ritrasmissione più quando il pacchetto è finalmente corretto.
Variante numerica (parametri nostri, non nel testo). Con e ms: ms (). Allora pkt/s, ms pkt/s, pkt/s. Con pkt/s SW è instabile () mentre GBN e SR sono stabili: lo stesso carico dà risultati opposti a seconda del protocollo.