time [s] 1002003004005001.20.20.410...

1
WING The Web and InterNetworking Group PreDA: Predicate Routing for DTN Architectures over MANET Flavio Esposito [email protected] Ibrahim Matta [email protected] Abstract We consider a Delay Tolerant Network (DTN) whose users (nodes) are connected by an underlying Mobile Ad hoc Network (MANET) substrate. Users can declaratively express high-level policy constraints on how contentshould be routed. For example, content can be directed through an intermediary DTN node for the purposes of preprocessing, authentication, etc., or content from a malicious MANET node can be dropped. To support such content routing at the DTN level, we implement Predicate Routing [1] where high-level constraints of DTN nodes are mapped into low-level routing predicates within the MANET nodes. Our testbed uses a Linux system architecture with User Mode Linux to emulate every DTN node with a DTN Reference Implementation code. In our initial architecture prototype, we use the On De- mand Distance Vector (AODV) routing protocol at the MANET level. We use the network simulator ns-2 (ns-emulation version) to simulate the wireless connectivity of both DTN and MANET nodes. Preliminary results show the efficient and correct operation of propagating routing predicates. For the application of content re-routing through an intermediary, as a side effect, results demonstrate the performance benefit of content re-routing that dynamically (on-demand) breaks the underlying end-to-end TCP connections into shorter-length TCP connections. Overall PreDA Architecture DTN Reference Implementation Predicate Routing API DTN API User Space Predicate Routing Support Code Kernel Modules Convergence Layer TCP MANET node DTN node Figure 1: Architecture of a PreDA enabled DTN node running over a MANET substrate. In the stack our modified and added components are marked by stars.Server Libraries Applications Bundle Daemon (dtnd) Application Library (API) dtnsend dtnsecrecv ... Convergence Layers UDP ... TCP Bundle Router Figure 2: Architecture of the DTN reference implementation. The modules enabling PreDA are marked with a star. Declarative approaches have been widely discussed as clean-slate alternative to routing or transport protocols [1, 2]. Our work is the first to enable declarative routing into a DTN architecture overlayed over a MANET substrate. Predicate Routing Design and Examples A depicted PreDA packet together with the DTN neighbor discovery extension packet are attached with the HELLO message. Predicate info are disseminated together with DTN EID of newly discovered nodes, their MANET address, and their distance in hops to every other node in the network. Type = 15 IP address 0 8 7 15 16 32 Length Predicate Type 23 24 Flags Figure 3: Proposed PreDA packet ex- tension, to propagate with DTN discov- ery, piggybacked in HELLO messages. Predicate Action src = ¬W dest= D drop Example 1: Drop traffic not origi- nated by a White List W of nodes and directed to a node D. Predicate Action src = ¬I dest= D to I src = I dest= D to D Example 2: Direct all D traffic to an intermediate DTN node I for content au- thentication. Predicate Routing in Action on Our UML Testbed 100 0 200 300 400 0.2 0 0.4 1 1.2 Time [s] 500 Data [MB] 0.6 0.8 1.4 Figure 4: Data delivered at the destination vs. time for 2% packet loss probability. 0.03 0.02 0.01 0.04 0.05 0.06 0.07 0.08 35 30 40 45 50 Packet Loss Probability Drop Predicate #1 Inserted Drop Predicate #1 Removed Drop Predicate #2 Inserted Drop Predicate #2 Removed 0 5 0 5 0 5 0.09 0.1 % Improvement in Delivery Time Figure 5: Percentage improvement in data delivery time vs. packet loss probability with 95% confidence interval when an authentication predicate is injected. Data [MB] 60 270 280 290 300 310 320 330 Drop if source is DTN #4 Drop if source is DTN #6 280 270 260 290 300 310 320 330 0.5 0 1 1.5 2 2.5 Time [s] Drop Predicate #1 Inserted Drop Predicate #1 Removed Drop Predicate #2 Inserted Drop Predicate #2 Removed Drop if source is DTN #4 Drop if source is DTN #6 Figure 6: Throughput drops and resumes after the droppingpredicates propagate and are removed. Summary of Contributions We provide a reliable DTN neighbor discovery mechanism that leverages AODV’s HELLO mes- sages to propagate DTN node names. The conver- gence layer of the DTN stack then maintains the mappings from DTN node names to IP (MANET) node addresses (Figure 1 and 2). In addition to DTN node names, AODV’s HELLO messages are also used to propagate low-level MANET routing predicates (Figure 3). These latter predicates are mapped by the convergence layer from given DTN-level requirements on rout- ing content. As a proof of concept, we implemented our architec- ture on our UML based testbed [3] that simulates a network of emulated DTN-MANET nodes as well as MANET-only nodes. The wireless connectivity and mobility of nodes are simulated using the ns simulator (ns-emulation version). The emulation uses UML (User Mode Linux) to run real DTN (reference implementation) and MANET (AODV routing) code. We present throughput results showing the efficient and correct operation of propagating routing pred- icates. We demonstrate two applications. The first application re-directs content to an intermediary node for pre-processing (Example 2, Figure 4 and 5). We also demonstrate the correct opera- tion of a second application where a malicious node is isolated by dropping all its packets (Example 1, Figure 6). References [1] Timothy Roscoe, Steven Hand, Rebecca Isaacs, Richard Mortier, and Paul W. Jardetzky. Predicate Routing: Enabling Controlled Networking. Computer Communication Review, 33(1):65–70, 2003. [2] Eiko Yoneki and Jon Crowcroft. Towards Data-Driven Declarative Networking in Delay Tolerant Networks. In DEBS 08 Inter- national Conference on Distributed Event-Based Systems. ACM, 2008. [3] Gabriele Ferrari Aggradi, Flavio Esposito, and Ibrahim Matta. Supporting Predicate Routing in DTN over MANET. In CHANTS ’08: Proceedings of the third ACM Workshop on Challenged Networks at MOBICOM, pages 125–128, San Francisco, Cali- fornia, USA, 2008. ACM.

Upload: others

Post on 18-Feb-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Time [s] 1002003004005001.20.20.410 1.40.60csr.bu.edu/preda/PreDA_files/Globecom2009PosterToPrint.pdfPreDA: Predicate Routing for DTN Architectures over MANET Flavio Esposito avio@cs.bu.edu

WING

The Web and

InterNetworking

Group

PreDA: Predicate Routing for DTN Architectures over MANET

Flavio [email protected]

Ibrahim [email protected]

Abstract

We consider a Delay Tolerant Network (DTN) whose users (nodes) are connected by an underlying Mobile

Ad hoc Network (MANET) substrate. Users can declaratively express high-level policy constraints on how

“content” should be routed. For example, content can be directed through an intermediary DTN node

for the purposes of preprocessing, authentication, etc., or content from a malicious MANET node can be

dropped. To support such content routing at the DTN level, we implement Predicate Routing [1] where

high-level constraints of DTN nodes are mapped into low-level routing predicates within the MANET

nodes. Our testbed uses a Linux system architecture with User Mode Linux to emulate every DTN node

with a DTN Reference Implementation code. In our initial architecture prototype, we use the On De-

mand Distance Vector (AODV) routing protocol at the MANET level. We use the network simulator ns-2

(ns-emulation version) to simulate the wireless connectivity of both DTN and MANET nodes. Preliminary

results show the efficient and correct operation of propagating routing predicates. For the application of

content re-routing through an intermediary, as a side effect, results demonstrate the performance benefit of

content re-routing that dynamically (on-demand) breaks the underlying end-to-end TCP connections into

shorter-length TCP connections.

Overall PreDA Architecture

DTN Reference Implementation

Predicate Routing API DTN API

User Space

Predicate Routing Support Code

Kernel Modules

Convergence Layer

TCP

MANET

node

DTNnode

Figure 1: Architecture of a PreDA enabled DTN node running

over a MANET substrate. In the stack our modified and added

components are marked by “stars.”

Server LibrariesApplications

Bundle Daemon (dtnd)

Application Library (API)

dtnsend dtnsecrecv ...Convergence Layers

UDP ... TCP

Bundle Router

Figure 2: Architecture of the DTN reference implementation.

The modules enabling PreDA are marked with a “star”.

Declarative approaches have been widely discussed as clean-slate alternative to routing or transport protocols [1, 2]. Our work is

the first to enable declarative routing into a DTN architecture overlayed over a MANET substrate.

Predicate Routing Design and Examples

A depicted PreDA packet together with the DTN neighbor discovery extension packet are attached with

the HELLO message. Predicate info are disseminated together with DTN EID of newly discovered nodes,

their MANET address, and their distance in hops to every other node in the network.

Type = 15

IP address

0 87 15 16 32

LengthPredicateType

23 24

Flags

Figure 3: Proposed PreDA packet ex-

tension, to propagate with DTN discov-

ery, piggybacked in HELLO messages.

e.g., direct all images captured by the camera on node Sto DTN node I for pre-processing and authorization beforesending them to the user at node D.

From the network point of view, the predicate is a set ofrules that each MANET packet has to satisfy. Our systemmaps declarative user policies to such network-level routingpredicates. Predicates get propagated and installed as MANET-level forwarding rules. Any DTN node can inject, from theapplication level, a routing rule that gets seamlessly translatedinto a MANET-level rule, enabling new MANET routinginstructions.

We next show two examples (Tables I and II) of routingpredicates.

A. Predicate Examples

Consider the injection of two predicates as in Table I. Theobjective of these two rules is to re-direct the traffic destined toa node D to an intermediate DTN node I for authentication orpre-processing. The first rule directs all data destined to nodeD but not yet pre-screened at node I to node I . Notice that ifthe destination node D is in the path to reach the intermediatenode I , then node D forwards the MANET packets matchingthis rule without reassembling the associated data message forpre-screening.

The second predicate ensures that pre-screened data comingfrom the intermediate DTN node I , reach the original destina-tion D. Note that if nodes (S, I and D) are DTN nodes, then,predicate overrides the normal DTN routing process. In partic-ular, node I , not recognizing itself as the destination, wouldhave directed received bundles to D without preprocessing.Thus, our PreDA architecture supports predicate routing at theDTN level as well.

Predicate Actionsrc = ¬I ! dest= D to I

src = I ! dest= D to D

TABLE IDIRECT ALL D-TRAFFIC TO AN INTERMEDIATE DTN NODE I FOR

CONTENT AUTHENTICATION.

Predicate Actionsrc = ¬W ! dest= D drop

TABLE IIDROP TRAFFIC NOT ORIGINATED BY A White list W OF MANET NODES

AND DIRECTED TO A PRIVATE NODE.

Consider now the injection of the predicate in Table II. Inthis second use case, a predicate drops all the unsafe MANETtraffic coming from a black list of IP addresses directed toa private node D. In both cases, nodes not yet aware of theinjected predicate follow the normal routing behavior.

!"#$%&'&(&)*&$+,-.&,&)/0/12)

!!!"#$%&'()$!*+,)&-.!/"0 !"#$34+

$56&($7-0*&$

!!!!!!!"#$%&'()$!*+,)&-.!1,22+#)!3+%$!!!!

8&()&.$92:;.&6

3+-4$#.$-'$!5(6$#

"<4

93#="

)2:&

!"#)2:&

Fig. 1. Architecture of a DTN node running over a MANET substrate. Thenode is Predicate Routing (PR) enabled.

B. PreDA Advantages

Our PreDA architecture enables cooperation between theDTN overlay and the underlying network. This cooperationincludes (i) gathering information from the MANET level,(ii) applying data mining techniques at the DTN level, and(iii) declaratively generating rules from the DTN overlay,thus facilitating general-purpose network applications. Forexample, a DTN network could use trust-based approaches tocollect trust information and generate rules as in Table II, or asensed signal coming from a node can trigger the generationof new routing predicates (rules) for the purpose of energysaving, load balancing or packet processing.

III. OVERALL ARCHITECTURE

Figure 1 shows the DTN-MANET stack—our modified andadded components are marked by “stars.”

The block named Application Programming Interface (API)of the DTN reference implementation is extended to allowapplications to inject high-level requirements or constraints.We refer to this modification as Predicate Routing API (PR-API).

The Predicate Routing Support Code (PRSC) component,implemented in the routing protocol user space, mainly imple-ments two functionalities: (1) it uses the iptables Linux facility[9] to install predicate MANET routing rules, so that MANETpackets carrying content —IP packets or DTN bundle(s)—are routed based on DTN-level routing constraints, and (2) itcreates and manages new routing extensions to discover otherDTN nodes and propagate MANET routing predicates.

The Convergence Layer (CL) interfaces DTN and MANETby maintaining the mapping between DTN node names andIP/MANET addresses. The mappings are used to translaterouting predicates on DTN node names to routing predicateson corresponding IP/MANET node addresses.

A. Predicate Routing Support Code (PRSC)

Dissecting the main architecture components we have mod-ified and integrated together, in a bottom up approach, we startby describing in detail the PRSC.

Example 1: Drop traffic not origi-

nated by a White List W of nodes and

directed to a node D.

From the network point of view, the predicate is a set ofrules that each MANET packet has to satisfy. Our systemmaps declarative user policies to such network-level routingpredicates. Predicates get propagated and installed as MANET-level forwarding rules. Any DTN node can inject, from theapplication level, a routing rule that gets seamlessly translatedinto a MANET-level rule, enabling new MANET routinginstructions.

We next show two examples (Tables I and II) of routingpredicates.

A. Predicate Examples

Consider the injection of two predicates as in Table I. Theobjective of these two rules is to re-direct traffic destined to anode D to an intermediate DTN node I for authentication orpre-processing. The first rule directs all data destined to nodeD but not yet pre-screened at node I to node I . Notice that ifthe destination node D is in the path to reach the intermediatenode I , then node D forwards the MANET packets matchingthis rule without reassembling the associated data message forpre-screening.

The second predicate ensures that pre-screened data com-ing from the intermediate DTN node I , reach the originaldestination D. Note that if nodes (S, I and D) are DTNnodes, then these predicates override the normal DTN routingprocess. In particular, under normal DTN routing, node I ,not recognizing itself as the destination, would have directedreceived bundles to D without preprocessing. Thus, our PreDAarchitecture supports predicate routing at the DTN level aswell.

Predicate Actionsrc = ¬I ! dest= D to Isrc = I ! dest= D to D

TABLE IDIRECT ALL D-TRAFFIC TO AN INTERMEDIATE DTN NODE I FOR

CONTENT AUTHENTICATION.

Predicate Actionsrc = ¬W ! dest= D drop

TABLE IIDROP TRAFFIC NOT ORIGINATED BY A White list W OF MANET NODES

AND DIRECTED TO A PRIVATE NODE.

Consider now the injection of the predicate in Table II. Inthis second use case, a predicate drops all the unsafe MANETtraffic coming from a black list of IP addresses directed toa private node D. In both cases, nodes not yet aware of theinjected predicate follow the normal routing behavior.

B. PreDA Advantages

Our PreDA architecture enables cooperation between theDTN overlay and the underlying MANET network. This co-operation includes (i) gathering information from the MANETlevel, (ii) applying data mining techniques at the DTN level,

!"#$%&'&(&)*&$+,-.&,&)/0/12)

!!!"#$%&'()$!*+,)&-.!/"0 !"#$34+

$56&($7-0*&$

!!!!!!!"#$%&'()$!*+,)&-.!1,22+#)!3+%$!!!!

8&()&.$92:;.&6

3+-4$#.$-'$!5(6$#

"<4

93#="

)2:&

!"#)2:&

Fig. 1. Architecture of a DTN node running over a MANET substrate. Thenode is Predicate Routing (PR) enabled.

and (iii) declaratively generating routing rules from the DTNoverlay, thus facilitating general-purpose network applications.For example, a DTN network could use trust-based approachesto collect trust information and generate routing rules as inTable II, or a sensed signal coming from a node can triggerthe generation of new routing predicates (rules) for the purposeof energy saving, load balancing or data processing.

III. OVERALL ARCHITECTURE

Figure 1 shows the DTN-MANET stack—our modifiedand added components are marked by “stars.”

The block named Application Programming Interface(API) of the DTN reference implementation is extended toallow applications to inject high-level routing requirements orconstraints. We refer to this modification as Predicate RoutingAPI (PR-API).

The Predicate Routing Support Code (PRSC) component,implemented in the routing protocol user space, mainly imple-ments two functionalities: (1) it uses the iptables Linux facility[9] to install predicate MANET routing rules, so that MANETpackets carrying content —IP packets or DTN bundles— arerouted based on DTN-level routing constraints, and (2) itcreates and manages new routing extensions to discover otherDTN nodes and propagate MANET routing predicates.

The Convergence Layer (CL) interfaces DTN andMANET by maintaining the mapping between DTN nodenames and IP/MANET addresses. The mappings are used totranslate routing predicates on DTN node names to routingpredicates on corresponding IP/MANET node addresses.

A. Predicate Routing Support Code (PRSC)

Dissecting the main architecture components we havemodified and integrated together, in a bottom up approach,we start by describing in detail the PRSC.

Our PreDA architecture allows every node to behave asa pure MANET node or, when needed, to use the DTN prop-erties. This flexibility is achieved by configuring on demandthe properties that the user or application wants to embed insuch nodes. Listing 1 lists the options that the routing protocoldeamon of PreDA supports for the case of the AODV protocol.

Example 2: Direct all D traffic to an

intermediate DTN node I for content au-

thentication.

Predicate Routing in Action on Our UML Testbed

1000 200 300 400

0.2

0

0.4

1

1.2

Time [s] 500

Dat

a [M

B]

0.6

0.8

1.4

Figure 4: Data delivered at the destination vs.

time for 2% packet loss probability.

0.030.020.01 0.04 0.05 0.06 0.07 0.08

35

30

40

45

50

Packet Loss Probability260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.130

35

40

45

50

55

Packet loss probability

Per

cent

impro

vem

ent

in d

eliv

ery t

ime

0.09 0.1

% Im

prov

emen

t in

Del

iver

y Ti

me

Figure 5: Percentage improvement in data delivery

time vs. packet loss probability with 95% confidence

interval when an authentication predicate is injected.

Dat

a [M

B]

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

280270260 290 300 310 320 330

0.5

0

1

1.5

2

2.5

Time [s]260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

260 270 280 290 300 310 320 3300

0.5

1

1.5

2

2.5

Time (s)

Data

(M

B)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 22

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

3.8

4

Drop if source is DTN #4

Drop if source is DTN #6

Drop Predicate #1 Inserted

Drop Predicate #2 Inserted

Drop Predicate #1 Removed

Drop Predicate #2 Removed

Figure 6: Throughput drops and resumes after the

“dropping” predicates propagate and are removed.

Summary of Contributions

• We provide a reliable DTN neighbor discovery

mechanism that leverages AODV’s HELLO mes-

sages to propagate DTN node names. The conver-

gence layer of the DTN stack then maintains the

mappings from DTN node names to IP (MANET)

node addresses (Figure 1 and 2).

• In addition to DTN node names, AODV’s HELLO

messages are also used to propagate low-level

MANET routing predicates (Figure 3). These

latter predicates are mapped by the convergence

layer from given DTN-level requirements on rout-

ing content.

• As a proof of concept, we implemented our architec-

ture on our UML based testbed [3] that simulates a

network of emulated DTN-MANET nodes as well

as MANET-only nodes. The wireless connectivity

and mobility of nodes are simulated using the ns

simulator (ns-emulation version). The emulation

uses UML (User Mode Linux) to run real DTN

(reference implementation) and MANET (AODV

routing) code.

• We present throughput results showing the efficient

and correct operation of propagating routing pred-

icates. We demonstrate two applications. The first

application re-directs content to an intermediary

node for pre-processing (Example 2, Figure 4

and 5). We also demonstrate the correct opera-

tion of a second application where a malicious node

is isolated by dropping all its packets (Example

1, Figure 6).

References[1] Timothy Roscoe, Steven Hand, Rebecca Isaacs, Richard Mortier, and Paul W. Jardetzky. Predicate Routing: Enabling Controlled

Networking. Computer Communication Review, 33(1):65–70, 2003.

[2] Eiko Yoneki and Jon Crowcroft. Towards Data-Driven Declarative Networking in Delay Tolerant Networks. In DEBS 08 Inter-

national Conference on Distributed Event-Based Systems. ACM, 2008.

[3] Gabriele Ferrari Aggradi, Flavio Esposito, and Ibrahim Matta. Supporting Predicate Routing in DTN over MANET. In CHANTS

’08: Proceedings of the third ACM Workshop on Challenged Networks at MOBICOM, pages 125–128, San Francisco, Cali-

fornia, USA, 2008. ACM.