Salta al contenuto
Note per Studenti Sistemi a coda - processo di Poisson, M/M/1 e formula di Little

Sistemi a coda - processo di Poisson, MᐟMᐟ1 e formula di Little

In questa pagina 7

Perché servono

In una rete i pacchetti arrivano in modo irregolare a un nodo (un router, il buffermemoria in cui i pacchetti attendono di essere serviti di un trasmettitore) che li serve a ritmo finito, quello del collegamento in uscita (Sistemi di telecomunicazioni e modello ISO-OSIUn servizio di telecomunicazioni porta informazione da una sorgente a una destinazione lontana attraverso trasmettitore, canale e ricevitore. Le comunicazioni si classificano per destinatari (unicast, broadcast, multicast) e per direzione (simplex, half-duplex, full-duplex); le reti hanno una topologia (stella, mesh, albero, anello, bus) e usano commutazione di circuito o di pacchetto. Le funzioni di rete sono divise in strati: nel modello ISO-OSI sono 7 e questo corso studia quasi solo lo strato fisico.Sistemi di telecomunicazioni e modello ISO-OSI →, 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 →). Quando ne arrivano più di quanti se ne servono, si accodano: la coda introduce un ritardo e, se il buffer è finito, perdite. La teoria delle code lega ritardo e perdite al traffico offerto e alla capacità.

Processo di arrivo e tempo di servizio

Intensità di trafficorapporto ρ=λμ\rho=\frac\lambda\mu tra ritmo di arrivo e di servizio: frazione di tempo in cui il servitore è occupato ρ=λμ\rho=\frac\lambda\mu (adimensionale): frazione di tempo in cui il servitore è occupato. Se ρ≥1\rho\ge1 la coda cresce senza limite.

La coda M/M/1

Notazione di Kendallsigla A/B/c: tipo di arrivi, tipo di servizio, numero di servitori: M/M/1 = arrivi markoviani (Poisson) / servizio markoviano (esponenziale) / 11 servitore, buffer infinito, disciplina FIFOfirst in first out: si serve per primo chi è arrivato per primo. Per ρ<1\rho<1 la distribuzione stazionariaprobabilità del numero di clienti quando il sistema ha raggiunto il regime del numero NN di clienti nel sistema (in coda più in servizio) si trova imponendo l'equilibrio tra "salite" e "discese" (λPn=μPn+1\lambda P_n=\mu P_{n+1}): P[N=n]=(1−ρ)ρn,n=0,1,2,…  (geometrica).P[N=n]=(1-\rho)\rho^n,\qquad n=0,1,2,\dots\ \ (\text{geometrica}). Da questa:

Grandezza Formula
servitore libero P[N=0]=1−ρP[N=0]=1-\rho
almeno nn clienti P[N≥n]=ρnP[N\ge n]=\rho^n
numero medio nel sistema Nˉ=ρ1−ρ\bar N=\dfrac\rho{1-\rho}
numero medio in coda Nˉq=ρ21−ρ\bar N_q=\dfrac{\rho^2}{1-\rho}
tempo medio nel sistema (attesa più servizio) Wˉ=1μ−λ=1/μ1−ρ\bar W=\dfrac1{\mu-\lambda}=\dfrac{1/\mu}{1-\rho}
attesa media in coda Wˉq=ρμ−λ\bar W_q=\dfrac\rho{\mu-\lambda}
distribuzione del tempo nel sistema esponenziale, P[W>t]=e−(μ−λ)tP[W>t]=e^{-(\mu-\lambda)t}

Il tempo medio Wˉ=1/μ1−ρ\bar W=\frac{1/\mu}{1-\rho} esplode per ρ→1\rho\to1: con ρ=0,5\rho=0{,}5 il ritardo è il doppio del tempo di servizio, con ρ=0,9\rho=0{,}9 è dieci volte, con ρ=0,99\rho=0{,}99 cento volte. Per questo le reti non vengono caricate oltre 6060-80%80\%.

Formula di Little

Per qualunque sistema stazionario, con λ\lambda il tasso medio di arrivo (e di uscita), Nˉ\bar Nnumero medio di clienti nel sistema il numero medio di clienti nel sistema e Wˉ\bar Wtempo medio di permanenza nel sistema, attesa più servizio il tempo medio di permanenza: Nˉ=λ Wˉ.\boxed{\bar N=\lambda\,\bar W.} (Vale anche per la sola coda: Nˉq=λWˉq\bar N_q=\lambda\bar W_q.) Verifica per M/M/1: λ⋅1μ−λ=λ/μ1−λ/μ=ρ1−ρ\lambda\cdot\frac1{\mu-\lambda}=\frac{\lambda/\mu}{1-\lambda/\mu}=\frac\rho{1-\rho} ✓.

Esempio numerico (simulato)

Un server riceve file con intervalli esponenziali di media 1010 ms (λ=100\lambda=100 file/s) e lunghezze esponenziali di media 4040 kbit, e li invia su un collegamento a R=5R=5 Mbit/s. Allora μ=Rℓˉ=5⋅10640⋅103=125\mu=\frac R{\bar\ell}=\frac{5\cdot10^6}{40\cdot10^3}=125 file/s e ρ=0,8\rho=0{,}8. La coda M/M/1 dà:

  • Nˉ=0,80,2=4\bar N=\frac{0{,}8}{0{,}2}=4 file nel sistema, Nˉq=3,2\bar N_q=3{,}2 in coda;
  • Wˉ=1125−100=40\bar W=\frac1{125-100}=40 ms, di cui Wˉq=32\bar W_q=32 ms in attesa e 88 ms di servizio; Little: Nˉ=100⋅0,04=4\bar N=100\cdot0{,}04=4 ✓;
  • P[N≥5]=0,85=0,328P[N\ge5]=0{,}8^5=0{,}328; P[W>100 ms]=e−25⋅0,1=0,082P[W>100\ \text{ms}]=e^{-25\cdot0{,}1}=0{,}082.

Una simulazione (2⋅1062\cdot10^6 file, ricorsione di Lindley Wn+1=max⁡(0,Wn+Sn−An+1)W_{n+1}=\max(0,W_n+S_n-A_{n+1})) dà Wˉq=32,3\bar W_q=32{,}3 ms, Wˉ=40,3\bar W=40{,}3 ms, P[W>100 ms]=0,083P[W>100\ \text{ms}]=0{,}083: coerente. (Il bit-rate medio di arrivo è ℓˉ1/λ=40 kbit10 ms=4\frac{\bar\ell}{1/\lambda}=\frac{40\ \text{kbit}}{10\ \text{ms}}=4 Mbit/s, e il collegamento da 55 Mbit/s è caricato all'80%80\%: Esercizio 28 · codifica a correzione d'errore e ARQ selective repeat per un server (tema d'esame luglio 2021).)

Buffer finito: M/M/1/K

Se il sistema può contenere al più KK clienti (compreso quello in servizio), gli arrivi che trovano il sistema pieno sono persi. La distribuzione è Pn=(1−ρ)ρn1−ρK+1P_n=\frac{(1-\rho)\rho^n}{1-\rho^{K+1}}, n=0,…,Kn=0,\dots,K, e la probabilità di perditaprobabilità che un arrivo trovi il buffer pieno e venga scartato è quella di trovare il sistema pieno (PASTAPoisson arrivals see time averages: un arrivo di Poisson trova il sistema nello stato con la probabilità media di quello stato: gli arrivi di Poisson vedono lo stato medio): Pperdita=PK=(1−ρ)ρK1−ρK+1.P_{perdita}=P_K=\frac{(1-\rho)\rho^K}{1-\rho^{K+1}}. Esempio: ρ=0,8\rho=0{,}8, K=5K=5: P5=0,2⋅0,851−0,86=0,0888P_5=\frac{0{,}2\cdot0{,}8^5}{1-0{,}8^6}=0{,}0888 (simulazione: 0,08940{,}0894). Raddoppiare il buffer (K=10K=10) la porta a 0,03450{,}0345 (0,2⋅0,8101−0,811\frac{0{,}2\cdot0{,}8^{10}}{1-0{,}8^{11}}): aumentare il buffer riduce le perdite ma allunga il ritardo.

Errori comuni

  • Usare Wˉ=ρ1−ρ⋅1μ\bar W=\frac{\rho}{1-\rho}\cdot\frac1\mu per il tempo nel sistema: è l'attesa in coda Wˉq\bar W_q; il tempo nel sistema è 1/μ1−ρ\frac{1/\mu}{1-\rho} (include il servizio).
  • Dimenticare di calcolare μ=Rℓˉ\mu=\frac R{\bar\ell} con RR in bit/s e ℓˉ\bar\ell in bit.
  • Applicare le formule con ρ≥1\rho\ge1: non esiste regime stazionario.
  • Confondere λ\lambda (arrivi al secondo) con l'intervallo medio 1λ\frac1\lambda.

Versione ripasso

Esercizi su questo argomento

Teoria collegata