+ All Categories
Home > Documents > BroadcastinginOpportunistic Networks - unimi.it

BroadcastinginOpportunistic Networks - unimi.it

Date post: 26-Oct-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
116
DOTTORATO DI RICERCA IN I NFORMATICA XXI CICLO SETTORE SCIENTIFICO DISCIPLINARE INF/01 I NFORMATICA Broadcasting in Opportunistic Networks Tesi di Dottorato di Ricerca di: Francesco Giudici Relatore: Prof. Elena Pagani Correlatore: Prof. Gian Paolo Rossi Coordinatore di Dottorato: Prof. Ernesto Damiani Anno Accademico 2007/2008
Transcript
Page 1: BroadcastinginOpportunistic Networks - unimi.it

DOTTORATO DI RICERCA IN INFORMATICA

XXI CICLO

SETTORE SCIENTIFICO DISCIPLINARE INF/01 INFORMATICA

Broadcasting in OpportunisticNetworks

Tesi di Dottorato di Ricerca di:

Francesco Giudici

Relatore:Prof. Elena Pagani

Correlatore:Prof. Gian Paolo Rossi

Coordinatore di Dottorato:Prof. Ernesto Damiani

Anno Accademico 2007/2008

Page 2: BroadcastinginOpportunistic Networks - unimi.it

Contents

1 Introduction 1

1.1 Mobile Ad hoc NETworks (MANETs) . . . . . . . . . . . . . . . 1

1.2 Delay and Disruption Tolerant Networks . . . . . . . . . . . . . . 2

1.2.1 Bundle Layer Protocol and Architecture . . . . . . . . . . 3

1.3 Routing in ONs . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4 Considered Scenario and Assumptions . . . . . . . . . . . . . . . 8

2 Mobility Models 10

2.1 Synthetic Mobility Models . . . . . . . . . . . . . . . . . . . . . 10

2.1.1 The Random Walk Mobility Model . . . . . . . . . . . . 11

2.1.2 The Random Waypoint Mobility Model . . . . . . . . . . 11

2.1.3 The Aggregation Mobility Model . . . . . . . . . . . . . 12

2.1.4 The Reference Point Group Mobility Model . . . . . . . . 13

2.1.5 The Swarm Mobility Model . . . . . . . . . . . . . . . . 14

2.2 Trace-based Mobility Models . . . . . . . . . . . . . . . . . . . . 14

2.2.1 Weighted Waypoint Mobility Model . . . . . . . . . . . . 15

2.2.2 RealMobGen Mobility Model . . . . . . . . . . . . . . . 15

2.2.3 Two Level Social Mobility Model . . . . . . . . . . . . . 16

2.3 Opportunistic Networks and Mobility . . . . . . . . . . . . . . . 17

2.3.1 Pocket Mobility Trace Recorder (PMTR) Testbed . . . . . 18

2.3.2 Mobility Assumption . . . . . . . . . . . . . . . . . . . . 22

3 Broadcast in ONs 23

3.1 Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

I

Page 3: BroadcastinginOpportunistic Networks - unimi.it

3.2 Epidemic Approaches . . . . . . . . . . . . . . . . . . . . . . . . 25

4 Time-Driven Epidemic Approaches 33

4.1 Gossip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.2 Anti Entropy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.3 Performance Evaluation . . . . . . . . . . . . . . . . . . . . . . . 35

5 Encounter-Driven Epidemic Approaches 46

5.1 Zero-Knowledge Epidemic Approaches . . . . . . . . . . . . . . 47

5.1.1 Encounter-Based Gossip: P-BCAST . . . . . . . . . . . . 47

5.1.2 Broadcasting in ONs: the goals . . . . . . . . . . . . . . 55

5.1.3 Self-Adapting Broadcast Protocol: SA-BCAST . . . . . . 57

5.2 Full-Knowledge Epidemic Approaches . . . . . . . . . . . . . . . 71

5.2.1 History-Based Broadcast Protocol: HP-BCAST . . . . . . 73

5.2.2 Full-Knowledge Broadcast Protocol: FK-BCAST . . . . . 84

5.3 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6 Epidemic Approaches and Mobility Models 92

6.1 The Random Waypoint Model . . . . . . . . . . . . . . . . . . . 93

6.2 The Aggregation Model . . . . . . . . . . . . . . . . . . . . . . . 95

6.3 The Swarm Model . . . . . . . . . . . . . . . . . . . . . . . . . 99

6.4 The Two Level Social Mobility Model . . . . . . . . . . . . . . . 102

7 Summary and Outlook 105

II

Page 4: BroadcastinginOpportunistic Networks - unimi.it

Chapter 1

Introduction

Thanks to the diffusion of both built-in wireless capabilities in laptops and low cost

access points, it is quite easy nowadays to find wireless networks in public places

and private houses. Moreover, cellular networks are able toprovide ubiquitous

communication services through data transfer protocols (e.g., GPRS or UMTS).

All these wireless technologies rely on a centralized infrastructure to work:

cellular network devices should connect to cell repeaters;WiFi [48] networks rely

on access points that manage communications among stations. While wireless

technologies based oninfrastructureare mature and new standards with increased

performance, such as bandwidth (draft IEEE 802.11n) and security (IEEE 802.11i)

are being adopted, the exploitation of distributed multi-hop connectivity among de-

vices without the need of any centralized infrastructure (ad hoc networking) is an

ongoing research. The research has started investigating protocols to allow com-

munication among mobile nodes, i.e., the mobile ad hoc network (MANET) envi-

ronment, and pushed toward more and more specialized and challenging wireless

scenarios, likeVehicular ad Hoc Networks (VANET), Delay Tolerant Networksor

Opportunistic Networks (ON).

1.1 Mobile Ad hoc NETworks (MANETs)

Mobile ad hoc networks (MANETs) are wireless networks wherenodes can move,

thus allowing dynamic establishment and disruption of links among hosts. In such

1

Page 5: BroadcastinginOpportunistic Networks - unimi.it

scenario paths between pairs of nodes may change quickly, requiring the adoption

of adequate routing algorithms. Some adaptations of well known algorithms have

been proposed [39, 9]. Anyway, assumptions on nodes characteristics, like average

speed and resources availability, allow more efficient solutions aimed at specialized

scenarios.

In the Vehicular ad Hoc Network (VANET) environment [19], where nodes are

vehicles, adopted protocols do not have particular energy,storage or computational

saving requirements. In this kind of MANET, nodes can reasonably be equipped

with GPS devices able to provide geographic location knowledge. This information

can be exploited to adopt position-based routing approaches [35] able to increase

performance in the VANET specific environment.

An interesting, emerging scenario is that ofChallenged Networks, where the

assumption of (almost) always available connectivity doesnot apply anymore. In

2003, a novel overlay network architecture has been proposed, able to allow com-

munication among differentchallenged networks[15] when high latency is toler-

ated (i.e., the network isdelay tolerant): this brought to the birth of theDelay and

Disruption Tolerant Networksresearch topic.

1.2 Delay and Disruption Tolerant Networks

In the last years, research has mainly focused on several networking scenarios

where traditional routing protocols fail, due to environment characteristic, such

as:

• Intermittent Connectivity: an end-to-end path between a source and a desti-

nation may not be available.

• Long or Variable Delay: transmissions could be affected by long propagation

delay. Moreover, data can remain in a node’s queue for variable time. Both

these characteristics affect end-to-end delay that can become so high that a

timely reception of acknowledgments or data, required by many traditional

network protocols, cannot be ensured.

2

Page 6: BroadcastinginOpportunistic Networks - unimi.it

• Asymmetric Data Rates: communication between peers can be asymmetric.

In the worst case, communication is uni-directional.

• High Error Rates: bit errors on links require correction or retransmission.

The higher the error rate, the higher the number of retransmissions needed.

Traditional network protocols are not able to deal with the issues described above.

Delay and Disruption Tolerant Networks(DTNs) [47] protocols overcome these

problems adopting astore, carry and forwardapproach. When a new messagem

is received, a node keeps it in itspermanentstorage till the next hop is eventually

available. The usage of permanent storage is required becausemcan remain in the

node’s memory for a very long time. In this way, if in the meanwhile the node is

switched off (due to battery consumption, to an energy saving policy or just to a

fault) m is not lost.

The Delay Tolerant Networking Research Group(DTNRG) [26] has defined

a delay tolerant network architecture [7], theBundle layer. In order to allow

inter-communication among thesechallenged networks, which can be composed

by highly heterogeneous devices (e.g., sensors, PDAs, cellular phones, laptops, or

even cars and aircrafts) equipped with different wireless technologies (Bluetooth,

WiFi, acoustic communications or non-standardized radio solutions), an overlay

network has been proposed as viable solution. In this way, the DTN overlay can

be deployed over existing network protocols able to deal with the peculiar charac-

teristics of each specific challenged network. The DTN architecture specification

defines the services that should be provided in a DTN overlay.The DTNRG has

also defined the format of the messages exchanged in the DTN overlay: this is

known as theBundle protocol [41].

1.2.1 Bundle Layer Protocol and Architecture

On top of the bundle layer, applications can exchange messages of variable length,

which are calledADUs: Application Data Units. The ADUs delivery order is

not preserved. ADUs are transformed by the bundle layer intoprotocol data units

calledbundles, which are exchanged by DTN nodes. Bundles can be fragmented

3

Page 7: BroadcastinginOpportunistic Networks - unimi.it

into other bundles, which are called bundle fragments; fragments can be joined in

any point of the DTN obtaining a bundle.

Nodes can be members of groups calledDTN endpoints, which can be used

as destinations for the bundles. Each DTN endpoint is identified by anendpoint

identifier (EID), which is a name expressed syntactically as aUniform Resource

Identifier (URI) [3]. A common example of URI are e-mail addresses: these could

be used to uniquely identify each user.

A bundleb is considered successfully delivered to a DTN endpointX when a

minimum subsetSof nodes belonging toX has receivedb without error.Sis called

the minimum reception group (MRG) of b. Depending onS, transmissions can be

unicast (S is a single node), multicast or broadcast (S= X, which is composed by

all the nodes of the network).

Each bundle is made up of two or moreblocks. The first block is alwaysthe

primary bundle block(PBB), while the others are payload blocks and contain the

data coming from the application level. The PBB contains information used for the

routing task of the bundle protocol, like:

• The source and destinationEIDs, stored as two separate lists of variable

length.

• The creationtimestamp, composed by the time (expressed as the number

of seconds elapsed from the start of year 2000 on the Coordinated Universal

Time (UTC) scale) at which the bundle transmission has been received, and

a sequence number.

• The lifetime of the bundle, which indicates the time at which the bundle

payload will no longer be useful.

The essential assumption in the DTN architecture is that a bundleb persistsa long

time in a node queue, possibly till the end of its lifetime, and DTN nodes keepb in

persistent storage, like disks or flash memories, so that stored bundles can survive

system restarts.

The bundle layer protocol defines three delivery priority classes that can be as-

sociated to bundles, namely thebulk, normal andexpeditedclass.Bulk bundles

4

Page 8: BroadcastinginOpportunistic Networks - unimi.it

have the lowest priority.Normal bundles have higher priority of the bulk ones

but lower priority than theExpedited bundles. No bundles of a certain class are

shipped until all other higher priority class bundles with the same source and desti-

nation endpoints have been shipped. In [7], several delivery options are specified,

in order to enforce acknowledgments among nodes for bundlesdelivery and in-

termediate progression, or to allow enhanced delivery reliability. Moreover, the

notion of contact is introduced: a contact is a time interval in which a link be-

tween a couple of nodes has a transmission capacity higher than zero that can be

considered constant. This enables a classification of contact types:

• Persistent Contact: is an always available contact. An always-on Internet

connection such as ADSL is an example of persistent contact.

• On-Demand Contact: some action is required in order to establish the con-

tact. Once established, the contact is persistent until terminated. A dial-up

connection to an Internet provider can be an example.

• Intermittent - Scheduled Contact: this is an agreement to establish a contact

at a given time and for a certain interval. An example could bea link with

an earth-orbiting satellite.

• Intermittent - Opportunistic Contacts: these are unplanned contacts that hap-

pen unexpectedly. An example can be the unplanned establishment of a

link between two personal digital assistance devices (PDAs) carried by users

walking nearby. The contact will last until users move far away from each

other so that devices exit their respective radio ranges.

• Intermittent - Predicted Contacts: these contacts are not based on fixed

schedule, but are prediction of probable contact times and duration based

on some acquired knowledge, like the history of previous observed contacts.

We identify asOpportunistic Networks(ONs) those DTN networks where contacts

are solely of the typeIntermittent - Opportunistic. In this thesis, we will focus on

the ON environment only.

5

Page 9: BroadcastinginOpportunistic Networks - unimi.it

1.3 Routing in ONs

In the critical opportunistic network scenario, the research has mainly focused on

providing unicast communication. To allow communication between nodes be-

longing to different network partitions, a viable solutioncan be the establishment

of one or more moving nodes acting asdata mule, i.e., carrying bundles from one

partition to another. One of the best known data-mule-basedsolutions is theMes-

sage Ferrying approach(MF) [51]: connectivity between out-of-range nodes on a

broad area is provided by means of special roaming nodes, namely message ferries,

conveying packets. Two different communication schemes can be adopted: the

Node-Initiated Message Ferrying(NIMF), and theFerry-Initiated Message Fer-

rying (FIMF). In the NIMF approach, ferries move according to specific routes

known by other nodes. A node with a packet to send is required to move near the

ferry route and exploits the meeting to forward the message using a short range

radio. In the same way, each node that is a potential receivershould move near the

ferry route to retrieve packets. Ferries sendHello messages (beacons) at periodic

intervals to notify their presence. When a node receives a beacon, it will reply with

anEchomessage, so that the ferry is aware that the node is in radio range and the

data exchange can take place.

In the FIMF approach, each node needs a long range radio beside the short

range one. The ferry starts moving on a default route. When a node has a message

to transmit and understands that the ferry is in range for thelong range radio, it

sends aService Requestspecifying its own position. The ferry changes its route in

order to meet the node; at the meeting point data is exchangedthrough the short

range radio and the ferry goes back on its default route.

The message ferrying approach has been successfully adopted by the DakNet

project [38] in the rural India by means of Mobile Access Points (MAPs) using

IEEE802.11 radio connectivity mounted on vehicles moving from one village to

another, where traditional connectivity cannot be provided. In each village, an

Internet point has been established to collect asynchronous messages from the in-

habitants. When a MAP passes nearby an Internet point, data are exchanged in

both directions. The establishment of this asynchronous wireless system allows

6

Page 10: BroadcastinginOpportunistic Networks - unimi.it

users to send voice messages, e-mails, and documents exploiting buses, cars, or

even bicycles equipped with an energy generator. This savesthem many days of

travel to speak with their families or friends or to send and retrieve documents and

data.

The MF approach requires the introduction of message ferries that move ac-

cording to node transmission needs in order to enforce communications in the net-

work. Moreover, nodes should be position-aware and requireGPS-like positioning

devices. This solution suits well when there is the need of providing communica-

tion among far away geographic locations, as villages in rural India are, and energy

saving is not a primary issue. Anyway, when message ferries are not available or

communication should be deployed among nodes spread in undefined locations,

this solution cannot be adopted. Moreover, this solution does not scale: if the

nodes number increases, more message ferries should be usedin order to preserve

communication services.

To enable delay tolerant connectivity in generic ON environments, cooperation

of all available nodes in the network is required. In such scenario, each mobile

node should play a threefold role: (i)end systemof one-to-one or one-to-many

communications, (ii) packetforwarder, when the propercontactis met, (iii) packet

transporterfor the stored packets, when the network is partitioned.

The first cooperative solution proposed to cope with ON issues that appeared

in the literature is based on epidemic algorithms [44]: every time a contact takes

place, pairs of nodes exchange with each other the owned bundles. In this way,

the bundles are eventually delivered to their destinations. This solution has an high

delivery ratio (every contact is exploited) but also an highoverhead: bundles are

replicated every time a node is encountered.

Spray and Wait[42] tries to reduce the bundles replica overhead by adopting a

two-phases algorithm: in thespray phase, for each bundleb, L copies are diffused

to L different nodes. In thewait phase, each of theL relays which have received

the bundle adopts adirect contactpolicy, i.e., a relay can only hand overb to its

final destination.

In [46], erasure coding is applied to a copy-bounded strategy. Erasure codes

7

Page 11: BroadcastinginOpportunistic Networks - unimi.it

operate by converting a message into a larger set of code blocks such that any

sufficiently large subset of the generated code blocks can beused to reconstruct

the original messagem [46]. Forwarded bundles contain different message blocks

such that only a subsetSof the forwardedk bundles is required to reconstruct the

message. So, theSbundles delivered more quickly are used to reconstructm.

Some solutions exploit information collected from the environment and from

the encountered nodes to perform an accurate selection of the next hop. For exam-

ple, in [34] nodes compute adelivery probabilityvalue toward each other node in

the network, based on the past encounters. Forwarding is performed only toward

nodes having higher delivery probability for the final destination than the forwarder

itself.

Several solutions have been proposed for unicast in ONs. By contrast, the one-

to-all communication scheme has not received the same attention despite the fact

that its service is strategic to support protocols at both application and routing lev-

els. For instance, a broadcast service is required to diffuse scoped advertisements –

e.g. about available services or events – and summaries [32], to support podcasting

[33], to upload software patches or new parameter settings –e.g. in environmental

observation systems – or to diffuse acknowledgments (or cure) packets [29]. For

this reason, this thesis focuses on the study of one-to-all communication schemes

in opportunistic networks, i.e.,broadcasting in ONs.

1.4 Considered Scenario and Assumptions

The considered scenario includes people walking in a limited urban area, such as

a campus, equipped with portable wireless devices. No base stationsare assumed

and the communication between a sourceSand a destinationD may occur through

either direct contact, when nodeD moves into the range ofS, or indirect contact,

when one or more relaying nodes help to create the multi-hop path toward the des-

tination and the last of them eventually enters the range ofD. Each endpoint ID

(EID) identifies a unique device, which is not required to have positioning capa-

bilities on board and, to meet resource saving requirements, is supposed to adopt

8

Page 12: BroadcastinginOpportunistic Networks - unimi.it

a short radio range to communicate. This latter point, together with the fact that

devices can be sparsely distributed over a large area, makeshigh the probability of

network partitions and link disruption, a usual condition in ONs.

We assume that each mobile device, or node, periodically broadcasts anhello

packet, calledbeacon, in its radio cell, as many routing protocols for wireless ad

hoc networks do (e.g., [39]). Beacons carry just their transmitter node identifier and

are used to discover devices in the neighborhood. When a nodeN receives a beacon

from a nodeC, it records theC identifier in theneighbors listN. When no

more beacon are received fromC, N removes the correspondent entry from its

neighbors listN. In this thesis we consider IEEE 802.11 radio devices only.

Anyway, our proposed solutions can be applied on the top of the bundle layer

protocol. We will refer to exchanged data indifferently asmessagesor bundles, as

we consider just small messages that can be contained in a single bundle.

The major contribution of this thesis is the proposal of a newset of dissemi-

nation protocols able to accomplish the diffusion of a message m when different

levels of knowledge are available to the nodes, requiring a limited amount of net-

work resources to complete the task. The behavior of the proposed protocols is

analyzed in different mobility scenarios, in order to allowthe selection of the dif-

fusion strategy to adopt, on the basis of the system knowledge and the expected

nodes mobility pattern characterizing the targeted scenario.

The rest of this thesis is structured as follow: in chapter 2 mobility models

are introduced able to describe node mobility in order to capture contact chances

dynamics. In chapter 3 the issues related to broadcasting inONs are presented, sur-

veying available solutions. In chapter 4 time-driven epidemic strategies are shown,

able to allow broadcasting in ONs but generating a too high number of duplicate

copies. In chapter 5 epidemic-driven approaches are presented. In chapter 6 the

impact of mobility on proposed solutions is analyzed. Finally, in chapter 7 the

summary and conclusions of this thesis are depicted.

9

Page 13: BroadcastinginOpportunistic Networks - unimi.it

Chapter 2

Mobility Models

Node mobility plays a key factor when applied to routing protocols for MANETs:

depending on how nodes move, links can be created or destroyed allowing (or

denying) forwarding. This becomes more prominent when dealing with ONs where

low node density makes rare contacts exploitation the only way to allow communi-

cations. The accurate characterization of node mobility, in order to analyze behav-

ior of routing algorithms in a mobile environment, is a majorissue and is in charge

to mobility models.

We classify mobility models in two main classes:synthetic, when they describe

node mobility through analytical models;trace-based, when they capture mobility

patterns from real environments, like testbed logs or surveys conducted among

people. Synthetic models are generally easy to deal with mathematically, while

trace-based ones provide more specific and realistic mobility. In this chapter, we

analyze the most known mobility models that in our opinion suit best ON scenarios.

2.1 Synthetic Mobility Models

Several synthetic mobility models for mobile networks havebeen proposed in the

literature. Firstly, they have been used to model host mobility in cellular networks

[24], then they have been successfully applied in MANET environment [6][24].

We will see in detail the most known synthetic mobility models that we consider

useful for the analysis of an ON environment.

10

Page 14: BroadcastinginOpportunistic Networks - unimi.it

2.1.1 The Random Walk Mobility Model

The random walk mobility model (RW) [6] reproduces the mobility of nodes that

move randomly in a geographically bounded region. In this model, each node

starts moving with a randomly chosen speed in the interval[speedmin,speedmax]

and a direction between 0 andπ. After covering a distanced, the node changes its

trajectory, choosing another speed and direction. So, all nodes movements are of

the same lengthd. A variant of the RW model replacesd with a fixed time period

t: after a node has moved fort seconds, it changes speed and direction. In this

case, nodes can have different movement lengths, where the average gap between

one length and another is proportional tospeedmax− speedmin; anyway, all nodes

change direction at the same time, i.e., everyt seconds. If, during a shift, a node

hits a bound of the simulated area, it bounces back with a direction related to the

angle of impact.

It has been shown [6] that when using low values ford or t, RW exhibits a static

behavior: nodes are prone to stay very near their initial location. So, to model a

MANET or ON scenario, high values ofd or t should be preferred.

One more drawback of RW is that each movement is totally random and does

not consider previous speeds and directions: RW is memoryless. So, nodes may

show weird behaviors, e.g., suddenly stopping and turning back.

2.1.2 The Random Waypoint Mobility Model

When the random waypoint mobility model (RWP) [6] is adopted, each node

moves with a randomly chosen speed in the[speedmin,speedmax] interval toward a

geographic point randomly selected in the boundaries of thesimulated area. Once

the destination point is reached, the node waits for apause time pand then starts

moving toward another point with a newly selected speed. In RWP, mobile nodes

are initially distributed randomly over the considered area but, when nodes move,

their distribution becomes significantly different. So, RWP requires several sec-

onds in order to reach asteady state. Authors of [6] propose to remove the first

1000 seconds from the mobility generated through RWP in order to obtain a sta-

tionary distribution of node encounters and movements since the beginning of the

11

Page 15: BroadcastinginOpportunistic Networks - unimi.it

considered mobility. In [36], Navidi and Camp show that removing the first 1000

seconds from the mobility obtained through a RWP generator could be inadequate

to ensure stationary distributions since the beginning of the nodes mobility, as more

time is needed to the system to reach a steady state, especially if nodes move at low

speed. For this reason, we have removed twice the suggested value (i.e., 2000 sec-

onds) from the beginning of our mobility scenarios when considering RWP-like

mobility (chapters 4, 5 and 6).

A RWP scenario withp equal to 0 is similar to a RW one where high values

of d are chosen, but, in RWP, nodes never bounce over the area boundaries. More-

over, the nodes movement lengths and times of direction change have noticeably

differences with respect to RW.

As RW, RWP is memoryless. So, the classical RWP model is not realistic, but it

is simple, often provided within network simulators, and the most commonly used

in the literature. Moreover, due to its chaotic and unpredictable nature, RWP could

be a good benchmark scenario for an ON routing algorithm: it could represent

a worst case scenario, where no node movements periodicity and predictability

exist. Anyway, coupling its total randomness with very highnode speed allows

to assume uniform node encounters distribution, as done in [11]. Analysis and

strategies developed under this assumption are not able to deal with more realistic

environments (see chapter 6). For this reason, it is important to test performances

of routing solutions for ONs in other mobility models too.

2.1.3 The Aggregation Mobility Model

In the Aggregation Mobility Model (AGG) [12], a node moves toward an aggre-

gation point (AP), chosen from a finite set according to a certain probabilitydis-

tribution PAGG. Once there, it pauses for a timep before selecting the nextAP.

Parameters of this model are also the number and position ofAPs over the area, the

nodes speed range[speedmin,speedmax] and the radius of theAPs: the arrival point

of a node inside anAP is determined according to a Rayleigh distribution centered

at the center of theAPand with standard deviationσAGG.

When the number ofAPs tends to∞ andPAGG is uniform, this model behaves

12

Page 16: BroadcastinginOpportunistic Networks - unimi.it

as RWP. AGG reproduces mobility of users grouping in interest points according

to some spatial or functional rule. This behavior is compatible with a ON-like

scenario: hosts could be people carrying portable devices which move to and meet

in aggregation places, like coffee machines or a meeting room. For this reason,

this model has been taken into account to validate analyzed ON protocols (see

chapter 6).

2.1.4 The Reference Point Group Mobility Model

The reference point group mobility model (RPGM) [24] has been proposed as a

framework to model mobility of nodes clustered in differentgroups. In RPGM

each group is identified by a logical center, which moves witha certain mobility

model (e.g., RWP). The movement could be described by agroup motion vec-

tor ~GM. Each node belonging to a group is identified by areference pointthat

moves with the group. Every time the group moves, each node isplaced ran-

domly around its reference point by adding arandom motion vector~RM to the

~GM. More formally, the movement~M of a noden belonging to a groupG is:

~Mn = ~GMG + ~RMn.

RPGM can model different group-based mobility models. Examples are theIn-

Place Group Model[24], where the area in which nodes move is partitioned geo-

graphically: each group is assigned one or more partitions and moves only inside

it. The Overlap Mobility Model[24], in which groups move in the same area but

each one moves with its own speed and mobility pattern characteristics.

The RPGM framework describes node mobility as a combinationof a group

mobility and an intra-group one, in order to mimic the dynamics of the movements

of nodes inside a group. This framework is suitable to deal with many movement

schemes that can be obtained just choosing two different mobility models: one for

the group and one for the intra-group mobility. The result isa more characterizable

node movement behavior able to better resemble the environment that should be

modeled.

13

Page 17: BroadcastinginOpportunistic Networks - unimi.it

2.1.5 The Swarm Mobility Model

In the Swarm Mobility Model (SWR) [12], nodes move in a coordinated way. Each

swarm has a logical center, which moves toward a randomly chosen destination.

Once there, nodes in the swarm stop for a pause timep before moving to a new

destination. The number of nodes in each swarm is determinedby a probability

distribution with meanµSWRand standard deviationσSWR. Nodes belonging to a

swarm move randomly around its logical center, within a maximum distancedSWR.

If the regions of two swarms overlap, nodes in the intersection may choose to

migrate to the other swarm according to a probabilityMSWR.

SWR can be obtained by RPGM where the RWP model for both the group

center and the intra-group mobility is chosen. The novel contribution of SWR is

the opportunity that each node has to change its group when entering in contact

with another one.

SWR reproduces nodes maintaining the same neighborhood fora long time.

When an encounter between two groups takes place, each node notices that many

new nodes enter its radio range. When dealing with diffusionalgorithms, where

a messagem should be delivered to all the other nodes, this could highlight chan-

nel contention problems and can bring to the uncontrolled generation of an high

number of duplicates (see chapter 6).

2.2 Trace-based Mobility Models

In the last years, the need of more realistic data has pushed researchers toward the

realization of test-beds, in order to measure real performance of network protocols

when applied to specific scenarios [37, 40, 31]. Moreover, some experiments have

been performed to collect contacts among nodes, in order to study mobility of

radio-equipped vehicles and persons [31]. TheCRAWDAD community [31] collects

and maintains this valuable knowledge in order to allow an easy exchange of it

throughout the whole research community. This has enabled the proposal of more

realistic mobility models.

14

Page 18: BroadcastinginOpportunistic Networks - unimi.it

2.2.1 Weighted Waypoint Mobility Model

The Weighted Waypoint (WWP) mobility model [28] introducesthe notion ofloca-

tions: popular areas frequently visited by users. In a campus scenario, classrooms,

the cafeteria and the library are potential locations. In the WWP model, the weight

assigned to each location changes accordingly to the current time and the current

location. Yet, pause time distributions are a property of each location and are usu-

ally very different from one location to another. In [28], authors have adapted

their framework to the University of South California (USC)campus. They have

identified five main locations (classroom, library, cafeteria, other in campus areas,

off-campus) and then have conducted a survey on 268 USC students, from which

they extracted statistics about the mean pause time at each location and the time-

varying transition probability of each location dependingon the current location

and the current time of the day.

The distribution of nodes never reaches a steady-state because is regulated by

a time-varying transition matrix. This is not a requirementfor a realistic mobility

model but makes it complicate to deal with mathematically.

WWP depicts mobility inside the USC campus, which can be barely used as a

generic campus model: the performed surveys are few and their duration is short

(around a month). Anyway, its framework and results have been adopted as starting

point by many other mobility model proposals.

2.2.2 RealMobGen Mobility Model

RealMobGen [45] is based on the WWP [28] model. Nodes can bestationaryor

mobile. Stationary nodes stay in popular locations of the simulated area, which are

calledhotspots. RealMobGen resembles the nodes characteristics extracted from

the real data repository of theCRAWDAD community [31] in terms of speed and

pause time distributions, movement directions, mobile andstationary nodes ratio.

Mobile nodes can move from a locationA toward a locationB with a probabil-

ity pAB extracted from a time-variant transition matrix, adopted from [28], which

stores the probability of movement from any locationX to any locationY. When

moving fromX to Y, several intermediate waypoints are picked in order to havea

15

Page 19: BroadcastinginOpportunistic Networks - unimi.it

more realistic behavior instead of straight movements fromone location to another.

2.2.3 Two Level Social Mobility Model

The two level social mobility model (2-LSM) [16] is inspiredby the Weighted

Waypoint scheme [28]. In 2-LSM, each node belongs to asteadyor a nomadic

population. The steady nodes are characterized by low mobility. They stay in their

location for a mean pause time much greater than the nomadic nodes, generally

of at least one order of magnitude. This division is coherentwith an office-like

scenario: steady nodes are people working on their desks in their office. Nomadic

nodes are people like couriers, which move from one locationto another.

In 2-LSM,N locations exist in the considered area. Each node has a probability

p(i) to move toward theith location. The distributionP of the p(i) probabilities is

defined as a Zipf distribution:

p(i) =

1iα

ΣNn=1

1nα

, i ∈ 1, ...,N.

α defines the steepness of the function. The coefficient for thenomadic nodes

αN is much lower than the coefficient of the steady nodesαS, i.e., αN < αS. In

this way, steady nodes will spend much of their time in their preferred locations

and will generally ignore the other ones, while the nomadic nodes will have much

more chances to visit all locations.

Steady nodes are grouped in communities. Nodes belonging tothe same com-

munity c have the same mappings between theN locations andp(i)s. Different

communities have different mappings. Nomadic nodes do not cluster: each one

has its own personal mapping.

2-LSM has shown to produce synthetic traces having contact statistics compa-

rable with the real traces provided by theCRAWDAD community [31].

16

Page 20: BroadcastinginOpportunistic Networks - unimi.it

2.3 Opportunistic Networks and Mobility

The behavior of ON protocols is highly influenced by the underlying mobility

model. For this reason, it is important to capture the environment characteris-

tics in order to reproduce realistic node movements. In an ONenvironment, nodes

have low density with respect to the considered area. Moreover, in the considered

scenario (see 1.4) nodes are supposed to be persons, walkingin a campus: node

speed is low, in the range[1,2]m/s. Even though people mobility would be better

reproduced by a trace-based model rather than a synthetic one, our attempt is to

design a broadcast mechanism that is as independent as possible by the underlying

mobility model. So, performance tests on analyzed protocols will take into account

simple synthetic models, as RWP [6], and more structured ones, as AGG and SWR,

in order to introduce a set of aggregation points, such as theclassrooms, the library

or the faculty offices.

A final evaluation on proposed protocols will be conducted adopting a trace-

based mobility model, the 2-LSM (see 2.2.3). To accurately model node mobility

in our specific environment, parameters should be correctlyset relying on contact

statistics acquired from real data [16]. Several experiences of collecting mobility

traces from workplaces, campuses or other environments have shown that the dis-

tributions underlying the human mobility are heavy-tailedwith the Pareto law as

a common shape [8]. The analyzed human contact statistics have been obtained

either by the logs of connections of mobile devices to a centralized infrastructure

or by the logs of ad hoc communications among the devices. When a centralized

infrastructure is involved, all contacts taking place outside the location in which

the communication service is provided are lost. In particular, occasional contacts

of people traveling through uncovered areas are missed. When an ad hoc commu-

nication paradigm is adopted instead, contacts detection is committed to beacons

(see 1.4). Testbeds from which the available ad-hoc traces have been obtained

adopt low range radio devices (e.g., Bluetooth) and few minutes as beacon period,

due mainly to energy saving requirements and technologicalissues. This implies

that occasional and short-lasting contacts are missed. Anyway, these fortuitous

andquick-disruptingcontacts can be of great value in an ON scenario, where node

17

Page 21: BroadcastinginOpportunistic Networks - unimi.it

density is low and encounters are rare. For this reason, we have decided to imple-

ment our own testbed to collect contacts information (short-lasting ones too) in our

university campus, in order to set 2-LSM parameters on the basis of fine-grained

statistics.

2.3.1 Pocket Mobility Trace Recorder (PMTR) Testbed

While choosing our testbed devices, we had two main requirements in mind: a low

beaconing period, in the order of few seconds, able to catchquick-dying contacts,

and low power consumption, to allow long lasting experiments without the need

of changing device batteries in the meanwhile. We do not needhigh computation

capacity, nor high network bandwidth: each device should only send (frequent)

beacons and record the ones coming from other nodes.

Figure 2.1: Architecture of the PMTR device.

PMTR architecture

Taking into account these requirements we have realized thePocket Mobility Trace

Recorder device (PMTR). In fig.2.1, the architecture of the PMTR is sketched. It

uses a low power 8-bit microcontroller (Cypress CY8C29566)and a radio module

(AUREL RTX-RTLP 434) that operates at 434 MHz. A 1MB flash memory is

18

Page 22: BroadcastinginOpportunistic Networks - unimi.it

available to store contacts and an USB port allows to connectthe PMTR to a PC to

upload the firmware or to download the acquired contacts data. Interaction between

the PMTR and thebearer is demanded to a buzzer, that can start beeping to signal

new contacts or low battery charge. Required batteries are two common NiMh,

AA 1,2V.

Figure 2.2: The Pocket Viewer Desktop application Software.

On the top of the PMTR architecture, a non-persistent CSMA MAC protocol is

implemented that regulates access to the 2400b/s channel; aManchester encoding

is adopted at the physical layer. In order to record encounters with other nodes,

a simple beaconing algorithm has been implemented: each node sends a beacon

carrying its identifier once per second. When a nodeA receives a beacon from a

nodeB (and noopenrecords for nodeB exist), it putsB’s identifier in a new contact

recordRB, together with the current time. Then, when no beacons fromB are heard

for t seconds, the recordRB is closed, i.e., the current time is appended toRB. The

final recordRB will have this form:

19

Page 23: BroadcastinginOpportunistic Networks - unimi.it

IDA IDB timestart timeend

This record contains the time at which the contact between nodesA andB has

occurred (timestart) and the lasting of the contact (timeend− timestart− t).

All records can be downloaded via USB as a text file using the Pocket Viewer

software (fig.2.2), a Desktop application that allows the PMTRs debugging and

control.

Experimental setup

We have performed experiments in our campus with 49 PMTRs (fig.2.3). In order

to avoid annoyance to thebearers, the devices have been packaged in small 5x10x3

cm boxes equipped with straps for an easy fastening to the belts. Bearers have been

chosen among professors and students, and they have been asked to always carry

the devices for 3 weeks. Then, PMTRs collected data have beendownloaded and

analyzed.

Figure 2.3: Packaged PMTRs.

20

Page 24: BroadcastinginOpportunistic Networks - unimi.it

(a)

(b)

Figure 2.4:(a) CCDFs of the inter-contact times of PMTR (slopeα = 0.39) and

2-LSM traces (slopeα = 0.38) and(b) CCDFs of the intra-contact times of PMTR

and 2-LSM traces.

21

Page 25: BroadcastinginOpportunistic Networks - unimi.it

Results

The analysis of the result obtained from the PMTRs experiment is presented in

[17]. The distribution of inter-contacts times exhibit a power-law behavior, fol-

lowed, after a characteristic time of 12 hours, by an exponential decay; the intra-

contact times (contact durations) can be approximately considered power-law with

high slope. These results have been used to tune the 2-LSM trace generator. In

fig.2.4, the CCDFs of the inter- and intra-contact times for both the PMTR and

2-LSM traces are shown: the behavior is very similar, thus validating the 2-LSM

mobility model.

2.3.2 Mobility Assumption

Whatever is the adopted mobility model, throughout this work we assume that the

following mobility assumptionapplies: when a contact occurs, its duration is such

that the two nodes can set up a communication channel and a significant amount of

data is exchanged before they become disconnected. This assumption is reasonable

according to results achieved by observations reported in [43, 25], but it can be

occasionally violated in our simulations performed in the next chapters (3,4,5,6).

22

Page 26: BroadcastinginOpportunistic Networks - unimi.it

Chapter 3

Broadcast in ONs

The goal of a broadcast algorithm is to diffuse a messagem originated by a source

node to all the other nodes in the network (1-to-all communication paradigm).

Several messages with different source nodes can be diffused concurrently in a

network: anyway, to be able to deal with the problem more easily, we consider a

scenario where only one of the nodes acts as source of the messages to broadcast

[20]. In this chapter, we are going to analyze the adoption oftraditional broadcast

solutions in ONs.

3.1 Flooding

The most widely employed strategy to perform diffusion of messages to all the

nodes in a network is flooding. As soon as a node knows a new messagem, it

immediately attempts to broadcastm to all its neighbors, except (possibly) the one

from which m has been received. The time-to-live (TTL) ofm is set to∞. The

pseudo-code for this approach is shown by Algorithm 1.

Flooding exhibits a desiderable behavior when adopted in wired networks.

When flooding is adopted in the ad hoc wireless network environment, flooding

exhibits three main drawbacks, as discussed by [23], namely: implosion, overlap

and resource blindness.

Implosionoccurs when each node transmits the messagem ignoring if desti-

nation nodes have already received it. Due to the broadcast nature of the wireless

23

Page 27: BroadcastinginOpportunistic Networks - unimi.it

Algorithm 1 Pseudo-code for the flooding approachInitiator:

whenmessagem is generateddo

broadcast (m) to all one-hop neighbors;

add data to localbundle descriptor list;

end do

Node:

whenmessagem is receiveddo

if 1st timem is receivedthen

addm to localbundle descriptor list;

broadcast (m) to all one-hop neighbors except the one from whichm has been

received;

end if

end do

radio channel, each transmission is heard by all surrounding nodes: nearby sta-

tions transmitting the same packet cause neighbors to receive multiple copies of

the same message, thus wasting resources.

Wireless nodes collecting information from the environment (i.e., wireless sen-

sor networks) may often cover the same geographic area. Whenflooding is adopted,

they may spreadoverlappingdata, diffusing different messages that carry the same

information.

Finally, wireless ad hoc networks are generally made up of portable devices

with energy-saving requirements: radio transmissions areenergy expensive and

should be performed sparingly, taking into account the current amount of energy

available to the nodes. Flooding simply ignores this requirement, being thusre-

source blind.

To partially alleviate these issues, several flooding improvements have been

proposed [49], adopting probabilistic transmissions, location awareness and neigh-

bors knowledge in order to reduce the number of retransmissions. In [49], a classi-

fication and comparison of broadcasting schemes for MANETs is presented. Any-

way, these flooding-based strategies are able to deal with the data diffusion prob-

24

Page 28: BroadcastinginOpportunistic Networks - unimi.it

lem in connected networks only. In case of mobile ad hoc wireless networks where

node density is low, as in the case of Opportunistic Networks, no flooding vari-

ants are able to diffuse the message to all the nodes, becausethey cannot deal with

frequent partitioning. In fact, as shown by simulations (sec.4.3), network parti-

tions are a barrage that flooding cannot get through and, consequently, all flooding

variants cannot provide coverage guarantees.

Diffusion should take place multiple times on node encounters and should rely

on node storage to cachem between one contact and the next. Since the time

between two contacts can last many seconds, minutes or even hours, high delivery

times should be tolerated. The desired behavior is similar to that of an highly

infective disease spreading among people, wherem is the virus that shouldinfect

the encountered nodes; when all the nodes have beeninfectedthe diffusion should

stop. For this reason, epidemic approaches have begun to be applied to routing

algorithms for ONs.

3.2 Epidemic Approaches

Epidemic approaches appeared in the literature to deal withdata replication in dis-

tributed databases [13]. Having a similar goal (information diffusion) and a com-

parable environment (networks with nodes able to store data), epidemic algorithms

have been employed successfully in sensor networks too [1].So, quite naturally,

well established epidemic approaches have been employed asrouting solutions for

the opportunistic network sparse and mobile environment.

Unlike flooding, epidemic algorithmsstore messages in permanent memory

and are allowed to periodically (eachround) retransmit the same messagemgener-

ating multiple copies. This mechanism fits well with the behavior of opportunistic

networks: in the time interval between two consecutive rounds of the algorithm,

nodes move, change their neighborhood and get over partitions, thus having greater

possibility than flooding to reach the entire node population.

Each nodeN maintains two data structures: theneighbors listN and the

bundle descriptor listN. The former is the list ofN’s neighbors, i.e. the

25

Page 29: BroadcastinginOpportunistic Networks - unimi.it

nodes within the radio range ofN, acquired from the beaconing (see 1.4). The

bundle descriptor listN is the list of the descriptors of the active bundles

the nodeknows, because they are either generated by the node itself or received

through epidemic contacts with other nodes. The bundle descriptor we require is a

small subset of the parameters specified in [41]. We considera bundle descriptor

as a tuple:

EIDsource seq# payloadptr li f etime

where seq#helps to uniquely identify a bundle among bundles with the same

EIDsource and li f etime represents the lifespan within which the bundleb should

be diffused, as specified by the source1. When it expires, all nodes withb in their

bundle descriptor list remove the entry from the list.

We introduce a simple classification of epidemic algorithmsbased on which

node, of a pair of communicating ones, starts the bundles exchange and on whether

the exchange is unidirectional or bidirectional. As far as the initiator is concerned,

approaches can be classified asreceiver-basedandsource-based. In the receiver-

based case, a node periodically chooses one (or more) of its neighbors and asks it

for bundles. This is also known asPULL approach, whose pseudo-code is provided

by Algorithm 2: theget neighbors procedure extracts one or more nodes from

theneighbors list; theget bundles procedure extracts one or more bun-

dles from thebundle descriptor list. All nodes start executing both the

Active and the Passive threads at the bootstrap; as the initialization of the Active

Thread, a timer for periodic execution is set. In this and thefollowing algorithms

we assume that, as soon as a bundle is generated, the node inserts it in the local

bundle descriptor list.

The PULL approaches may differ for the amount of exchanged messages:a

node can send one or a subset of the bundles in its list, chosenaccording to either a

deterministic or a probabilistic policy, or even all the bundles. In some proposals,

nodes initially exchange a digest of the owned bundles to selectively decide the

messages to forward.

1As ONs are delay tolerant networks, the lifetime must be not too short, that is, it must not be a

parameter critical for the correct operations of the algorithm.

26

Page 30: BroadcastinginOpportunistic Networks - unimi.it

Algorithm 2 Pseudo-code for thePULL approach1: ReceiverN: {Active Thread}

2: when timer expiresdo

3: contact← get neighbors();

4: send (request for bundles) tocontact;

5: receive (reply) from contact;

6: if reply includes unknown bundlesthen

7: add bundles inreply to localbundle descriptor list;

8: end if

9: reset timer;

10: end do

11:

12: Node:{Passive Thread}

13: when request received fromN do

14: if any bundle inbundle descriptor list then

15: bundle← get bundles();

16: send (bundle) to N;

17: else

18: send (empty reply) toN;

19: end if

20: end do

27

Page 31: BroadcastinginOpportunistic Networks - unimi.it

Source-basedapproaches can be further classified inPUSHandPUSH/PULL. In

both cases, a nodeN having a bundlebN to diffuse, periodically selects a neighbor

C and sendsbN to it. In thePUSH/PULL approach, ifC has a bundlebC, thenN and

C exchange the missing bundles at the contact opportunity. The pseudo-code of

the two approaches is shown by Algorithms 3 and 4. All nodes start executing the

Passive Thread at the bootstrap; the Active Thread is started when the first bundle

is inserted into the localbundle descriptor list2.

Algorithm 3 Pseudo-code for thePUSHapproach1: Active Thread:

2: when timer expiresdo

3: contact← get neighbors();

4: bundle← get bundles();

5: send (bundle) to contact;

6: reset timer;

7: end do

8:

9: Passive Thread:

10: whenbundle receiveddo

11: if notified bundlenot in bundle descriptor list then

12: add bundle tobundle descriptor list;

13: if 1st bundle inbundle descriptor list then

14: start Active Thread;

15: end if

16: else

17: discard duplicate bundles;

18: end if

19: end do

As we mentioned before, in thePULL approach, a bundle can be diffused only

after the explicit request of an active node. By contrast, inthe source-based ap-

proaches, whenever a node has a bundle it becomes an active forwarder of the

message. As a consequence, the number of active forwarders increases with the

2If at a certain time all bundles lifetimes are expired, the node halts the Active Thread, to possibly

re-start it later when a new bundle is either generated or received.

28

Page 32: BroadcastinginOpportunistic Networks - unimi.it

Algorithm 4 Pseudo-code for thePUSH/PULL approach1: Active Thread:

2: when timer expiresdo

3: contact← get neighbors();

4: bundle1← get bundles();

5: send (bundle1) to contact;

6: receive (bundle2) from contact;

7: if bundle2 receivednot in bundle descriptor list then

8: addbundle2 to bundle descriptor list;

9: else

10: discard duplicatebundle2;

11: end if

12: reset timer;

13: end do

14:

15: Passive Thread:

16: whenbundle2 receiveddo

17: if bundle2 not in bundle descriptor list then

18: addbundle2 to bundle descriptor list;

19: if 1st bundle inbundle descriptor list then

20: start Active Thread;

21: end if

22: else

23: discardbundle2 data;

24: end if

25: if ∃ bundle1 6= bundle2 in bundle descriptor list then

26: bundle1← get bundles();

27: send (bundle1) to active node;

28: else

29: send ( /0) to active node;

30: end if

31: end do

29

Page 33: BroadcastinginOpportunistic Networks - unimi.it

time.

In the scenario we are considering, where very few sources are supposed to

diffuse to many receivers, apull -based approach is not promising: several nodes

would periodically send useless queries to other nodes withan empty

bundle descriptor list, thus wasting resources. However, aPULL-based

approach could be adopted in combination with aPUSH-based one when the push

process has likely diffused the messages to the most part of destinations. As sim-

ulations will show in the sequel, at this point the remainingreceivers have many

nodes to query for data and aPULL-based approach can be helpful to selectively

reach the total population of nodes at a reduced cost in termsof exchanged packets.

The aforementioned receiver-based approach differs from the mechanisms pro-

posed for warning dissemination in vehicular networks, such as IVG [2], where the

diffusion is initiated by the source and continued by forwarders according to a

PUSH scheme, but the decision on which node should further forward the data is

left to the recipients in communication range with the current forwarder. In this

work, the classification puts the emphasis on the node that isin charge of data

forwarding, rather than on the nodes deciding the identity of the next forwarder(s).

It is worth to notice that thePUSH/PULL approach is suitable to accelerate the

messages diffusion in a multiple source network condition or when multiple bun-

dles from the same source are concurrently active. ThePUSH and PUSH/PULL

approaches have been, for instance, proposed in [13] for themanagement of repli-

cated databases and in [27] for data aggregation in wirelesssensor networks.

The performance and functionalities of the three describedepidemic approaches

is highly influenced by several design issues and by their combined effects. Table

3.1 reports the most relevant among them.

The approaches may all adopt different policies (either probabilistic or based

on local information) to choose the neighbor for message forwarding

(get neighbors). Neighbor selection can be performed by either the sender

or the receiver. In both thePULL and thePUSH/PULL approaches, a node may

decide to reply with more than one bundle to its querier or to the Active Thread re-

spectively, and may adopt different policies to extract those bundles from the local

30

Page 34: BroadcastinginOpportunistic Networks - unimi.it

Table 3.1: Characteristics of epidemic approaches

aspect PULL PUSH PUSH/PULL

neighbor choice × × ×

# bundles sent × ×

bundles choice × ×

broadcast usage ×

no reply ×

stop condition × ×

epidemic round × × ×

bundle descriptor list.

When messages are pushed, different strategies can be adopted to decide the

number of in-range neighbors that are selected to act as message forwarders. A

very conservative approach will choose a single forwarder,while a more aggressive

policy will exploit the broadcast nature of the radio channel to elect as forwarder

all the in-range nodes. The latter approach has obvious effects on the bundles

diffusion speed, but, conversely, requires to randomize the forwarding operations

in order to control the collision rate and the duplicate generation.

Differently from thePUSH strategy, both thePULL andPUSH/PULL strategies

require a reply in order to get bundles from the receiver.

The periodic diffusion of a message, adopted by bothPUSH and PUSH/PULL

approaches, is useless when the bundle has been delivered toall the nodes. The

optimal behavior is, of course, to ensure that all nodes stopdiffusing a bundle when

it has been received at the last node. This condition requires a global knowledge

of the nodes state and thus cannot be implemented, but can be approximated by

designing some properstop conditions[13]. When the stop condition is locally

verified, the bundle is no longer diffused.

Finally, all the strategies can choose when to perform the epidemic round (the

execution of the Active Thread). On the basis of the event that triggers the epidemic

round run, epidemic approaches can be splitted inTime Driven Epidemic Ap-

proaches, where the round is scheduled on a time period basis, and inEncounter

31

Page 35: BroadcastinginOpportunistic Networks - unimi.it

Driven Epidemic Approaches, where the epidemic round is run when new nodes

are met. In the next chapter,Time Driven Epidemic Approachesare considered,

while Encounter Driven Epidemic Approachesare analized in chapter 5.

32

Page 36: BroadcastinginOpportunistic Networks - unimi.it

Chapter 4

Time-Driven Epidemic

Approaches

The most interesting approaches based on a periodic round, suitable for the ON

environment, areGossip(also addressed in the literature asRumor Mongering) and

Anti Entropy. These epidemic approaches have been firstly proposed for replication

of data in distributed databases [13] and can take advantageof a PUSH, PULL or a

PUSH/PULL approach.

4.1 Gossip

In the original Gossip approach [13], messages are calledrumors. When a new

messagem is received by a nodeN, mbecomeshot (i.e.,m is activeand should be

diffused to other nodes). Hot rumors are sent to nodes which are randomly chosen

among the available neighbors at periodic intervals (epidemic rounds).

When a localstop conditionis verified, the messagem is no longer classified

as hot and is no more diffused. Two stop condition policies have been proposed:

• Counter: mstops to be considered as hot afterk transmissions.

• Coin: each timem is forwarded, the rumor stops to be considered as hot with

a probability1K

.

33

Page 37: BroadcastinginOpportunistic Networks - unimi.it

These stop conditions are calledblind, because the forwarderN does not require

feedback from the destination nodeC. They can be improved if feedbacks from

destination nodes are employed: in theCounterstop condition,m ceases to behot

after k transmissions toward nodes already owning it; in theCoin stop condition,

thecoin is tossed every timem is sent to already infected nodes.

Gossip can adopt either aPULL or aPUSHscheme. As we have seen in the pre-

vious chapter, thePUSHstrategy suits best ON environment because transmissions

take place only when a messagem is available and is hot, while network traffic

is avoided when diffusion is not needed. For this reason, from now on we will

consider aPUSH-based Gossip only.

4.2 Anti Entropy

In the original Anti Entropy strategy [13] a nodeN randomly selects a neighborC

in the network and synchronizes its bundles with it. It is very similar to a Gossip

strategy where at each epidemic round each node groups all the stored messages

and exchanges them with a randomly chosen node. Even if thePUSH and PULL

schemes can be employed, thePUSH-PULL strategy is generally adopted, where

both the nodes exchange their bundles. Message exchange causes high overhead

when a large number of bundles are stored by each node, because synchronization

requires the transmission of all the messages through the radio channel. Moreover,

message exchange can be useless if the nodes involved in the communication al-

ready own them. For this reason, Anti Entropy allows to first exchange checksums

calculated on the whole message sets; then, the message setsare exchanged only if

the checksums belonging to the two nodes are not equal.

In an enhanced Anti Entropy version [13], message sets for new bundles are

maintained apart and exchanged as usual. So, if the checksumcomparison on the

sets of new bundles fails, only the last messages are exchanged. A further improve-

ment, calledpeel back[13], considers checksums computed on old versions of the

message set. When a synchronization is performed, checksums are compared, till

a common subset of bundles is found; then, only the complementary message sets

34

Page 38: BroadcastinginOpportunistic Networks - unimi.it

are exchanged. This approach can be an useful improvement ofGossip when sev-

eral sources and messages are present. It has been applied tothe opportunistic

scenario in [44], where it proved to be an effective solutionfor unicast communi-

cation in ONs.

4.3 Performance Evaluation

Simulated Conditions and Performance Indexes

We used simulations to analyze the behavior of aPUSH-based Gossip algorithm

in a simple setting. A single source nodeS is assumed to generate a messagem.

The rounds of the protocol continue to diffusemuntil m lifetime has been reached,

without adopting any stop condition to limit the generationof duplicate messages.

The lifetime is set to 1 hour and the epidemic round period (ERP) varies in the

range 2s to 8s.

A network layer beaconing is not required as eachinfectednode broadcastsm

everyERP seconds: if a node is in radio range, it receives the message and starts its

active thread. Otherwise a useless transmission has been performed and nothing

happens but sender wastes energy. Up to 100 nodes move in an open space area of

1000m×1000m. Nodes are equipped with low power 802.11 radio devices having

a 10m communication range, resulting in a low node density scenario, comparable

to an ON environment.

The mobility is simulated adopting the RWP model (see 2.1.1)with pause time

p = 0, speedmin = 1m/sandspeedmax varying from 0 to 8m/s (0 means that nodes

do not move at all). The first 2000s of the generated mobility have been removed

in order to obtain a more realistic behavior [6]. Mobility traces have been obtained

employing theBonnMotionmobility trace generator [12].

The algorithm has been implemented in the GloMoSim 2.03 simulator [50]

to obtain the results we present in this section. All resultsare averaged over 30

simulations performed with the same parameters and variable random seed. 95%

confidence intervals have been computed on the results showing cumulative values

at the end of the message lifetime (figg. 4.1, 4.2, 4.6).

35

Page 39: BroadcastinginOpportunistic Networks - unimi.it

Effectiveness of the epidemic algorithm is measured in terms of average per-

centage of covered nodes, i.e. the nodes receiving the messagemwithin its lifetime.

Efficiency is measured in terms of average and maximumlatencybetweenm gen-

eration and its reception, and in terms of average number ofgenerated copiesby

nodes. Of course, the number ofm copies influence both the network bandwidth

and node battery consumption.

Simulation Results

The average number of reached nodes is shown in fig. 4.1, for variable group

cardinality,speedmax andERP. Flooding obtains a 0% coverage in all the analyzed

scenario and so it is not shown in the graphs. It can perform a single run of message

diffusion (it is unable to exploit data caching and periodicruns), so flooding cannot

cope with highly partitioned networks and consumes all its diffusion power inside

the partition of the source. Unfortunately, in our ON-like scenario node density is

so low that nodes are isolated and flooding wastes its only diffusion shotas soon

asm is available to the source, also if no neighbors are present.Diffusion is useful

only if performed when a rare node encounter occurs: so, the smaller the gossip

ERP, the higher the chances it has tohit another node.

ThePUSHbased Gossip approach obtains good performances taking great ben-

efit of message caching, node mobility and repeated diffusions. If node mobility is

not present, i.e. nodes are fixed (speedmax= 0), delivery is equal to 0. As expected,

the smaller theERP, the higher the coverage for the same mobility scenario. In fact,

if diffusion is performed frequently, gossip is able to catch the contact opportunity

also for short-lasting node contacts. As speed increases, encounters become more

frequent and more chances of diffusing the message can be exploited: this reflects

in a better delivery ofmby the end of the lifetime.

Longer periodic rounds may exhibit drawbacks at higher speeds: they too gain

advantage of the higher frequency of encounters but their duration reduces with

increased speeds (e.g., average encounter life span is around 8s for speedmax =

2m/sand 3s for speedmax= 8m/s for the 25 nodes RWP scenario). So, the chance

of performing a transmission during the node contacts lowers asERP increases,

36

Page 40: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

2 m/s 4 m/s 6 m/s 8 m/s

max speed

infe

cted

nod

es

GOSSIP - ERP 2 GOSSIP - ERP 4 GOSSIP - ERP 6 GOSSIP - ERP 8

(a)

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

2 m/s 4 m/s 6 m/s 8 m/s

max speed

infe

cted

nod

es

GOSSIP - ERP 2 GOSSIP - ERP 4 GOSSIP - ERP 6 GOSSIP - ERP 8

(b)

Figure 4.1: Percentage of nodes reached by the messagemat the end of its lifetime

for (a) 25 and(b) 75 nodes.

37

Page 41: BroadcastinginOpportunistic Networks - unimi.it

0s

500s

1000s

1500s

2000s

2500s

3000s

3500s

2 m/s 4 m/s 6 m/s 8 m/s max speed

max

cov

erag

e de

lay

GOSSIP - ERP 2 GOSSIP - ERP 4 GOSSIP - ERP 6 GOSSIP - ERP 8

Figure 4.2: Average time ofinfection of the last reached node for the 75 nodes

scenario.

violating the mobility assumption described in 2.3.2. For this reason, gossip with

ERP= 8s has a lower gain than the others when speed increases (fig. 4.1(a)).

When higher node density is in place (fig. 4.1(b)) gossip is able to reach the

100% of the nodes in (almost) all the cases with all the analyzed values ofERP.

Anyway, as we can see in fig. 4.2, delivery time needed to reachall the nodes

lowers with both smallERP and highspeedmax. Also delivery time reveals that

smallerERP values gain higher improvement whenspeedmax is increased.

Figg. 4.3 and 4.4 bring into evidence the impact of node speedas time flows.

The ideal behavior is reaching 100% nodes as quickest as possible, i.e., the more

vertical is the plot, the better the algorithm performs. Theplot behavior depends on

a sort ofavalanche effect: initially only the source propagates the messagem, and

the number of infected nodes increases slowly. Each infected node starts executing

the Active Thread (Algorithm 3) on its behalf, thus contributing to m diffusion.

Hence, in a second stage the number of infected nodes grows quickly. Finally, only

a few nodes remain to be infected, and they can be reached onlyif and when an

active node meets them and performs a diffusion during the contact life span. In

38

Page 42: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

1min 20min 40min 60min

elapsed time

infe

cted

nod

es

speed 2m/s speed 4m/s

speed 6m/s

speed 8m/s

(a)

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

1min 20min 40min 60min

elapsed time

infe

cted

nod

es

speed 2m/s

speed 4m/s

speed 6m/s speed 8m/s

(b)

Figure 4.3: Cumulative percentage of achieved coverage over time by nodes with

epidemic round set to 2 seconds and with(a) 25 and(b) 75 nodes.

39

Page 43: BroadcastinginOpportunistic Networks - unimi.it

this last phase, the coverage is almost stable, and the most part of the diffusions are

addressed to already infected nodes.

In theERP= 2 instance, it is clear that the gain obtained increasingspeedmax

from 6m/s to 8m/s is negligible. Moreover, with a biggerERP (Fig.4.4), the cov-

erage is worse both because of a less aggressive diffusion policy and because it is

less advantaged by speed, as observed before. Here, in the low density scenario, the

coverage growth is (almost) linear: the number of infected nodes remains low till

the lifetime, preventing theavalanche effectto show off. This confirms once again

that the increased contact frequency brought about by higher speeds is compen-

sated by the smaller life span of the contacts, which raises the chances of violating

themobility assumption.

The difference between the coverage plots for maximum and minimum speed

is lower in high density conditions.

In the gossip approach, the number of performed diffusions is higher for high

density because more nodes concurrently execute the ActiveThread. This is em-

phasized for short epidemic round (see figg.4.5 and 4.6).

The number of sent copies of the messagem is affected by speed too. At

higher speeds, an higher number of nodes is quickly infectedand they can give

their contribution to the generation of a great amount ofm copies.

A large number of sent copies waste both bandwidth and energyresources. It

is worth to notice that the reduction of the number of generated copies is the main

feature to add to an effective epidemic algorithm for an opportunistic scenario. This

can be achieved through both a careful selection of the time to perform diffusion,

which should consider neighborhood information, and the implementation of a

stop condition, which should use locally available information, such as the number

of received duplicates, to progressively reduce the infection rate as the coverage

approximates the group membership.

If we consider the dense scenario of fig.4.3(b), thePUSHalgorithm withERP=

2 and nodes moving at 8m/s reaches all the nodes within 30 minutes. Then, each

node performs useless diffusions at its maximum rate (i.e.,2copies× second) for

the remaining 30 minutes of them lifetime. The number of useless transmissions

40

Page 44: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

1min 20min 40min 60min

elapsed time

infe

cted

nod

es

speed 2m/s

speed 4m/s

speed 6m/s

speed 8m/s

(a)

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

1min 20min 40min 60min

elapsed time

infe

cted

nod

es

speed 2m/s

speed 4m/s

speed 6m/s

speed 8m/s

(b)

Figure 4.4: Cumulative percentage of achieved coverage over time by nodes with

epidemic round set to 8 seconds and with(a) 25 and(b) 75 nodes.

41

Page 45: BroadcastinginOpportunistic Networks - unimi.it

0

250

500

750

1000

1250

1500

1min 20min 40min 60min

elapsed time

sent

mes

sage

s

speed 2m/s

speed 4m/s

speed 6m/s

speed 8m/s

(a)

0

250

500

1min 20min 40min 60min

elapsed time

sent

mes

sage

s

speed 2m/s

speed 4m/s

speed 6m/s

speed 8m/s

(b)

Figure 4.5: Non-cumulative number of performed diffusionsof the messagem

in the 75 nodes RWP scenario with(a) ERP= 2 and(b) ERP= 6. Each point

represents the number ofmcopies sent in an interval of 36s.

42

Page 46: BroadcastinginOpportunistic Networks - unimi.it

can be easily computed as:

#nodes×#epidemicsessionsremaining=

= #nodes×remainingseconds

ERP=

= 75×30minutes×60

2=

= 67500sent packets

These values are confirmed by fig. 4.5(a): after 30 minutes of simulation,

copies generation is at full rate, i.e. 1350packets/slot time. Each discrete time slot

is 36s length. So, the number of remaining slots before the end of simulation is:

remainingtimeslot length

=

=30×60s

36s= 50discreteslots

So, the total number of generated packets in the last 30 minutes is:

1350×50= 67500packets

The amount of generated packets is huge and more than half aregenerated after

all nodes have been reached. If diffusion would have stoppedwhen the message

was delivered to all the available nodes, the savings of bothenergy and network

channel would have been enormous. So, astopcondition is required to enable the

cut off of these unproductive transmissions. Moreover, many other useless and re-

source consuming transmissions are performed when no neighbors are available:

the algorithm should be adaptive, performing message diffusion when an encounter

with another node is in place, i.e. when neighbors are present. This requiresbea-

coningto detect neighbors. This policy should use local observations of the system

at the nodes to save memory and computational resources.

Another hint derives from the observation of the effects of high density on al-

gorithm performance (Figg.4.1, 4.2, 4.3, 4.5): the more dense the nodes, the better

both the coverage and the latency. Hence, in an adaptive algorithm where bea-

coning is available, nodes could monitor the cardinality oftheir neighborhood to

achieve awareness of aggregation points and regulate the diffusion round accord-

ingly. Moreover, diffusion should be performed only when newly encountered

43

Page 47: BroadcastinginOpportunistic Networks - unimi.it

0

200

400

600

800

1000

1200

1400

1600

2 m/s 4 m/s 6 m/s 8 m/s

max speed

mes

sage

s se

nt p

er n

ode

GOSSIP - ERP 2 GOSSIP - ERP 4 GOSSIP - ERP 6 GOSSIP - ERP 8

(a)

0

200

400

600

800

1000

1200

1400

1600

2 m/s 4 m/s 6 m/s 8 m/s

max speed

mes

sage

s se

nt p

er n

ode

GOSSIP - ERP 2 GOSSIP - ERP 4 GOSSIP - ERP 6 GOSSIP - ERP 8

(b)

Figure 4.6: Average message transmissions normalized on the nodes number with

(a) 25 and(b) 75 nodes.

44

Page 48: BroadcastinginOpportunistic Networks - unimi.it

nodes are available, transmitting messages just and immediately when encounters

occur. This requiresmoving apart from a period based round, inherited from the

original approaches for data replication,in favor of an encounter-triggered one,

more suitable for the sparse and partitioned environment weare considering.

45

Page 49: BroadcastinginOpportunistic Networks - unimi.it

Chapter 5

Encounter-Driven Epidemic

Approaches

To increase the efficiency of epidemic algorithms in a wireless ad hoc network

scenario, the diffusion of a messagem should take place only when one or more

nodes are in radio range, in order to avoid useless transmissions unable to reach

any node but draining battery life. For this reason, in this chapter we dismiss the

time-based epidemic round in favor of an event-based one, triggered by beacons

received by approaching nodes.

The primary focus in the design of a deployable, i.e. both efficient and effec-

tive, broadcast protocol is to increase the node likelihoodof delivering the message

only to uninfected nodes. This critical design point deserves the attention that has

not attracted so far. There are several, growing levels of knowledge a node can

achieve about the neighbors state to approximate the globalsystem state. They

range fromzero knowledge, as for a stateless encounter-driven PUSH-based al-

gorithm, tofull knowledge, which can be approximated by maintaining some log

of encounters and performed diffusions and by enabling the log exchange among

encountering nodes.

Throughout this chapter, we will adopt some abbreviations,summarized in

table 5.1.

46

Page 50: BroadcastinginOpportunistic Networks - unimi.it

Table 5.1: List of the abbreviations used in the chapter

n Number of nodes in the network

m Message that should be diffused to all then nodes

GTm Number of generated transmissions to diffusem

GRm Generation rate ofm transmissions

RD Total number of received duplicates

Cov Achieved coverage

ERα Node encounter rate for the mobility scenarioα

5.1 Zero-Knowledge Epidemic Approaches

The more information a node obtains, the higher the amount ofresources (both

local and system) it uses and the likelihood of packet dropping when the protocol

is requested to scale together with the growing of messages and nodes number.

Scalability problems lead to introduce congestion controlmechanisms that push

further the use of network and node resources. From the abovearguments, there

is an interesting space to design a lightweight broadcast protocol that addresses

efficiency by keeping very low the amount of information it requires to improve

the performances. We use the termzero-knowledgeto indicate this approach.

5.1.1 Encounter-Based Gossip: P-BCAST

To resemble the behavior of an epidemic in an ad hoc network, when a nodeN

receives for the first time an hot messagem, it diffusesm in the network infecting

its neighbor nodes. In this basic gossip scheme, the source nodeStransmitsmwith

probability equal to 1. Then each neighborN forwardsmwith a certain probability

P and retains from transmission with probability 1−P. If the same messagem is

received multiple times by the same node,m is discarded. This strategy, presented

in [22], is based on the traditionalPUSH-based gossip, sketched in 4.1.

Authors of [22] show that in a well connected ad hoc network this strategy can

bring up to 30% of sent packet savings with respect to flooding. Unfortunately,

the diffusion may suffer of premature death if density is low(as in the ON envi-

47

Page 51: BroadcastinginOpportunistic Networks - unimi.it

ronment), especially ifP is small. In particular, results in [22] show that gossip

exhibits a bimodal behavior: either the simulation ends when the network cover-

age is over 90%, or diffusion stops very early, before reaching 10% of nodes. This

conclusion validates the gossip studies in the percolationtheory area [21].

To overcome the problem of a premature deathGOSSIP1(P,k) has been pro-

posed [22]: a messagem is forwarded with probability 1 for the firstk hops, thenm

is diffused adopting the basic gossip strategy with a fixed probability P. GOSSIP1

may fail again, because afterk hops node density can be low andP can bring gossip

to premature death (that is, infection does not take place).

Haas et al.[22], propose two optimized gossip strategies able to deal with vari-

able density:GOSSIP2(P1,k,P2,n) andGOSSIP3(P,k,d). In the former, a message

m is forwarded fork hops with probability equal to 1. Then, the forwarding node

gossips with probabilityP1 only if its neighbors are> n, otherwise it gossips with

probability P2 > P1. In the latter, probability is equal to 1 fork hops, thenm is

forwarded with probabilityP but, if a node retains from transmission due toP and

does not receive at leastd duplicates before a timeoutt, it broadcastsm anyway.

Authors state that best results have been obtained withd = 1.

These strategies perform well in connected networks, whereeach nodeN is

supposed to have one or more neighbors available at any time,but would not work

in partitioned networks. Anyway, the main idea of all these gossip variants, i.e.

performing transmissions with probabilityP, can be applied to a partitioned envi-

ronment if diffusions are retained (by storingm in permanent memory) till one or

more nodes are encountered; thenmcan be forwarded with probabilityP.

In [30], a study on aGOSSIP1-like scheme where diffusion is triggered by new

encounters is presented. The considered environment is a MANET where nodes

are subject to frequent partitions and their movements follow a random waypoint

model [6]. Diffusion of one messagem has been analyzed. Authors have analyt-

ically modeled the impact of thisGOSSIP1-like epidemic algorithm in such sce-

nario. Then, the model has been validated through simulations performed on a

custom Java simulator. Authors of [30] state that in a RWP model P should be

carefully chosen according to the node density andm lifetime in order to achieve

48

Page 52: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0s 900s 1800s 3600s

pause time

infe

cted

nod

es

GOSSIP - ERP 2 GOSSIP - ERP 8 P-BCAST - P=0.5 P-BCAST - P=1

Figure 5.1: Percentage of nodes reached by the messagemat the end of its lifetime

for 50 nodes.

full coverage minimizing the number of transmissions.

We consider this encounter-triggeredPUSH-based broadcast algorithm (P-BCAST)

as a potential candidate for broadcasting in ONs.

P-BCAST vs time-based GOSSIP

In this section, we analyze the improvements brought byP-BCAST over the time

based gossip algorithm we have considered in chapter 4. We have performed simu-

lations using the GloMoSim 2.03 simulation environment [50] where a time based

gossip strategy withERPequal to 2s and 8s is compared to aP-BCAST scheme

with P equal to 1 and 0.5. A network layer beaconing having a period of 1s is used.

Nodes are equipped with low power 802.11 radio devices having a 10m communi-

cation range. One messagem is generated at the beginning of the simulation (i.e.,

at time 0) and its lifetime is set to 6 hours. Nodes move following a RWP model,

obtained through the BonnMotion mobility trace generator [12]: nodes move at a

speed in the range[1,2]m/s over an area of 1000m×1000m with a variablepause

time(0s, 900s, 1800s and 3600s). All results are averaged over 30 experiments.

49

Page 53: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

GOSSIP - ERP 2 GOSSIP - ERP 8 P-BCAST - P=0.5 P-BCAST - P=1

(a)

Figure 5.2: Average delay of delivery to all the reached nodes for 50 nodes.

Two kinds of graphs are presented:global anddiscrete. In the former, global

values (i.e., values obtained at the end ofm lifetime) are shown, providing 95%

confidence intervals. In the latter, the 6 hoursm lifetime is discretized in 100

intervals of6×3600

100= 216s. Average results have been computed on each time

interval.

As we can see in fig.5.1, all the strategies are able to reach a coverage equal or

very near to the 100% of the nodes by the end ofm lifetime for the 0s, 900s and

1800s pause time scenarios. The delivery delay among the considered strategies is

comparable (see fig.5.2), with the exception of theP-BCASTP=0.5 strategy: a value

of P = 0.5 means that on average each node owningm skips 1 diffusion every 2

encounters, requiring twice the time to diffusemwith respect to aP = 1 value.

In the last mobility scenario (i.e., 3600s pause time)P-BCASTP=1 achieves a

coverage very near to the 100% exploiting all the available time, as we can see in

fig.5.4. So,P-BCASTP=0.5, skipping 12 of the contacts, reaches about the half of

P-BCASTP=1 coverage, i.e. about 50% of nodes (figg.5.1 and 5.4).

P-BCASTP=1 has the same coverage and delivery delay of gossipERP=2 (figg.5.1,

50

Page 54: BroadcastinginOpportunistic Networks - unimi.it

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

0s 900s 1800s 3600s

pause time

mes

sage

s se

nt p

er n

ode

GOSSIP - ERP 2 GOSSIP - ERP 8 P-BCAST - P=0.5 P-BCAST - P=1

(a)

0

5

10

15

20

25

30

35

40

45

50

0s 900s 1800s 3600s

pause time

mes

sage

s se

nt p

er n

ode

P-BCAST - P=0.5

P-BCAST - P=1

(b)

Figure 5.3: Average number of sent packets normalized on thenodes number (50

nodes scenario). In(b), same data of(a) is plotted with a different packet number

scale and for theP-BCAST strategies only.

51

Page 55: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0h 2h 4h 6h

elapsed time

infe

cted

nod

es

GOSSIP - ERP 2

GOSSIP - ERP 8

P-BCAST - P=0.5 P-BCAST - P=1

Figure 5.4: Percentage of reached nodes over time for 50 nodes in the pause time

= 3600s RWP scenario.

5.2 and 5.4).

When moving from a time-based period to an encounter-triggered one, a great

improvement is expected in the overall number of sent packets. Opposed to the

time-based gossip,P-BCAST retains from forwardingm when no neighbors are

present (a very likely condition in our low density scenario) decreasing the amount

of generated packets of two orders of magnitude (see fig.5.3).

RegardingP-BCAST coverage and delivery, when the following assumptions

apply:

(i) beaconing frequency is high enough so that all encounters are detected

(ii) if the mobility assumption introduced in 2.3.2 is preserved

we can introduce the following:

Claim 1 P-BCASTP=1 is optimum in terms of coverage and delivery delay regard-

less of the adopted mobility model.

From the above assumptions claim 1 turns out to be obvious: assumption(i)

ensures thatP-BCASTP=1 catches all available contacts;P= 1 guarantees that avail-

52

Page 56: BroadcastinginOpportunistic Networks - unimi.it

0

5

10

15

20

25

30

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

Pause time 0s Pause time 900s Pause time 1800s Pause time 3600s

(a)

0

5

10

15

20

25

30

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

Pause time 0s Pause time 900s Pause time 1800s Pause time 3600s

(b)

Figure 5.5: Non cumulative number of sent packet over time for P-BCAST with

Prob1 (a) andProb0.5 (b).

53

Page 57: BroadcastinginOpportunistic Networks - unimi.it

Table 5.2: Mobility scenarioERs

α =pause time ER ER×216s

0s 0.06enc/s 12.96

900s 0.03enc/s 6.48

1800s 0.02enc/s 4.32

3600s 0.01enc/s 2.16

able messages are forwarded at each contact opportunity; assumption(ii) ensures

that each contact life span lasts enough time to allow the fulfillment of m transmis-

sion.

In theP-BCAST approach,(1−P) determines the number of retained forward-

ings with respect to all the available diffusion opportunities. More formally,P

exhibits a linear proportionality with the copy generationrateGRm of m. If ERα is

the node encounter rate of the mobility modelα andCov(t) the achieved coverage

at timet we can write the equation:

GRm(t)≃ ERα×Cov(t)×P×2 (5.1)

The 2 factor is required because each time two infected nodesmeets, both transmit

a copy ofm. The equation 5.1 is validated by experimental results. In table 5.2,

ERα values and the average number of encounters for a slot time of216s are pre-

sented forα matching each of the four considered mobility scenarios. Infig.5.5

number of diffusion performed in a time slot of 216s for both theP-BCASTP=1 and

P-BCASTP=0.5 approaches are shown. As we can see, toward the end ofm lifetime,

when (almost) all the nodes take part in the spreading ofm, P-BCASTP=1 exhibits a

number of generated copies that is twice the value reported in the third column of

table 5.2. Substituting in the equation 5.1 values referring to thepause=0sscenario

we obtain:

GRm(6h) ≃ 0.06×1×1×2

GRm(6h) ≃ 0.12

So, P-BCASTP=1 has aGRm = 0.12; the generation rate for a time slot of 216s is

54

Page 58: BroadcastinginOpportunistic Networks - unimi.it

0.12×216= 25.92, which is the result obtained in the simulations for pausetime

equal to 0. Similar results apply for all the other mobility environments.

P-BCASTP=0.5 displays a number of diffusions (almost) equal to the half ofP-

BCASTP=1, as expected, with the only exception of the result in the RWPpause=

3600s scenario: hereCov(6h) ≃ 0.6, so the expectedGRm is:

GRm(6h) ≃ 0.01×0.6×0.5×2

GRm(6h) ≃ 0.006

0.006×216 = 1.296

in line with the result plotted in 5.5.

5.1.2 Broadcasting in ONs: the goals

As we have seen in the previous section,P-BCASTP=1 under the terms presented

in claim 1, achieves optimal coverage. Anyway, the cost paidfor this optimality

is an high number of generated transmissions of messagem (GTm): also if the

transition from a time-driven epidemic round to an encounter-driven one greatly

lowers the number of performed diffusions, the number of forwards increases (at

least) linearly1 with the time.

In the optimal case, the number of generated transmissionGTm should be:

GT ≤ n, wheren is the number of nodes in the network. So, the optimal num-

ber of generated transmission per node (i.e.GTm/n) should be≤ 1. If we look to

the results obtained in the performed simulations (fig.5.3)we see thatP-BCASTP=1

has values ofGTm/n varying from∼ 50 to∼ 6, depending on the scenario pa-

rameters. Moreover, it is worth to notice that the algorithmstops just thanks tom

lifetime: otherwise additionalm copies are generated at a rate of∼ 200,∼ 100,

∼ 70,∼ 35 copies/hour for the 0s, 900s, 1800s and 3600s pause time scenarios.

1As we can see from eq.5.1, the generation rateGRm(t) depends on three factors:ER, which is

static in the considered mobility models;P which is fixed to 1;Cov(t). If Cov(t) is static in the[t1; t2]

interval (e.g. coverage is 100%),Cov(t1) =Cov(t2)→GRm(t1) = GRm(t2): the number of generated

packets will grow linearly in[t1; t2]. If Cov(t) changes its value (i.e., it raises) in the interval[t3; t4],

Cov(t3) < Cov(t4)→ GRm(t3) < GRm(t4) and so the message copies generation grows more than

linearly w.r.t the timet.

55

Page 59: BroadcastinginOpportunistic Networks - unimi.it

When a messagem is forwarded to an already infected node a useless dupli-

cated is received. So many duplicates are a symptom of low efficiency. The over-

head of useless forwardings and duplicates generation grows with the decrease of

the knowledge a node has about the state of the encounters. The primary focus of

the design of an epidemic is to control the forwarding policyaccording to the level

of knowledge a node has of the neighborhood. The more knowledge it has, the

lower the cost paid for duplicated messages. In [11], the authors have shown that,

under certain simplifying assumptions (i.e., nodes encounter just in couples and

system cardinalityn and inter-contact times are well known) an epidemic broad-

cast obtains a total broadcasts-per-message in the order ofO(n ln n). The aim

of this section is the design of a controlled PUSH-based broadcast that meets the

problem’s requirements that we can now more precisely defineas follows:

• broadcast effectiveness:the capability of the protocol to achieve delivery

delay and node coverage close toP-BCASTP=1;

• broadcast efficiency: the capability of the protocol to keep the generated

broadcasts-per-message as close as possible ton and≤ to O(n lnn). The

number of generated duplicates should be kept as low as possible too.

• broadcast scalability: the capability of the protocol to scale when the num-

ber of sources and of per-source messages grows up.

There is a large set of ON applications, including underwater, sensor or wear-

able devices, where node resources are highly constrained and protocols are forced

to keep low the amount of neighbors information maintained by a node. In the next

paragraph, we will focus on such a constrained scenario whose challenge is the

control of the epidemic forwarding by exploiting as less state information as possi-

ble. Intuitively, any zero-knowledge forwarding mechanism can easily address the

effectiveness and the scalability requirements, while theefficiency is the hardest

requirement to achieve.

56

Page 60: BroadcastinginOpportunistic Networks - unimi.it

5.1.3 Self-Adapting Broadcast Protocol: SA-BCAST

The arguments provided in the previous sections show that, under critical resource

constraints, aP-BCAST protocol can be improved by adding some autonomic capa-

bilities that extract an approximation of global state fromlocally observed data. To

this purpose, a node continues to observe situational data and attempts to answer

the following questions:

(1) when is it convenient to activate the algorithm run?

(2) what is the locally sensed event helping to tune the node’s diffusion proba-

bility P?

In theP-BCAST approach, a nodeN starts a new diffusion of a messagemwith

probability P whenever a node enters its radio range. When the node is moving

according to an AGG model throughoutaggregation points(APs), locations where

nodes meet according to some spatial or functional need, thebroadcast ofmwhen-

ever a new node enters anAP is likely to reduce efficiency much more than in a

RWP mobility model: only one copy is generated, but this timethe message is

heard by a high number of nodes competing for the shared channel. More for-

mally, if nAP1(t1) is the number of nodes in theAP1 at timet and a nodeN enters

AP1 and performs a diffusion at timet1, then the number of received duplicatesRD

becomes:RD(t1) = RD(t0)+nAP1(t1). So, a single transmission increasesRD of a

valuek = nAP1(t1).

The first improvement toP-BCAST is to letN start a new diffusion ofm when

at leastK% neighborhood changes have been observed with respect to the previous

diffusion. To this purpose, each node maintains a local viewof the neighborhood

changes by exploiting the underlying beaconing. To avoid broadcast storms, the

nodes in range adopt a random mechanism that desynchronizestransmissions and

suppresses duplicates: a nodeN before transmittingm waits for T seconds. If in

the meanwhile am duplicate is received, transmission is suppressed, otherwisem

is forwarded at the end ofT. N, and the nodes in range ofN, control the dupli-

cate generation and maximize the probability of infecting new nodes by adopting a

membership-driven infection. For this reason, we use the term MP-BCAST to indi-

cate this intermediate protocol that is supposed not to be influential when moving

57

Page 61: BroadcastinginOpportunistic Networks - unimi.it

in a sparse area and to positively affect performances when moving acrossAPs.

RD would be further reduced if, when moving throughout the area, a nodeN

would be able to tune the value ofP according to the delivery status ofm in the

area whereN is moving. When most nodes in the neighborhood have delivered m,

N should reduce the probabilityP of a new diffusion accordingly, and vice versa.

In the zero-knowledge system model we are considering, the node N is unable

to achieve this type of knowledge; however,N can derive the symptoms of the

delivery status from sensing the events generated by its encounters. The number

of received duplicates ofm is the first of these symptoms; it reveals that other

encounters have deliveredmand is helpful to decrease probability of transmission,

according to a given functionF and the local valuePN of P at nodeN. We will

show that this simple mechanism works properly to limit the number of duplicates

under high coverage conditions.

All the presented mechanisms have been included in the self-adaptive broad-

cast, orSA-BCAST, protocol.

Protocol Description

MP-BCAST involves areactivemechanism only, independent of the state of mes-

sage diffusion, which allows nodes to possibly skip some contact opportunities. To

record the encounters,N maintains a bitmapBMN. The bitmap is updated every

time N discovers a new neighbor through beaconing: node IDs are mapped into

bitmap entries through anhashfunction; the bit corresponding to a new neighbor

is changed. Since, by assumption, nodes do not know the system cardinality, the

size ofBMN could be different from the number of nodes. A smallBMN lowers

the risk of wasting memory with useless entries, but increases the collision chances

of IDs in the same position. However, as the mechanism is based on the ratio of

neighborhood change rather than on the neighbor identities, having a small bitmap

does not hamper the algorithm.

Whenever the messagem is sent, the currentBMN is recorded asbitmapN,m.

Upon every update ofBMN, the amount of changes to the neighborhood from the

last diffusion is evaluated, as the ratio of theHamming distance HDbetweenBMN

58

Page 62: BroadcastinginOpportunistic Networks - unimi.it

and thebitmapN,m, and the current number of neighborsNb. More formally:

neighborschangeratioN =HD(BMN,bitmapN,m)

NbN(5.2)

If the ratio is greater than a thresholdNth, then a new diffusion could be sched-

uled.Nth tunes the aggressiveness of the algorithm.

Besides of the reactive mechanism,SA-BCAST involves anadaptivemecha-

nism, which monitors the number of received duplicates to act on PN as discussed

before. The pseudo-code for theSA-BCAST approach is shown by Algorithm 5.

Each node starts executing thePassive Threadat the bootstrap. WhenN re-

ceivesm for the first time (lines 8-10), it becomes a relay formand starts the Active

Thread. It maintains a copy of the message together with the copy of the current

BMN. When duplicates are received (lines 4-6),N updates statistics used to adapt

the behavior of the Active Thread: the probabilityPN of starting new transmissions

is updated by means of the functionF , so that it varies in the range[MINP, MAXP].

Initially, the probability of performing a transmission isset to the maximum value

(line 16). When the neighborhood changes are relevant,N starts a new infection

with probabilityPN, while N skips it with probability(1−PN). In the former case,

N waits for a random time (lower than the beacon period); if no duplicate is re-

ceived in the meantime, thenN starts a new diffusion. Whether the diffusion is

performed or is suppressed,N updates thebitmapN associated to the message with

the currentBMN. This operation is performed also in case of duplicate suppres-

sion, because if the current neighbors of the node are already infected, the node

must wait for neighborhood changes before scheduling a new transmission.

Protocol scalability and termination

The described protocol uses very few bits, i.e. the bitmap, the received duplicates

counter and the probabilityP, to maintain per-message local information. Their

size does not affect scalability that, by contrast, can be affected by the need of

maintaining a copy of the messages up to their lifetime. In a multi-message sce-

nario, in fact, the longer is the message lifetime the higheris the likelihood of mes-

sage dropping at a node with limited memory resources. However, a message with

59

Page 63: BroadcastinginOpportunistic Networks - unimi.it

Algorithm 5 SA-BCAST pseudo-code1: Passive Thread:

2: while Truedo

3: whenmessage receiveddo

4: if duplicate messagethen

5: PN←F (PN);

6: discard message;

7: else

8: buffer message;

9: bitmapN← BMN;

10: start Active Thread;

11: end if

12: end do

13: end while

14:

15: Active Thread:

16: PN← MAXP;

17: while Truedo

18: whennew neighborn do

19: h← HASH(IDn);

20: BMN[h]←¬BMN[h];

21: HDN← Hamming distance(BMN, bitmapN);

22: changeN← (HDN/NbN)×100;

23: if changeN > Nth then

24: if flip(PN) then

25: if no duplicates in small random waitthen

26: broadcast message to neighbors;

27: end if

28: end if

29: bitmapN← BMN;

30: end if

31: end do

32: end while

60

Page 64: BroadcastinginOpportunistic Networks - unimi.it

high lifetime may have some effect on efficiency because the protocol is unable

to totally stop the infection when all nodes have been infected. In fact, a broad-

cast algorithm addressing to reach a coverage close to 100% in a zero knowledge

scenario can not enable the protocol termination earlier than the message lifetime:

Claim 2 If no information is available about the node mobility, cardinality and

state, then a diffusion procedure which aims to reach all available nodes cannot

terminate before the message lifetime expires.

The proof of this claim is not included, but it can be intuitively derived by

observing that the algorithm has to ensure a drip feed of message transmissions to

manage node joins and temporary partitions. Anyway, the claim has severe impact

on the efficiency as it requiresGRm(t) > 0 for anyt. So, efficiency continues to

lower till m lifetime elapses.

The above and the following (5.1.3) arguments motivate and highlight the

opportunity of performing the broadcast forwarding as the combination of two

phases: asprayphase, where a messagem1 is quickly pushed at any contact oppor-

tunity, and anon-demandphase, where the pull ofm1 is enabled by piggybacking

m1 summary on a messagem2 that followsm1. In thesprayphase diffusing mes-

sagem to all nodes is not mandatory.

The next Section provides some element to define ifSA-BCAST is eligible as a

spray phase algorithm and how parameters should be tuned to allow the algorithm

to beeffectiveandefficient.

Performance Evaluation

We implementedP-BCAST, MP-BCAST and SA-BCAST algorithms in the frame-

work of the GloMoSim 2.03 [50] simulation environment. The simulation setting

considers a system of 50, 75 and 100 nodes sparsely distributed over a 1000m×

1000m area. Nodes move according to a RWP model at a speed in[1,2] m/s with

pause times ranging from 0s to 3600s. Hosts are equipped with a low power 802.11

radio device with 10m communication range and DCF at the MAC layer. Beacon-

ing is performed every 1 sec.; after 3 missing beacons, the entry is removed from

the neighbor list. TheBM uses 32 bits.

61

Page 65: BroadcastinginOpportunistic Networks - unimi.it

The simulations run a value ofNth= 50 and two different functionsF :

F(1)→ PN = PN−0.1 F(2)→ PN =PN

2Every time a duplicate is received,PN will be either decremented of 0.1 or

halved in line with functionsF(1) andF(2), respectively.PN has a lower bound

defined byMINP that is varied between 0 and 0.1. We consider long lived broad-

casts, lasting up to 6 hours. All simulation results are averaged over 30 simulations

performed with variable random seed. Two kind of graphs are presented:global

anddiscrete. In the former global values (i.e., values obtained at the end of m life-

time) are shown, providing 95% confidence intervals. In the latter, the 6 hoursm

lifetime is discretized in 100 intervals of6×3600

100= 216s. Average results have

been computed on each time interval.

In the following, we use thenode coverage, as the index to evaluate theef-

fectiveness. To estimate theefficiency, besides requiringn < GT ≤ O(nlnn) (see

5.1.2), we aim to have anumber of received duplicates, RD, as low as possible. In

fact, efficiency is optimized bydups= 0 and is affected by the number of the en-

countered nodes and by the progress of the infection in the neighborhood: packets

are broadcast to the in range nodes, let us sayk; for any message sent, we count

GT = GT + 1 while the incrementi of RD (0≤ i ≤ k) depends upon the level of

infection among thek nodes.

P-BCAST vs MP-BCAST

We have observed in sec.5.1.3 that the membership-driven approach ofMP-BCAST

and the encounter-driven approach ofP-BCAST behave similarly when nodes move

within a single-encounter scenario. In this case, in fact, theNth threshold adopted

in MP-BCAST is exceeded at every encounter because of the low (1-2) number of

neighborsNb (which is at the denominator in eq.5.2). Anyway, the local dupli-

cate suppression mechanism adopted inMP-BCAST allows just one of the couple

of nodes that take part in a meeting to transmit, halvingGRand the increase rate

of RDwith respect toP-BCAST when full coverage is achieved. In order to be able

to analyze the improvement brought about by the membership-driven forwarding

only, we have added the duplicate suppression optimizationto P-BCAST, obtaining

62

Page 66: BroadcastinginOpportunistic Networks - unimi.it

0.0h

0.5h

1.0h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

P-BCASTds - P=0.5 MP-BCAST - P=0.5 P-BCASTds - P=1 MP-BCAST - P=1

Figure 5.6: Full coverage delay for a 50 nodes AGG scenario with 3APs.

P-BCASTds. The introduced optimization does not have impact on the effective-

ness (which remains optimal) but is able to improve the efficiency: for this rea-

son,P-BCASTds P=1 will be used as the benchmark strategy for the other proposed

strategies from now on.

Performances can be improved byNth when moving within an area where

many nodes meet, i.e., in aggregation points. Simulations have confirmed this

hypothesis, as it can be observed in figg.5.6, 5.7 and 5.8, that report the diffusion

delay and the number of received duplicates in this special aggregation scenario:

50 nodes move from oneAP to another with pause times varying among 0s, 900s,

1800s and 3600s. A total number of 3APs with equal weight (i.e., node attraction

force) are present, so the average number of expected nodes perAP is 50/3≃ 16.7.

All the considered strategies achieve full coverage, so thecorresponding plot is not

shown.

It is easy to observe thatMP-BCAST andP-BCASTds have similar latency be-

haviors whenP= 1 while MP-BCAST suffers higher delays whenP= 0.5 and high

pause times(fig. 5.6). This can be explained as a combined effect due to the chosen

values forNth andP: in order to allow a diffusion in anAP, a node waiting there

63

Page 67: BroadcastinginOpportunistic Networks - unimi.it

0

100

200

300

400

500

600

700

800

900

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

P-BCASTds - P=0.5 MP-BCAST - P=0.5 P-BCASTds - P=1 MP-BCAST - P=1

Figure 5.7: Number of received duplicate packets per node for a 50 nodes AGG

scenario with 3APs.

0

20

40

60

80

100

120

140

160

0h 2h 4h 6h

elapsed time

dupl

icat

es

P-BCASTds - P=1 - RWP pause 1800s P-BCASTds - P=1 - RWP pause 3600s MP-BCAST - P=1 - RWP pause 1800s MP-BCAST - P=1 - RWP pause 3600s

Figure 5.8: Discretized, non-cumulative number of duplicates over time for a 50

nodes AGG scenario with 3APs.

64

Page 68: BroadcastinginOpportunistic Networks - unimi.it

should wait fork new nodes to come in (k will be on average 8, because in eachAP

a total number of∼ 16 nodes is expected andNth= 50). When the 50% thresh-

old is exceeded, if the transmission is retained because ofP, thebitmap is saved

anyway (Algorithm 5, line 29). So, before performing another flip the nodeN has

to wait for otherk neighbors to change (Algorithm 5, line 24). Ifpause timeis

high, neighborhood change is more slow, delaying the next transmission chance of

N and eventually delaying the overall delivery time. Anyway,the increased delay

in MP-BCASTP=0.5 does not prevent it from reaching full coverage.

In fig.5.7,MP-BCAST exhibits a lowerRD value againstP-BCASTds in both the

P= 1 andP= 0.5 cases, as expected. The duplicate reduction is highest in theP=

0.5 and 3600spause time scenario, where theRDobtained byMP-BCAST is halved

with respect to theRD of P-BCAST. The former increases the efficiency because

it is able to optimize the infection rate by waiting for a relevant number of new

neighbors (50%) before forwarding. This shows thatMP-BCAST is able to capture

the membership changes in the neighborhood and to adapt accordingly by tuning

the forwarding rate. However, being unaware of the infection status,MP-BCAST is

unable of smoothing the duplicate generation rate with the growing of the infection:

as we can see in fig.5.8, the duplicates generation rate ofMP-BCAST is lower than

the one ofP-BCAST, but keeps constant with the time (around 60 duplicate packets

per time slot= 60/216s≃ 0.28 duplicates per second). The behavior we would

like to obtain is to decrease the packets and duplicates generation rate as time flows:

this is the capability we expect fromSA-BCAST.

P-BCAST vs SA-BCAST

We have compared theSA-BCAST protocol to P-BCASTdsP=1 adopting the two

functions proposed forF (i.e., F(1) andF(2)). When it is not specified,MINP

is set to 0. As the considered mobility model is RWP only, the results obtained by

MP-BCAST are equal to theP-BCASTdsP=1 ones, so these are not shown.

In fig.5.9 the average number of reached nodes by the end of thelifetime (6h)

is shown for 50 (fig.5.9(a)) and 100 nodes (fig.5.9(b)). As we can see, all the

strategies are able to reach the full coverage in the majority of the considered mo-

65

Page 69: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0s 900s 1800s 3600s

pause time

infe

cted

nod

es

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2), MINP=0.1

(a)

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0s 900s 1800s 3600s

pause time

infe

cted

nod

es

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2) minp=10

(b)

Figure 5.9: Achieved coverage in RWP model and variable pause times for (a) 50

and (b) 100 nodes.

66

Page 70: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2), MINP=0.1

(a)

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2) minp=10

(b)

Figure 5.10: Full coverage delay in RWP for (a) 50 and (b) 100 nodes.

67

Page 71: BroadcastinginOpportunistic Networks - unimi.it

0

10

20

30

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2), MINP=0.1

(a)

0

10

20

30

40

50

60

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2) minp=10

(b)

Figure 5.11: Number of generated duplicates in RWP for (a) 50 and (b) 100 nodes.

68

Page 72: BroadcastinginOpportunistic Networks - unimi.it

bility environments. In the lower density (50 nodes) and higher pause time (3600s)

scenario,P-BCASTdsP=1 is not able to achieve all the nodes, stopping after reach-

ing 98.5% of them. In this case,SA-BCASTF (1) performs almost the same, while

SA-BCASTF (2) with both MINP = 0 and MINP = 0.1 performs slightly worse

(∼ 95%). The difference is negligible.

If we look to the full-delivery time (i.e., the time needed toreach the max-

imum achieved coverage) in fig.5.10, we can see that more aggressive policies

(P-BCASTdsP=1 andSA-BCASTF (1)) have lower delays than the more prudentSA-

BCASTF(2), as expected. In the same way, comparing the results obtained switch-

ing from MINP = 0 to MINP = 0.1 in SA-BCASTF (2), we expectedMINP = 0.1

to have≤ average delay thanMINP = 0: an higher lower bound forPN means a

more aggressive strategy. But this is not the result achieved: in some scenarios

MINP = 0 gets a slightly lower delay thanMINP = 0.1. Once for all, we can

consider the 50 nodes, 0s pause time scenario: here,MINP = 0 has a lower full

coverage delay thanMINP = 0.1 (fig.5.10(a)) also if it generates a lower amount

of duplicates (fig.5.11(a)) and has a lowerGT (fig.5.12(b)).

We explain this considering thatPN lowers each time a duplicate is received:

a MINP > 0 means that all nodes will continue to send messages till thesystem

reaches a steady state where each nodeN hasPN = MINP. If MINP = 0, i.e.

it is disabled, a great partα of nodes will get theirPN∈α lower and lower, till

it becomes equal to 0 while the other few ones will maintain their PN/∈α high,

promptly infecting encountered nodes.2

Looking at the coverage discrete graph for the pause time 0 scenario (fig.5.12(a))

we can see that the curves of all the strategies nearly overlap. The delay differences

comparing the average delivery times instead of the full-delivery ones become neg-

ligible. The GR growth over time is shown in fig.5.12(b): here it is clear that

P-BCAST has a constant generation rate whileSA-BCAST proves to be able to de-

crease the transmission rateGR. The quickest function in reducing the averageGR

2Each time an encounter takes place, the first transmitting node lowers the value ofP of the other

one. The node with the lowerP has lower chances to transmit: if it receives the transmission from

the other node it gets a more lowerP, till eventually it getsP = 0. Nodes with higher probability

have low chances to receive a duplicate and so maintains an high P.

69

Page 73: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0h 2h 4h 6h

elapsed time

infe

cted

nod

es

P-BCASTds - P=1

SA-BCAST - F(1)

SA-BCAST - F(2)

SA-BCAST - F(2), MINP=0.1

(a)

0

200

400

600

800

1000

1200

1400

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

P-BCASTds - P=1 SA-BCAST - F(1) SA-BCAST - F(2) SA-BCAST - F(2), MINP=0.1

(b)

Figure 5.12:(a) Discretized coverage and(b) cumulative number of sent packets

over time in RWP with 50 nodes and pause time= 0.

70

Page 74: BroadcastinginOpportunistic Networks - unimi.it

is SA-BCASTF (2) with MINP= 0, as expected.

RDs per node are shown in fig.5.11 for both the 50 and the 100 nodesscenarios.

As expected, duplicates generation is proportional to the aggressiveness of the al-

gorithm. Lower pause times in the mobility model highlight the differences among

the protocols.

Havingeffectivenessnear the optimum (i.e.,P-BCASTdsP=1) and the lowestGR

and duplicates generation,SA-BCASTF (2) is the best strategy among the considered

ones for the RWP environment. In fig.5.13 the full coverage delay andGT per node

are shown for theSA-BCASTF (2) protocol in a 50, 75 and 100 nodes RWP scenarios

with 0s, 900s, 1800s and 3600s pause times. As we can see, delivery delay exhibit

an inverse proportionality with the node density and a direct one with the pause

time (fig.5.13(a)). In fig.5.13(b), theGT per node shows an inverse proportionality

with the pause time and a direct one with the node cardinality: this proportionality

has been compared with theefficiencyrequirements depicted in sec.5.1.2. As in

fig.5.13(b) the considered number of sent copies is normalized on the number of

nodes, to compare the total generated copiesGT with the boundO(nlnn) we have

to considerO(nlnnn ) = O(lnn): so in 5.13(b) α lnn is plotted, with different values

of α . As we can see, whenα = 2.3, all the values are underα lnn. Moreover,

the trend of the normalizedGT for the pause time= 0 scenario (trend (0s)) is very

close and (more or less) parallel to 2.3lnn. So, we can state thatSA-BCASTF (2) is

an effectiveandefficient zero knowledgestrategy for the RWP model that can be

adopted for thesprayphase of a multi-message broadcast algorithm.

In the next section, we will see the benefits of allowing nodesgathering knowl-

edge about previouslyinfectednodes and the achieved improvements when knowl-

edge exchange is allowed.

5.2 Full-Knowledge Epidemic Approaches

In this section, we will explore the value added by equippingnodes with some

resources to collect information about alreadyinfectednodes. When a node per-

forms a transmission, it records its own neighbors in a localhistory. A history

71

Page 75: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

50 nodes

75 nodes

100 nodes

(a)

0

2

4

6

8

10

12

50 nodes 75 nodes 100 nodes

mes

sage

s se

nt p

er n

ode

0s 900s 1800s 3600s n 2 n ln(n) 2.3 n ln(n) trend (0s)

(b)

Figure 5.13:(a) Full coverage delay and(b) generated packets number per node

in RWP with variable node density and pause times for theSA-BCASTF (2) strategy.

72

Page 76: BroadcastinginOpportunistic Networks - unimi.it

mechanism has been recently proposed in some solutions in the literature either to

compute utility functions to control unicast forwarding [4, 5, 14], or as the log of in-

fection events to control broadcast forwarding [18]. Several aspects have yet to be

explored. There is the need of defining the amount of history anode should main-

tain and/or exchange, of evaluating the real performance advantages it guarantees,

of verifying its usefulness under mobility models other than the random waypoint

(RWP) [6], of designing mobility-independentstop conditionsand of exploring the

scalability issues the history involves. We will consider part of the above arguments

to provide hints for the design of a history-based epidemic broadcast in ONs.

5.2.1 History-Based Broadcast Protocol: HP-BCAST

Let us consider an ON ofn independent and mobile nodes that are supposed to be

sparsely distributed over a large area and to use a short radio range to communicate.

Throughout this section, we assume that each node knows the nodes cardinality,n.

Moreover, as we have seen, a node is aware of the subset of nodes, theneighbors,

in its radio range. In this scenario, we can easily obtain a basic history-based

epidemic broadcast, denoted asHP-BCAST, by adding a history ofinfectednodes

to P-BCAST:

HP-BCAST – whenever a nodeN forwards or receives the messagem, it adds to

a local data structure,historyN,m, the list of its current encounters orm’s sender

respectively. Initially,historyN,m only containsN itself. N broadcasts a message

m if its current neighborhood has nodes other than those held in historyN,m. It

skips forwarding otherwise.N terminates the epidemic algorithm whenhistoryN,m

containsn entries.

In the basicHP-BCAST (indicated asHP-BCAST0), each node maintains a local

history. The simple evolution of this algorithm is obtainedby enabling a node to

exchange its local history with the encountered nodes. Thispolicy accelerates the

node’s awareness about the epidemic diffusion and should provide a more effective

forwarding control. We denote this new algorithm asHP-BCAST100. It can be

obtained fromHP-BCAST0 by adding the following statement:

whenN forwardsm, it piggybacks (the100% of) its historyN,m on m. WhenN

73

Page 77: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

P-BCASTds - P=1 SA-BCAST - F(2) HP-BCAST - S=0% HP-BCAST - S=100%

(a)

0

10

20

30

40

50

60

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

P-BCASTds - P=1 SA-BCAST - F(2) HP-BCAST - S=0% HP-BCAST - S=100%

(b)

Figure 5.14: (a) Full coverage delay and (b) received duplicates for 100 nodes in

the RWP model for different pause time values.

74

Page 78: BroadcastinginOpportunistic Networks - unimi.it

receivesm from C, it mergeshistoryN,m with historyC,m.

It is worth observing that the describedHP-BCAST100 algorithm is not as ag-

gressive as it could in its attempt of propagating the infection knowledge. In fact,

nodes could achieve a much quicker awareness about the evolution of the system

infection by piggybacking the history on top of the beacon messages. In the para-

graphHistory impact, we will consider all these issues and compare the above

algorithms to identify their contribution to achieve the control on forwarding. We

mainly focus on the protocol’s capability of maximizing node coverage(i.e. the

number of nodes that deliverm), while minimizing both latency, bandwidth and

energy consumption, in order to fulfill theeffectiveness, efficiencyandscalability

requirements introduced in sec.5.1.2.

In the paragraphStop Condition, we discuss the issue of obtaining astop con-

dition and compare different approaches. In the paragraphPolicies for Knowledge

Sharing, we consider different policies to exchange the history andprovide prelim-

inary scalability considerations.

Performance evaluation

The protocol evaluation is performed by using GloMoSim 2.03[50]. The simula-

tion setting considers a system of 100 nodes sparsely distributed over a 1000m×

1000m area. Nodes move at a speed in[1,2] m/s, thus reproducing a pedestrian

environment. They are equipped with a low power 802.11 radiodevice with 10m

communication range and DCF at the MAC layer. Beaconing is performed every

1s. We consider long lived broadcasts, with simulations lasting up to 6 hours. Re-

sults are averaged over 30 simulations performed with variable random seed. We

performed simulations under RWP mobility conditions with variable pause times.

Two kind of graphs are presented:global anddiscrete. In the former global

values (i.e., values obtained at the end ofm lifetime) are shown, providing 95%

confidence intervals. In the latter, the 6 hoursm lifetime is discretized in 100

intervals of 216s. Average results have been computed on each time interval.

75

Page 79: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0h 2h 4h 6h

elapsed time

infe

cted

nod

es

P-BCASTds - P=1

SA-BCAST - F(2)

HP-BCAST - S=0%

HP-BCAST - S=100%

(a)

0

1000

2000

3000

4000

5000

6000

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

P-BCASTds - P=1 SA-BCAST - F(2) HP-BCAST - S=0% HP-BCAST - S=100%

desired coverage achieved

(b)

Figure 5.15: (a) Coverage and (b) cumulative number of sent packets over time for

100 nodes in the RWP model with pause time equal to 0s.

76

Page 80: BroadcastinginOpportunistic Networks - unimi.it

History impact We have compared the considered algorithms withSA-BCASTF (2)

andP-BCASTds,P=1 in the described scenario. All the strategies reach the fullcov-

erage by the end ofm lifetime. In fig.5.14, we report the delay required to achieve

full coverage and the cost paid in terms of duplicate messages normalized on the

node numbern (i.e., RD/n) for different pause times in the RWP model.Effec-

tivenessand coverage delay are the same for all the strategies, with the exception

of SA-BCASTF (2), which exhibits an higher delay in reaching all the nodes. So,

HP-BCAST0 and HP-BCAST100 are optimal in both coverage and delivery delay.

Efficiencyinstead is better in theSA-BCASTF (2) approach. Other strategies show

a number of duplicates inversely proportional to the acquired knowledge, as ex-

pected.

The coverage slope over time for the RWP pause time= 0s scenario (5.15(a))

also shows how quickly an algorithm approximates the full coverage and, as a con-

sequence, the latency. It is clear that the use of history provides a twofold advan-

tage: on one hand, it does not affect coverage and latency and, on the other hand, it

provides an effective mechanism to control the forwarding (see fig.5.15(b)). This

is obtained by simply providing a node with some approximation of the global sys-

tem state and, of course, the higher is the global state awareness (HP-BCAST100),

the lower the amount of redundant messages.

The positive effects of the history use grow along the algorithm run. In fact, in

HP-BCAST100 the number of duplicates each node generates in the second hour is

around 4; in the third hour it drops to 2. History comes into play when the desired

coverage (i.e., near 100%) is almost reached. From this point on, the history helps

nodes to control forwarding and, of course, the larger the knowledge, the more

effective the control. However, the node’s knowledge does not grow as quickly as

the nodes infection and this influences the efficiency of the forwarding control. In

HP-BCAST0, the history slowly grows at the rate of contacts and eventually tends

to a full history condition if the contact opportunity is equally distributed between

each pair of nodes (i.e. in a RWP).HP-BCAST100 has a quicker learning process

because nodes are allowed to exchange their local system view when a message is

broadcast.

77

Page 81: BroadcastinginOpportunistic Networks - unimi.it

It is worth noticing thatSA-BCASTF (2) has no information about the state of

its encounters but is able to achieve a better forwarding control thanHP-BCAST100

(fig.5.15(b)). So, the history alone is not sufficient to ensure a satisfactory effi-

ciency.

The above arguments lead to the following considerations. Whenever it is not

possible to adopt a policy that ensures the algorithm termination after the full cov-

erage has been reached (see, next Section), the history becomes an efficient and

effective solution to control forwarding after full coverage has been achieved. By

contrast, when a termination condition is achievable then the history has a marginal

role and a simple local history mechanism can be adopted.

Policies for Knowledge Sharing Since ONs must exploit contact opportunities

– which could also be sporadic – in order to forward messages,the bandwidth op-

timization is a fundamental goal. To this purpose, a trade-off should be defined

between the amount of history exchanged and the bandwidth saved in suppressing

useless diffusions. We studied three policies to extract entries from the local his-

tory to be piggybacked onto the message: the node maintains its history ordered so

as to record from the most to the least recent encounters. Entries can be extracted

(i) in randomorder, (ii ) most recent first, or (iii ) least recent first. The first policy

is used as benchmark. The second policy aims at notifying an encounter about the

infection status of nodes in the surroundings. The third policy aims at notifying

an encounter about the infection status of nodes in a region it could be directed to.

In fig.5.17(a), the three policies are compared for different percentageof history

shared. All policies show the same behavior: by indicating with 100% the improve-

ment – in terms of generated duplicates – achieved withHP-BCAST100, all policies

obtain an improvement around 80−85% with the exchange of just 20− 25% of

the history. Moreover, for a small portion of history shared, the best behavior is

achieved with themost recent firstpolicy.

In fact, by comparing the amount of knowledge about the system, and by in-

dicating with 100% the full history condition, the knowledge growth – by sharing

20% of the history (HP-BCAST20) – well approximates the behavior achievable with

78

Page 82: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

SA-BCAST - F(2) HP-BCAST - S=0% - t=12 HP-BCAST - S=100% - t=12 HP-BCAST - S=100%

(a)

0

2

4

6

8

10

12

14

16

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

SA-BCAST - F(2) HP-BCAST - S=0% - t=12 HP-BCAST - S=100% - t=12 HP-BCAST - S=100%

(b)

Figure 5.16: (a) Full coverage delay and (b) received duplicates for 100 nodes in

the RWP model for different pause time values.

79

Page 83: BroadcastinginOpportunistic Networks - unimi.it

(a)

(b)

Figure 5.17: (a) Comparison among sharing policies and (b) cumulative knowledge

about the coverage status (τ = inf).

80

Page 84: BroadcastinginOpportunistic Networks - unimi.it

Figure 5.18: Cumulative number of duplicates

the full sharing (fig.5.17(b)); this effect is obviously reproduced by the number of

generated duplicates (fig.5.18).

Stop Condition The previous arguments motivate the need of identifying a con-

dition that enables the nodes to stop the algorithm run. Thiscondition can be either

derived from the observation of the neighborhood or by exploiting the underlying

mobility model. An implicit stop condition is associated tofull history condition:

this is the only stop condition that ensures halting after full coverage is achieved.

Unfortunately, even under the favorable condition of well-known node cardinality

and of equally distributed contact opportunities, the fullhistory condition is even-

tually achieved too late with respect to the time the full coverage condition actually

occurs. Our simulations show that the full coverage condition for the RWP pause

time= 0sscenario is achieved after 1 hour of simulated time (fig.5.14(a)). At this

time, each node on average knows the 15% of the infected nodeswith HP-BCAST0

and the 65% withHP-BCAST100 (fig.5.17(b)). Moreover, withHP-BCAST0 only 2

packets/hour overall are sent after 24 hours, and all nodes stop within 47 hours.

With HP-BCAST100, only 1 packet/hour is sent after 24 hours, and all nodes stop

within 41 hours. The elapsed time between the real and the approximated event

has impact on the efficiency of any broadcast protocol in ON because it represents

81

Page 85: BroadcastinginOpportunistic Networks - unimi.it

a large time interval in which nodes keep on forwarding few but useless messages.

This means that the full history condition is not a representative condition of the

global system state and a different stop condition must be searched that ensures an

earlier algorithm termination.

The approach proposed in [11] moves in this direction. Underthe condition of

a well known cardinality and RWP, the authors derive that each node can stop the

forwarding when a copy count ofτ = 2⌈ln n+ γ⌉ broadcasts is reached, withγ the

Euler-Mascheroni’s number. This approach has been enhanced in [10], by adding

a history either locally maintained by nodes or completely shared. Let us indicate

with HP-BCASTτα this approach, withα = 0 in the former case andα = 100 in the

latter. The resulting algorithm becomes:

HP-BCASTτα – when a nodeN encounters a nodeC, it increments a local copy

countcc; if C is already in its history,N skips forwarding. Ifcc> τ forwarding is

stopped

As in our simulation conditions node cardinality is equal to100, τ for the HP-

BCASTτα is set to 12, while the algorithms studied so far correspond to τ = ∞. Both

HP-BCAST120 andHP-BCAST12

100 achieve full coverage, obtaining a very similar la-

tency than in the caseτ = ∞ (fig.5.16(a)), fulfilling the effectivenessrequirement.

SA-BCASTF (2) reaches full coverage too but suffers higher delays with allthe con-

sidered RWP pause times.

Thanks to the bound on the number of diffusions, theHP-BCASTτ approach

satisfies efficiency requirements in RWP and is thus much moreeffective than

HP-BCAST∞ in limiting useless traffic (fig.5.16(b)). It is worth to notice that the

number ofRD generated byHP-BCASTτ is kept constant as pause times increase:

it employs all its available copies as soon as possible, and no more traffic is gen-

erated afterward. By contrast,SA-BCAST slows itsGRm more quickly but, being

unable to stop, keeps forwarding for a longer time (see fig.5.19(b)), resulting in

a higher coverage delay (fig.5.19(a)) and a higher number of generated packets

when theERof the considered mobility scenario increases (see fig.5.16(b)).3

3As m lifetime is fixed, the encounter rateER is higher with lower pause times. In the case

of pause time 3600s, SA-BCAST performs better thanHP-BCASTτ because it skips some contacts

opportunities due toPN and is not able to exhaust its remaining diffusion opportunities beforem

82

Page 86: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0h 2h 4h 6h

elapsed time

infe

cted

nod

es

SA-BCAST - F(2)

HP-BCAST - S=0% - t=12

HP-BCAST - S=100% - t=12

HP-BCAST - S=100%

(a)

0

250

500

750

1000

1250

1500

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

SA-BCAST - F(2) HP-BCAST - S=0% - t=12 HP-BCAST - S=100% - t=12 HP-BCAST - S=100%

desired coverage achieved

(b)

Figure 5.19: (a) Coverage and (b) cumulative number of sent packets over time for

100 nodes in the RWP model with pause time equal to 0s.

83

Page 87: BroadcastinginOpportunistic Networks - unimi.it

The above arguments lead to conclude that, under the favorable condition of

well-known cardinality, a copy count bound can be profitablyadopted to stop the

forwarding. This choice ensures to achieve good performances with the RWP mo-

bility model only (see chapter 6). In this case, the combineduse of history slightly

influences the performance and may be optimized with the use of history sharing

mechanisms, as described in the paragraphPolicies for Knowledge Sharing. When

nodes are unaware of the system node cardinality, the above mechanisms fail and

the real challenge becomes the design of an autonomic mechanism that helps nodes

to control forwarding by learning the system state through the neighborhood obser-

vation. This can be achieved taking advantage of both theHP-BCAST knowledge

gathering mechanism and theSA-BCAST adaptability, as we will see in the next

section.

5.2.2 Full-Knowledge Broadcast Protocol: FK-BCAST

In the previous section, we have seen that the adoption of history adds a relevant

gain to the efficiency of the considered strategies. Anyway,history does not al-

low diffusion to stop promptly after full coverage has been reached: the adoption

of a stop condition able to terminate the algorithm run before reaching full his-

tory condition is advised.HP-BCASTτ successfully stops the diffusion at the right

time but, unfortunately, it works only when a nodeN has an uniformly distributed

probability to encounter any other nodeC in the network (i.e., the RWP model).

Moreover,HP-BCASTτ requires knowledge about node cardinality to properly set

τ . We are looking for a node cardinality and (possibly) mobility independent stop

condition, able to stop diffusion quickly, when (almost) full coverage is achieved.

To this purpose, we would like to provideHP-BCAST with the self-adaptiveness

of SA-BCAST: we want to stop on the base of nodes infection status knowledge,

acquired both from history and performed diffusions.

In SA-BCAST nodes decrease their transmission probability on the base of the

number of received duplicates. Anyway, this mechanism doesnot allow to com-

pletely stop the diffusion: whenn−1 nodes have ceased forwarding, the last ac-

lifetime ends.

84

Page 88: BroadcastinginOpportunistic Networks - unimi.it

tive nodeN is not able to get any more duplicate and so it cannot decreasePN

and eventually stop. This issue can be solved allowingfeedbacksfrom uninfected

nodes receivingm. The number of negative feedbacks received (i.e., the number

of duplicates the transmission ofmhas generated) can then be exploited to control

forwarding (instead of the number of the received duplicates). So, when a nodeN,

havingk neighbors in radio range, transmitsm and receivesf positive feedbacks,

it countsk− f duplicates. This active mechanism works also if only one infected

node is left and so allows to stop all the nodes. Anyway, we would like to have

a stop condition independent of the mobility pattern.: we need a different met-

ric to understand if a broadcast is usefull or not. We proposethe adoption of the

unsuccessfulbroadcasts metric to control forwarding: we consider a broadcastsuc-

cessfulif it reaches at least one uninfected neighbor, i.e.,forwarding is successful if

at leastone(positive) feedback is received, otherwise the broadcast is considered

unsuccessful.

When many, let us saycub,4 unsuccessful broadcasts are sequentially per-

formed by a nodeN, thencubuseless transmissions are consecutively performed.

The greater thecub, the greater the probability that full coverage has alreadybeen

achieved. So, we propose this novel stop condition mechanism: N stops aftercub

consecutiveunsuccessfulbroadcasts have been performed. We call this strategyfull

knowledge broadcast(FK-BCAST), because it takes advantage from both local his-

tory and explicit feedbacks from the nodes to approximate system knowledge and

control forwarding. FK-BCASTβ can be built on the top ofHP-BCAST by adding

the following statement:

FK-BCASTβ –each time a nodeN performs anunsuccessfulbroadcast it increments

a local countercubN; when a performed broadcast issuccessful, cubN is reset to0.

Whencub= β , forwarding is stopped and the algorithm run ends.

We can easily provide a lower bound for theβ value, depending on the desired stop

probability SPN at a certain coverageCov for a nodeN, under the assumption of

equal encounters probability:

let Cov be the achieved coverage of a messagem. The probabilityPi that an

4consecutiveunsuccessfulbroadcasts

85

Page 89: BroadcastinginOpportunistic Networks - unimi.it

0.00

0.10

0.20

0.30

0.40

0.50

0.60

0.70

0.80

0.90

1.00

0%

10%

20

%

30%

40

%

50%

60

%

70%

80

%

90%

100%

Coverage

Sto

p P

roba

bilit

y

. 1

2

3

4

5

Figure 5.20:FK-BCASTβ stop probability for different values ofβ .

infected nodeN encounters an already infected nodeC is: Pi = Cov. If Covkeeps

constant for the timeN experiencesk encounters, the probability that all of them

are already infected nodes is the combined probability

Pi×Pi× . . . for k times→ Pki

So, the probabilityPSN thatN stops afterβ broadcasts is:

PSN ≤ Pβi = Covβ

As N restrains from forwarding when encountered nodes are in itshistory, the

probability of performing anunsuccessfulbroadcast is≤ Pi. So, Pβi is a lower

boundfor PSN.

In fig.5.20,PSN over coverage is shown for different values ofβ . As we can

see, the higher theβ values, the more probable that nodes stop at higher coverage

values. Anyway, ifn is the system cardinality,n×β is a lower bound toRD, 5 and

so a low value forβ should be chosen to preserveefficiency. A trade off is needed.

Values higher than 4 bring a slight enhancement inPS(fig.5.20) but bring also an

5As each node should receive at leastβ (consecutive) negative feedback to stop, it generates at

leastβ duplicates. This holds whenβ << n, otherwise nodes can implicitly stop before exhausting

their budgetβ due to the history.

86

Page 90: BroadcastinginOpportunistic Networks - unimi.it

increment ofn to RD. A value ofβ = 1 seems too conservative, because of a too

high probability to stop the infection before high coverageis achieved. For this

reason, we consider 2, 3 and 4 as candidate values forβ .

Performance evaluation

The protocol evaluation is performed by using the GloMoSim 2.03 [50] simula-

tion environment. The simulation setting considers a system of 100 nodes sparsely

distributed over a 1000m×1000m area. Nodes move at a speed in[1,2] m/s, thus

reproducing a pedestrian environment. They are equipped with a low power 802.11

radio device with 10m communication range and DCF at the MAC layer. Beacon-

ing is performed every 1s. We consider long lived broadcasts, with simulations last-

ing up to 6 hours. Results are averaged over 30 simulations performed with vari-

able random seed. We performed simulations under RWP mobility conditions with

variable pause times.FK-BCASTβ algorithm has been compared toHP-BCASTτ ,

with β values equal to 2, 3 and 4. All the strategies have been enabled to exchange

full history.

Two kinds of graphs are presented:global anddiscrete. In the former, global

values (i.e., values obtained at the end ofm lifetime) are shown, providing 95%

confidence intervals. In the latter, the 6 hoursm lifetime is discretized in 100

intervals of 216s. Average results have been computed on each time interval.

Achieved Results All FK-BCAST variants andHP-BCAST successfully reached

the full coverage, with the exception ofFK-BCAST2, which achieved about 99%

of the nodes in all the RWP scenarios. The time needed to achieve maximum

coverage is similar in all the considered strategies, but some small differences are

present in all the considered scenarios (fig.5.21(a)). FK-BCAST2 performs slightly

worse than all the others, especially in the 3600s pause time scenario, in which it

gains an increased delay of about 25 minutes.FK-BCAST3 gets half of the increased

delay ofFK-BCAST2, while FK-BCAST4 behaves nearly as well asHP-BCAST12.

From anefficiencypoint of view, all theFK-BCAST variants perform better

than HP-BCAST (fig.5.21(b)). In more detail,FK-BCASTβ achieves a number of

87

Page 91: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=2 FK-BCAST - S=100% - B=3 FK-BCAST - S=100% - B=4

(a)

0

1

2

3

4

5

0s 900s 1800s 3600s

pause time

dupl

icat

es p

er n

ode

HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=2 FK-BCAST - S=100% - B=3 FK-BCAST - S=100% - B=4

(b)

Figure 5.21: (a) Full coverage delay and (b) received duplicates per node in 100

nodes RWP scenarios with different pause times.

88

Page 92: BroadcastinginOpportunistic Networks - unimi.it

duplicates per node slightly greater than the lower bound wehave provided in

5.2.2, i.e.β duplicates per node.

In fig.5.22(b), the sent packets over time for the RWP pause time= 0 scenario

are shown. All the four strategies stop forwarding after thedesired coverage (i.e., a

coverage near 100%) has been reached. The number of generated packets is max-

imum in HP-BCAST12. In FK-BCASTβ , the total number of generated packets is

aroundn× (β + 1) = 100+ 100×β as expected: as the achieved coverage is (al-

most) 100% and the RWP model in such a low node density scenario allows nodes

to meet just in pairs,n successfulbroadcasts should have been performed. Yet,

the number of generated duplicates is≈ n×β . So, the total number of generated

packetsGT is

GT = n+n×β (5.3)

(n = 100)→GT = 100+100×β (5.4)

FK-BCASTβ is able to fulfill effectiveness, reaching full coverage (forβ equal

to 3 and 4) and a full delivery delay near the optimal. It exhibits also highefficiency,

having a packet generation rate ofO(n) in the considered RWP scenarios. It is the

most promising strategy among the considered ones because it has been designed

to be independent from both the node cardinality and the adopted mobility model.

In the next chapter, we will see if it has been able to maintainthese promises.

5.3 Conclusions

In this chapter, we have shown that the encounter-based epidemic approaches out-

perform time-based ones. Then, we have analyzed the improvements brought

about by different levels of knowledge, proposing several broadcasting strategies

for ONs. We have shown that under the RWP mobility model it is possible to

achieve (almost) optimaleffectivenesswith all the available level of knowledge.

The number of generated packets instead (i.e.,efficiency) can be kept≈ O(nlnn)

when zero-knowledge approaches are employed (SA-BCAST) and≈ O(n) switch-

ing to full-knowledgeones (FK-BCAST).

89

Page 93: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0h 2h 4h 6h

elapsed time

infe

cted

nod

es

HP-BCAST - S=100% - t=12

FK-BCAST - S=100% - B=2

FK-BCAST - S=100% - B=3

FK-BCAST - S=100% - B=4

(a)

0

200

400

600

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=2 FK-BCAST - S=100% - B=3 FK-BCAST - S=100% - B=4

desired coverage achieved

(b)

Figure 5.22: (a) Coverage and (b) cumulative number of sent packets over time for

100 nodes in the RWP model with pause time equal to 0s.

90

Page 94: BroadcastinginOpportunistic Networks - unimi.it

In the next chapter, we will analyze the behavior of such heuristics in differ-

ent mobile scenarios, to understand if achieved results in both effectivenessand

efficiencyare robust to different mobility patterns.

91

Page 95: BroadcastinginOpportunistic Networks - unimi.it

Chapter 6

Epidemic Approaches and

Mobility Models

Whatever is the approach followed to achieve efficiency, theperformances of the

algorithms are greatly influenced by the mobility patterns that nodes follow [6],

and a mechanism properly working when nodes move according to the random

waypoint model may be totally useless when they move according to a different

mobility model. The comparative analysis of the effects of mobility on ON pro-

tocols deserves more attention and, as far as we know, has never been applied to

broadcast.

In the previous chapters we have evaluated and compared manybroadcast

strategies in the RWP model, where the pause timep has been varied among 0s,

900s, 1800s and 3600s. In this chapter, we want to analyze the behavior of the

protocols that have been able to fulfilleffectivenessand efficiencyrequirements

(defined in 5.1.2) in RWP, in order to understand if they are robust to different mo-

bility patterns. In more detail, we consider two more mobility models: the aggre-

gation mobility model (AGG), described in section 2.1.3, and the swarm mobility

model (SWR), presented in section 2.1.5. Finally, we test the considered broadcast

protocols in a more realistic mobility scenario, obtained from the two level social

mobility model (2-LSM) described in 2.2.3.

92

Page 96: BroadcastinginOpportunistic Networks - unimi.it

6.1 The Random Waypoint Model

In this section we summarize the results achieved in the previous chapters. We

compare one broadcast strategy for each one of the knowledgelevels we have in-

troduced, keepingHP-BCAST as the benchmark protocol. In fact, it achieves opti-

mal effectivenessand has an upper bound on the number of messages that can be

sent: when a nodeN transmits a messagem, N records all the current neighbors in

its history. The transmission ofm is allowed only when at least one of the nodes in

radio range is not present in the history. So, if the node cardinality is n, each node

can at most performn transmissions. The total number of generated copiesGT is

≤ n2. This bound holds for all the strategies adopting a local history.

In fig.6.1, we compare the results achieved in the previous chapters byHP-

BCAST (a node performs diffusion each time it encounters a host notpresent in its

history), SA-BCASTF (2) (diffusion is performed with a probabilityP that is halved

each time a duplicate message is received),HP-BCASTτ (asHP-BCAST but afterτ

encounters a node stops the spreading task) andFK-BCAST3 (a node stopsmdiffu-

sion when it generates 3 consecutive useless broadcasts). The protocol evaluation

has been performed using the GloMoSim 2.03 simulation framework [50]. The

simulation setting considers a system of 100 nodes (τ = 12) sparsely distributed

over a 1000m×1000m area. Nodes move at a speed in[1,2] m/s, thus reproduc-

ing a pedestrian environment. They are equipped with a low power 802.11 radio

device with 10m communication range and DCF at the MAC layer. Beaconing is

performed every 1s. One messagem is generated by a source nodeS at time 0s.

We consider long lived broadcasts, with simulations lasting up to 6 hours. Re-

sults are averaged over 30 simulations performed with variable random seed. 95%

confidence intervals are provided. Simulations have been performed under RWP

mobility conditions with variable pause times.

All the protocols have reached (almost) full coverage in allthe four mobility

scenarios. All butSA-BCASTF (2) exhibit a latency near the benchmark, so fulfilling

optimaleffectiveness(fig.6.1(a)). Moreover, the more the knowledge, the better the

efficiency, i.e., the lower the number of generated copiesGT (fig.6.1(b)).

We have summarized the characteristics of the proposed algorithms and the

93

Page 97: BroadcastinginOpportunistic Networks - unimi.it

0h

1h

2h

3h

4h

5h

6h

0s 900s 1800s 3600s

pause time

max

cov

erag

e de

lay

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

(a)

0

5

10

15

0s 900s 1800s 3600s

pause time

mes

sage

s se

nt p

er n

ode

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

(b)

Figure 6.1: (a) Delay to achieve full coverage and (b) number of sent packets per

node for 100 nodes in the RWP scenario with 0s, 900s, 1800s and 3600s pause

times.

94

Page 98: BroadcastinginOpportunistic Networks - unimi.it

Table 6.1: Algorithms characteristics and performance in the RWP model

history cardinality feedback effectiveness efficiency

HP-BCAST X optimal ≤ n2

SA-BCASTF (2) yes O(nlnn)

HP-BCASTτ X X optimal ≤ nlnn

FK-BCAST3 X X optimal O(n)

results they have obtained in the RWP model in table 6.1.

In the next sections we analyze the behavior of the above protocols with differ-

ent mobility patterns.

6.2 The Aggregation Model

The aggregation model (AGG) has been introduced in the comparison to evaluate

the behavior of the considered protocols when entering and moving in crowded

places (section 2.1.3).

The protocol evaluation has been performed using the GloMoSim 2.03 sim-

ulation framework [50]. The simulation setting considers asystem of 100 nodes

(τ = 12) sparsely distributed over a 1000m×1000m area. Nodes move at a speed

in [1,2] m/s, thus reproducing a pedestrian environment. They are equipped with

a low power 802.11 radio device with 10m communication range and DCF at the

MAC layer. Beaconing is performed every 1s. One messagem is generated by

a source nodeS at time 0s. We consider long lived broadcasts, with simulations

lasting up to 6 hours. Results are averaged over 30 simulations performed with

variable random seed. Simulations have been performed under AGG mobility con-

ditions with pause times of 0s and 900s and a number of aggregation points (APs)

equal to 3 and 10. The distribution probability associated to theAPs (PAGG) is uni-

form, so nodes have the same probability to select one of the availableAPs as the

next destination.σAGG is set to 0 in order to ensure that all nodes entering in the

sameAPare in radio range.

Two kinds of graphs are presented:global anddiscrete. In the former, global

95

Page 99: BroadcastinginOpportunistic Networks - unimi.it

values (i.e., values obtained at the end ofm lifetime) are shown, providing 95%

confidence intervals. In the latter, the 6 hoursm lifetime is discretized in 100

intervals of 216s. Average results have been computed on each time interval.

In fig.6.2(a), the coverage achieved at the end ofm lifetime is shown. HP-

BCASTτ is not able to reach full coverage in theAPs = 3 scenarios: theτ dimen-

sioning has been provided for a scenario where nodes encounter in pairs and with

uniform probability only, so it does not work in an AGG one. Inparticular, we

can see that it actually works for theAPs = 10 scenario. This can be explained

by considering that when the number ofAPs increases towards∞, the AGG model

performs as the RWP one. In fact, in RWP each node moves choosing one random

point in all the considered area, i.e., choosing one point inthe set of all the avail-

able points. In AGG, the choice of the point to move into is done selecting oneAP

from theAPset.

So, we can state thatHP-BCASTτ performs well in AGG if the number ofAPs

is high (and so the model resembles the RWP behavior) but is not able to fulfill

effectivenesswhen theAPs number is low.

All the other protocols are able to achieve (almost) full coverage with optimal

delay forFK-BCAST3 and a slightly higher delay forSA-BCASTF (2).

Comparing figg.6.1(a) and 6.2(b) we can see that with the same node density

settings, coverage is quicker in AGG with respect to RWP. In particular, the higher

the number ofAPs, the more AGG behaves similarly to RWP: so coverage speeds

up as the number ofAPs lowers.

In fig.6.3, the number of sent packets per node is shown.HP-BCASTτ and

FK-BCAST3 generate nearly the same number of packets in the four scenarios as

in RWP (fig.6.1(b)). HP-BCAST and SA-BCASTF (2) perform more transmissions

as the pause time and theAP number lower. HP-BCAST generates more copies

than SA-BCASTF (2), especially in the 3APs, 0s pause time scenario. Anyway,

SA-BCASTF (2) is unable to stop and for higherm lifetimes it would have probably

exceededHP-BCAST transmissions (see fig.6.4).

96

Page 100: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0s 900s 0s 900s

pause time

infe

cted

nod

es

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 APs 3 APs

(a)

0.0h

0.5h

1.0h

0s 900s 0s 900s

pause time

max

cov

erag

e de

lay

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 APs 3 APs

(b)

Figure 6.2: (a) Achieved coverage and (b) average delay required to reach maxi-

mum coverage for 100 nodes in the AGG scenario with 3 and 10APs and 0s and

900s pause times.

97

Page 101: BroadcastinginOpportunistic Networks - unimi.it

0

5

10

15

20

25

0s 900s 0s 900s

pause time

mes

sage

s se

nt p

er n

ode

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 APs

3 APs

Figure 6.3: Number of sent packets normalized on the node number for 100 nodes

in the AGG scenario with 3 and 10APs and 0s and 900s pause times.

0

500

1000

1500

2000

2500

0h 2h 4h 6h

elapsed time

sent

mes

sage

s

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

Figure 6.4: Cumulative number of sent packets over time for 100 nodes in the AGG

model with 3APs and pause time equal to 0s.

98

Page 102: BroadcastinginOpportunistic Networks - unimi.it

6.3 The Swarm Model

The swarm mobility model (SWR, section 2.1.5) organizes nodes in clusters that

move as individual entities following a RWP model. Inside each cluster, nodes

can move freely but maintain a distance≤ dSWR from the logical center of the

cluster. This movement pattern allows us to test the behavior of the considered

broadcast protocols when nodes move grouped together and have encounters with

many other nodes at a time. This is the only considered mobility model that does

not allow nodes to encounter in pairs.1

The protocol evaluation is performed using the GloMoSim 2.03 simulation

framework [50]. The simulation setting considers a system of 100 nodes (τ = 12)

sparsely distributed over a 1000m×1000m area. Nodes move at a speed in[1,2]

m/s, thus reproducing a pedestrian environment. They are equipped with a low

power 802.11 radio device with 10m communication range and DCF at the MAC

layer. Beaconing is performed every 1s. One messagem is generated by a source

nodeSat time 0s. We consider long lived broadcasts, with simulations lasting up to

6 hours. Results are averaged over 30 simulations performedwith variable random

seed. 95% confidence intervals are provided.

Simulations have been performed under SWR mobility conditions. Values of

µSWRequal to 10 and 20 has been adopted, withσSWRequal to 0: so there are 10

groups made up of 10 nodes whenµSWR= 10 (10 nodes per group, 10n/G) and 5

groups made up of 20 nodes whenµSWR= 20 (20 nodes per group, 20n/G). Nodes

move inside their group with a maximum distance from the group center of 4m

to ensure that all nodes belonging to the same group are in radio range. In order

to better understand the impact of the group size, we have setthe change group

probabilityMSWRto 0, so disabling this feature.

In fig.6.5(a), the achieved coverage is shown. The 10n/G, 0s pause time sce-

nario is the only one in whichm lifetime is sufficient to allow reaching all the

nodes: the benchmark strategyHP-BCAST is not able to reach full coverage in 3

over 4 scenarios. Contact opportunities lower as the numberof the groups low-

1In the AGG model nodes encounter in pairs during thejourneyfrom oneAP to another as they

travel (alone) following the same straight paths availablebetween each pair ofAPs.

99

Page 103: BroadcastinginOpportunistic Networks - unimi.it

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0s 900s 0s 900s

pause time

infe

cted

nod

es

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 n/G 20 n/G

(a)

0h

1h

2h

3h

4h

5h

6h

0s 900s 0s 900s

pause time

max

cov

erag

e de

lay

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 n/G 20 n/G

(b)

Figure 6.5: (a) Achieved coverage and (b) average delay required to reach maxi-

mum coverage for 100 nodes in the SWR scenario with 10 and 20 nodes per group

(n/G) and 0sand 900s pause times.

100

Page 104: BroadcastinginOpportunistic Networks - unimi.it

ers (andn/G increases). This is due to the fact that each group moves as a single

individual: the lower the number of groups, the lower the density of the mobile

entities over the area. So, for the same mobility settings, the lower the number of

groups, the lower the encounter rateERof the entities, making harder reaching full

coverage.

FK-BCAST3 behaves optimally in these scenarios, achieving the same cover-

age and delay ofHP-BCAST (fig.6.5). This is due to the mechanics of theFK-

BCAST3 stop condition: the stop is enabled only if 3 transmissions to already in-

fected groups are performed consecutively. As the history prevents transmissions

and the maximum number of considered groups (and so individual entities) is 10,

the probability that the stop condition is achieved is very low and the transmissions

stop solely thanks to the history, as inHP-BCAST.

Of course this reflects on the number of generate packets per node also: see

fig.6.6, whereFK-BCAST3 andHP-BCAST behave in the same manner, generating

at maximum one packet per node. InHP-BCASTτ , the copy counter each node owns

is decremented every time an encounter takes place, independently whether trans-

mission is performed or not. In the SWR, when a meeting between two groups hap-

pens, each node registers many encounters in a very short time, so the copy counter

decreases quickly. So,HP-BCASTτ is not able to maintain active its diffusion task

till all nodes (groups) have been encountered. It exhaustτ in a while, achieving its

maximum coverage very quickly (fig.6.5(b)) but being unable to achieve coverage

near the optimum, especially for highern/G values (fig.6.5(a)).

SA-BCASTF (2) suffers low coverage (fig.6.5(a)) due to its decreasing strategy

for the probability of transmissionP: PN is halved each time a nodeN receives

a duplicate messagem. As nodes move in clusters, when one transmits, all the

other nodes in the same cluster count a duplicate (halving their PN) also if the

transmission was successful (i.e., another cluster has been infected). So,PN lowers

too fast. Anyway,SA-BCASTF (2) behaves well from anefficiencypoint of view,

being able to suppress duplicate transmissions and wait fora 50% neighborhood

change before transmitting (i.e., a nodeN delays its transmission till almost all the

encountered group has merged with the one ofN), so reaching many nodes of the

101

Page 105: BroadcastinginOpportunistic Networks - unimi.it

0.0

0.2

0.4

0.6

0.8

1.0

1.2

0s 900s 0s 900s

pause time

mes

sage

s se

nt p

er n

ode

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

10 n/G 20 n/G

Figure 6.6: Number of sent packets normalized on the node number for 100 nodes

in the SWR scenario with 10 and 20 nodes per group (n/G) and 0sand 900s pause

times.

encountered group with just one transmission (fig.6.6).

From the above considerations, we can state that history is the optimal mech-

anism that should be exploited toeffectivelyandefficientlybroadcast in ON when

SWR-like mobility is present.

6.4 The Two Level Social Mobility Model

In this section we have evaluated the considered broadcast protocols adopting the

2-LSM mobility model (2.2.3). In this model, nodes move toward weightedAPs

(i.e., for eachAPi nodes have a distinct probabilityP(i) to selectAPi as the next

destination) and nodes can belong to two different population types: thenomadic

population and thesteadyone. In the nomadic population, each nodeN moves

adopting its own probability distribution to move toward the availableAPs. In

the steady population, nodes are grouped into communities:nodes in the same

community share the sameAP weights (the same probabilities to choose available

102

Page 106: BroadcastinginOpportunistic Networks - unimi.it

APs as destinations).

In 2-LSM, nodes move in aggregation points with different probability distri-

butions: so, we expect 2-LSM to model a realistic aggregation-like scenario.

The protocol evaluation has been performed using the GloMoSim 2.03 sim-

ulation framework [50]. The simulation setting considers asystem of 50 nodes

(τ = 10) distributed over a 1000m×1000m area. Nodes move at a speed in[1,2]

m/s, thus reproducing a pedestrian environment. They are equipped with a low

power 802.11 radio device with 10m communication range and DCF at the MAC

layer. Beaconing is performed every 1s. One messagem is generated by a source

nodeSat time 0s. Mobility follows the 2-LSM model, adopting values forρ (the

ratio nomadicnodestotal nodes ) in the set 0.2, 0.5 and 0.8 and varying the number ofsteadynodes

communitiesc between 5 and 10. 5APs are considered.αN andαS (the coefficients

needed to compute theAPweights for thenomadicand thesteadynodes) has been

tuned according to the results obtained by the experiment depicted in section 2.3.1

(more details of the tuning process can be found in [17]). An accurate description

of all the 2-LSM parameters can be found in section 2.2.3.

We consider long lived broadcasts, with simulations lasting up to 6 hours. Re-

sults are averaged over 30 simulations performed with variable 2-LSM parameters.

95% confidence intervals are provided.

As we can see in fig.6.7, all the strategies achieve high coverage (more than

90% on average) and comparable delay. In more detail, we can see thatFK-BCAST3

obtains optimal coverage and nearly optimal delay (about 12minutes higher than

theHP-BCAST delay), whileHP-BCASTτ andSA-BCASTF (2) miss few contacts and

require more time (about 30 minutes more than the optimal) toreach their maxi-

mum coverage.Efficiencyis almost the same in all the strategies: about 2 packets

per node are sent in the 6 hour message lifetime. The low number of sent pack-

ets reveals that the node encounter rateER is low, and so there are few chances

to perform transmissions. This is confirmed by the high delayneeded to reach

high coverage (about 5 hours), comparable to the SWR scenarios where the pause

time is set to 900s (6.5(b)). In all these three mobility scenarios, full coverage has

not been achieved: a 6 hours message lifetime seems to be too small. Moreover,

103

Page 107: BroadcastinginOpportunistic Networks - unimi.it

max coverage delay

0h

1h

2h

3h

4h

5h

6h

messages sent per node

0

1

2

3

infected nodes

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

HP-BCAST - S=100% SA-BCAST - F(2) HP-BCAST - S=100% - t=12 FK-BCAST - S=100% - B=3

Figure 6.7: Performances achieved in the 2-LSM mobility model for 50 nodes.

the number of transmissions generated by theFK-BCAST3 approach is nearly the

same ofHP-BCAST, revealing that theFK-BCAST3 stop condition does not come

into play. So, when the message lifetime andERare low a simple history based

epidemic algorithm performs optimally the broadcast task.When message lifetime

and / orERhave higher values, strategies more robust to environment variability

should be adopted, asFK-BCAST3, which hasefficiently reached nearly optimal

effectivenessin all the mobility models considered in this chapter.

104

Page 108: BroadcastinginOpportunistic Networks - unimi.it

Chapter 7

Summary and Outlook

In this thesis, we have introduced a new emerging wireless network scenario, where

providing node connectivity could be very challenging: theopportunistic network

(ON) environment. In chapter 1, we have shown that several unicast solutions have

been proposed for ONs, while the one-to-all communication paradigm (i.e., the

broadcasting) has not received the same attention, despitethe fact that several ap-

plications and even some unicast routing algorithms dependon this communication

paradigm to accomplish their tasks.

ON protocols rely on node storage and mobility to deliver messages to desti-

nation nodes: so, in chapter 2 we have analyzed mobility models able to describe

the node movements and contacts. We have also presented thePMTRtestbed that

we have adopted to perform some experiments in our university campus, in order

to capture and analyze contact statistics from real user mobility.

In chapter 3, we have introduced the issues related to broadcasting in ONs.

Traditional protocols for wired networks are not able to allow the one-to-all diffu-

sion of messages in an ON. Epidemic approaches instead are able to deal with this

problem; in chapter 4, we have adapted a time-driven epidemic diffusion approach,

well known in the literature as a replication of data in distributed database systems

strategy, to the broadcasting problem in the opportunisticenvironment: diffusion

is accomplished successfully, but the number of generated copies is too high.

In chapter 5, we have proposed different families of encounter-driven broad-

105

Page 109: BroadcastinginOpportunistic Networks - unimi.it

cast approaches, classified on the basis of the allowed per message knowledge: they

range from the need of a very low amount of state information (zero-knowledge)

to the collection and exchange of logs and feedbacks about diffusion status (full-

knowledge). We have then identified the best algorithms for each knowledge fam-

ily. They areSA-BCAST, which requires just a local state about the current prob-

ability of diffusion and a bitmap to summarize the in radio range nodes that were

present during the last diffusion;HP-BCAST, which collects and exchange a history

of the already infected nodes;HP-BCASTτ that behaves as the previous but in addi-

tion requires the knowledge about the total number of nodes in the network in order

to dimension theτ parameter (an upper bound to the performed diffusions);FK-

BCASTβ that, beside the collection and exchange of the history of the encounters,

requires feedbacks from the nodes that receive a transmission.

When introducing the history of infected nodes, we have assumed that the num-

bern of nodes in the system was known and the memory required to record a his-

tory of sizen was available to each node. In case of unknown or varying member-

ship, nodes have the problem of appropriately dimensioningthe history. Currently,

we are studying the trade-off between the maintenance of a partial history (appli-

cable e.g. when nodes do not know the system cardinality) andthe performance

improvement achieved in comparison withP-BCAST. Moreover, we are studying

different policies to determine what encounters to remember in the history, and

we are also evaluating the possibility of finding some heuristics to implement a

stop condition given a partial history. Benefits of history exchange have also been

analyzed in chapter 5.

Finally, in chapter 6 we have stressed the above algorithms adopting some of

the mobility models introduced in chapter 2.

The major contribution of this work is the proposal of a set ofnovel ON broad-

cast algorithms able to achieve high coverage when diffusing a messagem, while

constraining the network resources needed to complete the task. We have seen that

the only broadcast algorithm able to accomplish theeffectivenessand efficiency

requirements (introduced in chapter 5) in all the considered mobility models is

FK-BCASTβ , where theβ parameter is set equal to 3. Anyway, we have also

106

Page 110: BroadcastinginOpportunistic Networks - unimi.it

shown that other strategies, such asSA-BCAST, can be successfully employed in

scenarios where nodes mobility follows an AGG- or a RWP-likeschemes, trading

a lower amount of available knowledge with a little higher delivery delay and a

higher number of performed diffusions. So, the selection ofthe algorithm for a

specific scenario should be done accordingly to the level of knowledge available to

the nodes, the resources (e.g., storage and energy) they areprovided with and the

characteristics of the considered environment (i.e., the nodes mobility pattern).

When considering a scenario where many messages should be concurrently

diffused we envision a broadcast algorithm composed by two parts: aPUSH one,

that can be accomplished adopting one of the strategies presented in this thesis,

and aPULL one, in which onlysummariesof the available messages are diffused:

a node missing a messagemcan retrieve it performing a query to a node that owns

m. ThePULL phase of this multi-message broadcast protocol for ONs is currently

an ongoing work.

107

Page 111: BroadcastinginOpportunistic Networks - unimi.it

Bibliography

[1] M. Akdere, C. Bilgin, O. Gerdaneri, I. Korpeoglu, O. Ulusoy, and

U. Cetintemel. A comparison of epidemic algorithms in wireless sensor net-

works. Elsevier Computer Communications, 2006.

[2] A. Bachir and A. Benslimane. A multicast protocol in ad hoc networks inter-

vehicle geocast.The 57th IEEE Semiannual Vehicular Technology Confer-

ence, vol.4, pp.2456-2460, Apr 2003.

[3] T. Berners-Lee, R. Fielding, and L. Masinter. Uniform resource identifier

(uri): Generic syntax, 2005.

[4] C. Boldrini, M. Conti, J. Jacopini, and A. Passarella. Hibop: a history based

routing protocol for opportunistic networks.World of Wireless, Mobile and

Multimedia Networks, pp.1-12, June 2007.

[5] B. Burns, O. Brock, and B. Levine. Mv routing and capacitybuilding in

disruption tolerant networks.Proceedings of IEEE INFOCOM 2005, vol.1,

pp.398-408, Mar 2005.

[6] T. Camp, J. Boleng, and V. Davies. A survey of mobility models for ad hoc

network research.Wireless Communications & Mobile Computing (WCMC):

Special issue on Mobile Ad Hoc Networking: Research, Trendsand Applica-

tions, vol.2, pp.483-502, 2002.

[7] V. Cerf, S. Burleigh, A. Hooke, L. Torgerson, R. Durst, K.Scott, K. Fall, and

H. Weiss. Delay-tolerant networking architecture, 2007.

108

Page 112: BroadcastinginOpportunistic Networks - unimi.it

[8] A. Chaintreau, P. Hui, J. Crowcroft, C. Diot, R. Gass, andJ. Scott. Impact of

human mobility on opportunistic forwarding algorithms.IEEE Transactions

on Mobile Computing, vol.6, pp.606-620, June 2007.

[9] T. Clausen and P. Jacquet. Optimized link state routing protocol (olsr). 2003.

[10] D. Cooper, P. Ezhilchelvan, I. Mitrani, and E. Vollset.Optimization of en-

counter gossip propagation in mobile ad-hoc networks.13th IEEE Interna-

tional Symposium on Modeling, Analysis, and Simulation of Computer and

Telecommunication Systems, pp.529-532, Sept 2005.

[11] D. E. Cooper, P. Ezhilchelvan, and I. Mitrani. High coverage broadcasting

for mobile ad-hoc networks. InThe Third IFIPTC6 Networking Conference,

pages 100 – 111. Springer, 2004.

[12] C. de Waal and M. Gerharz. Bonnmotion: A mobility scenario generation

and analysis tool, 2003.

[13] A. Demers, D. Greene, C. Hauser, W. Irish, J. Larson, S. Shenker, H. Stur-

gis, D. Swinehart, and D. Terry. Epidemic algorithms for replicated database

maintenance. InProceedings of the sixth annual ACM Symposium on Princi-

ples of distributed computing, pages 1 – 12, New York, NY, USA, 1987.

[14] H. Dubois-Ferriere, M. Grossglauser, and M. Vetterli.Age matters: efficient

route discovery in mobile ad hoc networks using encounter ages. InProceed-

ings of the 4th ACM international symposium on Mobile ad hoc networking

& computing, pages 257 – 266, New York, NY, USA, 2003.

[15] K. Fall. A delay-tolerant network architecture for challenged internets. In

Proceedings of the 2003 conference on Applications, technologies, architec-

tures, and protocols for computer communications, pages 27 – 34, New York,

NY, USA, 2003. ACM.

[16] S. Gaito, G. Grossi, and F. Pedersini. A two-level social mobility model for

trace generation. InProceedings of the 9th ACM international symposium on

109

Page 113: BroadcastinginOpportunistic Networks - unimi.it

Mobile ad hoc networking and computing, pages 457 – 458, New York, NY,

USA, 2008. ACM.

[17] S. Gaito, G. Grossi, F. Pedersini, and G. P. Rossi. Experimental validation of

a 2-level social mobility model in opportunistic networks.In Proceeding of

the 1th IFIP Wireless Day Conference. IFIP, 2008.

[18] G. Gamberini, F. Giudici, E. Pagani, and G.P.Rossi. Impact of history on

epidemic broadcast in dtns. InProceedings of the 1th IFIP Wireless Days

Conference. IFIP, 2008.

[19] F. Giudici and E. Pagani. Spatial and traffic-aware routing (star) for vehicu-

lar systems.High Performance Computing and Communications, pp.77-86,

2005.

[20] F. Giudici, E. Pagani, and G. P. Rossi. Epidemic diffusion of data in oppor-

tunistic networks. Technical report, Information and Communication Depart-

ment, Universita degli Studi di Milano, 2007.

[21] G. Grimmet, editor.Percolation. Springer-Verlag, 1989.

[22] Z. J. Haas, J. Y. Halpern, and L. Li. Gossip-based ad hoc routing. IEEE/ACM

Transaction, vol.14, pp.479-491, 2006.

[23] W. R. Heinzelman, J. Kulik, and H. Balakrishnan. Adaptive protocols for

information dissemination in wireless sensor networks. InProceedings of the

5th annual ACM/IEEE international conference on Mobile computing and

networking, pages 174 – 185, New York, NY, USA, 1999. ACM.

[24] X. Hong, M. Gerla, G. Pei, and C.-C. Chiang. A group mobility model for ad

hoc wireless networks. InProceedings of the 2nd ACM international work-

shop on Modeling, analysis and simulation of wireless and mobile systems,

pages 53 – 60, New York, NY, USA, 1999. ACM.

[25] P. Hui, A. Chaintreau, J. Scott, R. Gass, J. Crowcroft, and C. Diot. Pocket

switched networks and human mobility in conference environments. InPro-

110

Page 114: BroadcastinginOpportunistic Networks - unimi.it

ceedings of the 2005 ACM SIGCOMM workshop on Delay-tolerantnetwork-

ing, pages 244 – 251, New York, NY, USA, 2005. ACM.

[26] IETF. Delay tolerant network research group (dtnrg).

[27] M. Jelasity, A. Montresor, and O. Babaoglu. Gossip-based aggregation in

large dynamic networks.ACM Transaction on Computer Systems, vol.23,

no.3, pp.219-252, 2005.

[28] W. jen Hsu, K. Merchant, H. wei Shu, C. hsin Hsu, and A. Helmy. Weighted

waypoint mobility model and its impact on ad hoc networks.SIGMOBILE

Mobile Computing and Communications Review, vol.9, no.1, pp.59-63, 2005.

[29] E. B.-R. K.A. Harras, K.C. Almeroth. Delay Tolerant Mobile Networks

(DTMNs): Controlled Flooding in Sparse Mobile Networks, volume pp.1180-

1192. January 2005.

[30] A. Khelil, C. Becker, J. Tian, and K. Rothermel. An epidemic model for in-

formation diffusion in manets. InProceedings of the 5th ACM international

workshop on Modeling analysis and simulation of wireless and mobile sys-

tems, pages 54 – 60, New York, NY, USA, 2002. ACM.

[31] D. Kotz and T. Henderson. Crawdad: A community resourcefor archiving

wireless data at dartmouth.IEEE Pervasive Computing, vol.4, no.4, pp.12-14,

2005.

[32] U. Lee, B. Zhou, M. Gerla, E. Magistretti, P. Bellavista, and A. Corradi.

Mobeyes: smart mobs for urban monitoring with a vehicular sensor network.

IEEE Wireless Communications, vol.13, no.5, pp.52-57, Oct 2006.

[33] V. Lenders, G. Karlsson, and M. May. Wireless ad hoc podcasting. 4th

Annual IEEE Communications Society Conference on Sensor, Mesh and Ad

Hoc Communications and Networks, pp.273-283, June 2007.

[34] A. Lindgren, A. Doria, and O. Schelen. Probabilistic routing in intermittently

connected networks.SIGMOBILE Mobile Computing and Communications

Review, vol.7, no.3, pp.19-20, 2003.

111

Page 115: BroadcastinginOpportunistic Networks - unimi.it

[35] M. Mauve, A. Widmer, and H. Hartenstein. A survey on position-based rout-

ing in mobile ad hoc networks.IEEE Network, vol.15, no.6, pp.30-39, Nov-

Dec 2001.

[36] W. Navidi and T. Camp. Stationary distributions for therandom waypoint

mobility model.IEEE Transactions on Mobile Computing, vol.3, no.1, pp.99-

108, Jan-Feb 2004.

[37] E. Nordstrm, H. Lundgren, D. Lundberg, C. Tschudin, andP. Gunningberg.

Ape: Ad hoc protocol evaluation testbed.

[38] A. Pentland, R. Fletcher, and A. Hasson. Daknet: rethinking connectivity in

developing nations.Computer, vol.37, no.1,pp.78-83, Jan 2004.

[39] C. Perkins, E. Belding-Royer, and S. Das. Ad hoc on-demand distance vector

(aodv) routing. 2003.

[40] D. Raychaudhuri, I. Seskar, M. Ott, S. Ganu, K. Ramachandran, H. Kremo,

R. Siracusa, H. Liu, and M. Singh. Overview of the orbit radiogrid testbed

for evaluation of next-generation wireless network protocols. IEEE Wireless

Communications and Networking Conference, 2005, vol.3, pp.1664-1669,

Mar 2005.

[41] K. Scott and S. Burleigh. Bundle protocol specification, 2007.

[42] T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Spray and wait: an

efficient routing scheme for intermittently connected mobile networks. In

Proceedings of the 2005 ACM SIGCOMM workshop on Delay-tolerant net-

working, pages 252 – 259, New York, NY, USA, 2005. ACM.

[43] J. Su, A. Chin, A. Popivanova, A. Goel, and E. de Lara. User mobility for

opportunistic ad-hoc networking. InProceedings of the Sixth IEEE Workshop

on Mobile Computing Systems and Applications, pages 41 – 50, Washington,

DC, USA, 2004. IEEE Computer Society.

[44] A. Vahdat and D. Becker. Epidemic routing for partially-connected ad hoc

networks. Technical report, 2000.

112

Page 116: BroadcastinginOpportunistic Networks - unimi.it

[45] C. Walsh, A. Doci, and T. Camp. A call to arms: it’s time for real mobil-

ity models. SIGMOBILE Mobile Computing and Communications Review,

vol.12, no.1, pp.34-36, 2008.

[46] Y. Wang, S. Jain, M. Martonosi, and K. Fall. Erasure-coding based routing

for opportunistic networks. InProceedings of the 2005 ACM SIGCOMM

workshop on Delay-tolerant networking, pages 229 – 236, New York, NY,

USA, 2005. ACM.

[47] F. Warthman. Delay-tolerant networks (dtns), a tutorial, v1.1, 2003.

[48] Wifi alliance. http://www.wi-fi.org.

[49] B. Williams and T. Camp. Comparison of broadcasting techniques for mobile

ad hoc networks. InProceedings of the 3rd ACM international symposium on

Mobile ad hoc networking & computing, pages 194 – 205, New York, NY,

USA, 2002. ACM.

[50] X. Zeng, R. Bagrodia, and M. Gerla. Glomosim: a library for parallel simula-

tion of large-scale wireless networks. InProceedings of the twelfth workshop

on Parallel and distributed simulation, pages 154 – 161, Washington, DC,

USA, 1998. IEEE Computer Society.

[51] W. Zhao, M. Ammar, and E. Zegura. A message ferrying approach for data

delivery in sparse mobile ad hoc networks. InProceedings of the 5th ACM

international symposium on Mobile ad hoc networking and computing, pages

187 – 198, New York, NY, USA, 2004. ACM.

113


Recommended