Il problema delle prestazioni di un sistema di rete. Sistemi web, architetture, servizi, definizione di metriche prestazionali orientate al tipo di servizio erogato.
Stima del tempo di download di contenuti web.
Code di servizio. Legge dell'utilizzazione (caso con un servente e molti serventi). Legge del flusso forzato. Legge della domanda di servizio. Legge di Little. Legge del tempo di risposta.
Analisi dei bottleneck in una rete
Metriche di prestazione dei sistemi web
Analisi dei ritardi in un servizio web
Efficienza dei sistemi cache e proxy, metriche di valutazione, stima del risparmio di banda dovuto all'uso di proxy server.
Site mirroring, architetture di content delivery.
Architetture web multi-tier
Il problema del monitoraggio del carico
Bilanciamento del carico su un web cluster - politiche deterministiche e probabilistiche. Come il sistema di monitoraggio influenza le prestazioni delle politiche.
Il problema del flash crowd, effetto slashdot, controllo dell'overload tramite admission control.
Caratterizzazione del carico. Modelli naturali (tracce, benchmark). Modelli artificiali (traffico sintetico, modelli analitici). Grafo del comportamento degli utenti (CGMG -Customer Behavior Model Graph).
Scelta dei parametri di caratterizzazione del carico, misurazione, criteri di classificazione, clustering dei dati;
Algoritmi di clustering dei dati: algoritmo delle k-medie; algoritmo minimal spanning tree;
Modelli di sistema: reti di code, soluzione delle equazioni di equilibrio, calcolo dell'utilizzazione, delle probabilità di stato, della popolazione media, del throughput medio, del tempo medio di risposta.
singolo server - coda infinita
singolo server - coda finita
sistemi generali (tassi di arrivo e servizio dipendenti dallo stato)
Analisi di reti di code - Mean Value Analysis
Catene di Markov tempo discreto
Equazioni di Chapman-Kolmogoroff
Catene di Markov a tempo continuo con tempi di residenza uniformi (discretizzazione)
Catene di Marvov a tempo continuo a tempi di residenza non uniformi (uniformizzazione e discretizzazione);
Processi di decisione di Markov (loro applicazione allo studio delle prestazioni di alcuni sistemi di rete wireless) caso tempo discreto e continuo, ottimizzazione del costo medio
formulazione in termini di programmazione lineare
algoritmo value iteration
Esempi di applicazioni: sistemi web a distribuzione geografica, data center, reti cellulari, reti di sensori. Alcuni problemi prestazionali discussi in classe.
Testo di riferimento
Daniel Menascè, Virgilio Almeida, "Capacity planning for web services. Metrics, Models, and Methods.", Prentice Hall.