• Aucun résultat trouvé

Hovering information: a self-organising, infrastructure-free information storage and retrieval service for mobile applications

N/A
N/A
Protected

Academic year: 2022

Partager "Hovering information: a self-organising, infrastructure-free information storage and retrieval service for mobile applications"

Copied!
217
0
0

Texte intégral

(1)

Thesis

Reference

Hovering information: a self-organising, infrastructure-free information storage and retrieval service for mobile applications

VILLALBA CASTRO, Alfredo Alejandro

Abstract

This thesis proposes a new type of information, called hovering information, which is stored in geographical regions and does not rely on any infrastructure but on the mobile devices that populate the respective geographical region, its anchor area. A storage and two retrieval algorithms are proposed. They take advantage of the broadcasting nature of mobile ad hoc networks while controlling the network overhead thanks to a novel mechanism. Further, this thesis studies the persistence, accessibility, critical mass of density of nodes, the messages complexity as well as the resilience to failure of the algorithms. It also proposes a middleware and its respective implementation as an Android service which enables mobile applications to store and retrieve information from geographical regions.

VILLALBA CASTRO, Alfredo Alejandro. Hovering information: a self-organising,

infrastructure-free information storage and retrieval service for mobile applications. Thèse de doctorat : Univ. Genève, 2013, no. SES 813

URN : urn:nbn:ch:unige-307455

DOI : 10.13097/archive-ouverte/unige:30745

Available at:

http://archive-ouverte.unige.ch/unige:30745

Disclaimer: layout of this document may differ from the published version.

1 / 1

(2)

Infrastructure-Free Information Storage and Retrieval Service for Mobile Applications

TH `ESE

pr ´esent ´ee `a la Facult ´e des sciences ´economiques et sociales de l’Universit ´e de Gen `eve

par

Alfredo Alejandro Villalba Castro

originaire de Potos´ı (Bolivie) sous la direction de

Prof. Dimitri Konstantas et Prof. Giovanna Di Marzo Serugendo

pour l’obtention du grade de

Docteur `es sciences ´economiques et sociales mention syst `emes d’information

Membres du jury de th `ese:

M. Dimitri KONSTANTAS, Professeur

Mme. Giovanna DI MARZO SERUGENDO, Professeur M. Michel L ´EONARD, Professeur, pr ´esident du jury M. Torsten BRAUN, Professeur, Universit ´e de Berne

M. Jos ´e ROLIM, Professeur, Facult ´e de Sciences

Th `ese no 813 Gen `eve, 29 ao ˆut 2013

(3)

trouvent ´enonc´ees et qui n’engagent que la responsabilit´e de leur auteur.

Gen`eve, le 29 aoˆut 2013

Le doyen

Bernard MORARD

Impression d’apr`es le manuscrit de l’auteur

(4)
(5)
(6)

Abstract

The fast evolution of mobile technologies as well as the evolution of users’ role from simple consumers to active producers of information, lead us to imagine a new way of storing, retrieving and sharing information which will give rise to a new kind of mobile applications. These mobile applications will rely on a new type of information that will be generated by users in spontaneous and sporadic situations. This new type of information that we callhovering informationwill be strongly linked to the geographical region where it has been generated, its so calledanchor area, and it will be relevant and meaningful in this anchor area. A hovering information will not be stored in centralised servers or databases but in its anchor area. Thus, a hovering information will have to look for ways of staying persistent and accessible in its anchor area by taking advantage of the storage, computing and networking resources of mobile devices populating the respective anchor area.

This thesis first focuses on defining a model for hovering information. The model first identifies the components of hovering information: mobile nodes, hoverinfos, replicas, mobile applications and users, and the hovering information service. It then proposes a life cycle for hovering information which is different from the information we are used to. The lifetime of a hovering information can depend on the presence of other hovering information. Moreover, along its lifetime, a hovering information can be awake or dormant. The model then develops the concepts around persistence and accessibility for hovering information where concepts like survivability, availability and accessibility are defined.

Once a model for hovering information has been defined, this thesis studies the feasibility of the concept. More precisely, this thesis proposes a storage algorithm called SAPRESA and two retrieval algorithms called PUSHBR and PULLBR. These algorithms are evaluated extensively through simulations. In order to keep a hovering information persistent and accessible in its an- chor area, SAPRESA aims at populating the anchor area with as many replicas as possible and preserving this population throughout time. SAPRESA then takes advantage of the broadcasting nature of mobile ad hoc networks (MANETs) which provides it with a flooding nature. In order to control the network overhead, SAPRESA relies on a novel mechanism which is based on the existence of two types of replica: active and passive ones. Only active replicas are responsi- ble for creating and broadcasting new replicas, and the size of the population of active replicas is continuously adapted to an optimum size regardless the density of nodes. On the basis of SAPRESA, this thesis figures out the critical mass for the density of nodes that is required to keep a hovering information persistent and accessible in its anchor area. The results show that this critical mass can be found in real world scenarios like parks, college campuses or festivals.

While the critical mass is one important aspect, a second one is the cost of the storage and re- trieval algorithms in terms of networking messages, called messages complexity. The results show that SAPRESA has a O(log(n))messages complexity, meaning that it is scalable to the

i

(7)

density of nodesn. As a third aspect, results show that SAPRESA is resilient to changes with re- spect to the density of nodes due to failures or mobility. The retrieval algorithms, PUSHBR and PULLBR, enable mobile applications to retrieve information in a push- or pull-based fashion.

The results of a number of evaluations show that both retrieval algorithms reach high retrieval performances mainly due to the flooding nature of SAPRESA. Altogether these results lead to the conclusion that the hovering information concept is feasible.

Finally, this thesis proposes a middleware for hovering information. This way, mobile appli- cations can use the service provided by the middleware in order to store and retrieve information from geographical regions without relying on any infrastructure. The middleware is imple- mented as an Android service and a simple mobile application is also implemented in order to perform a proof-of-concept. The middleware and its implementation both represent a design and code contribution for further research on hovering information.

(8)

R´esum´e

L’´evolution vertigineuse des technologies mobiles ainsi que l’´evolution du rˆole des utilisateurs, qui deviennent des producteurs d’information et non seulement des consommateurs, nous per- met d’imaginer une nouvelle mani`ere de stocker, retrouver et partager de l’information, ce qui donnera lieu `a un nouveau type d’application mobiles. Ces applications d´ependront d’un nou- veau type d’information lequel sera g´en´er´e par les utilisateurs de mani`ere spontan´ee et spo- radique. Ce nouveau type d’“information en l’air” que nous appellerons en anglais “hovering information” est ´etroitement li´e `a la r´egion g´eographique d’o`u l’information a ´et´e g´en´er´ee, i.e.

sa r´egion d’ancrage que nous appellerons (en anglais) son “anchor area”. L’information a du sens et de l’int´erˆet pour les utilisateurs situ´es dans cette r´egion g´eographique. Une hovering information devra trouver par soi-mˆeme les moyens de rester persistante et accessible dans son anchor area en exploitant au mieux les ressources de stockage, de calcul et de r´eseau mises `a disposition par les dispositifs mobiles se trouvant dans sa r´egion d’ancrage.

Cette th`ese se concentre d’abord sur la d´efinition d’un mod`ele de “hovering information”.

Le mod`ele identifie les composantes d’une “hovering information” (i.e., noeuds mobiles, copies, applications, utilisateurs, service) ainsi que le cycle de vie d’une “hovering information”. Ce cycle de vie est diff´erent du cycle de vie d’une information traditionnelle (e.g. le temps de vie d’une “hovering information” peut d´ependre de la pr´esence d’autres “hovering informations”).

De plus, pendant sa dur´ee de vie, une hovering information peut varier d’un ´etat dormant `a un ´etat ´eveill´e. Le mod`ele d´eveloppe aussi les concepts de persistance et d’accessibilit´e pour une “hovering information”. C’est ainsi que des concepts comme la survie, la disponibilit´e et l’accessibilit´e d’une “hovering information” sont d´efinis.

Une fois le mod`ele d´efini, cette th`ese ´etudie la faisabilit´e du concept. Plus pr´ecis´ement, cette th`ese propose un algorithme de stockage, appel´e SAPRESA, et deux algorithmes de r´ecup´eration d’information, appel´es PUSHBR et PULLBR. Ces algorithmes sont ´evalu´es en d´etail `a l’aide de simulations. Dans le but de maintenir une “hovering information” persistante et accessible dans sa r´egion d’ancrage, SAPRESA profite de la diffusion naturellement disponible dans les r´eseaux mobiles ad hoc (MANETs) pour diffuser des copies au sein de l’anchor area. SAPRESA s’occupe ´egalement de maintenir cette population de copies stables au cours du temps. Pour ce faire, SAPRESA exploite la notion de copies “actives” ou “passives”. Seules les copies actives cr´eent et diffusent de nouvelles copies. La taille de la population des copies actives s’adapte continuellement `a une taille optimale permettant la persistance et l’accessibilit´e malgr´e les changements de densit´e de noeuds. Sur la base de SAPRESA, cette th`ese d´etermine la masse critique de noeuds n´ecessaire pour maintenir une “hovering information” persistante et accessible dans sa r´egion d’ancrage. Les r´esultats obtenus montrent que cette masse critique est atteignable dans des situations de la vie quotidienne comme dans les parcs, les campus universitaires ou des festivals. La masse critique de noeuds est un premier aspect important `a

iii

(9)

d´eterminer, le deuxi`eme ´etant le coˆut des algorithmes de stockage et de r´ecup´eration en termes de messages r´eseaux (i.e. la complexit´e en messages). Les r´esultats obtenus montrent que SAPRESA a une complexit´e en messages deO(log(n)), ce qui signifie que l’algorithme monte

`a l’´echelle logarithmique par rapport au nombre de noeuds (n). Un troisi`eme aspect ´etudi´e dans cette th`ese est la capacit´e de SAPRESA de supporter les changements de densit´e de noeuds dus `a des d´efaillances ou `a la mobilit´e des noeuds. En ce qui concerne les deux algorithmes de r´ecup´eration d’information, PUSHBR et PULLBR, ils permettent aux applications mobiles de retrouver des “hovering informations” en suivant les principes de “push” ou “pull”. Les r´esultats montrent que les deux algorithmes atteignent des hautes performances de r´ecup´eration, ceci ´etant principalement dˆu `a la propri´et´e de SAPRESA de couvrir la r´egion d’ancrage avec un nombre optimum de copies. Au vu de ces r´esultats, cette th`ese conclut que le concept de

“hovering information” est faisable.

Finalement, cette th`ese propose un middleware pour d´evelopper le concept d’“hovering in- formation” sous forme de service. Ce middleware offre aux applications mobiles un service qui leur permet de stocker et de retrouver de l’information dans des r´egions g´eographiques d´efinies et sans besoin d’infrastructure fixe. Ce middleware est impl´ement´e comme un service Android.

Une application a ´et´e d´evelopp´ee comme preuve de concept. La conception du middleware et son impl´ementation sont des contributions qui ouvrent des perspectives de recherche future dans le domaine de l’“hovering information”.

(10)

Acknowledgments

Firstly I would like to thank Prof. Dimitri Konstantas who gave me the opportunity to be part of his research group and carry out this PhD thesis. He believed in me and supported me until the finalisation of this thesis. His ideas were always a source of inspiration and they showed me that a very important component when doing research is creativity and to some extent taking the risk of following eccentric ideas.

I would like to give special thanks to Prof. Giovanna Di Marzo Serugendo. I think that a key strategic move in my thesis was to spend two months in London, starting to work with her. It was at that time that my thesis started taking shape. Moreover, she taught me a lot about scientific research. I would especially like to thank her for her patience, time and support until the end of my thesis.

Thank you Dimitri and Giovanna for having believed in me.

I would also like to mention the members of the jury for this thesis: Prof. Torsten Braun, Prof. Jos´e Rolim and Prof. Michel L´eonard. I thank them for having read my manuscript and provided me insightful critics and comments. Thanks to these critics I was able to improve this manuscript.

Furthermore, I thank the colleagues with whom I shared my office: Dr. Katarzyna Wac and Jody Hausmann. I learned many things from discussions with them, regarding work- as well as life-related issues. Further, I thank the other colleges of CUI with whom I enjoyed break times, especially I’d like to mention here Dr. Eniko Szekely and Dr. Daniel Lagrava.

I would also like to acknowledge the support I received from Daniel Agulleiro and Nicolas Mayencourt, the system administrators of CUI, who kindly helped out while working with the Myrinet cluster.

Further, I also would like to give thanks to my friends in Geneva who were always there to enjoy the simple things in life. Here I would like to especially mention my little brother and friend Beto who supported me throughout all the stages of my thesis and in life.

I would also like to thank my parents, Olga and Alfredo, and my siblings, Carla, Rafo, Beto, and Paola who supported me from the distance and always believed in me.

I would further like to acknowledge the support and trust I received from the Universidad Privada Boliviana (UPB) where I work since 2012. They kindly provided me with the time to finish the last improvements of my thesis.

I would also like to mention my little daughter Lucila whose presence and smiles always provided me with the motivation and energy to finalise this thesis.

And to close in a very special way, I give many thanks to my beloved wife Nina. She was by my side at all times, tolerated my struggles and moods and celebrated with me my achievements.

Her emotional support, encouragement, and input helped me through difficult times and pushed me to finish this thesis... Gracias mi amor !

v

(11)
(12)

Contents

List of Figures xi

List of Tables xv

1 Introduction 1

1.1 Context and Motivation . . . 1

1.2 Hovering Information . . . 3

1.3 Scope and Purpose of this Thesis . . . 5

1.4 Contributions . . . 6

1.5 Thesis Overview . . . 7

2 Related Work 9 2.1 Information Dissemination . . . 9

2.1.1 Flooding and its Variants . . . 9

2.1.2 Epidemic Dissemination and Gossiping . . . 12

2.1.3 Data-Centric Routing . . . 14

2.2 Information Storage, Caching, Sharing and Replication . . . 16

2.2.1 Persistent Storage. . . 17

2.2.2 Information Caching and Sharing . . . 19

2.2.3 Data-Centric Storage . . . 20

2.2.4 Data Replication . . . 23

2.3 Routing . . . 24

2.3.1 Proactive Flat Routing . . . 25

2.3.2 Reactive Flat Routing. . . 27

2.3.3 Hybrid Flat Routing . . . 28

2.3.4 Hierarchical Routing . . . 29

2.3.5 Position-Based Routing . . . 31

2.4 Miscellaneous . . . 33

2.5 Discussion. . . 33

3 Hovering Information Model 37 3.1 Introductory Scenarios . . . 37

3.1.1 Lost Keys . . . 37

3.1.2 Flee Market . . . 38

3.2 Components . . . 39

3.2.1 Mobile Nodes. . . 40

vii

(13)

3.2.2 Hovering Information . . . 43

3.2.3 Replicas. . . 46

3.2.4 Hovering Information Service . . . 48

3.2.5 Mobile Applications . . . 49

3.2.6 Mobile Users . . . 51

3.3 Life Cycle . . . 53

3.3.1 Lifetime. . . 53

3.3.2 Awake and Dormant Periods . . . 55

3.3.3 Multiplicity and Versioning . . . 56

3.4 Persistence . . . 58

3.4.1 Survivability . . . 58

3.4.2 Availability . . . 59

3.5 Accessibility . . . 61

3.5.1 Access Paradigm . . . 62

3.5.2 Effective and Potential Accessibility . . . 62

3.5.3 Accessibility Degree . . . 63

3.6 Discussion. . . 64

4 Storage and Retrieval Algorithms 67 4.1 Objectives . . . 67

4.2 Assumptions . . . 68

4.2.1 Mobile Nodes. . . 68

4.2.2 Hoverinfos . . . 69

4.2.3 Life Cycle. . . 70

4.3 Storage Algorithm . . . 72

4.3.1 Overview . . . 72

4.3.2 Storage, Populating and Removal . . . 74

4.3.3 Active/Passive Replicas and Calibration . . . 75

4.3.4 Inside Proactive Replication . . . 77

4.3.5 Density of Active Replicas . . . 80

4.3.6 Probability of Becoming Active Replica . . . 82

4.3.7 Leaving Out Reactive Replication . . . 84

4.3.8 Self-Activation of Passive Replicas . . . 86

4.4 Retrieval Algorithms . . . 87

4.4.1 Semantic of Subscriptions and Queries . . . 87

4.4.2 Pull-Based Retrieval . . . 89

4.4.3 Push-Based Retrieval . . . 92

4.5 Evaluation . . . 93

4.5.1 Simulation Framework and Settings . . . 94

4.5.2 Tuning the Algorithms . . . 95

4.5.3 Impact of IPR, LRR and SA Mechanisms . . . 109

4.5.4 Critical Mass . . . 113

4.5.5 Messages Complexity . . . 118

4.5.6 Resilience to Failures. . . 130

4.5.7 Retrieval Performances . . . 131

4.5.8 Synthetic Human Mobility Traces Scenarios. . . 139

(14)

4.6 Discussion. . . 142

5 Hovering Information Middleware 147 5.1 Motivation and Objective . . . 147

5.2 Overview . . . 148

5.3 Requirements . . . 149

5.3.1 Functional Requirements . . . 149

5.3.2 Non-Functional Requirements . . . 150

5.4 Primitives . . . 151

5.5 Architecture . . . 153

5.5.1 Storage Component. . . 154

5.5.2 Retrieval Component . . . 155

5.5.3 Replicas Buffer Component . . . 156

5.5.4 Communication Component . . . 156

5.5.5 Mobility Component . . . 156

5.6 Mobile Applications . . . 156

5.6.1 Stick It Up . . . 157

5.6.2 Ad Hoc SMS . . . 158

5.6.3 Lost Keys . . . 159

5.6.4 Flee Market . . . 160

5.7 Implementation . . . 162

5.7.1 On the Android Platform . . . 162

5.7.2 Hovering Information Android Service . . . 163

5.7.3 Wireless Ad Hoc Networking . . . 168

5.8 A Running Mobile Application . . . 168

5.8.1 Implementation . . . 168

5.8.2 Evaluation . . . 169

5.9 Discussion. . . 170

6 Conclusions 171 6.1 Conclusions . . . 171

6.2 Future Work . . . 174

Appendix A Additional Simulations Results 177

Bibliography 185

(15)
(16)

List of Figures

1.1 Hovering Information . . . 3

3.1 LostKeys scenario. . . 39

3.2 Mobile nodes and communication range . . . 42

3.3 Hovering Information . . . 45

3.4 Hoverinfos and replicas . . . 48

3.5 Mobile applications . . . 50

3.6 Lifetime . . . 54

3.7 Lifetime and awake/dormant periods . . . 56

3.8 Availability area. . . 60

3.9 Survivability and availability . . . 61

3.10 Effective and potential accessibility . . . 64

3.11 Accessibility degree. . . 65

4.1 Simplified mobile nodes . . . 69

4.2 Simplified hoverinfo . . . 71

4.3 Simplified life cycle . . . 71

4.4 Populating. . . 76

4.5 Active/passive replicas and calibration . . . 78

4.6 Inside Proactive Replication . . . 80

4.7 Estimation of the density of active replicas . . . 82

4.8 Estimation of the probability of becoming active replica. . . 84

4.9 Leaving out Reactive Replication. . . 86

4.10 Self-activation of passive replicas. . . 88

4.11 Circular slots defined by DSDM . . . 91

4.12 Pull-Based Retrieval (PULLBR) . . . 91

4.13 Push-Based Retrieval (PUSHBR). . . 94

4.14 Impact of the slot time parameter . . . 97

4.15 Exploring several constant PAR values forrcommequal to 40m, 80m and 120m . 101 4.16 PAR vs. nodes for multiple communication ranges . . . 102

4.17 Density estimation histograms for multiple communication ranges . . . 103

4.18 Ideal density exploration for 350 nodes and a density gap of 0.5 . . . 105

4.19 Ideal density as a function of the communication range . . . 105

4.20 Density gap exploration for 350n and PAR estimation enabled . . . 106

4.21 Low safe density estimation . . . 107

4.22 Comparison between SAPRESA and its variants. . . 110 xi

(17)

4.23 Behaviour of IPR, LRR and SA throughout time (x-axis time in [s]) . . . 112

4.24 Flooding nature – behaviour throughout time (x-axis time in [s]) . . . 113

4.25 Replicas traces throughout time. . . 114

4.26 Number of sent messages for SAPRESA and its variants . . . 115

4.27 Availability behaviour and critical mass estimation . . . 117

4.28 Impact of the anchor radiusrH(in [m]) on the availability . . . 118

4.29 Number of sent messages for SAPRESA and AP* . . . 119

4.30 IPR sent messages vs. LRR sent messages . . . 120

4.31 Evolution throughout time of IPR sent messages. . . 121

4.32 IPR sent messages histograms . . . 122

4.33 Evolution throughout time of active (red), passive (blue) and all replicas (black) 124 4.34 Active replicas vs. nodes vs. communication ranges histograms. . . 125

4.35 Evolution throughout time of PAR . . . 126

4.36 PAR Histograms . . . 127

4.37 Number of active replicas and nodes inside the anchor area . . . 128

4.38 Evolution throughout time of the density samples (grey) and estimation (red) . 129 4.39 Failures and recoveries - 75% fail and recover -n=600 andrcomm=120m . . 132

4.40 Failures and recoveries - 75% fail and recover -n=600 andrcomm=40m . . . 133

4.41 PUSHBR: Matching rate and delay - local vs. neighbouring matching . . . 135

4.42 PUSHBR: Sent messages and optimisations . . . 136

4.43 PUSHBR: Matching delay histograms . . . 137

4.44 PULLBR: Matching rate and delay - local vs. neighbouring matching . . . 138

4.45 PULLBR: Sent messages and optimisations . . . 140

4.46 DSDM: Hops and circular slots. . . 141

4.47 2D histograms of SLAW and RDM mobility traces . . . 141

4.48 Synthetic human mobility traces scenarios: survivability (SV), availability (AV), accessibility (AC) and sent messages (SM). . . 142

4.49 Synthetic human mobility traces scenarios: IPR sent messages, PAR, density estimation and active/passive replicas traces -rcomm=40m . . . 145

5.1 Hovering information middleware abstraction . . . 148

5.2 Hovering information middleware deployment. . . 149

5.3 Hovering information middleware architecture. . . 154

5.4 The StickItUp mobile application. . . 169

A.1 Nodes density inside anchor area of radius 100m — histograms for scenarios with 350n . . . 177

A.2 Nodes density inside anchor area of radius 100m — histograms for scenarios with 600n . . . 178

A.3 PAR histograms with PAR estimation enabled — ideal density of 6.35 and den- sity gap of 0.5 forrcomm=40mandn=350 . . . 179

A.4 PAR histograms with PAR estimation enabled — ideal density of 6.35 and den- sity gap of 0.5 forrcomm=40mandn=600 . . . 180

A.5 PAR histograms with PAR estimation enabled — ideal density of 9.525 and density gap of 0.5 forrcomm=40mandn=350 . . . 181

A.6 PAR histograms with PAR estimation enabled — ideal density of 9.525 and density gap of 0.5 forrcomm=40mandn=600 . . . 182

(18)

A.7 Survivability, availability, accessibility, life duration of active replicas and sent messages for several variants of SAPRESA . . . 183 A.8 Survivability, availability, accessibility, life duration of active replicas and sent

messages for several variants of SAPRESA (cont’d) . . . 184

(19)
(20)

List of Tables

4.1 Parameters values . . . 96 4.2 The variants of SAPRESA . . . 109 4.3 Critical mass — minimum number of nodes . . . 119

xv

(21)
(22)

Introduction

1.1 Context and Motivation

In recent years, mobile technologies have evolved tremendously in what concerns networking infrastructure and mobile devices. In Europe, currently 3G UMTS cellular networks offer data services with bandwidths starting at 5.76 Mbps for HSUPA (3.5G) and up to 100 Mbps for LTE (3.9G), without forgetting the previous 2.5G standards like GPRS and EDGE. Moreover, on- going research targets the development of 4G technologies which should provide bandwidths ranging from 100 Mbps (high mobility) up to 1 Gbps (low mobility) [Ort07, Ste07, Edw08].

Besides the cellular networks, we have also seen an increasing interest on Mobile Ad Hoc Networks (MANETs) from the research community. Unlike cellular networks, MANETs do neither rely on any fixed infrastructure (e.g. routers, base stations, antennas) nor on a cen- tralised administration. Networks are set up in an ad hoc manner with mobile devices being in geographical proximity. Dynamic wireless links are created between those mobile devices which are in communication range. The topology of MANETs can change throughout time due to the movement of the mobile devices, making these networks self-configuring and self- organising. Moreover, the configuration of MANETs is minimal and their deployment is fast.

In practice, standards like 802.11x and Bluetooth already support ad hoc networking. Research on MANETs focus on routing protocols, broadcasting and multicasting, and data dissemina- tion [JDLM09, CGK+08, TL08, DB09]. MANETs undoubtedly expand the communication capabilities of mobile devices and they contribute to the evolution of the mobile networking technologies.

Regarding the mobile devices themselves, they have evolved in terms of computing, storage, networking capacities and most recently in their ergonomic features. Mobile phones currently on the market are equipped with processors reaching capacities of more than 1 GHz, storage capacities of more than 1 GB (RAM) and 32 GB (external storage), as well as several wireless networking interfaces to get connected to the 3G/3.5G/3.9G networks, local area networks (Wi- Fi), personal area networks (Bluetooth, ZigBee), and ad hoc networks (MANETs). Moreover, the ergonomic of mobile device is also evolving thanks to the touch pad technologies. Another aspect of mobile devices is the integration of geo-localisation systems as well as another sensors like accelerometers. Nowadays, it is almost a norm that mobile phones come equipped with built-in GPS receptors (another geo-localisation technologies exist such as the Galileo Project, Wi-Fi triangulation or Cricket [PCB00]). Overall, mobile devices are becoming powerful gad- gets which enable the creation of more and more innovative mobile applications.

1

(23)

The evolution of network technologies and hardware capabilities of mobile devices has given rise to new mobile applications and services which take advantage of these technological im- provements. Nowadays we can distinguish several types of mobile applications, ranging from the classical and simplest ones like text message exchange (SMS) to innovative and complex ones like watching video streams, interacting in social networks, sophisticated games, or simply browsing through the Web. An interesting domain for mobile applications is that of Location- Based Services (LBS) which have seen a resurrection during the last years after an earlier failure to enter the market in the 1990s [BKH08]. A LBS can be defined as a mobile application tak- ing advantage of the mobile user’s geographical location to tailor and deliver the related data and service (we can find more precise definitions in [VTV+01] and [BWN+08]). Several LBS applications like navigation systems or yellow pages are already deployed on the market.

Taking a users perspective, they are profiting from all these technological evolutions by hav- ing at their disposition more and more sophisticated mobile applications that provide them new ways of interacting with people, working, doing business or simply enjoying leisure time. How- ever, the role that users are playing is not only limited to the usage of mobile applications that consume information stored in centralised servers or databases. Users are also becoming pro- ducers of information to be consumed by another users. This shifting on they way of producing and consuming information has its roots on the Web technologies. Indeed, we are witnessing the so called phenomena User-Generated Content (UGC)1which has given a new dimension to the Web during the last years. Systems like Facebook, YouTube, Twitter and Wikipedia have enabled people to create, publish and share content such as messages, photos and videos, as well as building and maintaining personal and professional social networks. This schema has been already transposed to mobile users which are able to consume and produce information thanks to the Internet connection on their mobile devices. Besides only adapting desktop applications to mobile devices, research efforts further focus on developing innovative mobile services that make use of user generated content [KDN08] . As mentioned in [JVW08], easy creation, secu- rity, privacy and service sharing are some of the challenges that mobile services enabling UGC must face.

Mobile applications, and any system in general, rely on storing, retrieving and sharing in- formation with other mobile applications. In the current schema, this storage and share of in- formation is done through centralised servers and databases which are accessible through the networking infrastructure. However, all the previous evolutions — technological and users’ role

— lead us to imagine a new way of storing, retrieving and sharing information that will give rise to a new kind of mobile applications. These mobile applications will rely on a new type of infor- mation that will be generated by users in spontaneous and sporadic situations (UGC). This new type of information will be strongly linked to geographical regions where it has been generated and it will be relevant and meaningful at these geographical regions (LBS). Due to this strong relation with geographical regions (space) and spontaneous and sporadic nature (time), this new type of information will not be stored in centralised servers or databases but in the geographical regions themselves. Thus, this new type of information will be stored in devices, carried by people or objects, populating the geographical regions by making use of the storage, computing and networking resources of these devices (MANTEs). This new type of mobile applications and information will be useful in scenarios where infrastructure is not available (e.g. disaster areas, rural areas), fails (e.g. saturated networks in a specific or regular bases, hotspots, crowded areas), or is not suitable (e.g. cost free services, uncensored services). In other words, these new

1Also called User-Created Content (UCC)

(24)

type of mobile applications will generate, store, retrieve and share a new type of information through geographical regions without relying on any infrastructure but on MANETs. We call this domain persistent storage in MANETs and it is the main concern of this thesis.

1.2 Hovering Information

In the future, as supported by the current evolution of mobile technologies and users’ roles (cf.

Section 1.1), we can safely assume that daily life objects and people will be equipped with a mobile device having large memory capacity, computing power, connected to a wireless highly speed network, and having ad hoc networking capabilities. Eventually the world will become a fully interconnected network in which each person and object will be a node capable of creating, inserting, accessing, storing, processing or diffusing a new type of information. This information will no longer be stored in large centralised fixed servers, but it will be available everywhere in the environment. Eventually this information will detach itself from the physical media and will have the ability of staying attached to a location (in space and time) hovering from one storage device to another, or even moving from one place to another, as possibly specified by its creator, or defined by the information itself. This new type of information that we call“hovering information”, will not be linked to any storage device but will have an existence of its own, linked to a geographical location that we call its“anchor area”.

Figure 1.1: Hovering Information

In Figure1.1, we illustrate the concept of hovering information. In the bottom layer we can observe the geographical space populated by several types of mobile devices, carried by people or vehicles, and fixed devices. Two hovering informations exist, one stored in the blue area and the other in the green area, their anchor areas. On the layer of the middle, we observe that hovering information makes use of mobile or fixed devices populating its anchor area as actual storage devices. In this way, geographical areas can behave as storage places of information. In the figure, the hovering information X is only stored in the mobile device B while the hovering information Y is stored in mobiles devices D and G. The environment is considered to be highly dynamic and mobile devices may enter or leave an area, or simply fail or be turned off, requiring

(25)

information to jump from one device to another or replicating itself in order to stay stored and available at its anchor area. This behaviour is illustrated in the top layer of the figure in which mobile device B leaves the anchor area of hovering information X and the information jumps to mobile device C in order to stay at its anchor area.

The implementation of the hovering information concept has many implications ranging from social and cultural to technical and design issues. In the following paragraphs we ex- clusively present the technical issues, namely the life cycle, persistence and accessibility of hovering information, the collaboration of mobile users and mobile devices, and the trust and security of hovering information. We also highlight some related research questions.

Life Cycle The first issue to solve is defining the life cycle of hovering information whose behaviour is very different from that of the information we are used to. Several questions arise due to the sporadic, geo-localised, infrastructure-independence and ad hoc nature of hovering information. For how long a hovering information should exist? Should it be available through- out all its existence? What should a hovering information do whenever the last mobile device in its anchor area is leaving — die or stay dormant? Should a hovering information be modifiable or unique? Should several versions of a hovering information exist ? These are some of the questions to be solved when defining the life cycle of hovering information.

Persistence A second issue to solve is that of the persistence of hovering information. In a highly dynamic environment like MANETs, keeping hovering information persistent at its anchor area proves to be a challenge. It might happen at any moment that the only mobile device hosting hovering information leaves the anchor area and never comes back. In such a scenario, the information would disappear. The same situation occurs if mobile devices fail, run out of battery or they are simply turned off. Whatever the scenario is, we require hovering information to look for strategies of staying persistent at its anchor area accordingly to its life cycle.

Accessibility A third issue to solve is that of the accessibility of hovering information. Besides keeping hovering information persistent, the dual aspect is that of making it accessible to mobile applications willing to use it. While persistence is a necessary condition for accessibility, it is not sufficient. Indeed, hovering information might be persistent at its anchor area but not accessible to some mobile devices due to the absence of any 1-hop or multi-hop path between mobile devices willing to access a hovering information and a mobile node hosting it. In this case, we require hovering information to figure out strategies to stay accessible at its whole anchor area.

Collaboration A fourth issue to solve is that of collaboration of mobile devices and users.

Undoubtedly, the deployment of all the strategies that could arise from the persistence and ac- cessibility issues will require the collaboration of mobile devices and users. Indeed, mobile users must allow their mobile devices to collaborate with other mobile devices by sharing their storage, computing, networking and power resources. Without this collaboration, hovering in- formation will not be viable. The main question focuses on how to stimulate people or systems to collaborate and under what conditions. Moreover, it is also important to afford them some minimal guarantees in terms of privacy and security as collaboration implies opening some doors on the mobile devices.

(26)

Trust A fifth issue to solve is that of trust. The nature of hovering information is user generated evolving in a dynamic environment where mobile devices collaborate. While these factors make the basis for the existence of hovering information, they also represent a source of trust and security challenges. Focusing on trust, the question naturally arises on how to trust information created, stored, modified or diffused by other mobile users and devices. Malicious mobile users could easily introduce unreliable information with the aim of misleading other mobile users (i.e. a thief may attract his victims to a specific area). Therefore, developing trust strategies for hovering information is required.

Security A sixth issue to solve is that of security. First, due to the collaborative nature of hovering information, mobile devices are exposed to attacks from other malicious mobile de- vices. Second, it is also important to guarantee the privacy of mobile users in terms of data, behaviour and location. In both cases, mechanism to preserve security from attacks and privacy of information are required in order to deploy hovering information in a real world scenario.

1.3 Scope and Purpose of this Thesis

For the purpose of this thesis, we focus exclusively on three of the technical aspects of hovering information mentioned in Section 1.2: the life cycle, its persistence and accessibility. These aspects provide us with an essential base for the study of hovering information in general. The remaining research issues around collaboration, trust and security rely on this initial stage of study but as they open an entirely new area of investigation, it would exceed the scope of this thesis to include them in this initial investigation of hovering information.

By focusing on the life cycle, persistence and accessibility issues, the main research question that this thesis aims at answering is whether or not it is feasible to store and retrieve information from geographical regions without relaying on any infrastructure. Answering to this question starts by identifying and defining the concepts around hovering information, to then study the feasibility of hovering information by proposing and evaluating concrete storage and retrieval algorithms. The following paragraphs present in more detail the purpose and scope of these phases.

We first tackle the task of elaborating a formal model for hovering information in order to properly define the relevant concepts and use them as a basis for our analysis. The model aims at identifying the components that play a role in hovering information as well as defining and formalising the life cycle, the persistent and the accessibility of hovering information. The model represents a novel contribution as the domain of persistent storage in MANETs is recent and only some few related work have been done in parallel to this thesis by other researchers during the last years.

Once the model defined, the next stage is that of designing and proposing strategies to en- sure the persistence and accessibility of hovering information. In this thesis, this is translated into the design of a first set of storage and retrieval algorithms which can be categorised as op- portunistic algorithms due to their nature. They take advantage of the broadcasting nature of the communication channel and they opportunistically replicate hovering information into the mo- bile devices while taking care of not producing too much network overhead. With the aid of this algorithms and by means of simulations we then figure out the minimal conditions required by hovering information to exist in terms of density of mobile devices and communication range.

(27)

We also study the performances of the proposed algorithms in terms of messages complexity2, resilience to failures, convergence and stability. All the previous studies enable us to determine the feasibility of hovering information.

Finally, as a complement to the feasibility study of hovering information, this thesis intends to provide a proof-of-concept by designing a middleware for hovering information, implement- ing it and performing experiments with real mobile phones in small-scale real world scenarios.

Moreover, the design and implementation of a middleware aims at providing a code contribution for further research.

1.4 Contributions

We can summarise the main contributions of this thesis as follows:

• We have proposed and formalised a conceptual model for Hovering Information. We have first identified and defined the components that play a role in hovering information:

mobile nodes, hoverinfos, replicas, mobile application and mobile users. We have also defined the relation between these components. Secondly, we have identified and defined the concepts related to life cycle of hovering information: lifetime, awake and dormant periods, and multiplicity and versioning. We have then defined the concepts related to the persistence of hovering information. We have introduced the survivability and availability of hovering information. Finally, we have defined the concepts related to the accessibility of hovering information which are access paradigm, potential and effective accessibility, and accessibility degree. All the previous definitions set a formal framework for the study of the persistence and accessibility of hovering information.

• We have designed a storage algorithm and two retrieval algorithms for hovering informa- tion. All the algorithms take advantage of the broadcast nature of the wireless communica- tion channel so that they only use broadcast messages instead of unicast ones. Therefore, the storage algorithm has a flooding nature while self-regulating the number of messages sent through mechanism based on the existence of two types of replicas: active and pas- sive replicas. We have designed two retrieval algorithms, one for the push-based retrieval and the other for the pull-based retrieval. Both mechanisms also take advantage of the broadcasting nature of the medium while avoiding to produce too much network over- head. For this, both of them use a novel delaying mechanism and also optimise messages after hearing redundant ones.

• We have evaluated the proposed storage and retrieval algorithms through simulations and we have figured out the feasibilityconditions that the hovering information concept re- quires to be implemented. We have first investigated the critical mass required by hov- ering information to be persistent and accessible. Second, we have studied the messages complexity inherent to the proposed algorithms. We have also studied the resilience to failures of devices, the convergence and stability of the proposed algorithms. Finally, we have analysed the behaviour of the proposed algorithms in scenarios where devices move following synthetic human mobility traces. All the previous aspects lets us conclude the

2We use the termmessages complexityto refer to the asymptotic behaviour of the number of sent networking messages as a function of the density of nodes (i.e. the number of nodes). Thus, the messages complexity is expressed using the big O notation excluding coefficients and low order terms.

(28)

feasibility of hovering information and determine the minimal conditions for its deploy- ment.

• We have designed a hovering information middleware for mobile devices. We have iden- tified the functional and non-functional requirements of such a middleware, and we have then proposed a set of primitives and an architecture. We have also described the pseudo- code of some potential mobile applications that make use of the middleware in order to achieve their tasks.

• We have implemented the proposed middleware as an Android service and we have also implemented a mobile application that makes use of the middleware. We have then per- formed real small-scale experiments on three mobile phones as a proof-of-concept. We have verified that hoverinfos are actually created and kept persistent and accessible.

1.5 Thesis Overview

In Chapter2, we review and discuss the related work to this thesis. As the domain of research of hovering information — persistent storage over MANETs — has only received more spe- cific attention during recent years, not that much work tackles this domain directly. Thus, we explore closer domains in order to gather ideas, concepts, formalisms, algorithms, mechanisms and protocols that help us in studying hovering information. More precisely, we review works on information dissemination, information storage, data replication, routing and other miscella- neous approaches.

In Chapter3, we propose a model for hovering information. In this model, we first identify and formalise the components of hovering information. We then identify and formalise the concepts related to the life cycle, the persistence and the accessibility of hovering information.

We also describe and formalise the relation that may exist between the different concepts of the model. Finally, we position the model in the related work and discuss additional details.

In Chapter 4, we carry out a feasibility study of hovering information by designing stor- age and retrieval algorithms and finding the minimal conditions by means of simulations. We also evaluate the performances of the proposed algorithms in terms of network overhead, con- vergence, stability and resilience to failures. At the end of the chapter, we discuss about these minimal conditions and performances.

In Chapter5, we provide a proof-of-concept for hovering information by designing a middle- ware for hovering information, implementing it and performing a proof-of-concept experiment in a limited real world scenario. The implementation is done for the Android platform. We then lay out some conclusions about a real implementation of hovering information.

Finally, in Chapter6, we conclude this thesis by first reviewing the main contributions and results of this thesis, and then by proposing further improvements to the current work and future research directions that might emerge from this thesis.

(29)
(30)

Related Work

In this chapter we provide a review of the related work to this thesis. While persistent storage in Mobile Ad Hoc Networks (MANETs) has not been widely addressed in previous research, we have reviewed concepts, techniques, methods and algorithms from several closely related domains. In Subsection2.1, we review the algorithms related with information dissemination.

In Subsection2.2, we review the algorithms related with information storage, caching, sharing and replication. In Subsection2.3, we review the algorithms related with routing in MANETs.

In Subsection 2.4, we review miscellaneous related work. And finally, in Subsection2.5, we discuss the reviewed related work.

2.1 Information Dissemination

Information dissemination on mobile ad hoc networks has been extensively addressed. The main goal is that of disseminating information to a community of nodes which are located in a geographical region. Depending on the aim of the user application, target nodes may be all of the nodes of the region or a subset of them, the latter is known as selective dissemination. For instance, in vehicular ad hoc networks, traffic reports are constantly disseminated among cars passing through a precise route in order to help them to avoid traffic jams. While dissemina- tion may be achieved with the help of fixed infrastructure like infostations in the case of route traffic reports, the process itself of dissemination is a decentralised one which can be classified in flooding and epidemic or gossiping approaches accordingly to the way how information is disseminated from one node to another.

2.1.1 Flooding and its Variants

Flooding is the most simple and effective way of disseminating information through out the entire network. In the simple flooding approach, also called plain flooding, each host receiving a packet makes a copy of the packet and re-broadcasts it. In order to avoid infinite loops, each new packet to be flooded is marked with a source address (i.e. the host that initiates the flooding) and a sequence number. A packet can be then uniquely identified. Each host that receives a packet to re-broadcast is able to check whether it has already received and re-broadcasted the packet based on these two attributes [PR99, JMB01, JHM07] (this approach is also used in fixed networks [Tan96, KR08]). All the hosts of the network will eventually receive the packet provided the network is connected. While the plain flooding is simple and effective, the

9

(31)

major drawback is the high network overhead – the messages complexity1isO(n)– which might induce a broadcast storms problem as described in [NTCS99]. A broadcast storm problem refers to serious redundancy, contention and collision levels that may arise from plain flooding due to high number of messages that may be exchanged.

In the following paragraphs, we present two categories of variants of flooding which aim at overcoming the broadcast storm problem that plain flooding suffers from. The first category proposes methods that aim at decreasing the redundancy of messages as much as possible. The second category proposes similar approaches but they are adaptable to the density and speed of hosts which has an impact on the performances of flooding.

Simple Heuristic Variants

In [NTCS99], authors have proposed several variants of flooding in order to overcome the broad- cast storm problem. The main idea behind all of them is to inhibit a host from re-broadcasting a message whenever it considers that the re-broadcasting will not cover additional nodes and it will rather increase the chances of contention or collision. In the first approach, the probabilistic scheme, a host re-broadcasts a message with probabilityPafter having waited for a small ran- dom number of slots. The scheme is similar to the classical flooding whenP=1. In the second approach, the counter-based scheme, a hosts that receives a message waits for a random number of slots before re-broadcasting the messages. While waiting, the host might receive the same message from a neighbouring host that re-broadcasted it. In such a case, the host increases a counter of redundant received messages and it stops the re-broadcasting if the counter is above a certain maximum counter threshold. The distance-based scheme works in a similar way to the counter-based scheme. However, instead of counting the redundant received messages, it takes into consideration the distance of sender hosts. More precisely, when a host receives a messages it estimates the distance of the sender host using the signal attenuation. It then updates a min- imum sender distance. Whenever this minimum sender distance is below a certain minimum distance threshold, the host aborts the re-broadcasting because it considers that the additional coverage would be insignificant. The location-based scheme works also in a similar way to the counter-based scheme. It takes advantage of the geo-localisation capabilities of hosts. When a host receives a messages, it estimates the additional covered area based on the geographical locations of the sender and the previous senders (i.e. each host sends its location along with the message). If the additional coverage is below a certain additional coverage threshold, the host stops the re-broadcasting. The different thresholds for the previous schemes are fixed parameters whose value were figured out analytically and through simulations in [NTCS99]. There is a fifth approach by the same authors – the cluster-based scheme. Each host assumes the existence of an underlying clustering algorithm as the one described in [JLT99] (we review several clustering algorithms in Subsection2.3.4). A cluster is composed of three types of hosts: a cluster head, gateways and members. A gateway host is able to communicate between two clusters. Based on these structure of clusters, the cluster-based scheme makes only cluster heads and gateways to be able to re-broadcast a message. Moreover, the previous described schemes can be also applied to this scheme, taking into consideration only cluster heads and gateway.

Finally, In [SCS03] authors propose a simple probabilistic flooding algorithm: each node

1We use the termmessages complexityto refer to the asymptotic behaviour of the number of sent networking messages as a function of the density of nodes (i.e. the number of nodes). Thus, the messages complexity is expressed using the big O notation excluding coefficients and low order terms.

(32)

re-broadcasts a message with probability pafter receiving it. Although this approach is similar to the probabilistic scheme discussed above, authors studied the flooding process from a phase transition phenomena point of view using percolation theory and random graphs. Through sim- ulations, they proved that the success rate (defined as the ratio of distinct packets received at each node by the total number of distinct packets broadcasted in the network, averaged across all nodes) presents a phase transition when pis around 0.59 in an ideal network (i.e. no channel interference). However, in real MANETs conditions which are prone to packet collisions, they did not find any effect similar to a phase transition phenomena. The success rate grows rather linearly with p. However, in high density scenarios, the behaviour looks like a bell curve as beyond a value of 0.1 for pthe success rate degrades due to packet collisions. They concluded that in high density scenarios the probabilistic flooding enhances the flooding process when pis carefully set, while in low density scenarios a probabilistic approach is not efficient.

Adaptive Schemes

An adaptive version of some of the flooding variants described in the previous subsection has been presented in [TNS03]. Indeed, the drawback of previous schemes is the reliance on fixed values for the maximum counter, minimum distance and minimum additional coverage thresh- olds. This fixed values are not well adapted to the density of hosts. Therefore, the authors proposed three new schemes called adaptive counter-based scheme, adaptive location-based scheme and adaptive neighbour-coverage scheme. For the first two schemes, which are ex- tension of counter-based and location-based schemes, the maximum counter thresholdC(n)and minimum additional coverage thresholdAC(n)depend on the current number of neighbours of a host, which isn. Intuitively, authors mention that the re-broadcasting should be reinforced in sparse networks and inhibited in dense networks. They propose concrete functions forC(n)and AC(n)which are the result of a tuning process through simulations and analytical analysis. The adaptive neighbour-coverage makes use of 2-hop neighbourhood information which is obtained through underlying neighbours discovery algorithms (one method is based on broadcasting pe- riodically beaconing hello messages along with the list of neighbours). Thanks to the previous underlying mechanism, each hostxmaintains a setNxof its 1-hop neighbours and for each host h∈Nxa setNx,hcontaining the 1-hop neighbours ofh(thus some 2-hop neighbours of hostx).

Whenever a hostx receives for the first time a message from a hosth, it initialises a setT as T =Nx−Nx,h−hwhich is the list of pending hosts having not received the message as view from hostx. Then, the hostxdelays the re-broadcasting of the message for a random number of slots. While waiting, if the hostxreceives a redundant message from a hosth, it updatesT asT =T−Nx,h−h. Whenever the set T is empty, which means that there is no more 1-hop neighbours having not received the message, the host x is inhibited from re-broadcasting the message. Otherwise, the waiting is resumed.

Finally, the adaptive flooding approach proposed in [VO02] follows a different direction. A host participating in a flooding process switches between three types of flooding algorithms as a result of the current speed of the host. The first type of flooding is called scoped flooding. Each host maintains a list of 2-hops neighbourhood information in a similar way to how the adaptive neighbour-coverage scheme described above does. Whenever a host receives a message, it does not re-broadcast the message if its set of neighbours is a subset of the neighbours of the host from which it received the message (in practice the condition is satisfied whenever both sets overlap on more than 85% of their hosts). The second algorithm is called hyper flooding. Through

(33)

a beaconing mechanism, each host maintains a 1-hop neighbours list. The first time a host receives a message, it re-broadcasts the message (plain flooding). However, the host also stores the message into its messages cache. Whenever the host receives a hello message (beaconing) or a message (to flood) from a new host (not belonging to its current list of neighbours), the host re-broadcasts all the packets stored in its cache. The idea behind this is to make sure that any new host will get the message as part of the flooding. The third algorithm is simply the plain flooding. A host continuously switches between these three flooding algorithms based on its current relative speed which is computed thanks to the additional velocity information carried by the hello messages. Whenever the relative speed is lower than 10m/s, a host switches to scoped flooding. If the relative speed is higher than 25m/s, it then switches to hyper flooding.

Otherwise, it switches to plain flooding. The idea behind this is that at higher speed of nodes, greater the chances of missing a message, and vice-versa. The speed thresholds have been determined through simulations by the authors.

2.1.2 Epidemic Dissemination and Gossiping

Epidemic dissemination is inspired on the spreading of infectious diseases. However, the aim of epidemic dissemination is to rapidly spread some data to all nodes of the network whereas the study of epidemics in biology aims at preventing infectious diseases from spreading across large groups of people. The epidemic theory has been first applied in the domain of distributed systems and networking (propagating updates in distributed databases [DGH+87, KSSV00], failures detection[VRMH98], data aggregation, resource discovery and monitoring[VRBV03], broadcasting and multicasting[BHO+99, EG02]). Moreover, several works have focused on studying different mathematical aspect of epidemic dissemination (branching processes, finite population models [Bai75], proportion of infected processes , probability of atomic infection, latency of infection [Pit87]). Regarding the domain of MANETs, the epidemic dissemination has been mainly applied to disseminate information. The following paragraphs describe the main approaches.

In large scale populations of hosts, we use a deterministic compartmental epidemic model [KBTR02]. The dissemination (epidemical infection) of some information throughout the whole network is triggered by one host. All hosts have a state: susceptible of infection (S), infected (I) and recovered (R). Those host which are able to receive the information and store it are susceptible of infection. Those host which actually host the information are infected. Those hosts which removed the information from their buffer are recovered. A system of differential equations may describe the evolution of hosts (through the states) throughout time. An important parameter of the model is the infection rateβ which defines the rate at which a host get infected.

The following paragraphs describe two algorithms which are based on these type of models.

In [SMML07], authors proposed a controlled dissemination algorithm for human wireless networks (Epcast). Whenever a host receives a new data to disseminate, it also receives the percentage of nodes that should receive the data (the total number of nodes is known) and the time limit to propagate the data. Based on this information, the host computes the infection rate λ by relying on a three compartmental SIR-model (Kermack and McKendrick model [AM92]).

More precisely, the host numerically solves the following system of differential equations which

(34)

describes the SIR-model: 









dS(t)

dt =−βS(t)I(t)

dI(t)

dt =βS(t)I(t)−γI(t)

dR(t)

dt =γI(t)

S(t) +I(t) +R(t) =N

(2.1)

where S(t), I(t) and R(t) are respectively the number of susceptible, infected and recovered hosts at timet,β is the average number of contacts with susceptible hosts which induces a new infected host per unit of time per infected, andγis the average rate of recovered of infected hosts per unit of time per infected in the population. Using the percentage of node that should receive the data (get infected) and the time limit as the limits of the system, theβ parameter is tuned.

Moreover, assuming a homogeneous network structure,β is expressed asλ<k>N where<k>is the average network degree. In this way, the infection rateλ is computed, which is then used as the constant infection rate when propagating the data. Theγ parameter is fixed defined by the buffering properties of the host (if the host never removes data, thenγ=0).

In [KBTR02] authors propose a dissemination algorithm which is based on SPIN-1 (Sensor Protocol for Information via Negotiation [HKB99]). Whenever a host gets some data to be disseminated, it advertises a summary of its data entities to its neighbours. Neighbouring hosts then request the data which they are interested in. The advertising host send the requested data. In order to study the impact of the density of hosts on the infection rate of the algorithm, authors proposed a two compartmental SI-model which is described by the following system of differential equations:





dS(t)

dt =−aS(t)I(t)

dI(t)

dt =aS(t)I(t) S(t) +I(t) =N

(2.2) whereS(t)andI(t)the number of susceptible and infected hosts respectively,ais the infection rate, and N is the total number of hosts. They found that the infection rate increases with the density of hosts until reaching a maximum to then start decreasing. This maximum is the optimum density of hosts. Assuming a uniform distribution of hosts, they found that the mean number of optimum neighbours is 10.95, threshold at which the highest infection rate is reached.

This optimum number of neighbours is very similar to the optimum network degree, 10, found in [RMsM01] for delivering the maximum data packets in MANETs (the optimum network degree is 6 when hosts are fixes [KS78]). Following a similar approach, a host may compute the infection rate for different algorithms and switch between them when the density and size of the network changes.

Finally, Autonomous Gossiping (A/G) [DQA04] is a type of epidemic algorithm for se- lective dissemination of information. A/G does not require any infrastructure or middleware like a multicast tree and (un)subscriptions maintenance (for publish/subscribe). It rather uses ecological and economic principles in a self-organising manner in order to achieve any arbi- trary selective dissemination (flexible casting). The trade-off of using a stateless self-organising mechanism like A/G is that it does not guarantee completeness deterministically like other se- lective dissemination schemes (e.g. publish/subscribe schemes). Such incompleteness is not a problem in many non-critical real-life civilian application scenarios and realistic node mo- bility patterns, where the overhead of infrastructure maintenance may outweigh the benefits of completeness.

(35)

2.1.3 Data-Centric Routing

In this subsection we review algorithms that aim at gathering data from sensors in a Wireless Sensor Network (WSN). When a sensors detects some event, this event (i.e. all the data de- scribing the event) is either sent to a Base Station (BS) or it is stored in the sensornet2. We can then identify three types of canonical storage methods: external storage (ES), local storage (LS) and data-centric storage (DCS). Whenever a node3, called the sink node or sink, in the sensornet or an external node wants to gather data matching an interest, the node either sends the interest to a BS or to the sensornet depending on where the event is stored. In the sec- ond case, when the event is stored in the sensornet, the sink node must disseminate the query throughout the entire sensornet or some region. In response, nodes storing events that match the interest (this nodes are called source nodes) send back the respective event to the sink node.

We are then talking about two problems: routing interests towards nodes where events matching these interests are stored, and routing events matching interests towards the nodes that initi- ated those interests. It is important to notice that the routing decisions are based on interests and events instead of network addresses of nodes. That is why it is called data-centric routing.

Several works have been proposed in the literature and comprehensive surveys can be found in [YMG08,AKK04,ASSC02,AY05]. In the following paragraphs we present some of these works.

Before presenting the data-centric routing algorithms, it is pertinent to mention three as- pects. First, in general authors have structured the content of interests and events as sets of pairs (attribute,value). Second, some authors have named interests as queries. In the rest of this subsection, we will mainly use the terms interest and event. However, it may happen, when necessary, that we use the terms query and data event to refer to interest and event respectively.

And third, another approach of gathering events from WSNs has been proposed in the literature.

In this approach, an event is not necessarily stored in the node that detected the respective event but in nodes being located in or around geographical locations associated to the data (generally through a hash functions that maps data to locations). In this way, interests must be routed to- wards these geographical locations instead of flooding the entire sensornet. This approach is called data-centric storage and we will discuss about it in Subsection2.2.3.

In [IGE00], authors proposed Directed Diffusion. An interest can be inserted at any node of the network, this node becomes the sink for that interest. The sink initiates a propagation of the interest throughout the network. The key point during this propagation is that gradients are set up in order to pull down events matching the interest. Flooding or geocasting mechanisms can be used to propagate an interest. Each node that receives an interest from another node stores the interest by creating an interest entry in its table of interests (if not yet stored) and sets up a gradient towards the node that sent the interest. A gradient is a pair(value,direction)where value is application-specific and direction refers to the sender node. During this propagation process, a complete or partial redundancy of interests may exist and in that case interests are aggregated (in-network aggregation). Any node may also determine when to remove interests from its cache (i.e. table of interests) based on the lifetime and timestamp of these (lifetime and timestamps are generated at the sink). Regarding the events, when a source node detects an event that matches an interest stored in its table of interests, the source node initiates a propagation of the event towards the sink of the interest by relying on the gradients set up during the propagation

2we also use the word sensornet to describe a network of sensors or a WSN.

3we also use the word node to refer to a sensor because it is part of a network.

Références

Documents relatifs

Since the main applica - tion of the tertiary storage devices is to back up multimedia objects from computers, the objectives of the contiguous method are (1) to support back up

Mapping file -Must interpret Amaya templates -Composition of three services (label, constraint and structural matching) -Must interpret and use CoPs ontologies,

Large Classification : MSP II (D) In the case of SIP products including S4/S73. products or In case separate sales codes are needed at

Hovering information differs from traditional P2P or MANET storage in the sense that hovering information is the &#34;active&#34; dcment: the peers or the nodes of a MANET are

The hovering infonnation concept integrates research and technologies from different areas in mobile and wireless communications, and nrunely location based Services (LBS),

Compte tenu de l’augmentation constante des besoins en connectivité mobile et afin de répondre aux besoins des abonnés et collectivités et contribuer à

Dans le cadre de ses licences d’opérateur mobile, Free Mobile a, envers l’Autorité de Régulation des Communications Electroniques et des Postes (ARCEP), des

Dans le cadre de ses licences 3G (Haut Débit Mobile) et 4G (Très haut Débit mobile), Free Mobile s’est engagé à répondre à la forte demande de la population en faveur de