• Non ci sono risultati.

Di seguito riportiamo tutti i parametri di configurazione necessari a valutare le strategie di service discovery proposte:

• Numero di simulazioni: Le simulazioni sono state eseguite un numero di volte tale da ottenere una confidenza statistica del 97.5% con una probabilit`a di errore pari a 0.025. A tal proposito a seconda della metrica di interesse (accuracy, proacti- vity, query response time, forwarding cache e service cache) e variando l’algoritmo di service discovery, l’algoritmo di routing e la traccia di co-locazione si `e calcolato il limite inferiore del numero di simulazioni necessarie ad ottenere la confidenza statistica desiderata:

Scelte R0 = 30 simulazioni iniziali, α = 0.025 il margine di errore e tn,α il quantile

della distribuzione di t-student, si calcola la media ¯x e la deviazione standard σ di una data metrica. Il limite inferiore R `e dato da:

R ≥

 t

n,α

× σ

α × ¯x



2

(4.12)

Nella tabella 4.1 riportiamo i limiti inferiori delle simulazioni da eseguire per COR- DIAL con Cambridge e per CORDIAL con MDC Nokia; mentre nella tabella 4.2 riporteremo i valori riguardanti Flooding sia con Cambridge che con MDC Nokia. In particolare dalla tabella 4.1 possiamo notare che la metrica riguardante la di-

mensione della forwarding cache verr`a rappresentata con una confidenza del 95%

perch´e non `e possibile effettuare un numero di simulazioni elevate (risultanti da una confidenza al 97,5% ) data la non sufficiente potenza di calcolo dell’hardware utilizzato per gli esperimenti. Tuttavia, per tutte le metriche analizzate la confi-

denza statistica `e sempre maggiore del 95%, un valore che garantisce robustezza

Tabella 4.1: Numero di esecuzioni in CORDIAL per la confidenza statistica CORDIAL

Cambridge

BubbleRap Epidemic Prophet Spray&Wait

Accuracy 1 1 1 1

Proactivity 18 20 17 10

Query response time 24 19 28 43

Forwarding cache (95%) 51 57 70 58

Service cache 72 82 153 99

Valore massimo 153

MDC Nokia

BubbleRap Epidemic Prophet Spray&Wait

Accuracy 1 1 1 1

Proactivity 81 110 67 57

Query response time 74 104 69 144

Forwarding cache (95%) 107 179 248 204

Service cache 319 239 191 215

Valore massimo 319

Il numero di simulazioni effettuate, per ogni algoritmo di service discovery e per ogni traccia di co-locazione, corrisponde a ai valori massimi rappresentati nelle tabelle corrispondenti.

Tabella 4.2: Numero di esecuzioni in Flooding per la confidenza statistica FLOODING

Cambridge

BubbleRap Epidemic Prophet Spray&Wait

Accuracy 98 70 73 68

Proactivity 12 21 18 13

Query response time 27 25 29 15

Service cache 14 12 11 9

Valore massimo 98

MDC Nokia

BubbleRap Epidemic Prophet Spray&Wait

Accuracy 62 45 48 53

Proactivity 109 95 62 80

Query response time 62 74 76 47

Service cache 36 50 67 75

• Durata della simulazione: E’ espressa in secondi, ed `e stata fissata a 144 ore pari a 6 giorni per entrambe le tracce. La scelta della durata permette di valutare le performance degli algoritmi di service discovery considerando due fasi fondamentali delle interazioni sociali degli utenti delle tracce: (i) giorni lavorativi caratterizzati da una maggiore densit`a di contatti e (ii) giorni festivi caratterizzati da una minor densit`a dei contatti.

• Trasmissione dati: La velocit`a del trasferimento `e impostata a 2 Mbps = 250kBps, mentre il raggio di trasmissione `e impostato a 10mt. Tale configurazione `e tipica delle trasmissioni dei dati mediante un’ interfaccia Bluetooth.

• Numero di nodi: Il numero dei nodi dipende da quelli presenti nelle varie tracce, in Cambridge sono presenti 36 nodi, mentre in MDC Nokia 185. Avendo selezionato solo i primi sei giorni della durata totale delle tracce, il numero dei nodi presenti in MDC Nokia si restringe a 98.

• Buffer dei nodi: Ogni nodo mantiene un buffer in cui memorizza i messaggi, tale buffer ha una dimensione di 2M.

• Service provider: I nodi scelti come service provider che potranno generare advertisement sono 20.

• Interessi: Il numero totale di interessi esistenti nella rete sono 100, ad ogni nodo, attraverso la distribuzione Zipf, ne vengono assegnati inizialmente 10 interessi, mentre ad ogni messaggio (query o advertisement) ne viene assegnato solo 1 in modo da facilitare il confronto attraverso l’indice di similarit`a.

• Generazione delle query: Il tasso di generazione delle query permette di generare in media 2 query (λ = 2) ogni 30 minuti.

• Generazione dei servizi: Ogni service provider genera 5 advertisement e li me- morizza nella sua cache. Ad ogni advertisement viene assegnato 1 interesse scelto permutando l’insieme degli interessi associati al nodo e prelevando il primo. • Indice di similarit`a: La soglia utilizzata per confrontare una query con un adver-

tisement corrispondente `e τ = 1. Con questa configurazione gli algoritmi di service discovery cercano una corrispondenza perfetta tra l’interessi associato alla query e quello associato all’advertisement. Riducendo tale soglia si ottengono performance migliori, in particolare aumenta il numero di query che trovano una risposta, ma in compenso l’accuratezza peggiora.

• Fase proattiva e reattiva degli algoritmi di service discovery: La fase proat- tiva e reattiva dei due algoritmi di service discovery viene eseguita ogni 10 minuti. E’ importante precisare che l’esecuzione della fase reattiva dipende dall’istante di tempo in cui vengono generate le query e dal numero di nodi scelti dalla distribu- zione di Poisson a cui vengono distribuite. Considerando che la fase reattiva pu`o essere eseguita ogni 10 minuti ma le query vengono generate ogni 30 minuti, il primo istante disponibile in cui pu`o essere effettivamente eseguita la fase reattiva `e quindi 40 minuti, sempre nel caso in cui 10 minuti prima era stata generata almeno una query.

• Parametri dell’algoritmo K-Clique: Il valore della Familiar threshold Tth `e

impostato a 700, mentre K = 5, come fatto in [7].

• Parametri degli algoritmi di routing: I parametri che seguono sono di default tratti dalle implementazioni originali.

– BubbleRap: Il tempo di vita dei messaggi `e impostato a 1440s ossia 24h. – Spray and Wait: Il numero massimo di copie di un messaggio che possono

essere diffuse nella rete ed `e impostato a 10.

– Prophet: La costante di inizializzazione Pinit `e impostata a 0.5; la costante

di invecchiamento γ della delivery predictability `e impostato a 0.999885791, mentre la costante transitiva β `e impostata a 0.9.

Nel successivo capitolo andremo a valutare gli algoritmi di routing presentati senza l’utilizzo di alcun algoritmo di service discovery e le tracce di co-locazione indipendenti sia dall’algoritmo di service discovery, sia dagli algoritmi di routing. A tal proposito alcuni parametri descritti in precedenza vengono modificati come segue:

• Numero di simulazioni: In questo caso a seconda delle metriche di interesse (message delivery e message delay) variando algoritmo di routing e traccia di co- locazione i valori del numero minimo di simulazioni da effettuare risultati dal calcolo descritto in precedenza sono per ogni combinazione R ≥ 1.

• Durata della simulazione: Considerando che `e necessaria un’unica simulazione si `e ritenuto utile valutare la traccia Cambridge per la sua intera durata, 987529s pari a circa 12 giorni; e la traccia MDC Nokia per 2592113s pari a circa 30 giorni. • Numero di nodi: Il numero di nodi presenti nella traccia MDC Nokia di durata

• Generatore di messaggi: (valido solo per valutare gli algoritmi di routing) Non sfruttando alcun algoritmo di service discovery che genera il traffico dei messaggi nella rete `e necessario utilizzare il generatore di messaggi di TheONE per poterli creare. A tal proposito viene creato un nuovo messaggio ogni 25−35 secondi (valore di default) e la dimensione `e stata impostata a 1, 46kB.

• Buffer dei nodi: Per poter ottenere un tasso di successo nelle consegne del 40/50% si `e aumentato il buffer utilizzato dai nodi per memorizzare i messaggi a 10M.

Documenti correlati