wiki:Diario/SoujaK

Version 84 (modified by soujak, 16 years ago) (diff)

--

Diario di SoujaK

Giugno 2007

4 Giugno

(2.00h)
Strumenti di lavoro su XT3: creazione del gruppo e dell'alias 'tirocinio07', inizializzazione dell'ambiente Trac e del repository Subversion.

5 Giugno

(1.00h)
Strumenti di lavoro su XT3: messa a punto dell'autenticazione sul server web.

11 Giugno

(0.40h)
Sincronizzazione del diario della settimana scorsa, inizializzazione della pagina wiki della Milestone di rilevamento del carico.

1400-1740
00: l'articolo propone l'identificazione di una bandwidth potenziale ottenibile da un determinato AP a partire dalle condizioni di carico che un client è in grado di rilevare in esso. Lo studio prende in considerazione uno scenario privo di disturbi ambientali, senza coordinamento centralizzato. Assumendo che i frame beacon non abbiano priorità sugli altri, è possibile stimare il tempo medio di attesa di trasmissione osservando il ritardo dei frame beacon (si ricordi la presenza del "Beacon Interval" e del "Target Beacon Transmission Time"). Inoltre fornisce spunti perché una stazione possa inferire una probabilità di perdita di trasmissioni, sfruttando i numeri di sequenza ("Sequence number") dei frame che cattura e il "Retry Bit". La veridicità delle conclusioni dipende dalla veridicità delle assunzioni poste e dalla generalità dell'hardware utilizzato per le sperimentazioni effettuate.

1800-1820
1900-1920
01: La selezione ottimale dell'Access Point è strettamente legata a politiche di allocazione del traffico in grado di gestire in maniera ottimizzata le risorse disponibili. Il problema viene affrontato da un punto di vista piuttosto teorico, oltre che distante dai nostri scopi, rendendolo quasi per nulla interessante.

1920-2000
0910-0930
02: L'articolo propone parametri concreti per la valutazione della bontà degli AP, che prevede essere calcolati direttamente dal loro firmware(testato con IPW 2915) e periodicamente comunicati alle STA tramite i frame beacon. Nonostante la forte dipendenza da modifiche ai firmware presumo che i calcoli dei parametri, di davvero grande rilevanza, effettuati dagli AP possano essere eseguiti anche lato client.

12 Giugno

1000-1020 (0.33h)
Sincronizzazione del diario.

1030-1100 (0.50h)
Punto della situazione assieme a gnappo.

1120-1155 (0.58h)
03: In appendice è presente un'interessante calcolo dell'impatto degli errori di trasmissione sulle prestazioni, calcolando diligentemente i dettagli relativi ai backoff incrementali.

1210-1310 (1.00h)
04: Lo studio effettua una stima dell'effettiva bandwitdth disponibile, in base al tempo che intercorre fra la richiesta di invio del frame e la notifica di avvenuta trasmissione. In questo calcolo vengono a sommarsi i tempi di attesa per l'accesso al mezzo (rilevazione di mezzo disponibile e successiva contesa), la procedura RTS/CTS, l'effettiva trasmissione dei dati e del'ACK, IFS relativi. Questa bandwidth e` fortemente influenzata dalla dimensione dei frame e viene quindi normalizzata rispetto ad un frame di riferimento per avere una misura da essa indipendente. Lo studio proseguirebbe su politiche di ammissione di una STA in un BSS, formalizzando il concetto di proporzione del tempo del canale (CTP, Channel Time Proportion) di un determinato flusso dati, ottenibile dal rapporto fra la bandwitdth direttamente richiesta dal flusso e la bandwitdth disponibile appena citata. I concetti appena descritti appaiono come spunti piuttosto rilevanti ai nostri fini.

1450-1617 (0.45h)
Ricerche ulteriori.

1650-1720 (0.33h)
05: L'articolo propone una algoritmo di controllo della associazione (lato client) che si configura come erede degli algoritmi precedentemente proposti da altri studi.

13 Giugno

0900-0910 (0.16h)
Approfondimento di 04.

1000-1025 (0.41h)
Sincronizzazione del diario.

1025-1140 (1.25h)
05: Lo studio ha come fine l'ottimizzazione delle risorse, intese in senso globale e propone un algoritmo per la gestione delle associazioni basato sul rilevamento del carico degli AP. Il concetto di carico totale di un AP viene definito come la somma dei carichi di ogni singolo client, i.e. il tempo che un AP impiega a fornire ad ognuno degli utenti una unità di traffico. Questa definizione, in realtà scopiazzata da 06, viene successivamente arriccchita, definendola piuttosto come sommatoria degli inversi dei tassi di trasmissione di ogni client associato ad un determinato AP. In pratica si calcola il tempo necessario affinché ognuna delle stazioni associate con l'AP in questione trasmettano una unità di dati, supponendo che esse abbiano sempre dati in attesa di invio. Così facendo si definisce il concetto di tasso di trasmissione ottenibile (attainable data rate), parametro fondamentale per l'algoritmo di associazione che viene proposto.

1220-1330
Amministrazione su argon.

1500-1520 (0.33h)
Punto della situazione con gnappo.

1520-1605 (0.75h)
05: L'algoritmo per il controllo dell'associazione che viene proposto tiene conto della presenza di congestioni, dal momento che il massimo tasso trasmissivo ottenibile non può che essere influenzato da questa eventualità. Propone inoltre che il client effettui rilevazioni sui carichi degli AP disponibili non solo nei momenti di necessità (non ancora associato), ma anche a intervalli regolari (già associato) per individuare alternative sempre migliori. Questo tipo di approccio risulta quantomai interessante nella prospettiva di avere a disposizione, come nel nostro caso, una molteplicità di dispositivi 802.11 su ogni singola STA.

1605-1715 (1.16h))
06: Lo studio si propone quantomeno come la fondazione teorica di una politica di allocazione delle risorse equa min-max (min-max fairness) e bilanciata che intende essere la più vicina all'ottimo (perché il problema sarebbe NP-hard). Per equità max-min si intende una situazione nella quale non vi è modo per fornire bandwidth addizionale ad un client senza doverne togliere almeno altrettanta a qualche altro. Lo studio formalizza in maniera rigorosa il concetto di carico di un AP.

14 Giugno

1110-1235 (1.41h)
06: La definizione di equità max-min è stata approfondita in tutta la sua complessità che la definizione formale esprime, facendo emergere spunti utili non alla milestone attuale ma a possibili politiche di bilanciamento del carico, eventualmente rilevanti per la scelta dell'AP a cui associarsi.

1300-1330 (0.50h)
06: La definizione di carico che l'articolo propone è allineata al resto dalla letteratura informatica. Informalmente il carico dell'AP a indotto da una STA s è l'inverso del bitrate effettivo che s rileva, normalizzato rispetto allo specifico peso della STA. Il carico di a è poi il massimo fra le due sommatorie di tutti i carichi indotti da tutte le associazioni effettive (che, cioé, producono un bitrate non nullo), la prima sui bitrate dei collegamenti AP-STA, la seconda sui bitrate del collegamento AP-ReteEsterna.

1330-1347 (0.28h)
Aggiornamenti su Trac: scritta la descrizione della milestone e gli appunti sul lavoro della mattinata.

1420-1511 (0.88h)
06: Lo studio spende energie non indifferenti (considera infatti anche situazioni che tengano presente il carico su un insieme di AP) per dimostrare con rigore teoremi e proprietà che sono indispensabili alla dimostrazione dello stretto legame che intercorre fra una scelta di associazioni bilanciate min-max e una scelta di allocazione della bandwidth che sia equa max-min. Quest'ultimo teorema, oltre che essere sprovvisto di una dimostrazione completa, è non soddisfatto nel caso di associazioni singole.
L'articolo prosegue per strade che mi sono parse allontanarsi sempre più dai nostri interessi, ma tengo a sottolineare i risultati che gli autori hanno ottenuto durante una simulazione di confronto fra le più note politiche di gestione dell'associazione. Lo schema proposto non solo supera di un 20% il throughput del metodo SSF (Strongest Signal First), intuitivamente lontano dall'ottimo, ma arriva al triplo di quello di LLF (Least Loaded First)! Terrei quindi presente la possibiltà di riprendere in mano il documento per comprendere meglio l'algoritmo di bilanciamento (che, spaventato dalla complessità, non ho analizzato) o per mettere in dubbio l'attendibilità dei risultati delle simulazioni.

1511-1519 (0.13h)
Sincronizzazione del diario.

1519-1600 (0.68h)
Ricerca e cernita di altri documenti: si aggiungono alla lista 07, 08, 09.

1620-1800 (1.67h)
07: L'articolo riprende i concetti formali di 06 per elaborare una strategia ottimale per gestire le associazioni fra stazioni e i punti di accesso, astraendo completamente dalle possibili implementazioni e dai relativi problemi (reperimento delle informazioni, localizzazione del gestore ...).
08: L'articolo propone un algoritmo dinamico di bilanciamento di carico che si fonda, a differenza di tutti gli altri studi finora analizzati, proprio sul valore di RSSI. Il problema viene definito informalmente come l'individuazione di uno schema di associazioni tali che l'RSSI medio sia massimizzato e le variazioni nel RSSI medio di ogni AP e nel numero di STA associate ad ogni AP siano minimizzate. Dal momento che si propongono cambiamenti al comportamento degli AP, questo studio resta interessante per la sua originalità nei parametri considerati nella gestione delle associazioni.
Una riflessione che mi sorge spontanea è sul legame che intercorre fra l'RSSI di una STA presso un AP e la banda effettivamente resa disponibile al medesimo AP. Credo che solo sviscerando questa relazione ci sarà possibile individuare dei parametri di valutazione che siano un buon compromesso fra effittività e non-invasività.
09: Lo studio propone una strategia di bilanciamento del carico implementata a livello di AP, tramite frequenti comunicazioni fra di essi attraverso una dorsale Ethernet che si suppone li colleghi. Al di là della specificità delle ipotesi, ciò che colgo come interessante è il fatto che anche qui si sia scelto come metrica del carico degli AP il throughput (invece del numero di utenti, G. Bianchi, I. Tinnirello, "Kalman Filter Estimation of the Number of Cometing Terminals in an IEEE 802.11 Network", o della quantità di traffico, G. Bianchi, I. Tinnirello, "Improving Load Balancing mechanisms in Wireless Packet Networks").

16 giugno

1250-1411 (1.35h)
Revisione, formalizzazione e stesura dei pensieri di ieri. Prescindendo dalle modalità con le quali questo parametro venga valutato nella effettiva scelta di associazione (sto pensando a politiche di bilanciamento del carico in maniera equa), il carico del BSS rimane l'oggetto della milestone di cui mi occupo. La definizione che più mi è parsa corretta e indicativa è quella contenuta in 05 e 06: il carico è inversamente proporzionale al datarate. Purtroppo però questa informazione non è direttamente disponibile a meno che non si prendano in considerazione BSS che aderiscano a 802.11e (peraltro non ancora analizzato né da me, né da gnappo) o a meno che non si effettuino dei test effettivi di comunicazione, rinunciando molto probabilmente alla scalabilità che si intravede fra gli obiettivi della soluzione ricercata. Ciò detto risulta evidente la necessità di andare a ricercare elementi che siano calcolabili da ogni STA grazie ad azioni di sniffing sui vari canali per poi andare a calcolare una stima del datarate (e quindi del carico). L'adeguatezza di questi fattori e dei calcoli che conducono alla stima può essere verificata per via sperimentale con uno sforzo che rimane considerevole.

Riporto quindi di seguito un elenco di tutte quelle pratiche che risultano essere interessanti.

  • Misurazione del tempo di accodamento dei beacon da parte dell'AP (00).
  • Calcolo dell' error rate delle trasmissioni su un determinato canale (00).
  • Misurazione del throughput medio della STA associate all'AP che si sta analizzando.
  • Bit-rate nominale delle STA associate all'AP che si sta analizzando.
  • Misurazione del datarate effettivo tramite invii diretti (ed invasivi).
  • Reperimento di informazioni dai campi aggiuntivi di 802.11e.

1411-1512 (1.01h)
Punto della situazione con gnappo: aggiornamenti, chiarimenti e sviluppi futuri.

1700-1800 (1.00h)
Ricerca di ulteriore documentazione e suddivisione dei nuovi documenti.

19 Giugno

1230-1300 (0.50h)
Individuazione e sistemazione errori nei permessi del portale Trac.

1300-1336 (0.60h)
Punto della situazione e inizio lettura di 10.

2010-2030 (0.33h)
Sincronizzazione del diario.

20 Giugno

10: Si propone un modello matematico semplice ma accurato (e per questo così utilizzato) che permette di calcolare il throghput in una rete 802.11 saturata (nella quale, cioé le code di invio di ogni STA siano sempre non vuote). Partendo da un modello probabilistico che rappresenta la gestione dei periodi di backoff si procede per via analitica andando a ricavare il throughput massimo. Dato l'alto grado difficoltà del documento non mi è chiaro se il fine del documento risiede nel modello stesso o se esso sia strumento per calcoli realmente utili. A patto che le informazioni di partenza siano ricavabili o stimabili dall'ascolto sul canale, mi azzardo a dire che questo modello non sia così distante dai nostri obiettivi. Una serie di simulazioni sperimentali confermano validità del modello proposto e mettono in luce come le prestazioni dipendano in misura tutt'altro che marginale dalle impostazioni della rete, in particolare dall'ampiezza iniziale della finestra di contesa (CWmin).

In aggiunta a questo non mi sono ben definite nemmeno le informazioni iniziali da cui il throughput sia ricavabile.

Lettura di 11 e 12: appunti cartacei.

21 Giugno

0905-0925
11: L'articolo propone 2 nuove metriche per la valutazione del carico a fini di bilanciamento di generiche reti wireless a pacchetti che siano gestite da coordinatori centrali quali bluetooth, UMTS o l'amato IEEE 802.11 (nella sua variante con PCF). La prima, chiamata Gross Load intende calcolare il numero medio di trasmissioni in una cella in un dato periodi di tempo; la seconda, chiamata Packet Loss stima invece le performance a partire dal carico di ogni pacchetto, ricavato dalle probabilità di perdite di trasmissioni.
12: Lo studio mira ad esprimere il numero n di stazioni concorrenti presenti in una rete 802.11 in regime DCF come funzione della probabilità di collisione. Il fine è quello di riuscire a stimare n per poter adeguare intelligentemente il parametro RTS-Treshold per massimizzare le prestazioni.

1002-1337
Punto della situazione e analisi sviluppi futuri assieme a gnappo: stesura di una lista delle informazioni elementari che potranno essere alla base delle metriche di valutazione legate al carico degli AP.

1500-1640
Meeting dell'intera squadra: condivisione delle conoscenze fra i due gruppi di lavoro e revitalizzazione degli obiettivi legati alla milestone:"Roaming".

1720-1735
Condivisione conoscenze con gnappo riguardo lo studio di Bianchi (10).

1929-2002
Rilettura di 02 con l'individuazione di alcune sezioni interessanti.

22 Giugno

1021-1055
02: Come precedentemente accennato il documento propone una serie di metriche per la valutazione della qualità degli AP: anzitutto, nonostante si palesi ancora una volta l'insufficienza del solo RSSI, il parametro rientra fra i parametri considerati a causa della sua grande rilevanza. In secundispropone una metrica che trovo significativa: il ritardo di trasmissione aggregaato, cioé il tempo medio che intercorre fra l'accodamento di un pacchetto e la ricezione della conferma di trasmissione a livello MAC (si suppone che sia il driver a ricevere periodicamente questa informazione direttamente dal firmware). In questo modo questa misura del ritardo tiene in considerazione non solo il tasso trasmissivo nominale utilizzato per la trasmissione, ma anche i ritardi dovuti a collisioni ed errori.

1140-1248
Sincronizzazione degli ultimi tre giorni di diario.

1250-1320
Installazione locale di KDissert.

25 Giugno

1023-1350
Punto della situazione con gnappo: confronto, chiarimento e decisione della prima sostanziosa parte della soluzione.

1501-1610
Lavoro con gnappo: formalizzazione della soluzione della mattinata (e della precedente settimana) e in generale delle idee che la riguardano.

1610-1813
Ancora con gnappo: sviluppi futuri riguardo la presenza della STA all'interno dello scenario finora considerato.

1955-2020
Rilettura dei documenti {06, 07, 09} alla luce della distinzione fra gli obiettivi di individuazione del throughput ottenibile e di bilanciamento del carico. Nell'eventualità di una milestone dedicata a politiche di bilanciamento, mi pare che tutte le considerazioni finora fatte per definire una stima della bandwidth ottenibile siano riutilizzabili, dal momento che passano per una stima del carico dei BSS.

26 Giugno

1005-1035
Rilettura del diario di gnappo e della seconda mezza dozzina dei miei documenti alla ricerca di nuovi spunti. Sorge una domanda ancora non presa in considerazione: quanto sono le conclusioni sinora tratte dipendenti dalla presenza del solo DCF?
Viaggi mentali su una modalità lasca per innescare il cambio di BSS (secondo i parametri di valutazione in oggetto del presente studio) al fine di scongiurare un eterno e continuo handoff.

1114-1126
Aggiornamento e sincronizzazione del diario.

1126-1400 1600-1654
Con gnappo:

  • caricamento della mappa mentale che sta guidando le nostre attività;
  • ulteriori chiarimenti riguardo le modalità di considerazione della presenza della STA associanda;
  • abbozzo di metrica per la aggregazione del carico teorico ed effettivo all'interno della stima;
  • formalizzazione delle questioni aperte e del sottoinsieme da proporre a Ghini;
  • aggiornamento della mappa mentale;
  • stesura del diario della giornata.

27 Giugno

1320-1510
Con gnappo: affinamento del modello teorico approfondendo le cause di calo prestazionale in termini di throughput rispetto ai valori nominali (ritrasmissioni e attese di backoff), individuandone successivamente fonti per la loro stima.

1820-2000
Incontro con il professor Ghini: chiarimento di alcuni dettagli riguardo lo scenario d'opera.

28 Giugno

1120-1240
Meeting squadra: condivisione delle conoscenze (in particolar modo riguardanti la milestone:"Rilevamento del carico"), consigli e suggerimenti utili al proseguimento della milestone:Roaming, chiarimenti riguardo gli sviluppi futuri dell'intero tirocinio e i relativi tempi.

1740-1811
Con gnappo: chiarimenti riguardo le prossime raffinazioni del modello teorico.

1958-2020
Appunti nella mappa mentale sulle ultime parole scambiate con gnappo, per timore di dimenticare.

29 Giugno

1430-1500
Rilettura di (e riflessioni su) alcuni documenti, in particolare 06, 07, 09.

1620-1835
Aggiornamento del diario.
Con gnappo: analisi del nodo ancora da sciogliere (determinazione accurata del throughput teorico delle STA già associate). Lettura accurata delle parti ancora poco chiare di gnp02, qualche questione rimane insoluta. Conseguente individuazione dei nuovi obiettivi a breve termine (#1, #2, #3). Breve indagine riguardo il significato di RSSI e SNR (#2).
Apertura dei ticket e aggiornamento del diario.

30 Giugno

1316-1340
Rapida occhiata alla tesi di Benatti e Borsari (Ghn00).

Luglio 2007

2 Luglio

1830-1940
Ghn00: la sezione riguardante le politiche di valutazione della qualità dei BSS mette in luce un approccio quantomai approssimativo e pragmatico al calcolo del punteggio di qualità, apparentemente senza alcuna base teorica. Un primo particolare interessante, seppur marginalmente, è che gli autori, consci della grande portabilità a cui mira il progetto MEW (Ghn01), tengono in considerazione la possibilità di utilizzare dispositivi sprovvisti della modalità monitor, adottando in quel caso una politica differente.
Una altra questione sollevata dagli autori che vale la pena menzionare è l'instabilità di uno dei parametri da loro utlizzati, RXQ. Si tratta dell'indice più importante utilizzato per le valutazioni eseguite con il supporto del monitor mode ed è il rapporto fra il numero dei frame catturati e il numero dei frame transitati sul canale (frame catturati + frame persi). Questo valore, la cui accuratezza ci si aspetterebbe essere direttamente proporzionale rispetto al tempo di ascolto sul canale, risulta invece essere parecchio instabile per cause che mi sono ancora ignote. Dal momento che un simile calcolo dei frame transitati è alla base del calcolo del throughput effettivo che intendiamo effetuare, mi occuperò quanto prima di ricercare le motivazioni di questa anomalia.

2144-2208
Lettura della prima parte dell'articolo su MEW (Ghn01).

3 Luglio

1130-1216
Formalizzazione e digitalizzazione degli appunti cartacei presi negli ultimi giorni (con rilettura di alcuni passaggi chiave di Ghn00).

1216-1220
Aggiunta di due macro in fondo alla presente.

1220-1255
Aggiornamento riguardo i ticket in consegna:
#3: Gli wireless tools offrono tre informazioni legate alla qualità della connessione: qualità, livello del segnale, livello del rumore. Dalla differenza degli ultimi due è possibile ricavare il famoso SNR (Signal to Noise Ratio), mentre il primo esprime due valori (graficamente separati da una barra nel caso si interroghi iwlist): l'RSSI e il rumore di fondo (noise floor).
#2: Mentre il significato di RSN mi appare piuttosto chiaro, RSSI rimane piuttosto fumoso. Quest'ultimo viene inoltre segnalato dal driver del dispositivo con valori in scale diverse a seconda del produttore (così riporta wikipedia:RSSI ma anche Ghn00).

4 Luglio

1530-1600
con gnappo: punto della situazione intorno alla calcolabilità del bitrate della stazione associanda in maniera portabile e quantomeno accurata.

1630-1635
Aggiornamento del diario.

1700-1720
Con gnappo: altri chiarimenti per migliorare la padronanza degli obiettivi da raggiungere.

1720-1900
Riflessioni ad alto livello
Anzitutto credo che la stima della bandwidth ottenibile che intendiamo effettuare non possa limitarsi al livello MAC proprio di 802.11 come si era esplicitato giorni fa. Il motivo è duplice: da un lato condurrebbe ad errori poiché nei calcoli che prospettiamo di fare si sta tenendo conto di fattori propri del protocollo, da un altro questo non sembra condurre molto lontano dal datarate nominale del collegamento. Questa considerazione conduce alla serie di fattori (in buona parte già affrontati assieme a gnappo in maniera meno organica) che intervengono nel generare il carico addizionale implicabile al protocollo. Creazione di una nuova mappa mentale contenente una parziale formalizzazione di tutti gli overhead dovuti allo strato MAC, sperabilemente utile alle successive indagini.

1853-1900
Aggiornamento del diario.

5 Luglio

1300-1715
Gnappo

6 Luglio

1150-1400, 1630-1830
Gnappo

7 Luglio

1048-1345
Gnappo

9 Luglio

1130-1430, 1620-1830
Gnappo

2000-2015
Approfondimenti e riflessioni.

10 Luglio

1025-1035
Approfondimenti e riflessioni.

1120-1400
Gnappo

1735-1845
Gnappo

11 Luglio

1745-1900
Gnappo Revisione documentazione sul supporto al roaming (Roma e Zeratul)

12 Luglio

1130-1300
Incontro con l'intero team.

1430-1640
Gnappo

13 Luglio

????-1645
Gnappo

14 Luglio

1058-1120
Gnappo

16 Luglio

1258-???? Con gnappo

17 Luglio

1235-1605
Con gnappo

1645-1732
Con gnappo: impostazione del documento e del pacchetto algorithmico

1732-1900
Con gnappo.

19 Luglio

1120-1400 1440-????
Con gnappo: affrettata conclusione dei lavori in vista della pausa estiva.

24 Luglio

1322-1542
Approfondimenti e chiarimenti sparsi nella mappa mentale, nell'ottica di produrre un html decente da inviare al Prof. Ghini.
Invio dell'ultima versione della mappa al deposito SVN.
Aggiornamento (finalmente!) del diario.

Ottobre 2007

5 Ottobre

1715-1945
Incontro con il Prof. Ghini: punto della situazione e sviluppi futuri prima della conclusione.

9 Ottobre

1445-1710
Videoconferenza con gnappo (video e audio su SIP, desktop su VNC). Ripresa dei lavori: riletture della documentazione prodotta in precedenza, riflessioni, considerazioni sul livello di compiutezza del lavoro, accordi sugli incontri successivi.

1710-1740
Formattazione in LaTeX di un paio di formule.
Aggiornamento deposito SVN.
Aggiornamento Diario.

10 Ottobre

1500-1740
Incontro con gnappo.
Considerazioni sulle questioni ancora aperte e sull'eventuale lavoro da svolgere prima della stesura della relazione: si investirà ancora un'oretta per definire meglio il modello matematico. Domande sulla simmetria fra datarate in trasmissione e ricezione. Aggiornamento del diario.

1740-1745
Aggiornamento del deposito subversion.

11 Ottobre

1130-1330 1345-1430
Lavoro con gnappo.
Ulteriori chiarimenti sul concetto di carico:

  • rilevanza non solo per il calcolo del throughput ottenibile, ma anche (in qualche modo) per calcolare la latenza del canale, intesa come ritardo introdotto dalla presenza delle varie STA; filosofie sul significato di bandwidth, di troughput e di latenza
  • formalizzazione precisa e definitiva del carico (pesato) della stazione s: l_{s}={\frac{w_{s}}{r_{s}}
  • analisi della possibilità di inserimento nel modello matematico di un coefficente di attività (da moltiplicare al carico pesato), in grado di descrivere il grado di partecipazione di ogni stazione (rimembranze di conclusioni fatte a Luglio).

1500-1530
Trascrizione di qualche appunto nel diario e successivo aggiornamento.

1530-1550
Aggiornamento del deposito subversion: [7] e [8].

1625-1850
Con gnappo.
Analisi del modello matematico chiarendo il concetto di peso del carico: è la quantità di dati inviati in media da una determinata STA in un giro. Proprio il concetto di "giro", inteso come tempo medio nel quale tutte le STA che hanno voglia di trasmettere ne hanno occasione, è difficilmente calcolabile. Aumentare in questa maniera la complessità del modello rischia, in generale, di allontanarlo dagli obiettivi di stabilità ed affidabilità nel definire un comportamento "di massima" della rete che si sta analizzando. Si è sottolineato anche la versatilità del modello, in grado, grazie all'eventuale presenza di parametri configurabili, di descrivere situazioni diverse dalla realtà: definire casi limite o prevedere l'andamento di certe variabili in gioco.

12 Ottobre

1240-1347 1415-1530 1640-1710 1740-2010
Con gnappo.
Lavori per la stesura documento di tirocinio: definiti i contenuti del primo terzo del documento.
Aggiornamento parziale del deposito subversion [9].

15 Ottobre

1050-1315 Con gnappo.
Lavori per la stesura documento di tirocinio: iniziata la sezione relativa al modello matematico.

1320-1330
Aggiornamento del deposito subversion [10] e del diario.

1550-1737
Con gnappo.
Lavori per la stesura documento di tirocinio: quasi conclusa la sezione relativa al modello matematico.

1748-1800
Aggiornamento del deposito subversion [11] e aggiornamento del diario.

16 Ottobre

1108-1305
Lavoro con gnappo per la stesura della relazione:

  • paragrafi sui valori ricavabili dal modello matematico;
  • qualche refactoring nel modello matematico.

1340-1346
Aggiornamento del diario (solo locale).

1545-1700
Lavoro con gnappo per la stesura della relazione:

  • reperimento sorgente LaTeX smarrito;
  • paragrafi sui valori ricavabili dal modello matematico;
  • chiarimenti concettuali qua e là.

2125-2315
Lavoro con gnappo per la stesura della relazione:

  • conclusa la sezione sul modello matematico;
  • iniziata la sezione sul simulatore (necessita di qualche riorganizzazione dei contenuti).

2320-2325
Aggiornamento del deposito subversion [12] e del diario.

17 Ottobre

1125-1340
Lavoro con gnappo per la stesura della relazione:

  • migliorata e completata l'introduzione al modello matematico;
  • parziale organizzazione dei contenuti sulla simulazione.

1445-1755
Lavoro con gnappo per la stesura della relazione:

  • chiarimenti sui problemi legati alla simulazione;
  • rilevazione della mancanza di un'importante assunzione sulla tipologia di rete considerata: single-hop;
  • ulteriori (quando finiranno?) considerazioni sul concetto di carico: l'AP non ne genera direttamente e le trasmissioni AP->STA producono carico per la STA; conseguentemente:
    • il modello matematico aggiungerà al carico della stazione il carico derivante dalle ricezioni (sotto assunzioni di saturazioni pari ad 1/numero stazioni);
    • la simulazione inserirò anche il traffico in download (AP->STA). Si terrà presente che l'AP ha gli stessi diritti delle altre STA nell'aggiudicarsi gli accessi e che ogni STA ha diritto ad almeno 1/n degli accessi in download (riapplicazione del concetto di giro, usando una coda delle trasmissione gia' effettuate dall'AP).
  • aggiornamento del diario.

1844-1930
Formattazione documento LaTeX: algoritmo per la ripartizione degli accessi.

18 Ottobre

0810-0835
Formattazione documento LaTeX: algoritmo per la ripartizione degli accessi.

0925-1200
Lavoro con gnappo:

  • aggiornamento del deposito svn [13];
  • ricerca del Prof. Ghini, spedizione email, accordi per appuntamento.
  • individuazione delle prossime attività;
  • chiacchiere sulla conclusione del tirocinio e altro

1400-1451
Formattazione documento LaTeX: algoritmo per la ripartizione degli accessi.

1500-1615
Incontro assieme a gnappo col Prof. Ghini sulla possibilità di conclusione abbreviata dei lavori: esito negativo;

1635-1905
Lavoro con gnappo:

  • aumento della motivazione di gnappo (3 minuti);
  • programmazione e valutazione carichi delle prossime attività;
  • adeguamento della definizione di carico per il modello matematico.

19 Ottobre

0955-1340
Lavoro con gnappo:

  • rilevazione della necessità di meglio definire il concetto di latenza: analisi del problema;
  • discussioni sulla gestione del progetto;
  • revisione del concetto di latenza definendo adeguatamente la "downlink latency" e la "uplink latency";

1600-1838
Lavoro con gnappo:

  • ridefinizione della latenza;
  • revisione della formalizzazione del carico;
  • scelta di un formalismo adeguato per la presentazione del modello matematico.

1929-2005
Iniziata la digitalizzazione degli appunti cartacei presi il 19 Ottobre, direttamente formattati con LaTeX.

21 Ottobre

1655-1743
Completata la digitalizzazione degli appunti cartacei presi il 19 Ottobre, direttamente formattati con LaTeX. Aggiunta una prova d'uso dell'ambiente theorem.
Aggiornamento del diario e del deposito subversion [14].

22 Ottobre

1000-1145 1230-1345
Lavoro con gnappo:

  • pianificazione attività della giornata;
  • inizio della stesura della sezione dedicata alla simulazione;
  • aggiornamento locale del diario.

1545-1832
Lavoro con gnappo sulla sezione dedicata alla simulazione:

  • aggiunta di necessari fondamenti teorici;
  • introduzione all'algoritmo (non conclusa).

Aggiornamento locale del diario.

23 Ottobre

0955-1005
Aggiornamento del diario e del deposito subversion [15].

1005-1400
Lavoro con gnappo sulla sezione dedicata alla simulazione:

  • riorganizzazione dei contenuti necessari all'esposizione dell'algoritmo;
  • partizione concettuale dell'algoritmo;
  • revisione e formattazione LaTeX della prima fase dell'algoritmo (una disputa ha allungato i tempi);

1515-1700
Lavoro con gnappo sulla sezione dedicata alla simulazione:

  • revisione e formattazione LaTeX della seconda fase dell'algoritmo;
  • revisione della terza fase dell'algoritmo.

1710-1825
Aggiornamento locale del diario;
Lavoro sulla sezione dedicata alla simulazione per la formattazione della terza fase dell'algoritmo.

1925-2008
Lavoro sulla sezione dedicata alla simulazione per la formattazione della terza fase dell'algoritmo.

24 Ottobre

0950-1100 1150-1250 1430-1846
Lavoro con gnappo sulla sezione dedicata alla simulazione: rilettura, correzione, formalizzazione e formattazione dell'algoritmo.

25 Ottobre

1012-1025
Aggiornamento del diario e del deposito subversion [16].

1030-1810
Lavoro con gnappo sulla sezione dedicata alla simulazione:

  • rilettura e correzione definitive dell'algoritmo;
  • ulteriori ed definizioni e interessanti conclusioni teoriche relative al modello di rete necessario al simulatore;
  • aggiornamento locale del diario.

26 Ottobre

0940-0950
Aggiornamento del diario e del deposito subversion [17].

1030-1240
Discussioni sulla gestione dei lavori futuri con gnappo, accenni alla futura organizzazione.

27 Ottobre

1100-1322
Con gnappo:

  • punto della situazione sull'avanzamento dei lavori;
  • discussione e scelta delle metodologie di lavoro: inizio parallelismo;
  • discussione e scelta e degli strumenti d'ausilio: uso di soli sorgenti TeX, meglio gestibili dai software di versionamento;
  • definizione prossime attività da svolgere;
  • decisione monte ore settimanale: circa 15.

1500-1737
Aggiunta documento ToDo al deposito subversion [18].

Preconfigurazione di un profilo di unison per la sincronizzazione diretta SoujaK <-> gnappo.

Esportazione della relazione da KDissert a LaTeX:

  • riformattazione di alcune sezioni;
  • riformattazione dei segmenti con simboli matematici;
  • inserimento tag TODO per le cose da fare;
  • commentata la sezione "Questioni aperte", che non sarà inclusa nella relazione;
  • inserimento algoritmo del simulatore.

1740-1800
Con gnappo: condivisione reciproca sugli sviluppi dei lavori.

Aggiornamento del diario e del deposito subversion [19].

1850-2000
Revisione della sezione dedicata al modello teorico:

  • rilettura e riorganizzazione
  • copia formule appartenenti al vecchio documento;
  • formattazione introducendo definizioni.

30 Ottobre

1415-1515
Con gnappo:

  • punto della situazione;
  • chiacchiere con Bononi;
  • schedulazione attività.

1610-1655
Aggiornamento deposito subversion [20].

Riorganizzazione dei contenuti della porzione di relazione dedicata alla modellazione teorica:

  • anticipazione della sezione "Ascolto";
  • rinomina di "Modello di rete" in "Assunzioni";
  • rinomina di "Modello matematico" in "Modello teorico";

1655-1800
Con gnappo: discussioni sulle modalità di riorganizzazione dei contenuti della porzione di relazione dedicata alla modellazione teorica, in particolare sulla possibilità di inserimento di un coefficiente d'attività delle stazioni.

1825-1830
Aggiornamento del deposito subversion [21] e del diario.

31 Ottobre

1600-1740
Incontro con il professor Ghini:

  • aggiornamento sullo stato dei lavori;
  • obiettivi futuri in ambito tesi di laurea.

1821-1854
Con gnappo:

  • aggiornamento locale del diario;
  • discussioni sull'organicità e chiarezza sia attuali che future.

Novembre 2007

2 Novembre

1043-1445
Lavoro con gnappo:

  • individuazione delle relazioni che intercorrono tra i concetti principali presenti nello studio;
  • riflessioni sul carico: chiarimenti sulla sua relazione con il concetto di epoca e caratterizzazione del carico di una stazione
  • considerazioni sulla natura del coefficiente di attività: dipende sia dalla necessità trasmissiva della stazione, sia dalla presenza delle altre stazioni.
  • tentativi di soluzione al problema della determinazione del carico di un BSS senza l'utilizzo di tecniche round-robin.

1640-1900
Lavoro con gnappo per la stesura cartacea di un grafo di dipendenze dei concetti, utile per l'organizzazione dei contenuti.

Aggiornamento del deposito subversion [22] [23].

5 Novembre

1515-1815
Lavoro con gnappo per la stesura di una nuova scaletta a partire dalle dipendenze chiarite il 2 Novembre.

Aggiornamento del deposito subversion [24].

6 Novembre

1030-1345
Lavoro con gnappo per approfondire la scaletta.

1345-1400
Aggiornamento del diario e della scaletta nel deposito subversion.

6 Novembre

1030-1345
Lavoro con gnappo per approfondire la scaletta.

1345-1400
Aggiornamento del diario e della scaletta nel deposito subversion [25].

1525-1750
Lavoro con gnappo per concludere l'approfondimento della scaletta.

1815-1903
Aggiornamento della scaletta nel deposito subversion [26].

Creazione nuovo documento LaTeX (source:CaricoBSS/sorgenti/PoliticheSelezioneAP.tex) pronto per ospitare i nuovi contenuti. Aggiornamento della lista di cose da fare, del diario e del deposito subversion [27].

8 Novembre

1046-1415

  • Pianificazione dei lavori della giornata con gnappo.
  • Migrazione contenuti nel nuovo documento.
  • Chiarimenti con gnappo sull'algoritmo e relative ottimizzazioni.

1521-1810

  • Discussioni chiarificatorie sulla distribuzione delle trasmissioni AP -> STA.
  • Aggiornamento del deposito subversion [28].

1910-1934
Migrazione contenuti nel nuovo documento (33%).

13 Novembre

1110-1126
Aggiornamento locale del diario.

1126-1338
Con gnappo ancora sulla distribuzione deglle trasmissioni AP -> STA: sperimentazioni e conclusioni.

1530-1710

  • Due chiacchiere con gnappo sulle modalità di realizzazione dell'algoritmo di inserimento della stazione associanda.
  • Migrazione contenuti nel nuovo documento (90%): restano definizioni, teoremi e formule appartenenti al modello.

1710-1725
Pianificazione con gnappo delle attivita` del 14 Novembre.

1815-1945

  • Aggiornamento locale del diario e del ToDo?;
  • migrazione contenuti nel nuovo documento (100%) e inizio stesura sezione "Modello";
  • aggiornamento deposito subversion [29];
  • aggiornamento del diario.

14 Novembre

1000-1040 1103-1443

  • Stesura sezione "Modello" (57%);
  • qualche chiacchiera con gnappo;
  • aggiornamento del diario e del deposito subversion [30].

1612-1720

  • Stesura sezione "Modello" (71%);
  • aggiornamento del diario e del deposito subversion [31].

16 Novembre

0810-0839 0920-1320 1400-1800
Qualche chiacchiera con gnappo sull'algoritmo di inserimento della stazione associanda. Lavoro per la stesura della sezione "Modello" (87%):

  • chiarimento sull'equità dell'AP;
  • precisazioni nella ripartizione delle assunzioni all'interno del documento;
  • completamento delle definizioni di saturazione;
  • precisazioni e miglioramento della qualità della definizione di epoca;
  • definiti e formalizzati tre teoremi;
  • abbozzate due dimostrazioni dei tre teoremi.

1800-1809
Aggiornamento del deposito subversion [32] e del diario.

1846-1900
Lavoro per la stesura della sezione "Modello" (90%): abbozzata la prima parte della dimostrazione del primo (e più rognoso) dei tre teoremi.

17 Novembre

1302-1308
Aggiornamento del diario e del deposito subversion [33].

19 Novembre

0845-0910
Lavoro per la stesura della sezione "Modello" (92%): abbozzata la seconda parte della dimostrazione del primo (e più rognoso) dei tre teoremi.

0934-0939
Aggiornamento del diario e del deposito subversion [34].

1030-1843
Stesura modello: interrogativi sulla nuova e più generale definizione di epoca e relative chiacchiere con gnappo.
Definita bozza di un nuovo teorema (diverrà il primo) in grado di collegare la tesi di equità del mezzo alla definizione di epoca.

1929-2005
Scritta la bozza di dimostrazione del primo teorema.

21 Novembre

1020-1053
Aggiornamento locale del diario.
Lavoro per la stesura della sezione "Modello" (93%): miglioramento dell'enunciato del primo teorema.

1210-1217
Aggiornamento del diario e del deposito subversion [35].

26 Novembre

1545-1820--
Lavoro con gnappo:

  • formalizzata discorsivamente una nuova tesi di equità di accesso al mezzo;
  • iniziata la formalizzazione rigorosa.

1844-1909
Lavoro per la stesura rigorosa della tesi di equità di accesso al mezzo.

28 Novembre

1716-1821
[36]

Gennaio 2008

4 Gennaio

1800-1930
Lavori sul ticket #6: [41]

6 Gennaio

1600-1930
Lavori sul ticket #6: [42]

7 Gennaio

1140-1300
Videoconferenza con Gnappo.

1525-1825
Ideazione algoritmo di analisi del flusso per l'individuazione delle epoche. Progettazione struttura dati per la memorizzazione delle informazioni sulle epoche di un flusso.

8 Gennaio

1350-1445
Considerazioni su un possibile algoritmo di inserimento della stazione associanda in grado di sfruttare la struttura dati creata dall'algoritmo di analisi.

1550-1800
Con gnappo:

  • Condivisione di conoscenze riguardo all'algoritmo di inserimento della stazione associanda.
  • Considerazioni sulla possibilità di ripescare trasmissioni successive al tempo d'analisi e precedenti al tempo di simulazione. Il ripescaggio appare come una necessità, in linea con la tesi di equità, ma solo assumendo indipendenza fra le trasmissioni. L'eventualità degli errori compiuti nel riarrangiamento temporale fa pensare alla possibilità di limitare il ripescaggio (non anticipare una trasmissione prima dell'ultima trasmissione a lei diretta). La complessità di gestione della struttura dati durante i ripescaggi è ancora tutta da analizzare.

9 Gennaio

1415-1440
Aggiornamento del diario.

1500-1620
Esposizione non rigorosa dell'algoritmo di individuazione delle epoche di un flusso.

1650-1810
Revisione teorema di saturazione della stazione e del flusso. Ampliamento della tesi di equità del flusso (rinominabile).

1845-1927 1944-
Videoconferenza con gnappo:

  • Condivisione progressi dei lavori di SoujaK della giornata.
  • Considerazioni sulla modellazione delle trasmissioni AP -> STA.

10 Gennaio

Aggiornamento del modello teorico, al fine di renderlo capace di descrivere anche le assunzioni riguardanti le politiche di ripartizione delle trasmissioni dell'AP.


Aprile, Maggio e Giugno 2008

Obiettivi

Il punto di partenza per la revisione degli studi finora condotti è uno sguardo più ampio con il quale analizzare il flusso trasmissivo. Le assunzioni di equità nel locale, benché non abbiano manifestato la loro fallacia nell'analisi semplificata in condizioni di saturazione, sono da dimenticare assieme al concetto di epoca sul quale si fondavano. L'imperativo è guardare al globale: le variazioni locali di cui si vorrà tener conto saranno colte con osservazioni che tengono in maggior conto i periodi più recenti.

L'analisi reale si proponeva però di fornire una valutazione del carico ed una conseguente stima delle prestazioni ottenibili dalla stazione associanda che tengano conto di una ampia serie di dettagli. Si faceva riferimento alle diversità fra stazioni nel datarate, nella lunghezza dei frame o nel throughput.

Modello teorico

Durata dell'accesso [d=w/r]

Si consideri, fra le caratteristiche delle stazioni la frequenza d'accesso [a], espressa in 1/s. DCF assicura a stazioni con pari desideri trasmissivi una tendenza all'equità nel numero di accessi. Calcolando la frequenza d'accesso per un insieme di stazioni con pari desideri trasmissivi si otterranno valori che tendono ad avvicinarsi. Il parametro [a] può quindi essere utilizzato come chiave per la ripartizione degli accessi durante una simulazione di presenza della stazione associanda.

Tasso d'accesso [a] (hz)

Il grado di partecipazione di una stazione è il numero puro equivalente al prodotto fra la durata dell'accesso e il tasso d'accesso, ed e` indicato con p. Vale, ovviamente che 0<=p<=1. La somma dei gradi di partecipazione delle stazioni è uguale al vecchio "tasso d'occupazione del mezzo trasmissivo".

Grado di partecipazione [p=d*a] (n)

Inserimento della stazione associanda

Un punto fermo di questa sezione della modellazione è che la stazione associanda, che si assume essere caratterizzata come satura, riempirà ogni silenzio rilevato sul canale portando il tasso d'occupazione del mezzo trasmissivo ad 1.

Nell'effettiva formalizzazione dell'idea di equità e nel come essa si concretizzi nel ripartire le possibilità trasmissive alle varie stazioni nella simulazione di presenza della stazione associanda le cose si fanno più complesse.

Una semplice modalità di procedere è quella di tenere invariate le proporzioni fra i tassi d'accesso delle varie stazioni. Così facendo il modello non terrebbe conto dell'effettiva diversa ripartizione dell'impatto dell'entrata della stazione associanda.

Anzitutto alla stazione associanda sarà garantito un tasso d'accesso maggiore o uguale ai tassi d'accesso delle stazioni associate.

Qualora i silenzi siano lunghi a sufficienza i tassi d'accesso delle stazioni associate non vengono diminuiti dal simulato ingresso della stazione associanda. Per verificare questa condizione basta dividere il tasso di partecipazione nullo (ovvero il tasso di non-occupazione del mezzo, 1-"tasso d'occupazione del mezzo) per la durata dell'accesso della stazione associanda. Così facendo si ricaverà il tasso d'accesso (a'_x) della stazione associanda. Se esso è maggiore o uguale di ognuno dei tassi d'accesso delle stazione associate, esse non verranno penalizzate dall'entrata dalla stazione associanda.

Algoritmo per la ripartizione degli accessi

Versione semplificata

Ipotizzando che la durata degli accessi sia d, costante fra le stazioni, si propone il seguente algoritmo.

 1	i=|S| // contatore delle stazioni da computare
 2	a_x = 0
 3	a = 1/d // accessi al secondo ancora effettuabili
 4	while (i>0)
 5		s = indice della stazione tale che a_s e` minimo
 6		if (a_s > a/i)
 7			a'_s = a_s
 8		else
 9			a'_s = a/i
 10		a -= a'_s
 11		i--
 12	a_x+=a // ad x tutti gli accessi restanti

Il costo dell'algoritmo è O(n^2) se si ricerca il minimo con una scansione semplice della lista.

Versione completa

Considerare la possibilità che gli accessi possano avere durata variabile da stazione a stazione significa appesantire la computazione di adeguate normalizzazioni rispetto ai d_s delle varie stazioni s.

 1	i=|S| // contatore delle stazioni da computare
 2	a_x = 0
 3	d = somma(d_s per ogni s)/i // durata di un accesso medio fra le sta
 4	a = 1/d // accessi al secondo ancora effettuabili
 5	while (i>0)
 6		s = indice della stazione tale che a_s è minimo
 7		if (a_s > a/i)
 8			a'_s = a_s
 9		else
 10			a'_s = a/i
 11		d=(d*i-d_s)/i-1 // aggiornamento della durata dell'accesso medio
 12		a = 1/d
 13		i--
 14	a'_x+=a // ad x tutti gli accessi restanti

Il costo dell'algoritmo resta O(n^2) nel caso di ricerca il minimo con semplice scansione della lista non ordinata.

Il concetto di frequenza di diritto è ben utilizzato dalla versione semplificata, ma la versione completa non e in grado di normalizzarlo rispetto alla variabilita nella durata degli accessi.

Nel caso in cui d sia costante fra le stazioni (quando i loro accessi hanno durata uguale fra loro) è facile calcolare la frequenza d'accesso di diritto come una suddivisione in parti uguali fra le stazioni della frequenza massima possibile. Quando i d variano per calcolare la frequenza di diritto e` necessario ...

Luglio 2008

13 Luglio

Il concetto di equità precedentemente perseguito resta fondamento della prosecuzione degli studi: esso si esprime in una tendenza alla parità nel tasso d'accesso di stazioni con identiche esigenze trasmissive. Il più grande errore commesso era appunto il tentativo di imporre equità locale, quando essa è tutt'altro che presente. Nel simulare la presenza della stazione associanda il tasso d'accesso diventa coerentemente il metro con cui misurare i diritti delle stazioni associate. Gli algoritmi elaborati a questo fine a metà di Maggio non erano però in grado di simulare una ripartizione degli accessi in grado di non ignorare le diversità delle stazioni nella durata degli accessi (cfr v1 e v2).

L'idea di fondo non è nuova: si tratta di una rivisitazione di un algoritmo ripartitore che comincia ad assegnare accessi dalle stazioni meno esigenti, passando via via alle più "golose". Questa volta non si ripartiscono accessi di una misteriosa epoca, ma si concedono tassi d'accesso via via più altri, fino alla saturazione del tempo del canale.

14 Luglio

Algoritmo di ripartizione degli accessi - v4

1   a'_s <= 0				     // inizializzazione per ogni s in S
2   finché (S nequal \empty)	     // insieme delle STA insoddifatte non vuoto
3     d <= \sum^S d_s				// durata trasmissione di ognuna
4     a_{MAX} <= 1/d				  // concessione massima attuale
5     s_{cur} <= s \in S | min(a_{MAX} - a'_s)	       // STA meno insoddisfatta
6     a_{cur} <= min (a_MAX, a_{s_{cur}} - a'_{s_{cur}})  // concessione attuale
7     perogni (s \in S)
8       a'_{s} += a_{cur}			    // soddisfacimento per tutti
9     S <= S/s_{cur}				     // eliminazione STA di tara

15 Luglio

Nell'algoritmo v4 l'aggiornamento della concessione massima del periodo in analisi in ogni giro avviene implicitamente, mediante la rimozione (r7) della stazione meno soddisfatta sulla quale si è tarata la concessione del periodo (r6). Questo aggiornamento è errato e va modificato, eventualmente considerando il numero di stazioni o normalizzando rispetto alla durata degli accessi delle stazioni servite.

16 Luglio

Riprogettato da capo l'algoritmo, tentando di sistemare il problema di aggiornamento del numero di accessi ancora disponibili.

Algoritmo di ripartizione degli accessi - v5

1   a_M <= 1/(\sum^S_i d_i)	     // tasso d'accesso inizialmente disponibile
2   s <= i \in S : min(a_i-a'_s)		       // STA meno insoddisfatta
3   SE (a_M > a_s - a'_s)			          // s e` soddisfacibile
4     a'_S += a_s - a'_s	     // assegno ad ogni STA cio` che mancava a s
5     d <= (1 - \sum^S_i d_i * (a_s - a'_s) )			// <------------
6     SE (d>0)				// tassi d'accesso ancora incrementabili
7       a_M <= 1/d		    // aggiornamento tasso d'accesso disponibile
8       GOTO 2								// cicla
9   ALTRIMENTI                 				// s e` insoddisfacibile
10    a'_S += a_M	    // assegno ad ogi STA il tasso d'accesso disponibile

21 Luglio

Digitalizzazione della versione 5 dell'algoritmo.

La forma spaghettosa con l'uso del GOTO è frutto di una riprogettazione da zero ancora non raffinata. È stato chiarito nel flusso di esecuzione il diverso comportamento a seconda della condizione in riga 3 cambiando, in questo modo, la condizione di chiusura del flusso (r9). Se la stazione meno soddisfatta non è soddisfacibile non lo è nessun'altra e la ripartizione non puo` che concludersi immediatamente concedendo ad ogni stazione il medesimo tasso d'accesso. La riga 5 è da rivedere.

Al termine dell'esecuzione dell'algoritmo di ripartizione degli accessi devono verificarsi alcune condizioni che possono essere utilizzate come parziale prova di correttezza.

 1. \sum^S_i p'_i = 1		(p'_i = a'_i * d_i)

Il tasso di occupazione del mezzo, dato dalla somma di tutti i tassi di partecipazione delle stazioni deve raggiungere il massimo, vale a dire uno, il valore di saturazione.

 2. \forall i \in S: a_s > a'_s

Ogni stazione ottiene un tasso d'accesso minore o uguale a quello ottenuto in assenza della stazione associanda simulata.

 3. \forall i,j \in S: a_i >= a_j  =>  a'_i >= a'_j

Prese a caso due stazioni distinte se la prima aveva trasmesso più della seconda, dopo l'entrata della stazione associanda la seconda non trasmette piu` della prima. In effetti l'entrata di una nuova stazione si crede che tenda a ridurre la partecipazione delle stazioni che partecipano maggiormente, coerentemente con la tendenza all'equità.

Ottobre 2008

23 Ottobre

Il problema della modellazione della ripartizione degli accessi dopo l'entrata della stazione associanda dipende da due fattori: la tendenza all'equità nella spartizione degli accessi (DCF) e le esigenze trasmissive delle stazioni. Elaborare una soluzione diretta al problema sembra simile alla risoluzione di un sistema di N equazioni differenziali e deve essere scartato.

24 Ottobre

La via che invece verrà utilizzata è quella di rinunciare ad un po' di precisione aumentando la realizzabilità della soluzione: si lavorerà con le frequenze d'accesso. Prima di realizzare una soluzione, però, è importante chiarire i legami fra l'equità della quale DCF è garanzia e le frequenze d'accesso. Soltanto palesando questa relazione si potrà motivare rigorosamente questa scelta.

La soluzione algoritmica elaborata a maggio segue questo principio, ma sembra cadere negli stessi problemi emersi nei tentativi di soluzione tramite porzioni di accesso. Rinunciare ad adeguamenti precisi nelle proporzioni delle possibilità di accesso al mezzo semplifica notevolmente il problema e consente, rispetto agli approcci precedentemente utilizzati, di eliminare l'assunzione di indipendenza reciproca delle trasmissioni. Si tratta di tenere invariate le proporzioni delle possibilità trasmissive delle stazioni associate.

#a_x = d_0 / d_x		\\ numero di accessi che x prende nel silenzio
p'_i = #a_i / (#a_S + #a_x)	\\ probabilita` di trasmissione di ogni i
if (p'_x \get p'_i)		\\ se x ha una prob >= alle altre sta
  fine				  \\ quella prob e` corretta
else				\\ altrimenti
  p_x = max(p_i)		  \\ x ha diritto come il massimo
  p'_i = p_i / p		  \\ normalizzazione i tutti i p'_i

La gestione della presenza dei silenzi nel flusso d'ascolto sarebbe in realtà migliorabile, quella presentata potrebbe essere una buona approssimazione. Resta da verificare la correttezza del ramo else e se il silenzio sia mangiato nella sua totalità.

27 Ottobre

L'algoritmo del 24 Ottobre sembra rappresentare correttamente l'intuizione di come i p vengano ripartiti, anche nel caso in cui i silenzi disponibili non siano sufficienti (ramo else). Infatti: p > 1 => p'_i < p_i. L'affidabilità delle intuizioni saranno messe alla prova nelle sperimentazioni future.

28 Ottobre

Il carico deve rappresentare l'impossibità di fruizione del mezzo, il grado di congestione della rete, quindi, intuitivamente, una rete con carico minore consentirà prestazioni maggiori. Il primo tentativo di definizione operativa definisce il carico della stazione i-esima come il prodotto della sua probabilità trasmissiva (p_i) e della durata della trasmissione (d_i). In questo modo il carico di un BSS S è pari alla somma dei carichi unitari delle stazioni ad esso associate:

\sum_i^S p'_i d_i

Ma questa definizione è in gran parte debole; infatti la sequenza trasmissiva (1,1,1,2) avrebbe lo stesso carico della (1,2,1,2), vale a dire 1.

30 Ottobre

La presenza del parametro p appare non corretta o non sufficiente, benché contenga un senso d'efficacia.

31 Ottobre

Il problema delle definizioni di carico ideate ieri ed oggi (non riportate) sono tutte errate perché il parametro p non riesce a quantificare quanti e quali accessi siano presenti in ogni giro. È necessario quantificare la presenza di ogni stazione relazionandone l'attività con quella massima ottenuta dalle altre STA. Formalmente il carico unitario della stazione i-esima è dato dal prodotto della durata del suo accesso (di) e del suo peso (wi); formalmente:

l_i = w_i d_i
w_i = \frac{a_i}{M(a_i)}

Novembre 2008

4 Novembre

Il carico del canale dipende in maniera lineare dal carico delle stazioni che lo utilizzano ed è inversamente proporzionale al silenzio in esso presente.

Formalmente il carico del canale è esprimibile nel seguente modo:

(1)   L_i = \sum_i{l_i} o_S
(2)   o_S = (\sum t_i) / t_S
(3)   t_i = a_i * d_i

5 Novembre

L'obiettivo di modellazione delle prestazioni ottenute o ottenibili dalle stazioni comporta un'analisi più accurata delle trasmissioni. La banda ricettiva (download) è infatti generata dalle trasmissioni provenienti dall'AP e dirette alle STA.

Il carico prodotto dalle trasmissioni dall'AP è quantificato nel carico dell'AP, calcolato come ogni altro carico unitario. In particolare come durata della trasmissione si usa la durata media delle trasmissioni AP -> STA. In questo modo si tiene conto non solo della durata media delle ricezioni di ogni stazione, ma si considera anche la reale influenza delle ricezioni di ogni STA, infatti:

d_i = \sum_i {a_di * d_di / a_d}
    = \sum_i {a_di * d_di} / a_d
    = \sum_i {t_d / a_d}

Anche l'algoritmo di inserimento della stazione associanda deve essere ampliato per adeguare le trasmissioni che l'AP effettua verso di essa. Ecco una versione parziale che getta le intuizioni alla base della soluzione.

t_s silenzio
a_ui a_di
a_d = sum a_di
a_x=0

1   a'_ux = a_d
2   t_s -= a'_ux * d_ux
3   se t_s > 0
4       a'_dx = t_s / (d_ux + d_dx)
5       a'_d = a_d + a'_dx
6       a'_ux += a'_dx
7       se a'_ux <= M(a_ui)
8           a'_d = a'_ux = M(a_ui)
9           \\ normalizzazione
10      else
11  else
12      a'_d = a'_ux = M(a_ui)
13          \\ normalizzazione
14  \\ ripartizione ricezioni

7 Novembre

Ampliamenti e miglioramenti all'algoritmo di ripartizione delle trasmissioni e delle ricezioni (ora anche commentato):

t_s: durata totale dei silenzi
a_ui, a_di: numero di accessi in invio e in ricezione della i-esima STA
a_d = sum a_di
a_dx = a_ux = 0

01 se t_us >= d_ux * a_d	[ se x puo` usare silenzio per trasmettere come AP ]
02	t_us -= d_ux * a_d
03	a_'ux = a_d		[ x trasmette come AP ]
04  se t_us >= 0   [ se avanza silenzio ]
05	a'_dx = t_us / (d_ux + d_dx)	[ meta` silenzio per ricezioni di x ]
06	a'_d = a_d + a'_dx
07	a'_ux += a'_dx			[ meta` silenzio per trasmissioni di x]
08	se a'_ux <= M(a_ui)	[ se x non trasmette al massimo ]
09		a'_d = a'_ux = M(a_ui)	[ ripartizione grezza trasmissioni ]
10		...			[ normalizzazione trasmissioni ]
11		a'_dx = M(a_di)		[ ripartizione grezza ricezioni ]
12		...			[ normalizzazione ricezioni ]
13	alrimenti		[ x trasmette al massimo ]
14		se a'_dx <= M(a_di)	[ se x non riceve al massimo ]
15			a'_dx = M(a_di)	[ ripartizione grezza ricezioni ]
16			...		[ normalizzazione degli a'_d ]
17  altrimenti	[ se non avanza silenzio ]
18	a'_d = a'_ux = M(a_ui)		[ ripartizione grezza trasmissioni ]
19	...				[ normalizzazione trasmissioni ]
20	a'_dx = M(a_di)			[ ripartizione grezza ricezioni ]
21	...				[ normalizzazione degli a'_d ]

10 e 11 Novembre

L'algoritmo di inserimento della stazione associanda ha un errore concettuale. Nella sezione di riga 13-16 si fa infatti affidamento sull'avvenuto adeguamento delle possibilità trasmissive della stazione associanda e dell'AP, ma questa assunzione non e` sempre assicurata dalla sezione di righe 1-3.

Corretta la notazione del tempo dei silenzi e alcuni commenti.

t_s: durata totale dei silenzi
a_ui, a_di: numero di accessi in invio e in ricezione della i-esima STA
a_d = sum a_di
a_dx = a_ux = 0

 1 se t_s >= d_ux * a_d	[ se x puo` usare silenzio per trasmettere come AP ]
 2	t_s -= d_ux * a_d
 3	a_'ux = a_d		[ x trasmette come AP ]
 4 se t_s >= 0   [ se avanza silenzio ]
 5	a'_dx = t_s / (d_ux + d_dx) [ meta` silenzio per ricezioni di x ]
 6	a'_d = a_d + a'_dx
 7	a'_ux += a'_dx		[ meta` silenzio per trasmissioni di x]
 8	se a'_ux <= M(a_ui)	[ se x non trasmette al massimo ]
 9		a'_d = a'_ux = M(a_ui)	[ ripartizione grezza trasmissioni ]
10		...			[ normalizzazione trasmissioni ]
11		a'_dx = M(a_di)		[ ripartizione grezza ricezioni ]
12		...			[ normalizzazione ricezioni ]
13	altrimenti		[ x trasmette al massimo ]
14		se a'_dx <= M(a_di)	[ se x non riceve al massimo ]
15			a'_dx = M(a_di)	[ ripartizione grezza ricezioni ]
16			...		[ normalizzazione delle ricezioni ]
17 altrimenti	[ se non avanza silenzio ]
18	a'_d = a'_ux = M(a_ui)		[ ripartizione grezza trasmissioni ]
19	...				[ normalizzazione trasmissioni ]
20	a'_dx = M(a_di)			[ ripartizione grezza ricezioni ]
21	...				[ normalizzazione delle ricezioni ]

12 Novembre

Il problema precedentemente rilevato nell'algoritmo consiste, in definitiva, nella mancata massimizzazione delle possibilità trasmissive dell'AP sfruttabili da parte della stazione associanda. Questo adeguamento dovrebbe essere eseguito prima dell'uscita dal flusso nel blocco delle righe 13-16.

13 Novembre

Il problema evidenziato il 12 Novembre è stato risolto tramite una totale riscrittura dell'algoritmo. La riprogettazione ha reso lo pseudocodice più snello, leggibile ed organico.

Sono state inoltre completamente eliminate i riferimenti alle normalizzazioni. Questa operazione era legata al fatto che si lavorasse, nelle recenti versioni dell'algoritmo, con le porzioni d'accesso delle stazioni. Ora che, invece, si interviene direttamente sul numero di trasmissioni o ricezioni la normalizzazione è superflua o insensata.

Ecco la nuova proposta.

	t_s: durata totale dei silenzi
	a_ui, a_di: numero di accessi in invio e in ricezione della i-esima STA
	a_d = sum a_di
	a_dx = a'_ux = 0

 1	se (t_s >= 0) e (t_s >= d_ux * a_d)	[ se con silenzio X e AP trasmetterebbero alla pari ]
 2		t_s -= d_ux * a_d			[ riduzione silenzio ]
 3		a_'ux = a_d				[ X trasmette come AP ]
 4		a'_dx = t_s / (d_ux + d_dx)		[ meta` silenzio per ricezioni di X ]
 5		a'_d = a_d + a'_dx
 6		a'_ux += a'_dx				[ meta` silenzio per trasmissioni di X]
 7		t'_s = 0
 8	se a'_ux <= M(a_ui)			[ se x e ap non trasmet al massimo ]
 9		a'_d = a'_ux = M(a_ui)			[ ripartizione trasmissioni ]
10		a'_dx = M(a_di)				[ ripartizione ricezioni ]

17 Novembre

Il carico prodotto dalle trasmissioni AP -> STA era stato aggregato nel carico unitario della stazione "Access-Point", dove il parametro d_i è calcolato come media grezza delle durate (#9).

Riguardo la modellazione delle stime delle prestazioni ottenibili (#12) il throughput è facilmente stimato nel seguente modo, che peraltro risulta coerente con lo scenerio di saturazione preso in esame nella Tesi di Andrea Rappini. Ecco le stime del throughput in invio e in ricezione:

T_u = a_ui * b_ui / t
T_d = a_di * b_di / t

Al fine di fornire una stima della latenza ricettiva si intuisce la necessità di una valutazione che sappia considerare le esigenze ricettive delle varie stazioni.

18 Novembre

Riguardo #12, l'intuizione sulla latenza in trasmissione (Lat_ui = L - d_ui + d_ui0) aveva bisogno di una modifica. Riflettendo sul significato profondo del parametro w_ui in ambito probabilistico esso risulta essere la previsione dell'evento trasmissivo. Pertanto il carico unitario è leggibile come previsione temporale della partecipazione trasmissiva. La versione definitiva è la seguente:

Lat_ui = L - (w_ui * d_ui) + (w_ui0 * d_ui0)
       = (\sum_{j!=i} w_uj * d_uj) + w_ui0 * d_ui0
d_ui0 = durata di una trasmissione minimale (s)
w_ui0 = 1 = peso (probabilita`) della trasmissione minimale

Seguendo il medesimo approccio, la latenza in ricezione potrebbe essere espressa nel seguente modo:

Lat_di = (L - (w_ui * d_ui)) / w_di + (d_di0 * w_di0)

19 Novembre

La recente lettura probabilistica del parametro w_u ha permesso l'ideazione della stima di latenza in ricezione. Questo tempo (è utile ricordarlo) rappresenta l'attesa dovuta ad altre trasmissioni. Queste sono già analizzate probabilisticamente dal w_u fornendo, per dirlo informalmente, una previsione del giro di attività. L'attesa per la ricezione è quindi costituita da "giri" di incidenza dipendente dalle probabilità ricettive. Il nuovo parametro w_di consente la quantificazione necessaria al calcolo espresso di seguito.

w_di = a_di / M(a_di)
Lat_di = (\sum_{j!=i} w_dj) * (\sum_{j!=i} w_uj * d_uj)

20 Novembre

Emergono dubbi sull'eccesso di stima della latenza. L'attesa di trasmissione ad esempio non dovrebbe essere costituita dall'interezza di un giro di trasmissioni, come se il giro iniziasse sempre dopo di essa. Forse l'idea di dimezzare questa quantità (usata nelle trascorse stime di latenza) va ripresa i considerazione.

25 Novembre

La latenza è costituita dal tempo di attesa e dal tempo effettivamente necessario alla comunicaizone. Il tempo di attesa precedentemente formalizzato deve essere dimezzato, in modo da rappresentare la previsione della posizione della comunicazione della stazione all'interno del tempo di attesa. Ecco come la latenza in trasmissione e in ricezione sono pertanto riformulate:

Lat_ui = (\sum_{j!=i} w_uj * d_uj)/2 + w_ui0 * d_ui0
Lat_di = (\sum_{j!=i} w_dj)/2 * (\sum_{j!=i} w_uj * d_uj)

26 e 27 Novembre

[113]: Creazione di uno scheletro di documento LaTeX, pronto per accogliere i contenuti man mano che saranno stesi in forma organica (#15). Inserimento e formattazione di tutti i risultati nell'analisi finora formalizzata (#11).

[114]: Piccole manuntenzioni sul deposito SVN.

28 Novembre

Se il parametro w_di ha una reale valenza nella stima della latenza, forse esso andrebbe usato anche nel calcolo del carico, come peso con il quale ponderare le durate delle varie ricezioni.

Dicembre 2008

1 e 2 Dicembre

Il calcolo del carico è in effetti da rivedere, proprio perché la semplice media grezza delle durate delle ricezioni non rappresenta adeguatamente il grado di congestione dell'AP, poiché il grado di partecipazione ricettiva non è sufficientemente espressa. Ecco la riformulazione proposta (#9):

l_d = w_{uAP} * \sum_{i!=AP} l_di
l_di = w_{di} * d_{di} / n_{STA}

Grazie ad ulteriori riflessioni, la versione del carico in ricezione precedentemente proposta si è rivelata errata. Ecco la nuova versione:

l_{di} = w_{dj} \left( d_{dj} + p_u \sum_i{l_{ui}} \right)

3 Dicembre

Ho inserito gli ultimi risultati nella tesi, eseguendo alcuni aggiustamenti volti al miglioramento dell'organicità del modello, nella mappa concettuale come nell'esposizione.

4 Dicembre

Completamento delle operazioni di aggiornamento sulla mappa e sulla tesi [124].

Riguardo la quantificazione della presenza dell'AP all'interno del carico del canale si è presa in considerazione la possibilità di utilizzare una misurazione basata sulle probabilità ricettive delle stazioni, (con i parametri w_di ). Nonostante ci sia definitivamente convinti dell'interdipendenza fra il carico del canale (o trasmissivo) e quello dell'AP (o ricettivo), l'ipotesi è stata scartata. Infatti la misura della partecipazione dell'AP deve essere unicamente basata sulla previsione di durata del suo accesso, senza doverne quantificare il grado di congestione.

5 Dicembre

[128] Miglioramento nell'esposizione del carico del canale, specificando i dettagli sulle ultime decisioni. Formattazione dell'algoritmo di inserimento della stazione associanda (l'esposizione resta migliorabile). Piccoli aggiustamenti sulla mappa concettuale.

8 Dicembre

[128] Iniziata la stesura del modello di rete (#18) che si rivela, rispetto all'ultima versione, riducibile di parecchi dettagli diventati inutili.

Gennaio 2009

14, 16 e 19 Gennaio

Il throughput era stato definito in maniera canonica come "quantità di dati scambiati per unità di tempo". Tale definizione non costituisce una stima per il throughput nel modello di rete finora delineato e necessita di essere completamente rivista. La definizione proposta e` la seguente:

Throughput_i = r_i * l_i / L

Se il carico unitario di una stazione, infatti, è una previsione di durata del tempo nel quale essa, in determinate condizioni, utilizza il mezzo, allora moltiplicandolo per il datarate (r_i) si ottiene una previsione di dati scambiati. Assieme allo scambio di questa quantità di dati dovranno essere effettuati altri scambi, la cui durata totale è data precisamente dal carico (L).

20 Gennaio

Aggiornamento della stima del Throughput [138].


Ticket

Assegnati

No results

Nuovi

No results


Collegamenti

Articoli

https://www.xt3.it/tirocinio07/doc-sjk/sjk11.pdf

Documenti da Ghini

Vari