Accesso al mezzo - ALOHA, CSMA e protocolli deterministici
In questa pagina 6
In questa pagina 6
Le basi (modello di collisione, ipotesi di lavoro, metriche throughput e ritardo, dominio di collisione) sono in 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 →; qui si studiano i protocolli del sottolivello MAC: chi parla e quando, in un canale condiviso. La regola di fondo è parlare uno per volta, nella stessa zona di collisione.
Vedi anche Protocolli di accesso multiplo - ALOHA e CSMAQuando più stazioni condividono lo stesso mezzo serve un protocollo di accesso (MAC) che decida chi trasmette. Accesso casuale: ALOHA puro (si trasmette subito, tempo vulnerabile $2t_F$), slotted ALOHA (si parte solo a inizio slot, vulnerabile $t_F$), CSMA (si ascolta prima di parlare, vulnerabile $\tau_p$) con le varianti 1-persistent, non persistent e p-persistent, CSMA/CD (rileva la collisione mentre trasmette: serve $t_F\ge2\tau_p$, quindi un frame minimo) e CSMA/CA del Wi-Fi (IFS, finestra di contesa con backoff esponenziale, ACK, RTS/CTS e NAV). Accesso controllato: prenotazione, polling, token. Canalizzazione: FDMA, TDMA, OFDMA, CDMA, SDMA.Protocolli di accesso multiplo - ALOHA e CSMA →, Prestazioni dei protocolli di accesso - ALOHA, CSMA, TDMA e FDMACon arrivi di Poisson, la probabilità di successo di un frame è la probabilità che nessun altro frame arrivi nel tempo vulnerabile: ALOHA puro $P_S=e^{-2G}$, throughput $S=Ge^{-2G}$ con massimo $1/(2e)\approx0{,}18$ in $G=1/2$; slotted ALOHA $S=Ge^{-G}$ con massimo $1/e\approx0{,}37$ in $G=1$. CSMA non persistente con $a=\tau_p/t_F$: $S=\frac{Ge^{-aG}}{G(1+2a)+e^{-aG}}$, che tende a 1 per $a\to0$ ma crolla per $a$ grande, dove lo slotted ALOHA è migliore. Per TDMA ($M/D/1$) $E[T]=t_F\left(\frac{N_u}2+\frac{SN_u}{2(1-S)}+1+a\right)$ e per FDMA $E[T]=t_F\left(N_u+\frac{SN_u}{2(1-S)}+a\right)$: FDMA è più lento di $t_F(N_u/2-1)$.Prestazioni dei protocolli di accesso - ALOHA, CSMA, TDMA e FDMA → (Internet) e Metodi di accesso al mezzo - FDMA, TDMA, ALOHA e CSMAQuando più nodi condividono un mezzo serve un protocollo di accesso (MAC). Accesso deterministico: FDMA (una banda per utente) e TDMA (uno slot per utente in una trama): nessuna collisione, a ogni utente $\frac{R_b}N$ meno le perdite di sincronismo. Accesso aleatorio: ALOHA puro ($S=Ge^{-2G}$, massimo $\frac1{2e}=0{,}184$ in $G=0{,}5$), slotted ALOHA ($S=Ge^{-G}$, massimo $\frac1e=0{,}368$ in $G=1$), CSMA (si ascolta prima di trasmettere: nel non persistente $S=\frac{Ge^{-aG}}{G(1+2a)+e^{-aG}}$, con $a=\frac{\tau_P}{t_P}$ piccolo si arriva a $\approx0{,}8$-$0{,}9$).Metodi di accesso al mezzo - FDMA, TDMA, ALOHA e CSMA → (Ing. Elettronica).
Tipi di accesso
| Tipo | Idea | Collisioni | Esempi |
|---|---|---|---|
| Deterministico | regole fisse in anticipo (turni) che tutti rispettano: parla solo una persona | nessuna (in linea di principio) | TDMA (divisione di tempo), FDMA (di frequenza), SDMA, CDMA (cellulare) |
| A richiesta (demand-assigned) | le regole cambiano sul momento, in base a ciò che accade (chi ha da dire, ruoli speciali) | nessuna (in linea di principio) | polling primario-secondario (Bluetooth), token (IEEE 802.5), a prenotazione |
| Casuale | nessuna vera contromisura: si prova e, se capita una collisione, si ritrasmette | sì | ALOHA, CSMA, Ethernet (IEEE 802.3), Wi-Fi (IEEE 802.11) |
Anche l'accesso casuale ha regole comuni: si parla di contesa (contention) come decisione di chi accede al canale: è casuale, il vincitore cambia ogni volta.
Collisioni e backoff
Con accesso deterministico o a richiesta non ci sono collisioni e quindi . Con l'accesso casuale sì, e dopo una collisione non si può ritrasmettere subito: la collisione è causata da almeno due nodi che trasmettono insieme; poiché seguono le stesse regole, se ritrasmettessero subito collidrebbero di nuovo. Bisogna aspettare un tempo di backoff casuale: la contesa si può vedere come la scelta del più basso.
Accesso deterministico
Ipotesi. utenti, ognuno con traffico di Poisson di intensità pkt/s (Processi di arrivo e processo di PoissonUn sistema a coda ha clienti che arrivano, un'area di attesa e $m$ servitori. Il processo di arrivo è un processo di punto con tempi di interarrivo $\tau_n=t_n-t_{n-1}$ e tasso $\lambda=\frac1{E[\tau]}$. Nel processo di Poisson omogeneo gli arrivi in intervalli disgiunti sono indipendenti e di Poisson con media $\lambda T$, gli interarrivi sono esponenziali $\lambda e^{-\lambda a}$ e senza memoria; somma di processi di Poisson è Poisson (tassi che si sommano), il diradamento con probabilità $p$ dà Poisson di tasso $p\lambda$; in $[0,h]$ c'è un arrivo con probabilità $\lambda h+o(h)$. Servizio con tasso $\mu=\frac1{E[y]}$; notazione di Kendall $A/B/m/K/N-S$.Processi di arrivo e processo di Poisson →): il traffico totale è ancora di Poisson (somma di Poisson indipendenti) con tasso . Pacchetti tutti lunghi bit, bitrate : . Arrivi Markov e servizio deterministico: si usa la coda M/D/1 (Sistemi a coda M-G-1 e formula di LittleMisure di un sistema a coda: occupazione $x=q+z$, tempi $s=w+y$, traffico offerto $G=\frac\lambda\mu$, fattore di carico $\rho=\frac\lambda{m\mu}$, throughput $\eta$ e throughput normalizzato $S=\frac\eta\mu$. Il sistema senza blocco è stabile se $\rho<1$ e allora $\eta=\lambda$, altrimenti $\eta=m\mu$. La formula di Little $E[x]=\lambda E[s]$ vale sempre (anche per la sola coda, $E[q]=\lambda E[w]$, e per il servizio, $E[z]=\lambda E[y]$). Per arrivi di Poisson e servizio generale (M/G/1) la formula di Pollaczek-Khinchin dà $E[w]=\frac{\lambda E[y^2]}{2(1-\rho)}$: con servizio esponenziale si ritrova l'M/M/1, con servizio costante (M/D/1) l'attesa si dimezza, $E[w]=\frac{\rho}{2\mu(1-\rho)}$.Sistemi a coda M-G-1 e formula di Little →). Il ritardo è (attesa in coda , trasmissione , propagazione).
TDMA ed FDMA
- TDMA (Time Division Multiple Access): ogni utente ha il suo turno, e conviene imporre che il turno sia uno slot : trasmette esattamente un pacchetto (se ne ha uno al suo turno), usando tutta la capacità per secondi, poi tocca a un altro.
- FDMA (Frequency Division Multiple Access): tutti trasmettono contemporaneamente su sottocanali diversi: ognuno ha della capacità, dividendo la banda in sottobande di ugual larghezza. Il bitrate non è più ma e anche il tempo di pacchetto cambia: .
Altre tecniche deterministiche: SDMA (antenne direttive creano sottoregioni, cioè domini di collisione diversi) e CDMA (Code Division, usato nel 3G: in teoria si trasmette nello stesso tempo e alla stessa frequenza, ma in modo ortogonale; analogia: persone che parlano lingue diverse nella stessa stanza). Nel DS-CDMA (Direct Sequence) a ogni utente è assegnato un codice personale (per esempio utente 1: , ; utente 2: , ) e il tempo di bit è diviso in piccole fette, i chip, di durata ; i due messaggi sovrapposti si possono ancora separare (più o meno). In alternativa, nel frequency hopping si usa una banda larga ma solo una frazione per volta, saltando con uno schema pseudo-casuale. Hanno il vantaggio di essere robuste al rumore, ma ISI più seria, problemi di sincronizzazione ecc., e usano una banda più larga (wideband CDMA) anche se in realtà se ne usa solo una frazione.
Prestazioni del TDMA
Si analizza come una coda; la prima cosa da fare è la stabilità: tasso di arrivo tasso di servizio, : Se stabile il throughput normalizzato vale ; se instabile . Valgono le considerazioni sulle code: instabile ritardi illimitati; stabile quel che entra, esce.
Ritardo medio del TDMA. (). Il punto difficile è : non è quello della M/D/1 perché il servizio non è "instancabile" (restless): dal punto di vista dei pacchetti nella coda di un utente, una volta servito un pacchetto il servitore smette e va a servire altre code: durante il servizio si percepisce un tempo , ma in coda si vede avanzare la coda ogni secondi. Si divide (per un pacchetto accodato all'utente ):
- : tempo prima che sia il turno dell'utente , come aspettare un autobus che passa ogni secondi: in media ;
- : da quel momento si è in una coda con servitore attivo e tempo di servizio : si prende il tempo di attesa della M/D/1, , con (traffico dell'utente: arrivi , servizio , quindi ).
Sommando, e osservando :
Prestazioni dell'FDMA
Stabilità: tasso di arrivo tasso di servizio , cioè sempre ; throughput normalizzato (se stabile) . Attenzione: nonostante le somiglianze con il TDMA il significato è diverso: nel TDMA si ha una coda con arrivi e servizio ; nell'FDMA si hanno code separate, ciascuna con arrivi e servizio . Il ritardo è facile: ora ogni utente è una semplice M/D/1 con tempo di servizio : (Il tempo di sistema M/D/1 è .)
TDMA contro FDMA
Riscrivendo : Quindi se , cioè (e un accesso "multiplo" ha ): l'FDMA è peggiore, anche se di poco (un servitore veloce contro tanti lenti). La differenza è .
Esempio. Mbit/s, bit ( ms), utenti con pkt/s: (stabile). TDMA: ms (più ); FDMA: ms: la differenza è ms.
Accesso casuale: l'ALOHA
Tutti gli schemi di questo tipo hanno un antenato comune, il protocollo ALOHA (Abramson, università delle Hawaii, circa 1970): problema, un solo satellite condiviso per comunicare; idea: trasmettere e basta, e se si collide, riprovare (dopo un backoff casuale). Implica: (1) ogni pacchetto riceve un ACK; (2) se non lo riceve si assume una collisione, e si ritrasmette dopo un backoff.
Ipotesi di lavoro.
- Arrivi di Poisson con tasso globale (ha il ruolo di ): lo studio vale solo per (arrivi individuali infinitesimi) e ; si denota con il prodotto, finito. Pacchetti tutti di bit, bitrate , (possibile solo senza collisioni). Il numero di pacchetti che arrivano in è di Poisson: (Distribuzione di PoissonPoi(λ) conta eventi rari: P(X = k) = e^(−λ) λ^k / k! per k = 0, 1, 2, …, con media e varianza entrambe uguali a λ; approssima la binomiale Bin(n, p) quando n è grande e p piccolo, con λ = np.Distribuzione di Poisson →).
- Backoff esponenziale: per trattabilità , , (Distribuzioni uniforme continua ed esponenzialeU(a, b) ha densità costante 1/(b − a) su [a, b], media (a + b)/2 e varianza (b − a)²/12; Exp(λ) ha densità λe^(−λx) per x ≥ 0, FdD 1 − e^(−λx), P(X > t) = e^(−λt), media 1/λ, varianza 1/λ², ed è l'unica legge continua senza memoria (versione continua della geometrica).Distribuzioni uniforme continua ed esponenziale →).
- Si trascura il tempo di attesa in coda : l'analisi vale solo se il tasso di arrivo di ogni singolo nodo è molto basso. Quindi . (Anticipazione: tutti i sistemi derivati da ALOHA funzionano bene solo se poco carichi: un forte accodamento significherebbe troppe collisioni e il sistema non funzionerebbe.)
Il processo totale è di Poisson. Con le ritrasmissioni il processo globale di arrivi al canale ha tasso , superiore a . Lo si assume ancora di Poisson (e lo è, ma solo se è esponenziale e grande). Intuizione: gli arrivi sono già senza memoria (interarrivi esponenziali); le ritrasmissioni accadono dopo un tempo esponenziale, ma c'è memoria, perché sono causate proprio dalla collisione; a meno che non avvengano dopo un tempo così lungo che la memoria è "svanita": alla fine è solo un "pettine di Dirac" più denso (frecce rosse in più nelle slide). Altra intuizione: con utenti in collisione è Poisson (somma di processi di tasso ); i due addendi di non sono indipendenti (requisito della somma), ma l'analisi funziona solo se (backoff medio lungo, memoria "svanita"). Il libro dà una giustificazione alternativa: deve essere indipendente dal processo di arrivo di tasso . In pratica si tratta il processo totale come di Poisson con il suo tasso .
Intervallo di vulnerabilità e probabilità di successo
Si prenda la trasmissione di un utente nell'intervallo . Un altro pacchetto collide con lui se la sua trasmissione si sovrappone, in parte, a : cioè se inizia in (se iniziasse prima di finirebbe prima di ; se iniziasse dopo comincerebbe quando il nostro è finito).
Definizione (intervallo di vulnerabilità). L'intervallo in cui altre trasmissioni causano collisione. Per l'ALOHA ha durata .
Osservazioni: bisogna usare e non (le ritrasmissioni collidono anch'esse); in realtà bisognerebbe contare solo gli arrivi degli altri utenti, tasso perché . Per semplicità si trascura il ritardo di propagazione (qui non cambia nulla; con il carrier sense conterà).
L'evento "collisione" è "almeno un arrivo nell'intervallo di vulnerabilità"; la probabilità di successo è quella di zero arrivi di Poisson (tasso ) in :
Throughput
Riciclando la terminologia dei sistemi a coda (sistema con servitore, ): fattore di carico ; traffico offerto ; throughput normalizzato (se stabile) (tutto ciò che entra esce). Per ALOHA si distingue: Relazione tra e . Di solo la frazione esce al primo tentativo: passa, collide e rientra come ritrasmissione; di questa passa, collide, e così via. A regime, se stabile, ciò che passa è la somma geometrica (ragione ) ✓, mentre il traffico offerto è : , cioè Con ():
Formula (throughput dell'ALOHA puro).
La relazione dà come funzione semplice di , ma l'inversa ( da ) è molto difficile.
Il massimo. , poiché : , e Si usa al massimo il della capacità, e in il canale è libero il del tempo (attenzione al paradosso: trasmettere di più peggiora le cose, perché aumentano le ritrasmissioni, già il del totale, e cala). Nella parte iniziale (): , , : se si tiene basso non si collide mai e ciò che si invia passa.
Grafico interattivo: Throughput S contro traffico offerto G: ALOHA puro ha massimo 1/(2e) ≈ 0,184 in G=1/2, slotted ALOHA 1/e ≈ 0,368 in G=1; oltre il massimo il throughput scende verso zero.
Esempio. : , ; : ; : , (canale sommerso dalle collisioni).
Slotted ALOHA
(Roberts, 1972.) Si immagina un sistema perfettamente sincronizzato con l'asse dei tempi diviso in slot di durata , e si aggiunge la regola che i pacchetti si possono trasmettere solo all'inizio di uno slot (un pacchetto che arriva a metà slot aspetta l'inizio del successivo). Il vantaggio: due trasmissioni si sovrappongono o del tutto o per niente. Un altro pacchetto che arriva durante lo slot dell'utente (cioè in se si prende lo slot ) deve aspettare l'inizio dello slot successivo, mentre quelli arrivati nello slot precedente partono all'istante : sono i soli a coincidere (perfettamente) con la trasmissione dell'utente , perché tutti iniziano agli istanti multipli di . Un pacchetto che arriva a metà slot e parte all'istante non collide, perché il nostro è appena finito. Quindi l'unico intervallo in cui un arrivo provoca collisione è lo slot precedente, di durata : l'intervallo di vulnerabilità si riduce a (la metà di quello di ALOHA). Rifacendo i calcoli con matematica analoga: Con una modifica teorica banale raddoppia, anche se non sempre è facile da implementare (richiede sincronizzazione), ed è comunque lontano dal . Per l'ALOHA il caso è analogo con scalato di (e ).
Esempio. (canale pienamente "offerto"): , : il dei tentativi collide; con lo slotted ALOHA dà il , mentre l'ALOHA puro darebbe .
Come ricavare da (esercizi difficili)
Dato (per slotted ALOHA; per ALOHA puro si scala di ), trovare richiede la soluzione di un'equazione trascendente. Trucchi:
- metodi numerici (provare qualche numero): per si trovano e ;
- sviluppo di Taylor , quindi (Formula di Taylor con resto di PeanoUna funzione derivabile n volte in x0 si scrive, vicino a x0, come un polinomio di grado al più n (il polinomio di Taylor, costruito con le derivate in x0) più un errore o((x-x0)^n); il polinomio è unico. Per x0 = 0 si chiama sviluppo di Mac-Laurin.Formula di Taylor con resto di Peano →): per dà (esatto );
- osservare che il sistema deve lavorare a bassi, dove una buona approssimazione è (che vale anche perché Taylor vale per ; più le condizioni di stabilità che seguono).
Stabilità dell'ALOHA
L'equazione vale solo per un sistema stabile ed è un'approssimazione del primo ordine; vale per ogni approccio tipo ALOHA, con o senza slot. Se si fissa e si risolve in si trovano due soluzioni, (a sinistra e a destra del massimo). Che significa? Corrisponde a chiedersi cosa succede se si parte da queste soluzioni in media, ma si ha una piccola oscillazione:
- (ramo crescente della curva) è un punto stabile: attrattore delle piccole oscillazioni (se cresce un po', cresce, il canale smaltisce di più, torna indietro);
- (ramo decrescente) è instabile: tende a respingerle. In particolare appena è un po' più basso, il punto di lavoro si sposta verso destra ( aumenta, perché si devono ritrasmettere più pacchetti), e sul ramo decrescente cala ancora: in pochissimo tempo raggiunge .
È una instabilità peggiore di quella delle code classiche: là instabile significava throughput ; qui significa throughput zero (solo ritrasmissioni, nessuna uscita). Conclusione: ALOHA è intrinsecamente instabile. Il massimo throughput è solo un limite superiore: non si può lavorare in cima alla collina (ogni oscillazione minima porterebbe a ), né a destra; bisogna stare un po' a sinistra, con un margine dal massimo, e con un'oscillazione abbastanza grande si supera comunque il massimo; perfino partendo da sinistra, aspettando un tempo infinito l'instabilità prima o poi scatta. Ma in pratica si usa (l'instabilità può comparire dopo un tempo lunghissimo), a bassi carichi offerti.
Ritardo dell'ALOHA
Vale per ogni approccio tipo ALOHA (con o senza slot, con piccoli aggiustamenti). Poiché si trascura , , con e (come per l'ARQ: 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 →). Ogni ritrasmissione costa un round-trip (si scopre la collisione dal timeout) più un backoff medio : ALOHA: : Slotted ALOHA: e il tempo di pacchetto si aumenta del , perché si può trasmettere solo all'inizio di uno slot (attesa media prima dell'inizio, come l'attesa dell'autobus del TDMA): Esempio. ms, ms, ms, backoff medio ms, : ALOHA: ms; slotted: ms. A basso carico lo slotted è più veloce anche con lo slot di attesa.
I grafici delle slide mostrano il ritardo normalizzato in funzione del throughput: curve a "naso" (due rami: a dato esistono due valori di , uno stabile e uno instabile, e per il ritardo esplode). Il ramo corretto è quello in basso.
Carrier sense: CSMA
Il carrier sense è "ascoltare" la portante di una trasmissione in corso: un trucco semplice che migliora molto l'ALOHA (su cui si basano Ethernet e Wi-Fi). Analogia: ALOHA è "prova a parlare sperando di non collidere"; meglio ascoltare prima che nessun altro stia parlando. In pratica, prima di trasmettere si verifica la presenza di potenza di portante: se il canale è sentito occupato non si trasmette, per non causare collisioni (ALOHA, per definizione, non lo fa).
Problema risolto? Non del tutto: sentire il canale libero significa soltanto che era libero secondi fa (come vedere la luce di stelle che si sono spente: si vede il passato). L'intervallo di vulnerabilità cambia: ora è . Ascoltare prima di parlare non evita del tutto le collisioni, ma le riduce molto se , vero per distanze terrestri; non lo è per esempio per canali sottomarini o spaziali (dove può essere e il carrier sense non si fa). Si ottiene il CSMA (Carrier Sense Multiple Access): si modificano di conseguenza tutti i passaggi (vulnerabilità, successo, ritardo).
Formula (CSMA non persistente, completamento). Con e traffico offerto (se , per ): (È la formula standard, usata per i grafici delle slide: non è dedotta nel corso. Per il massimo è in ; per , in ; per , : peggio dello slotted ALOHA.)
Grafico interattivo: Throughput di CSMA non persistente per a=τ_P/t_P=0,01 e 0,1 contro slotted ALOHA, con G in scala logaritmica: con a piccolo il CSMA arriva a 0,82 (a=0,01), ma con a=0,1 il massimo cala a 0,52.
Collision detection: CSMA/CD
Poiché non si evitano tutte le collisioni, se ne limitano i danni: le collisioni si scoprono solo quando manca l'ACK, dopo che i pacchetti si sono sovrapposti per intero, sprecando tempo; meglio fermarsi prima. CSMA/CD (Ethernet): si ascolta il canale anche mentre si trasmette e, a una collisione, si invia un segnale speciale di jamming (un segnale ad alta potenza: come urlare "fermi tutti, stiamo collidendo!"). Senza il jamming la collisione verrebbe notata solo molto più tardi.
Collision avoidance: CSMA/CA
CSMA/CD funziona benissimo ma non può funzionare sul wireless: richiede di ascoltare il canale non solo prima ma anche durante la trasmissione, impossibile su un mezzo radio, per natura half duplex. Si usa il CSMA/CA (base del Wi-Fi), meno efficace: si scambiano pacchetti brevi RTS (Request-to-Send) e CTS (Clear-to-Send), poi DATI e ACK (handshake a quattro vie): apparentemente rimanda il problema, delegandolo a pacchetti più piccoli (le collisioni, se capitano, riguardano RTS brevi invece del pacchetto di dati).
Persistenza
Serve un'ultima miglioria per arrivare a efficienza unitaria (): la persistenza. Il carrier sense fa aspettare quando il canale è occupato; e quando si libera? Se due utenti stanno aspettando, rischiano di collidere (entrambi trasmettono appena "libero"). Tre opzioni:
- 1-persistente: si trasmette appena il canale si libera (molto aggressivo, rischia di collidere);
- non persistente: grazie al CSMA si è evitato di collidere; cosa sarebbe successo altrimenti? Un backoff. Quindi: se il canale è occupato si aspetta un intero tempo di backoff (riprova più tardi) senza seguire la fine della trasmissione; può essere troppo conservativo, perché fa aspettare anche quando nessun altro attende;
- -persistente: via di mezzo, con probabilità si trasmette (come 1-persistente) e con probabilità si rimanda (come non persistente).
È un compromesso ingegneristico, e con una scelta per tentativi di si può arrivare a un throughput del .
Errori comuni
- Usare invece di nella probabilità di successo (): le ritrasmissioni collidono come le trasmissioni nuove.
- Dire che ALOHA ha throughput massimo (è lo slotted: ; l'ALOHA puro ) o confondere i punti di massimo ( e ).
- Trascurare la stabilità: oltre il massimo il throughput di ALOHA tende a , non a .
- Usare la M/D/1 per il TDMA senza il termine di attesa del turno.
- Dire che FDMA "è più veloce perché trasmette sempre": ogni utente ha un servitore volte più lento.
Collegamenti
Esercizi: Esercizio - Rete a maglia di 4 nodi half-duplex - accesso deterministico e casuale, Esercizio - Slotted ALOHA e ALOHA con N trasmettitori, e le simulazioni d'esame che usano TDMA/FDMA, come l'Esercizio - Quattro domande brevi su capacità, TDMA e FDMA, entropia e codice lineare (simulazione d'esame 2013). Per la parte di ritrasmissione: 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 →.
Versione ripasso
Quando più nodi condividono il canale serve un protocollo MAC, cioè una regola su chi parla e quando. Le basi (modello di collisione, ipotesi di lavoro, metriche) sono in 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 →.
Tipi di accesso
- Deterministico (TDMA, FDMA, SDMA, CDMA): turni fissati in anticipo, nessuna collisione.
- A richiesta (polling, token, prenotazione): le regole cambiano in base a ciò che accade; nessuna collisione.
- Casuale (ALOHA, CSMA, Ethernet, Wi-Fi): collisioni possibili; dopo una collisione si ritrasmette dopo un backoff casuale , perché due nodi che ritrasmettono subito collidono di nuovo.
Traffico e ritardo
- utenti con arrivi di Poisson di tasso pkt/s ciascuno (Processi di arrivo e processo di PoissonUn sistema a coda ha clienti che arrivano, un'area di attesa e $m$ servitori. Il processo di arrivo è un processo di punto con tempi di interarrivo $\tau_n=t_n-t_{n-1}$ e tasso $\lambda=\frac1{E[\tau]}$. Nel processo di Poisson omogeneo gli arrivi in intervalli disgiunti sono indipendenti e di Poisson con media $\lambda T$, gli interarrivi sono esponenziali $\lambda e^{-\lambda a}$ e senza memoria; somma di processi di Poisson è Poisson (tassi che si sommano), il diradamento con probabilità $p$ dà Poisson di tasso $p\lambda$; in $[0,h]$ c'è un arrivo con probabilità $\lambda h+o(h)$. Servizio con tasso $\mu=\frac1{E[y]}$; notazione di Kendall $A/B/m/K/N-S$.Processi di arrivo e processo di Poisson →); pacchetti di bit, .
- Ritardo: (attesa in coda, trasmissione, propagazione). Con servizio deterministico si usa la coda M/D/1 (Sistemi a coda M-G-1 e formula di LittleMisure di un sistema a coda: occupazione $x=q+z$, tempi $s=w+y$, traffico offerto $G=\frac\lambda\mu$, fattore di carico $\rho=\frac\lambda{m\mu}$, throughput $\eta$ e throughput normalizzato $S=\frac\eta\mu$. Il sistema senza blocco è stabile se $\rho<1$ e allora $\eta=\lambda$, altrimenti $\eta=m\mu$. La formula di Little $E[x]=\lambda E[s]$ vale sempre (anche per la sola coda, $E[q]=\lambda E[w]$, e per il servizio, $E[z]=\lambda E[y]$). Per arrivi di Poisson e servizio generale (M/G/1) la formula di Pollaczek-Khinchin dà $E[w]=\frac{\lambda E[y^2]}{2(1-\rho)}$: con servizio esponenziale si ritrova l'M/M/1, con servizio costante (M/D/1) l'attesa si dimezza, $E[w]=\frac{\rho}{2\mu(1-\rho)}$.Sistemi a coda M-G-1 e formula di Little →).
TDMA e FDMA
- TDMA: slot di durata . Stabile se ; allora .
- Ritardo TDMA (il servitore non è "instancabile": l'attesa del turno è in media):
- FDMA: la banda è divisa in sottocanali; il tempo di pacchetto diventa e ogni utente è una M/D/1 con servizio :
- Confronto: se ; la differenza è . FDMA è peggiore, anche se di poco.
- Esempio della nota: Mbit/s, bit ( ms), , pkt/s: . TDMA: ms; FDMA: ms (più ); differenza ms.
ALOHA puro e slotted ALOHA
Ipotesi di lavoro: arrivi di Poisson con tasso totale ; le ritrasmissioni aggiungono traffico, quindi il tasso complessivo è , trattato come Poisson. Backoff esponenziale , (Distribuzioni uniforme continua ed esponenzialeU(a, b) ha densità costante 1/(b − a) su [a, b], media (a + b)/2 e varianza (b − a)²/12; Exp(λ) ha densità λe^(−λx) per x ≥ 0, FdD 1 − e^(−λx), P(X > t) = e^(−λt), media 1/λ, varianza 1/λ², ed è l'unica legge continua senza memoria (versione continua della geometrica).Distribuzioni uniforme continua ed esponenziale →). L'attesa in coda si trascura: vale solo a basso carico per nodo.
- Intervallo di vulnerabilità: altre trasmissioni collidono con un pacchetto di durata se iniziano in . Per ALOHA puro dura . Nello slotted ALOHA i pacchetti partono solo a multipli di : collide solo lo slot precedente, quindi l'intervallo è (la metà).
- Probabilità di successo = zero arrivi di Poisson nell'intervallo (Distribuzione di PoissonPoi(λ) conta eventi rari: P(X = k) = e^(−λ) λ^k / k! per k = 0, 1, 2, …, con media e varianza entrambe uguali a λ; approssima la binomiale Bin(n, p) quando n è grande e p piccolo, con λ = np.Distribuzione di Poisson →):
- Traffico offerto e throughput (se stabile). Relazione: , quindi .
- Throughput:
- Massimi: ALOHA per ; slotted per . Il massimo raddoppia con lo slot, ma è lontano dal .
- Esempi della nota: ALOHA con : , ; con : ; con : , . Slotted con : , (il dei tentativi collide).
- Ricavare da (equazione trascendente): per slotted dà oppure . Approssimando si ottiene (Formula di Taylor con resto di PeanoUna funzione derivabile n volte in x0 si scrive, vicino a x0, come un polinomio di grado al più n (il polinomio di Taylor, costruito con le derivate in x0) più un errore o((x-x0)^n); il polinomio è unico. Per x0 = 0 si chiama sviluppo di Mac-Laurin.Formula di Taylor con resto di Peano →), quindi (valore esatto ).
- Stabilità: per un fissato le soluzioni sono . (ramo crescente) è stabile; (ramo decrescente) è instabile: una piccola variazione fa salire , e scende fino a . ALOHA è intrinsecamente instabile: si lavora a bassi, lontano dal massimo.
- Ritardo: con e un round-trip per ritrasmissione: Nello slotted il tempo di pacchetto si aumenta del (attesa media prima dell'inizio dello slot), cioè . ( è il tempo del riscontro, ACK.)
- Esempio della nota: ms, ms, ms, ms, . ALOHA: ms. Slotted: ms.
Procedura per un esercizio ALOHA: (1) e , con le ritrasmissioni incluse; (2) dall'intervallo di vulnerabilità; (3) ; (4) ritardo con .
Carrier sense: CSMA
- Il carrier sense ascolta la portante prima di trasmettere. Un canale libero lo era solo secondi fa: l'intervallo di vulnerabilità diventa . Funziona se (terrestre), non su canali sottomarini o spaziali con .
- CSMA non persistente con e traffico offerto (formula standard dei grafici delle slide, non dedotta nel corso): Se si ha , che tende a per . Per il massimo è in ; per è in ; per è , peggio dello slotted ALOHA.
- CSMA/CD (Ethernet): si ascolta anche durante la trasmissione; alla collisione si invia un segnale di jamming che avvisa subito tutti i nodi.
- CSMA/CA (Wi-Fi): su wireless (half duplex) non si può ascoltare mentre si trasmette. Si usa l'handshake RTS, CTS, DATI, ACK: le collisioni riguardano i pacchetti RTS, più brevi.
- Persistenza quando il canale si libera:
- 1-persistente: trasmette subito (aggressivo, rischia collisioni);
- non persistente: se occupato aspetta un intero backoff, senza seguire la fine della trasmissione (può essere troppo conservativo);
- -persistente: con probabilità trasmette come 1-persistente, con probabilità rimanda come non persistente. Con una scelta opportuna di il throughput può arrivare al .
Collegamenti
Errori tipici:
- usare invece di nella probabilità di successo: le ritrasmissioni collidono come le trasmissioni nuove;
- confondere i massimi di ALOHA ( in ) e dello slotted ( in );
- dire che ALOHA lavora bene in cima al massimo: oltre il massimo il throughput tende a , non a ;
- usare la M/D/1 per il TDMA senza il termine di attesa del turno;
- dire che l'FDMA è più veloce perché "trasmette sempre": ogni utente ha un servitore volte più lento.
Esercizi su questo argomento
- Esercizio - Collegamento radio FDMA con 32 utenti (simulazione d'esame 2012)
- Esercizio - Quattro domande brevi su capacità, TDMA e FDMA, entropia e codice lineare (simulazione d'esame 2013)
- Esercizio - Rete a maglia di 4 nodi half-duplex - accesso deterministico e casuale
- Esercizio - Slotted ALOHA e ALOHA con N trasmettitori