# DTN Routing Optimised by Human Routines: The HURRy Protocol

Susana Pérez-Sánchez, Jose Maria Cabero, Iñigo Urteaga

► To cite this version:

Susana Pérez-Sánchez, Jose Maria Cabero, Iñigo Urteaga. DTN Routing Optimised by Human Routines: The HURRy Protocol. 13th International Conference on Wired/Wireless Internet Communication (WWIC), May 2015, Malaga, Spain. pp.299-312, 10.1007/978-3-319-22572-2_22. http-01728800

HAL Id: hal-01728800

https://inria.hal.science/hal-01728800

Submitted on 12 Mar 2018

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
DTN routing optimised
by human routines: the HURRy protocol

Susana PÉREZ-SÁNCHEZ, Jose Maria CABERO, and Iñigo URTEAGA

Fundación TECNALIA Research and Innovation,
Parque Tecnológico Bizkaia 700, Derio 48160, Spain
{susana.perezsanchez,josemari.cabero}
@tecnalia.com

http://www.tecnalia.com/

**Abstract.** This paper proposes the HURRy (HUMAN Routines used for Routing) protocol, which infers and benefits from the social behaviour of nodes in disruptive networking environments. HURRy incorporates the contact duration to the information retrieved from historical encounters among neighbours, so that smarter routing decisions can be made. The specification of HURRy is based on the outcomes of a thorough experiment, which highlighted the importance of distinguishing between short and long contacts and deriving mathematical relations in order to optimally prioritize the available routes to a destination. HURRy introduces a novel and more meaningful rating system to evaluate the quality of each contact and overcome the limitations of other routing approaches in social environments.

**Keywords:** Challenged networks, DTN, probabilistic routing, social behaviour

# 1 Introduction

A Disruption-Tolerant Network (DTN) is a network architecture that reduces intermittent communication issues by addressing technical problems in heterogeneous networks that lack continuous connectivity. DTN defines a series of contiguous network data bundles that enable applications. This architecture serves as a network overlay that bases new naming on endpoint identifiers. DTN uses a shared framework algorithm that temporarily connects data communication devices. DTN services are similar to email, but DTN includes enhanced routing, naming and security capabilities. Typically, DTN nodes use network storage to manage, store, and forward operations over multiple paths and longer periods. Exploring self-* properties of nodes belonging to a DTN and learning from neighbour encounters (context awareness), becomes of a great value in order to design an optimized transport strategy to improve service performance in this specific type of networks. Connectivity in DTN scenarios implies that nodes do not have
permanent physical paths to certain destinations, but only to some of their clos-
est neighbours instead. This work aims at the development and implementation
of a mechanism that helps the node take a decision regarding packet routing and
forwarding. There is a wide range of combinations that could be validated for
several specific situations where delay tolerant transmissions would be optimized
so as to be characterised by a certain expected Quality of Service (QoS). Our
aim is to design and implement a prototype that makes use of a valuable subset
of these properties and is able to exploit them for a smart management of the
connectivity in DTNs formed by human-carried devices. This paper states why
the inter-contact time between historical encounters is not sufficient so as to
derive probability values in certain scenarios. People usually behave according
to routines or patterns that are seamlessly introduced in their daily activity.

The remain of this article is organised as follows: section 2 summarizes the
state of the art in related areas of interest and states the motivation for a new
routing solution based on human routines, section 3 describes the HURRy pro-
tocol we propose including its main component specification and description
of components; in section 4 the protocol implementation is outlined, as well
as the scenario and configuration simulated as proof of concept, in order to
present some results regarding the performance evaluation of HURRy compared
to PRoPHET; finally, section 5 presents the most relevant conclusions, while
opening some discussion lines and future work.

## 2 Related work

Collecting data about people interactions based on wireless technologies is a quite recent activity. Its potential usage did not seem to transcend beyond the biological or sociological fields [1][2], but the irruption of new paradigms in communication networks, which dynamics play a key role for, became a powerful tool in the study of human behaviour. Detecting one or several aspects related to human behaviour like people's social activity [3], the reason why people move to certain places, in which specific moments, or with whom, together with human ability to associate, could be of a great value in order to optimise both network design [4][6], as well as societal structures[5][7]. Thanks to frequent changes in the activity and communication patterns of individuals, the associated social and communication network is subject to constant evolution [11][12]. Barabási studied human dynamics with special focus on the exploration of scaling properties [8] and the limits of predictability in human mobility patterns [9].

Eagle and Pentland [10][11] performed experiments regarding proximity in-
teractions (based on short-ranged Bluetooth technology) using people's mobile
phone as a contact sensor; they worked on the identification of communities and
patterns of behaviour. In the same line Cabero et al [12][13] designed Bluetooth
medallions specially intended for the monitoring of human Mobile Ad-hoc NET-
works (MANETs). They collected a voluminous database with contact traces of
people during labour hours in the same office building for several weeks. The out-
come of these experiments served as valuable motivation for the work presented
in this article [23][24].

Human based networks are complex environments that demand networked
applications operating in very challenging conditions. [14] comprises the RFC
for PRoPHET, a probabilistic routing protocol based on the history of encoun-
ters, which defines a method for deriving a proportional relation between the
frequency of past encounters among nodes, and the probability of having a new
contact. Lindgren et al [15] already showed that PRoPHET is able to deliver
more messages than epidemic routing approaches [16] with a lower communica-
tion overhead. Our protocol continues in the line of PRoPHET, incorporating
the concept of human profiling as a key factor for the probability estimation.
Our solution incorporates some modifications to PRoPHET, in order to help the
routing decision with other parameters that we consider relevant for inferring
human profiles from the history of their contacts with neighbours. Some of these
enhancements are: a new and refined algorithm for estimation of direct proba-
bilities, a configurable parameter to allow the user or application decide which
rating value is prioritized, a new transitivity formula to derive probability val-
ues learnt via others, the aging formula and the exchange process of transitivity
values have been tuned, among others.

3 The HURRy protocol

3.1 Motivation

It is assumed that connectivity in disrupted scenarios implies that nodes do not
have permanent physical paths to all possible destinations, but only to their
closest neighbours instead. When a DTN node receives a packet addressed to a
certain destination, a set of steps are triggered in order to find the most suitable
way of reaching this destination node. The easiest situation (apart from being
the destination node) would be that the destination is one of the node's direct
neighbours: in that case, the packet is just at one hop distance from its final des-
tination, and there is a physical connection available. Otherwise, the node will
need to analyse its available routing information and take an action according
to one or several of the following aspects: accept or discard the packet (buffer
constraints), store the packet and wait for a suitable forwarding instant (based
on the probability of reaching the destination node within a certain time period),
forward the packet immediately to an intermediate node with higher probability
of contacting the destination (based on connectivity or mobility pattern estima-
tion, learning process...), etc.

In the HURRy protocol this routing decision is based on probabilistic rout-
ing techniques (like PRoPHET), although it incorporates the contact duration
of encounters (unlike previous approaches), and it proposes a novel reasoning al-
gorithm for a DTN node to estimate the rating probabilities of all possible paths
to a certain destination (i.e. to construct its routing table). HURRy introduces
an estimation formula to evaluate the Goodness (G) of a contact, as explained
later with Equation 2.
As per the inherent nature of the connectivity established in a DTN envi-
ronment, the end-to-end concept is no longer true and/or available. Figure 1
represents a typical scenario, where several nodes are part of a mobile DTN
topology and eventually, one user terminal (Node C) might have access to the
outside world (i.e. the Internet) through a wireless interface (apart from its
available DTN physical interface, which might be based on the same or different
wireless technology).

<figure><img src="image_2.png" /><figcaption>Fig. 1. Dynamic DTN scenario with diverse wireless connectivity</figcaption></figure>

Each DTN node is responsible for interchanging information regarding pre-
vious encounters and estimated path-ratings with its neighbouring nodes. A
probabilistic algorithm will then come up with quantitative rating values for
all possible routes. The best next hop (node with the highest rating value, or
probability) to reach a certain destination is decided according to a mathemat-
ical equation where the accumulated mean values of inter-contact and contact-
duration times in historical encounters are considered (see Equation 1 below).
In Figure 1 imagine that Node A must find a route towards Node C and gain
access to the outside world. If Node A demands a specific content (e.g. a video
from Youtube) from the Internet, it will need to decide how to reach Node C
(i.e. decide which intermediate neighbour would most probably contact Node C,
or in a more reliable way). DTN nodes are mobile, and they register information
about who contacts whom, with which frequency and for how long. In Figure
1 nodes B and C are moving back and forth from position (1) to (2), which
induces the establishment of new connections (with nodes A and D), and the
intermittent disruption of the link between B and D. Once Node A contacts
Node B, they exchange information about the probability with which they ex-
pect to reach Node C (this value is merely based on their history of contacts
with D and C). The nature of these encounters regarding frequency or duration
will vary depending on specific features of the scenario considered. Outdoor and
indoor topologies might result in very different contacting routines, for instance.
In the same way, people do not show the same social behaviour with colleagues
during labour days, as with friends during the weekend. Human routines are
affected by the surrounding environment and conditions, but they also affect the
resulting connections established in a mobile DTN. Not only is the frequency
of contacts used in PRoPHET [15] insufficient for estimating the probability of
a new contact, but it may also lead to non-optimal routing decisions. Previous
works like[7][11] highlight the necessity of an enhanced characterisation of so-
sial patterns in order to design an optimised probability estimation mechanism.
HURRy intends to incorporate a more elaborated model of human routines to
the estimation of contact probabilities by a DTN node.

## 3.2 Description of components

In this section we introduce the principles of the HURRy protocol. The operation
of HURRy in a DTN node is represented in Figure 2.

<figure><img src="image_3.png" /><figcaption>Fig. 2. Sequence of components implemented in a DTN node</figcaption></figure>

Figure 2 shows the flow chart of the whole mechanism from a node's perspective, node A, when it detects a new physical connection to node B. P_(A,B) is the direct probability of node A contacting its neighbour node B, and calculated using the inter-contact time since their last encounter (new T_inter). After that, node A would update the rest of its own probabilities, P_(A,k), through
the transitivity values learnt from B (node B informs about its probability of reaching the rest of nodes, P-(B,k)). If node A detects any other simultaneous connection (other direct neighbours), it will exchange its own stored probabilities with them. If physical connection with node B is lost due to disconnection, the value of P-(A,B) is calculated again with the last contact duration (new $T_{intra}$). From this outline, we can already notice a couple of modifications to PRoPHET, where there is no check for updates in transitivity values while connected to node B, and there is no need for updating P-(A,B) at disconnection, since PRoPHET does not consider contact duration times. The specific components to calculate direct and transitivity probabilities are further described later in Figures 3 and 4.

Nodes in a challenged network can easily register the inter-contact ($T_{inter}$) and contact-duration ($T_{intra}$) time values of their historical contacts with others. But the process of estimating a representative average value, considering the history of values registered, might not be so immediate. HURRy bases this estimation on the statistical features that characterise both mathematical distributions. Assuming these distributions are highly dependent on several factors, such as the minimum time slot detected, or the aggregation of values into certain time intervals, it seems that a good approximation can be achieved deriving a histogram for each magnitude. A node implementing HURRy will have predefined time intervals, both for inter-contact times and for contact durations, which will register an incremental number of repetitions according to the history of encounters. The size of these configurable intervals does not need to follow a linear basis, so we can define smaller interval sizes for the lower range and larger sizes for the higher range of the scale considered. Table 1 summarizes the meaning of the variables used in Equation 1 below.

<table><caption>**Table 1.** Variables used in Equation 1</caption><tr><td>$T_I$</td><td>Mean value of $T_{inter}$ or $T_{intra}$, where $I$ stands either for inter or intra</td></tr><tr><td>$n$</td><td>Sequence of discrete time</td></tr><tr><td>$n_{curr}$</td><td>Current time instant</td></tr><tr><td>$V$</td><td>Maximum range interval defined for each magnitude</td></tr><tr><td>$v_i$</td><td>Individual values of all intervals defined</td></tr><tr><td>$e_i^i$</td><td>Number of occurrences per interval</td></tr><tr><td>$E_n$</td><td>Total number of occurrences, number of all encounters registered up to the current time instant</td></tr><tr><td>$\alpha_n$</td><td>Weightening factor that awards the three most recent occurrences of $v_i$ in the summation</td></tr></table>

Equation 1 represents the formula applied by a node to derive a representative mean value of $T_{inter}$ or $T_{intra}$:

$$ \bar{T}_I = \sum_{n=0}^{n_{curr}} \sum_{i=0}^{V} \frac{v_i e_n^i}{E_n} \alpha_n \quad (1) $$

According to Equation 1 $\bar{T}_I$ is calculated at a certain instant, using the history of values registered. Introducing $\alpha_n$ factor prioritizes the values registered
in most recent encounters in the same proportion as older encounters are penalized. In the case that only three (or less) encounters have occurred, $\alpha_n$ does not modify the average value calculated (i.e. $\alpha_n = 1$).

Each of the HURRy components is implemented by a specific algorithm. Figure 3 shows the detail of the component that estimates a direct probability $P_{\text{P(A,B)}}$.

<figure><img src="image_4.png" /><figcaption>Fig. 3. Detail of the estimation of direct probabilities</figcaption></figure>

In Figure 3 the functional block $\text{CALC } G_{\text{P(A,B)}}$ estimates the Goodness (G) of a contact. If node A has its first contact with node B, their direct probability is initialized with a default value $P_{\text{INIT}}$. Otherwise, this component is in charge of deriving a neighbour's quality by using the G formula:

$$G = \frac{F(T)^{1-\gamma}}{(1-FT)^{\gamma}}, \gamma \in [0, 1] \qquad (2)$$

Assuming both parameters are normalized to the same period in Equation 2, F denotes the inverse value of $\bar{T}_{\text{inter}}$ and T stands for $\bar{T}_{\text{intra}}$. The goodness G of a neighbour is proportional to the frequency of contacts occurred (inversely proportional to the inter-contact time), and to the mean contact duration of past encounters. HURRy introduces a tuning factor $\gamma$ in order to allow the user or application service to balance the priority among both parameters. It is easy to verify that when $\gamma = 1$ the frequency of contacts is being prioritized, whereas if $\gamma$ takes values near 0 the goodness is prioritizing the contact duration. This will also influence the transitivity formula described by Equation 3 below. The last block in Figure 3 smooths the evolutionary slope of accumulated mean values of
the probability under calculation.

Figure 4 shows the detail of the component that updates the values of transitive probabilities in node A. $P_{-}(A, k)$ represents the transitive probabilities stored by node A to reach any of its historical neighbours in the DTN (denoted by $k$).

<figure><img src="image_5.png" /><figcaption>Fig. 4. Detail of the estimation of transitivity probabilities</figcaption></figure>

Unlike previous approaches, HURRY's aging process distinguishes if a third neighbour $k$ is either (i) currently connected or (ii) not. If (i), and because HURRY considers the contact duration, the value of $P_{-}(A, k)$ will be incremented since last update; if (ii) the $P_{-}(A, k)$ value will be decremented since last update. This way, the aging may result in a positive factor if node A has been permanently connected to node $k$ since last calculation of $P_{-}(A, k)$. Furthermore, node A updates its $P_{-}(A, k)$ values of other currently connected neighbours before sending that information to node B. This enhancement results in a smarter management of the information exchanged within each encounter among nodes in the vicinity. It helps reducing the transitory events of intermittent connections: for instance if a third node is not simultaneously detected by two previously present neighbours due to unstable links, the first node detecting a third entity would immediately inform its connected neighbour through transitivity (e.g. PROPHET did not exchange new neighbours detected during a previously established connection at once). Equation 3 represents the transitivity formula applied in the module named CALC $P_{-}(A, k)_{trans}$ in Figure 4:

$$ \left( \frac{1}{P_{-}(A, k)} \right)^{\frac{1}{\gamma}} = \left( \frac{1}{P_{-}(A, B)} \right)^{\frac{1}{\gamma}} + \left( \frac{1}{P_{-}(B, k)} \right)^{\frac{1}{\gamma}} \quad (3) $$
If we only considered contact durations (i.e. $\gamma \approx 0$), transitivity would come from the minimum value of the comparison between $P_-(A, B)$ and $P_-(B, k)$. If we only considered frequency of contacts (i.e. $\gamma = 1$), transitivity would be given by the inverse combination of both probabilities. Since we introduced $\gamma$ as a tuning factor, it also influences the combination law for transitivity, where Equation 3 provides a good intermediate approximation function.

## 4 Validation results through simulation

In order to evaluate the performance of our approach, this section presents the validation of the HURRy protocol in a simulation environment specially designed for opportunistic networks: The ONE simulator [20]. We took the PRoPHET release for The ONE simulator as a starting point, and developed the HURRy modifications of functional blocks in Java code to be integrated and compiled in the simulator environment. Apart from specific functionality tests we executed for the validation of the protocol components, we aimed at the simulation of a significant scenario where the enhancements proposed could be proven and compared with the performance of PRoPHET. We selected the scenario represented in Figure 1 and we used the simulation results as proof of concept and verification of our solution. We considered Bluetooth interfaces and four nodes in this scenario (A, B, C and D), where node A intends to send information packets to node C, but there is no permanent path established from A to C. Position (1) in the picture represents an initial situation where nodes A and C have no neighbours (they are out of range of any other surrounding node), and nodes B and D are connected through a physical link. When the simulation starts, node C is continuously moving back and forth from position (1) to (2), so the links established by node C with A and D are intermittently active. Moreover, the movement of C is quite fast so the contacts between C and D, and C and A, are very short but with a high frequency. On the contrary, node B has a slower pace: it alternates positions (1) and (2), but once the link with D is broken in (2), node B establish long connections with A before getting back to (1). One of the first results obtained from the comparison between PRoPHET and HURRy in this scenario regards the convergence time needed for all nodes to be aware of the whole topology. If we define the convergence time, *conv_time*, as the time period until all nodes learn about all the rest, and assume generic time units, *t.u*, HURRy outperforms with a gain factor above 2.5, as shown in Table 2.

<table><caption>**Table 2.** Convergence time in simulated scenario</caption><tr><td>conv_time(PRoPHET)</td><td>746.9t.u</td></tr><tr><td>conv_time(HURRy)</td><td>281.8t.u</td></tr></table>

This is due to the fact that, for instance with HURRy, node B learns about node C during the first contact between C and D (the link B-D is still active),
which does not happen with PRoPHET until the second contact. The same happens for the rest of intermittent connections.

The simulation setup includes the following configuration:

- Node A creates 8 information packets headed to node C, and C creates 3 packets headed to node A (11 packets created)

- The packet size is 15MB

- The transmission rate of Bluetooth links is 250kbps

- The $\gamma$ parameter has taken three possible values: 0.05 (priority to contact duration); 0.95 (priority to contact frequency); and 0.5 (intermediate balance)

- The intervals predefined for the histogram of contact duration times have been configured with different granularity: (P.G) poor granularity (contact durations below 5t.u are not distinguished); and (H.G) high granularity ($v_i$ of 0.5t.u, 1t.u and 5t.u are distinguished)

<figure><img src="image_6.png" /><figcaption>Fig. 5. Results in terms of number of packets delivered</figcaption></figure>

Figure 5 shows the relevance of considering the contact duration in the routing decision. PRoPHET is not represented in the chart, since it delivered zero packets in the simulation. In this scenario, the packet size is considerably large, taking into account the transmission rate, so the frequency of direct contacts between nodes A and C forces PRoPHET to select the direct path as the best route, but in reality those direct contacts between A and C are too short for the messages to be successfully delivered, and that is the reason why a delivery ratio of 0/11 is obtained. HURRy performs differently according to the balance configured for the priority associated to the frequency and the duration of contacts,
but at least some of the transmission attempts are successful in all configurations. If $\gamma = 0.05$ HURRy is merely rating available contacts according to their duration, and so, node A is selecting node B as its best next hop to reach C. That is the reason why 9 out of 11 packets are delivered, even with poor granularity in the duration intervals. The opposite configuration with $\gamma = 0.95$ implies that HURRy is prioritizing the frequency of contacts, just like PRoPHET, but the difference in the results obeys to the fact that HURRy selects the upper path in Figure 1 until a number of encounters between A and C has occurred and then, the direct probability $P_-(A, C)$ increases its value. The intermediate configuration, $\gamma = 0.5$, shows the importance of defining an appropriate precision for the scenario considered. In this case, the number of packets delivered increases considerably if HURRy performs with high granularity in the range of duration intervals.

The comparison of the evolution experimented by $P_-(k, C)$ in the scenario during simulation time is also quite revealing. Figure 6 presents the final status of the key probability values evaluated by node A when selecting a route towards C. All results in Figure 6 referred to HURRy correspond to the case of high granularity (H.G).

<figure><img src="image_7.png" /><figcaption>Fig. 6. $P_-(k,C)$ values compared by node A</figcaption></figure>

It can be observed that node A will always choose the direct path towards C with PRoPHET, since $P_-(A, C) > P_-(B, C)$, and that is the reason why none of the transmission attempts succeeds, because the packet is too big to be delivered within the short duration of each contact between A and C. The probability values obtained with HURRy depend on $\gamma$, of course: the comparison between the two possible paths results in $P_-(A, C) < P_-(B, C)$ when $\gamma = 0.05$
and $\gamma = 0.5$; but if $\gamma = 0.95$ the final status ends with $P_-(A, C) > P_-(B, C)$, like in PRoPHET. The rating difference is much higher for the case $\gamma = 0.05$, which is the most opposed to PRoPHET. On the contrary, when HURRy uses a similar prioritization to PRoPHET, it is only in the beginning of the simulation that certain packets manage to reach node C.

Finally, we would like to highlight some results associated with the precision defined for the intervals of the contact duration. Figure 7 shows the different values obtained for $P_-(k, C)$ for configurations of high and poor granularity.

<figure><img src="image_8.png" /><figcaption>Fig. 7. $P_-(k,C)$ values compared by node A with different granularity</figcaption></figure>

For $\gamma = 0.05$ the comparison in Figure 7 results in $P_-(A, C) < P_-(B, C)$ both for poor and high granularity, although the difference is much bigger for the H.G case. When $\gamma = 0.5$, the comparison provides opposed results depending on the granularity defined. Provided that the intermediate case is trying to balance the rating parameters considered in Equation 2, an appropriate granularity to distinguish contact durations with high precision is the key factor influencing the final probability values. Thus, Figure 5 showed that if $\gamma = 0.5$, the H.G case obtained a delivery ratio of 8/11, whereas the P.G case delivered only 5 packets out of 11. Figure 7 states the reason for such a different performance.

# 5 Conclusions and future work

The work presented in this article summarises the design principles, protocol components and simulation results obtained for the specification of a novel probabilistic routing approach based on human routines: the HURRy protocol. The
motivation for this research came from the study of challenged networking in
scenarios where the social behaviour of people highlighted some deficiencies in
existing approaches. We analysed the statistical distributions followed by the
inter-contact and contact duration times in some previous experiments cited as
related work, and derived a way of combining these statistical features in order
to evaluate the quality of a neighbour. We propose a solution where DTN nodes
register the parameters of their contact history to estimate a weighted mean
value and calculate the goodness of their contacts accordingly. HURRy incorpo-
rates some other enhancements that result in an optimised performance in terms
of convergence time and packet delivery ratio for scenarios in which the duration
of contacts shows high variability. Some of the most relevant results obtained in
simulation have been presented as a proof of concept for the HURRy protocol
implementation. There is still much work ahead in order to extend this research
line in several directions: we are currently working on the complete specification
of the HURRy protocol, and have implemented its functionality into the Byte-
walla3 project for Android phones [21]. The resulting Android implementation
is called HURRywalla and it is made available through [25]. We would like to
incorporate more parameters to the profiling of human routines and we plan to
perform a more thorough experimentation plan using real smart phones. Our
implementation of HURRy for Android is actually supporting the Bundle Pro-
tocol Query (BPQ) [22] extension block for DTN2, and so we can start testing
scenarios comprising Content Delivery Networks, content caching and the like.

6 Acknowledgement

The research leading to these results has received funding from the European
Unions (EU) Horizon 2020 research and innovation programme under grant
agreement No 645124 (Action full title: Universal, mobile-centric and oppor-
tunistic communications architecture, Action Acronym: UMOBILE). This paper
reflects only the authors views and the Community is not liable for any use that
may be made of the information contained therein.

References

1. J. Scott, J. Crowcroft, P. Hui and C. Diot: Haggle: a Networking Architecture De-signed Around Mobile Users. Proceedings of Third Annual Conference on Wireless On-demand Network Systems and Services (2006)

2. J. P. Bagrow, D. Wang and A.-L. Barabási: Collective Response of Human Popula-
tions to Large-Scale Emergencies. PLoS One, 6, vol. 3, pp. 1-8 (2006)

3. D. Brockmann, L. Hufnagel and T. Geisel: The scaling laws of human travel. Nature, vol. 439, pp. 462-465 (2006)

4. H. Ebel, J. Davidsen, and S. Bornholdt: Dynamics of social networks. Complexity, vol. 8, pp. 24-27 (2002)

5. G. Palla, A.-L. Barabási and T. Vicsek: Quantifying social group evolution. Nature, vol. 446, pp. 664-667 (2007)
6. G. Szabó and A-L. Barabási: Network effects in service usage. Physics, subject: Physics and Society (2006)

7. M. C. González, C. A. Hidalgo and A.-L. Barabási: Understanding individual human mobility patterns. Nature, vol. 453, pp. 779-782 (2008)

8. C. Song, T. Koren, P. Wang and A-L. Barabási: Modelling the scaling properties of human mobility. Nature Physics (Advanced Online Publications), vol. 7, pp. 713-2010

9. C. Song, Z. Qu, N. Blumm and A.-L. Barabási: Limits of Predictability in Human Mobility. Science, vol. 327, pp. 1018-1021 (2010)

10. N. Eagle and A. Pentland: Reality mining: sensing complex social systems. Personal and Ubiquitous Computing, vol. 10, pp. 255-268 (2006)

11. N. Eagle and A. Pentland: Eigenbehaviours: identifying structure in routine. Behavioral Ecology and Sociobiology, vol. 63, pp. 1057-1066 (2009)

12. J. M. Cabero, G. Unibaso, A. Sanchez and I. Arizaga: The Bluetooth Medallion: a wearable device for human MANETs. 3rd International Symposium on Wireless Pervasive Computing, ISBN: 9781424416523, pp. 776-780 (2008)

13. J. M. Cabero, V. Molina, I. Urteaga, F. Liberal and J. L. Martin: Acquisition of human traces with Bluetooth technology: Challenges and proposals. Ad Hoc Networks, vol. 12, pp. 2-16 (2012)

14. A. Lindgren, A. Doria, E. Davies and S. Grasic: Probabilistic Routing Protocol for Intermittently Connected Networks. RFC Active Internet-Draft (2012) https://datatracker.ietf.org/doc/draft-irtf-dtnrg-prophet/

15. A. Lindgren, A. Doria and O. Schelén: Probabilistic Routing in Intermittently Connected Networks. ACM SIGMOBILE Mobile Computing and Communications Review, ISSN: 1559-1662, pp. 19-20 (2003)

16. A. Vahdat and D. Becker: Epidemic routing for partially connected ad hoc networks. Technical Report CS-200006 (2000)

17. C. Shen, G. Borkar, S. Rajagopalan and C. Jaikaeo: Interrogation-based relay routing for ad hoc satellite networks. Proceedings of IEEE Globecom, pp.17-21 (2002)

18. TECNALIA Research team: Specification of the HURRy protocol. In preparation (2015)

19. A. Kernen, J. Ott and T. Koerkkinen. The ONE Simulator for DTN Protocol Evaluation. SIMUTools'09: 2nd International Conference on Simulation Tools and Techniques (2009)

20. The Opportunistic Network Environment simulator http://www.netlab.tkk.fi/tutkimus/dtn/theone/

21. Communication System Design (KTH, Stockholm): Android application version 3 of the project Bytewalla http://sourceforge.net/projects/bytewalla3/ (2010)

22. S. Farrell, A. Lynch, D. Kutcher and A. Lindgren: Bundle Protocol Query Extension Block. RFC Active Internet-Draft http://tools.ietf.org/html/draft-irtf-dtnrg-bpq-00 (2012)

23. J. M. Cabero, I. Olabarrieta, S. Gil-López, J. Del Ser, and J. L. Martin: A novel range-free localization algorithm to turn connectivity traces and motion data into localization information. Ad Hoc Networks, vol. 20, pp. 36-52 (2014)

24. J. M. Cabero, V. Molina, I. Urteaga, F. Liberal and J. L. Martin: Reliability of Bluetooth-based connectivity traces for the characterization of human interaction. Ad Hoc Networks, vol. 24 Part A, pp. 135-146 (2015)

25. S. Pérez-Sánchez, N. Errondosoro: HURRywalla project. Implementation of HURRy protocol within the DTN stack of Bytewalla3 project for Android phones http://sourceforge.net/projects/hurrywalla/ (2013)