# On building human-aware opportunistic communication strategies for cost-effective content delivery

Rafael Lima Costa, Aline Carneiro Viana, Artur Ziviani, Leobino Sampaio

► To cite this version:

Rafael Lima Costa, Aline Carneiro Viana, Artur Ziviani, Leobino Sampaio. On building human-aware opportunistic communication strategies for cost-effective content delivery. Computer Communications, 2022, 192, pp.106-118. 10.1016/j.comcom.2022.05.033. hal-04684046

HAL Id: hal-04684046

https://inria.hal.science/hal-04684046v1

Submitted on 2 Sep 2024

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>
# On Building Human-aware Opportunistic Communication Strategies for Cost-effective Content Delivery

Rafael L. Costa<sup>a,b,c,*</sup>, Aline C. Viana<sup>b</sup>, Artur Ziviani<sup>d</sup>, Leobino N. Sampaio<sup>c</sup>

<sup>a</sup>Institut Polytechnique de Paris (IPP), 91120, Palaiseau, France

<sup>b</sup>Inria Saclay, 91120, Palaiseau, France

<sup>c</sup>Department of Computer Science, Federal University of Bahia (UFBA), 40170-115, Salvador, Brazil

<sup>d</sup>National Laboratory for Scientific Computing (LNCC), 25651-075, Petrópolis, Brazil

## Abstract

Mobile networks face challenges such as data traffic growth, increasing connected devices, spectrum limitations, and costly infrastructure updates. In this context, opportunistic communication strategies appear to assist in scenarios such as data offloading, expanding the capillarity given by users' mobility, delivering content in challenging situations (e.g., emergency, rural areas, or crowded places), and fostering innovative applications. State-of-art opportunistic strategies extract human mobility characteristics (e.g., social and spatial) to improve content delivery's cost-effectiveness. Nevertheless, due to constraints, such as the limited availability of real-world datasets or the lack of a human-centered vision in networking, most previous works relied on traditional or simplified human-aware metrics to reach their purposes. Next-generation proposals need a more in-depth vision of peculiar aspects hidden into mobility datasets while working with more realistic scenarios. While building TOOTS, a novel human-aware opportunistic communication strategy for improved content delivery cost-effectiveness, we learned that several phases play a significant role in reaching strategy's superior performance. This work *guides the reader through the whole process necessary for building the Tactful Opportunistic Communication Strategy (TOOTS)*. The proposal consists of the following steps: learning human-aspect best practices from state-of-art; characterizing the traces while obtaining strategy's insights targeting superior performance; using, proposing, and analyzing human-aware metrics; combining such metrics and insights into a complete strategy for cost-effective content delivery in a more realistic scenario, and finally, evaluating the strategy through discussions of its best practices and shortcomings for future work. This work shows that TOOTS can improve the performance of an opportunistic scenario in terms of overhead, delivery rate, and delivery latency by following this proposed process.

**Keywords:** Human-centered computing, social computing, network architectures, Device-to-Device (D2D) forwarding

## 1. Introduction

Opportunistic networks (OppNets) and Device-to-Device (D2D) communication play an essential role as enablers of emerging applications and high-demanding requirements of the modern and future mobile network generations, such as 5G [1, 2] and 6G [3]. In many of the envisaged scenarios with low-latency and high-speed data transmission, or even with delay-tolerant communication, D2D [4] should benefit from AI techniques boosted by human-aware information and edge technologies, such as mobile edge computing (MEC) [3, 5]. In this context, D2D-enabled OppNets have the potential to assist in tasks such as data offloading (given the mobile data traffic and the number of connected devices growth), increasing network capillarity by its users' mobility, providing connectivity in challenging situations (e.g., emergency, remote or crowded areas), and fostering innovative applications.

Previous work on D2D opportunistic forwarding algorithms tackled the cost-effective and timely delivery of data [6, 7, 8, 9, 10, 11], i.e., delivering as many contents as possible with less overhead and delay. In these scenarios, contents (or messages) are forwarded user-to-user, from source to destination opportunistically (i.e., relying on user devices' intermittent connectivity). Most of such initiatives focused on proposing new algorithms that typically consider user encounters due to individual mobility [6, 10, 11], points of interest (PoIs) [11], and time-evolving social ties between node pairs [7]. Apart from that, not many initiatives approximated the evaluation metrics to broader inherent aspects of human mobility while targeting the Quality of Experience (QoE) of users and the Quality of Service (QoS) offered by the network [12]. One of the challenges that state-of-art work had in this context was the limited availability of real-world datasets [6, 11] and the lack of a human-centered vision in computer networking.

The works mentioned above demonstrate a lack of ini-

*Corresponding author.
Email addresses: rlimacosta@ufba.br (Rafael L. Costa), aline.viana@inria.fr (Aline C. Viana), ziviani@lncc.br (Artur Ziviani), leobino@ufba.br (Leobino N. Sampaio)
tiatives beyond traditional techniques or limited human-
mobility features. So, this work identifies spatiotemporal
routines, related consequences (e.g., wireless encounters),
and movement decisions (e.g., motion direction) with more
detail and precision.

In this paper, we characterize and evaluate NCCU [13]
and GRM [14] datasets to extract human features and
metrics later combined in an opportunistic communica-
tion strategy that targets improved performance in con-
tent delivery cost-effectiveness. As a matter of fact, we
learned that several preliminary phases play a significant
role in reaching strategy's superior performance. When-
ever the human factor is part of the solution, we must have
a broader view of each step towards building the strategy.
Thus, The main contribution of this work is the entire pro-
cess for developing a tactful (i.e., human-aware) oppor-
tunistic communication strategy able to improve content
delivery cost-effectiveness. This process (Fig. 1) was used
for building and introducing the Tactful Opportunistic
CommunicaTion Strategy (TOOTS) [15] and consists of:

* Discussing how state-of-art work dealt with the hu-
  man aspect in their solutions and what kind of im-
  provements can come from their approaches;

* Analyzing real-world and synthetic datasets while transforming the obtained information into insights for later improving the performance of the opportunistic strategy;

* Combining tactful metrics and intuitions with more granularity and precision than state-of-art to build a full strategy (TOOTS) aiming at improving content delivery cost-effectiveness;

* Comparing TOOTS' effectiveness on its two phases with state-of-art enhanced Store-wait-forward, Epidemic, and Bubble Rap algorithms through real and synthetic traces. For instance, in a scenario with a 30 m communication range, TOOTS can reach a 100% delivery ratio with 28%, and 73% reduced delivery latency; and 16% and 27% reduced overhead, respectively, in the real-world and synthetic datasets. In the next scenario with a more restricted communication range (10 m), TOOTS is the fastest strategy and the only one that delivers 100% of the contents in the real trace.

Through the whole process for building the strategy,
this paper shows that improving the performance of an
opportunistic scenario in terms of overhead, delivery rate,
and delivery latency (i.e., its cost-effectiveness) is possi-
ble. Since previous work in this context has not neces-
sarily followed some best practices presented herein, this
process can serve as a guideline for other opportunistic
strategies and future human-aware networking solutions.
The results showed herein cope with [5], which discuss the
need to have a more in-depth look into human charac-
teristics to build tactful networking solutions. In [15] we

introduced the preliminary results of this research. Differ-
ently from the previous publication, this paper includes:
(i) a thorough review of state-of-art with discussions of
each related work; (ii) characterization results from the
NCCU and GRM datasets, discussions, and insights to-
wards reaching strategy's improved performance; (iii) met-
rics descriptions, mathematical formulations, and evalua-
tions throughout the datasets' populations; (iv) TOOTS
performance evaluation in terms of delivery rate, delivery
latency, and overhead in a mobile scenario, including pa-
rameters such as varying communication range. To the
best of our knowledge, this is the only work in its con-
text that evaluates different communication ranges, which
influences the strategy's effectiveness.

The steps in Fig. 1 also reflect the sequence of this pa-
per's remaining organization. Sec. 2 discusses background
work. Sec. 3 features the mobility models (datasets) de-
scription and characterization. Sec. 4 presents the novel
temporal approach, the metrics of the strategy, results,
and discussions from metrics analysis, and a state-of-art
algorithm evaluation as a motivation to build TOOTS.
Sec. 5 introduces TOOTS, including its scenario architec-
ture and the proposed algorithms for content dissemina-
tion and forwarding. Sec. 6 presents the experimental re-
sults and analysis. Finally, Sec. 7 concludes this paper and
points out future work.

## 2. Related Work

The state-of-art opportunistic forwarding algorithms
extracted metrics or decision factors from real-world or
synthetic mobility datasets [6, 7, 10, 16, 11]. Human mo-
bility hidden into the datasets is dynamic but shows reg-
ularity [17, 18] of visited locations [19], encounters [20],
displacements [21], time [19, 18], space [21, 18], and other
aspects [22]. Despite the high predictability of human mo-
bility [23, 24], there is a challenge in choosing the for-
warders through the combination of human-aware decision
factors in the context of opportunistic forwarding.

**Bubble Rap:** A social-aware forwarding algorithm for delay-tolerant networks [6]. It relies on two characteristics extracted from human mobility: centrality, related to social bounds (i.e., encounters), and community detection, defined as a socially connected set of people with meaningful relationships. Bubble Rap outperformed Prophet [25], a state-of-art probabilistic routing protocol that relies on wireless encounters' history and transitivity.

Despite the vast contributions and bringing attention
to social-aware algorithms, Bubble Rap evaluations oc-
curred through small scenarios, as the available traces at
the time had less than 100 nodes. Furthermore, the al-
gorithm community detection feature requires calibration
and demands expensive computing, not suitable for realis-
tic scenarios. Despite these shortcomings, Bubble Rap is
the most popular social-aware forwarding algorithm, still
used as a benchmark with recent research [10, 11, 26].
<figure><img src="image_2.png" /><figcaption>Figure 1: Building process of the TOOTS proposal.</figcaption></figure>

<table><caption>Table 1: Properties from opportunistic forwarding algorithms</caption><thead><tr><th>Algorithm</th><th>Probabilistic</th><th>Social (Encounters)</th><th>Displacement Awareness</th><th>Direction Awareness</th><th>Human-Aware Time Approach</th><th>PoI Awareness</th></tr></thead><tbody><tr><td>Bubble Rap</td><td></td><td>x</td><td></td><td></td><td></td><td></td></tr><tr><td>dLIFE</td><td>x</td><td>x</td><td></td><td></td><td>x</td><td></td></tr><tr><td>SCORP</td><td></td><td>x</td><td></td><td></td><td></td><td></td></tr><tr><td>GROUPS-Net</td><td>x</td><td>x</td><td></td><td></td><td></td><td></td></tr><tr><td>SAMPLER</td><td></td><td>x</td><td>x</td><td></td><td></td><td>x</td></tr><tr><td>TOOTS</td><td>x</td><td>x</td><td>x</td><td>x</td><td>x</td><td>x</td></tr></tbody></table>

**dLife:** This social-aware forwarding algorithm brought attention to the observation of more granular human mobility [7]. The algorithm captures contact information (duration and degree) throughout daily hour periods to reflect human activities with more precision. The results from the evaluation of dLife showed improved delivery rate, delivery delay, and overhead.

Nevertheless, the evaluation of dLife suffered from the same lack of availability of more widespread traces as Bubble Rap. Other shortcomings were non-realistic settings on the evaluation, such as small (1 kB-100 kB) content size for offloading.

**SCORP:** An opportunistic routing protocol that exploits nodes' social proximity in terms of contact's duration and interest in a given content [27]. According to the authors, there is a higher probability for users with similar habits to show interest in similar content. Furthermore, more frequent and prolonged contacts can allow faster data forwarding, avoiding possible interruptions due to topology change. SCORP forwards a message when the next node is interested in the content, or the latter has a strong bond with other nodes interested in the content.

Despite the contributions, SCORP evaluations occurred through small datasets available at the time (a real trace

with 36 nodes and a synthetic with 150 nodes). With that said, SCORP's performance in larger scenarios is unknown. Furthermore, the distribution of interest among the network users, the size of the contents (1 kB-100 kB), and the nodes' buffer size (2 MB) evaluated lack more realistic settings.

**GROUPS-NET:** A social-aware forwarding strategy that relies on the regularity of group meetings [10]. This algorithm is parameter-calibration-free and does not require community detection. Compared to Bubble Rap in a larger scenario, GROUPS-NET improved the overhead with a similar delivery rate.

Despite the contributions, the algorithm relies on a group-to-group path centralized calculation every time a given content needs to be forwarded opportunistically from a source to a destination. In real-world larger populations, performing these calculations is challenging. Finally, GROUPS-NET also requires validations in other datasets than campus, where mobility is restricted.

**SAMPLER:** This forwarding algorithm [11] relies on social-aware, spatial-aware, and individual mobility extracted from a real-world dataset NCCU. SAMPLER had competitive results and some performance improvements (delay, overhead, and delivery rate) compared to Bubble Rap.
Rap. This work brought attention to the possibility of in-
vestigating other features from human mobility to achieve
cost-effectiveness in opportunistic forwarding.

Nevertheless, SAMPLER requires parameters calibra-
tion, the deployment of static relay points, and calculat-
ing social communities. Furthermore, there is a lack of
description details in the scenario and simulation settings,
making it difficult to reproduce the algorithm evaluations
for comparison. Other shortcomings relate to the lack of
more realistic assumptions on the evaluation (e.g., authors
consider any contact duration sufficient for forwarding a
content). Parameters such as content time-to-live (TTL)
and content size are also not considered.

**TOOTS positioning:** According to the initiatives discussed herein, we found that learning from human routines hidden into mobility datasets is essential to develop improved opportunistic networking solutions. This work's first insights came through analyzing and discussing how the human aspect is part of the state-of-art solutions.

Unlike from state-of-art, in this work, we format our
metrics and decision factors with a more precise link with
time. Our algorithm relies on different human activities
present in human mobility over periods of the day. In
previous work [12], we confirmed that human mobility
varies according to different periods of the day. Among the
human-mobility features considered are the routines (i.e.,
spatiotemporal patterns), related consequences (e.g., en-
counters, PoI visiting), and displacement (e.g., the quan-
tity of movement and motion direction). TOOTS (i.e., the
strategy described in this work) relies on probabilistic spa-
tiotemporal aspects, social information (i.e., wireless con-
tacts), PoI awareness (related to network cells), and indi-
vidual's mobility (displacement and direction awareness).
In Table 1, we resume the properties of the state-of-art
solutions discussed herein.

Generic insights, metrics, and decision factors might
not suit different kinds of populations. Aspects such as
culture, environment, node density, and urban transporta-
tion planning can impact a population's mobility (includ-
ing the contact dynamics). Each population has particular
and common characteristics, calling for the need to eval-
uate datasets of different kinds with proper temporal as-
pects chosen accordingly. For such reason, to better know
our studied populations, we characterize the NCCU and
GRM datasets in the next section. Complementing this
analysis, in Sec. 4, we present the strategy's metrics and
show their characterization results.

3. Datasets: Description and Characterization

As for acquiring insights, building and evaluating our
opportunistic communication strategy, we worked with two
mobility datasets: NCCU [13] and GRM [14]. Both datasets
provide anonymized user information.

NCCU: Is a real-world mobility trace featuring 115
users' displacements inside the campus of the National

Chengchi University (NCCU) in China over two weeks. This campus measures 3764 m × 3420 m. The NCCU dataset came through an Android app named NCCU Trace Data, which recorded GPS data, application usage, Wi-Fi access points, and Bluetooth devices in proximity. In mobile sensing applications like NCCU Trace Data or online D2D games, the user consents to share sensitive information (e.g., mobility) to participate. According to the authors, considering the consumption of a smart handheld device, the app was configured to collect data every 10 minutes, store it locally and upload it to a server every day. In case of GPS data loss (e.g., due to weak indoor signal), they used interpolation between available coordinates. NCCU also collected users' data throughout questionnaires, including gender, grade, majors, personal interests, places on campus they would go most frequently, Facebook ID, and Facebook usage behavior. Despite this varied amount of data collected, only the anonymized coordinates of the 115 users are publicly available.

**GRM:** This dataset comes from a synthetic mobility model (Group Regularity Mobility Model). According to the authors, this dataset can capture users' social (i.e., encounters) regularity. The authors made available GRM synthetic mobility traces with 100, 1000, and 2000 users' movements inside an area of 1500 m x 1500 m. We use the version with 1000 users to simulate a larger-scale network in this work. The GRM model receives as input a social network which can be a real social network or a synthetic one generated by a social network model. This social network applies for defining the nodes that will be present in the groups of users. Additionally, GRM receives as input the simulation configurations for the dataset, including the dataset area, duration (e.g., two weeks), number of nodes, and the number of groups. Finally, GRM's last input is a set of statistical parameters which can be extracted, for example, from other real datasets.

Since this research deals with human-aware sensitive
information, we remark that privacy-preserving mecha-
nisms are essential. Novel human-aware applications or
solutions such as the one proposed herein need to guaran-
tee that individual rights and user-sensitive data are pro-
tected. As the datasets used are already anonymized, we
skipped privacy discussions on this paper.

We present more detailed privacy discussions in [5]. Among the contributions, we proposed a general framework for processing human-behavior raw data and preserving its privacy while assisting Tactful (i.e., human-aware) Networking applications. The privacy discussions feature recent advances in privacy-preserving big data, including data mining, management, and publishing.

Below we discuss the results of both NCCU and GRM
datasets' manipulation.

The first analysis herein performed is of pairwise con-
tact information. We define a contact as two network
nodes in a communication range at the same temporal in-
stant. To the best of our knowledge, this work is the only
in its context that analyzes different contact ranges. We
<figure><img src="image_3.png" /><figcaption>(a) Contact duration per day</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>(b) Centrality degree</figcaption></figure>

<caption>Figure 2: Contact duration and centrality degree evaluation on the NCCU and GRM datasets.</caption>

use 10 m and 30 m. The first commonly appears in state-of-art contextualized as the D2D Bluetooth range [11]. The latter is an average range for WiFi Direct, which works with up to 200 m communication range [28]. We used these different contact ranges to evaluate how this factor impacts the opportunistic communication strategy results and how they link to dataset social aspects. The proposed solution does not depend on the above technologies since the chosen communication ranges are only for simulation purposes with more realistic assumptions.

Fig. 2(a) plots a Complementary Cumulative Distribution Function (CCDF) of the aggregated contact duration per day on both datasets. For each unique pair of users that gets into contact, we sum all their contact durations and divide by the number of days evaluated (i.e., 11) in each dataset. In Sec. 6, we present the evaluation setup and detail the use of the 11 days of data from the traces. In Fig. 2(a), we see that NCCU has longer contact durations when the contact range is higher (30 m), while in the GRM trace, the behavior looks quite similar for both ranges. The aggregated contact duration per day in the GRM dataset is shorter, with only an average of 5% of those over 10 minutes. This dataset characteristic can impact a forwarding strategy's effectiveness if, for example, there is less bandwidth available and heavier content to forward opportunistically.

Following up in the contact analysis, Fig. 2(b) shows the evaluation of the traditional mobility metric Centrality Degree (CD) [6] in both datasets. The plot shows the nodes' normalized CD as the total amount of unique contacts during 11 days of mobility data. We find higher CD nodes in the real-world dataset (NCCU), while the GRM trace coefficients are lower, with a maximum degree at 0.4. A forwarding strategy strongly dependent on CD as a metric or decision factor might have reduced performance through this dataset. The plot also shows that the overall CD increases with a higher range (30 m), which means more encounters occur in both datasets. Nevertheless, a substantial increase in the contact durations appears only in NCCU (Fig 2(a)).

In Fig. 3(a), we analyzed the CD from the content-

<figure><img src="image_5.png" /><figcaption>(a) Centrality degree from content-generation to TTL</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>(b) Radius of gyration</figcaption></figure>

<caption>Figure 3: Centrality degree from content-Generation to time-to-live and radius of gyration evaluation on NCCU and GRM datasets.</caption>

generation time (8th day) till the last day of simulation (11th day, i.e., the time-to-live – TTL). As expected, on both datasets, this plot shows lower CD. That is justified by the reduced amount of days analyzed, impacting fewer potential encounters guided by user routines and displacements. The results from Fig. 3(a) highlight the need for combining other kinds of metrics than centrality for achieving better performance and timely delivery in an opportunistic forwarding scenario. Finally, in Fig. 3(b), we analyze another traditional mobility metric, the Radius of Gyration (RG). RG accounts for node displacement within the geographic space of the datasets (i.e., NCCU and GRM). The results show that due to the restricted area of the datasets, the RG of avg. 80% of the population is low (up to 300 meters) in both datasets. This finding brings insight into the possible need to combine other metrics when forwarding the content to a more distant geographical area where the destination node is. The real trace NCCU has users with a slightly higher RG than GRM. In Sec. 4 we analyze the RG per period in both datasets and extract further insights.

The following section presents the metrics and the temporal approach combined in TOOTS, metrics evaluations, and discussions.

# 4. Extracting Human-Aware Metrics

## 4.1. Identifying routines from human mobility

Previous research showed that human mobility has recurrence and temporal periodicity [19, 21, 18]. This regularity in human mobility brings low entropy to our movements [22] and makes those predictable [23, 18]. With that said, it is possible to leverage network resource management and communication models (e.g., opportunistic communication) by studying predictable characteristics from human mobility (e.g., encounters, spatio-temporal regularity) [5]. However, the human mobility profile changes throughout daily periods and the circumstance (e.g., when we are at home, at work, or taking transportation). Therefore, this work proposes a closer relationship between mobility metrics and the human temporal aspect. Previous
work showed different approaches to calculating their metrics or decision factors when dealing with time. Usually, they choose the time windows from the last 24 hours or the last 6 hours of mobility [6, 11].

<table><caption>Table 2: Proposed Temporal Division.</caption><thead><tr><td>#</td><td>Period</td><td>Time Interval</td></tr></thead><tbody><tr><td>EM</td><td>Early Morning</td><td>06:00:00 - 09:59:59</td></tr><tr><td>M</td><td>Morning</td><td>10:00:00 - 13:59:59</td></tr><tr><td>A</td><td>Afternoon</td><td>14:00:00 - 17:59:59</td></tr><tr><td>EE</td><td>Early Evening</td><td>18:00:00 - 20:59:59</td></tr><tr><td>E</td><td>Evening</td><td>21:00:00 - 23:59:59</td></tr><tr><td>N</td><td>Night</td><td>00:00:00 - 05:59:59</td></tr></tbody></table>

In our proposal (i.e., Table 2), we divide the day into six different duration periods. This temporal division was adopted to reflect heterogeneous mobility profiles along the day from the users inside a campus (i.e., from real-world dataset NCCU). Note that depending on the population analyzed, the time windows might change to reflect users' activity and precise research results.

The time windows from our proposal are justified by correlating periods with more displacements or longer confinements. For example, during “EM” we expect to capture most users’ home-work displacement and confinement at work while shorter lunch-time displacements during “M”. The intention is to increase the accuracy of the strategy’s metrics and decision factors, calculating those through a closer look into the human routines throughout the day. Reshaping these periods is possible whenever necessary.

We present the metrics and their evaluations based on the proposed temporal division in the following subsections. All plots show heterogeneity among the periods, especially in the real-world NCCU dataset. These results cope with our intuition to calculate metrics based on different day periods to reflect human mobility with more precision.

## 4.2. Coverage Area as Radius of Gyration

The Radius of Gyration (RG) [19, 11, 18] quantifies the mobility (i.e., in meters or kilometers) from an individual concerning a center of mass obtained from his movements throughout a geographical space. In this work, we use RG to select more mobile nodes inside a given network cell (detailed in Sec. 5).

Differently from previous proposals, the strategy herein learns by each period $p \in (EM, M, A, EE, E, N)$ in a week $k$ and applies this knowledge in the week $k+1$. Therefore, $\Delta_{RG_p}(u)$ in the Eq. 1 is the average RG of each node $u$ in period $p$. The days of the week $k$ are represented from $i=1$ to $d$, where $d$ is equal the number of previous days (7). The amount of location points (coordinates) recorded is given by $N$, $l_j$ is a location (x,y) at index $j$, and $l_{cm}$ is the user’s center of mass. We consider that every $u$ has a set $L_p = (l_1, l_2, ..., l_n)$ of locations per period $p$ of the

“learning” week $k$. Each location $l$ has coordinates $(x, y)$ in a given instant, that is $l = (x, y)$.

$$ \Delta_{RG_p}(u) = \frac{\sum_{i=1}^{d} RG_p^i(u)}{d}, \quad \text{where } RG_p(u) = \sqrt{\frac{1}{N} \sum_{j=1}^{N} (l_j - l_{cm})^2} \quad \text{and} \quad l_{cm} = \frac{1}{N} \sum_{j=1}^{N} l_j \quad (1) $$

<figure><img src="image_7.png" /><figcaption>Figure 4: Radius of gyration evaluation on NCCU and GRM datasets.</figcaption></figure>

Following up on our analysis, we plot in Fig. 4 the users’ Radius of Gyration for both datasets. As the NCCU dataset features user movements inside a Campus, the RG inside the area is more restricted. The same applies to GRM, which features movements inside a 1500 m x 1500 m area. The RG coefficients would be much higher if we evaluate a dataset with human users in an entire metropolitan area. Higher displacements (e.g., home to work) will appear in this case.

Fig. 3(b) also reveals that NCCU users are more mobile than GRM users. In Fig. 4, we analyze users’ RG per period on both datasets. As expected, there is heterogeneity in each period. The RG per period on NCCU Dataset (Fig. 4(a)) varies more, while on GRM (Fig. 4(b)), the difference is smoother.

In Fig. 4(b), we see that the GRM dataset lacks different mobility profiles found throughout the day on the real-world dataset. From these plots, we learn when the users are more mobile in each dataset. With that said, our strategy (TOOTS) based on day periods shall perform better on the real-world dataset. Identifying more mobile nodes helped forward decisions on state-of-art strategies, such as in [11].

## 4.3. Social-Awareness as Centrality Degree

The Centrality Degree (CD) [6, 10, 16, 29, 30] is a state-of-art mobility metric used to measure users’ social bonds (i.e., his encounters). A user with higher CD has further encounters and is commonly referred to as “more popular” [11].
As with the RG metric, we calculate the CD by each period $p \in (EM, M, A, EE, E, N)$ in a week $k$ and apply this knowledge in the week $k + 1$. Therefore, in the Eq. 2, $\Delta_{CD_p}(u)$ is the average CD of a user $u$ during $p \in (EM, M, A, EE, E, N)$. The days of the week $k$ are represented from $i = 1$ to $d$, where $d$ is equal the number of previous days (7). Finally, $n$ is equal to the number of users (e.g., 115 on NCCU trace), while $e_{(u,v)}$ is equal 1 if exists an edge between two nodes $u$ and $v$ in a period $p$. We consider that the network is a dynamic contact graph $G_t = (V, E_t)$. The set of users is $V$, while $E_t$ is the set of edges (contacts) detected, and $t \in (1, 2, ..., a)$ and $a \le 604,800$ seconds (i.e., the learning time in seconds for week $k$). An edge $e \in E_t$ exists between two network nodes if at an instant $t$, the distance between them is less or equal the maximum communication range, which means, there is a contact. As previously stated, this work uses two communication ranges: 10 m and 30 m.

$$ \Delta_{CD_p}(u) = \frac{\sum_{i=1}^{d} CD_p^i(u)}{d}, \text{ where } CD_p(u) = \frac{\sum_{v=1}^{n} e_{(u,v)}}{n-1} \quad (2) $$

<figure><img src="image_8.png" /><figcaption>Figure 5: Centrality degree analysis with 10 m and 30 m communication range on NCCU dataset.</figcaption></figure>

In Fig. 5 and Fig. 6, we analyze the CD per period on NCCU and GRM datasets, respectively. These plots complement the previous section's analysis and reinforce our insights related to our temporal division proposal. From what we know about the human perspective, our social behavior (i.e., contacts) differs depending on aspects such as the hour of the day, routines, or activities. Fig. 5 certifies that and also reveals how raising the contact range impacts differently in each time window. For example, in the “N” period, the impact is smaller, as, in this same time window, the users are more confined. Nevertheless, in the “M” period, if we increase the contact range (i.e., 30 m), the CD coefficient also raises, where 80% of the users inside the campus have at least 0.7 CD. Nevertheless, in the “M” period, if we increase the contact range (i.e., 30 m), the CD coefficient increases, where 80% of the users inside the campus have at least 0.7 CD.

In Fig. 6(a) and Fig. 6(b), the same phenomenon seen

in the RG analysis occurs: GRM dataset users show more similar behavior independent of the day period. Furthermore, in this dataset, increasing the contact range to 30 m still keeps the nodes with much lower CD than NCCU.

<figure><img src="image_9.png" /><figcaption>(a) Centrality degree - 10 m (b) Centrality degree - 30 m range range</figcaption></figure>

<caption>Figure 6: Centrality degree analysis with 10 m and 30 m communication range on GRM Dataset.</caption>

## 4.4. Sojourn Time

We define the Sojourn Time (ST) [31] as the quantity of time that a user stays inside a network cell's limits (given its coverage). In TOOTS, we use the ST when the strategy aims to identify nodes that stay more time in the same cell as a user interested in a content (i.e., he is the destination). The original cell sizes from the mobile operators are enormous compared to both traces' areas. Therefore, we analyzed the geographical space and divided it into nine cells ("A" to "I").

Applying the same method as with previous metrics, we calculate the ST of $u$ (user) in each cell $c \in (c_1, c_2, ..., c_n)$ per period $p \in (EM, M, A, EE, E, N)$ in a week $k$ and apply this knowledge in the week $k + 1$. Therefore, in the Eq. 3, $\Delta_{ST_p^c}(u)$ is the average ST in minutes of $u$ in $c$ during $p$. The days of the week $k$ are represented from $i = 1$ to $d$, where $d$ is equal the number of previous days (7). The duration (minutes) is increased when the consecutive pair of coordinates is inside the geographic area covered by the cell (i.e., $(x, y) \in c$'s domain). $\Delta_t^p(u)_c$ is the total time $t$ spent by $u$ during $p$, inside cell $c$.

$$ \Delta_{ST_p^c}(u) = \frac{\sum_{i=1}^{d} ST_p^c(u)_i}{d}, \text{ where } ST_p^c(u) = \Delta_t^p(u)_c \quad (3) $$

In Fig. 7, we plot a heatmap with the average minutes per day and per period for both datasets. We see that NCCU (Fig. 7(a)) has some cells with a meager average ST per day while GRM (a more dense dataset) shows less ST heterogeneity. The heatmap also helps to identify where users spend more time during the “N” period in NCCU Campus. This information and other techniques make it possible to determine if a given user stays on the Campus overnight. In Fig. 7(b), we see that the GRM users are more distributed within the geographical space. On the
other hand, as they are less mobile, they tend to visit a more limited number of cells.

<figure><img src="image_10.png" /><figcaption>Figure 7: Cell heatmap with the average minutes per day and per period on NCCU and GRM datasets.</figcaption></figure>

## 4.5. Destination Proximity as Geographical Awareness

In TOOTS, this novel metric uses geographical science for discovering how close a given user reaches to a network cell (based on its location as a PoI). Using the same method as with previous metrics, we calculate the MP of $u$ (user) towards each cell $c \in (c_1, c_2, ..., c_n)$ per period $p \in (EM, M, A, EE, E, N)$ in a week $k$ and apply this knowledge in the week $k+1$. The days of the week $k$ are represented from $i=1$ to $d$, where $d$ is equal the number of previous days (7). Therefore, in the Eq. 4, $\Delta_{MP_p^c}(u)$ is the average MP in meters of $u$ in $c$ during $p$. A geodesic formula is applied to calculate the distance between node $u$ and each PoI (i.e., the cell center coordinates). In $|min_{\Delta_s^c}(u)|$ we find the shortest distance (i.e., $\Delta_s$) between node $u$ and cell $c$, given all pair of $u$'s coordinates in $p$. Depending on the coordinates system used in the dataset, the geodesic distance formula might change.

$$ \Delta_{MP_p^c}(u) = \frac{\sum_{i=1}^{d} MP_p^c(u)_i}{d}, \quad \text{where } MP_p^c(u) = |min_{\Delta_s^c}(u)| \quad (4) $$

<figure><img src="image_11.png" /><figcaption>Figure 8: Destination proximity (m) per period analysis on NCCU and GRM datasets.</figcaption></figure>

As to illustrate MP's findings, Fig. 8 plots the MP on the cell "B" for both datasets. Cell "B" was chosen as

it features more user activity (according to the ST analysis). Fig. 8(a) shows a high percentage of users inside or very close to this cell, and as the previous analysis, more heterogeneity per period of the day. The GRM analysis (Fig. 8(b)) repeats previous plots' behavior, showing smooth differences per period of the day.

## 4.6. Geographic Direction Awareness

In this novel metric of instant mobility, we check if, for a node $u$, its recent displacement was towards a cell $c$. The metric calculates the mode (i.e., the most common result from a set) of the geodesic directions between $u$'s pairs of coordinates and the cell center coordinates in the last 30 minutes. In a condition of TOOTS' algorithm, nodes $u$ and $v$ check their recent displacement direction towards $c$ and compare the results (more details in the next section). As Geographic Direction Awareness is an instant mobility metric, its results are not here. In the following sub-section, we motivate the strategy by evaluating and discussing the Epidemic forwarding algorithm.

## 4.7. Motivation: Overhead and Latency evaluation

<figure><img src="image_12.png" /><figcaption>Figure 9: Epidemic forwarding average delivery latency performance evaluation.</figcaption></figure>

Epidemic forwarding is a well-known state-of-art algorithm. In opportunistic networks, it works by always trying to forward content to an encountered node that does not have it. This algorithm shows a higher delivery ratio, smaller delivery latency, but a heavy network overhead.

In Fig. 9, we evaluate the average delivery latency of the Epidemic forwarding algorithm with a consumer set size equal to 1% of the number of nodes from each dataset. This scenario with a limited size consumer-set is challenging. The results can show lower bound performance depending on how a strategy works and the dataset's characteristics (e.g., wireless encounters between nodes). In the experiments, the content generation occurred once an hour, during 24 hours, with random source and destination nodes. Each content has a 72 h time-to-live. The experiments were repeated 30 times through the Opportunistic
Network Environment (ONE) Simulator [32]. The confi-
dence intervals are presented in Fig. 9. Although com-
monly evaluated by previous work, we show and discuss
the Epidemic forwarding performance within the NCCU
and GRM datasets, with varying contact ranges (10 m
and 30 m).

When the contact range is 30 m, the Epidemic For-
warding average delivery latency is 2.6 and 3.6 hours on
NCCU and GRM datasets. In both datasets, the algo-
rithm delivery rate performance was 100%, but the aver-
age network infection (overhead) was 98.44% and 99.62%
on NCCU and GRM. With that said, most nodes received
the content and became forwarders. For reaching supe-
rior performance in terms of delivery rate and delivery
latency, Epidemic forwarding flooded the network with
many copies of the same message. That is not feasible
in real-world scenarios and is highly costly, particularly
in opportunistic networks where the devices have limited
resources (e.g., battery, storage).

Another finding (which is also a characteristic) from
the Epidemic Forwarding experiments was a high aver-
age of hops (i.e., intermediary nodes) from the source to
the destination. In this scenario, Epidemic had the av-
erage hop count of 6.62 and 8.85, respectively, on NCCU
and GRM. This peculiarity motivated and brought insight
into TOOTS development: taking the contents closer to its
consumers for reducing the number of intermediary nodes
and potentially the overhead and delivery latency through
the combination of intelligent dissemination and forward-
ing decisions.

As expected, according to the results from the pairwise-
contacts evaluation (Sec. 4), when the contact range is
more restricted, the delivery delay increases in both traces.
In the experiments with a 10 m range, the overhead was
quite similar on NCCU (98.47%) but smaller on GRM
(86.50%). Still, the average delivery rate on GRM was
97%, meaning that with the restricted contact range on
this dataset, even the Epidemic Forwarding could not de-
liver all the contents in the time-to-live.

In Fig. 9, we see that the contact range restriction
causes more proportional delay on GRM than on NCCU
(on GRM, there is a 7-fold increase). That happens due to
a characteristic shown in the previous section. GRM has
nodes with shallow centrality degrees and shorter contact
duration per day. With that said, the epidemic strug-
gles with fewer contacts, so it takes more time to “flood”
the network and make the content reach the destination.
Through the Epidemic Forwarding evaluation, we see that
a restricted contact range and the characteristics of a pop-
ulation in terms of their contact can affect the strategy’s
effectiveness. The following section introduces TOOTS,
including its scenario and algorithms.

5. The TOOTS Proposal

In Fig. 10, we describe TOOTS’ evaluation scenario.
We simulate a network with mobile nodes and a Mobile

Edge Computing (MEC) [33] site. The MEC site stores
popular content that the nodes commonly request in this
context. In this scenario, the strategy’s goal is to perform
cost-effective content delivery using opportunistic D2D com-
munication among the nodes. In a real scenario, they could
receive incentives (e.g., operator data plan savings, dis-
counts, or access to exclusive applications) for their coop-
eration. The development and use of incentive mechanisms
are out-of-the-scope of this work, so as previous state-of-
art work [10, 11], we consider the nodes are willing to
cooperate. In this scenario, the first task for the content
delivery is a dissemination process to inject content on the
network based on users’ information. The second task re-
lates to the node’s forwarding decisions (i.e., in the user
devices) relying on individual metrics locally calculated.

The strategy relies on seven days for learning from
users' mobility. Upon having a set of user requests for a
given content, the proposed Tactful Dissemination Policy
(TDP) (Sec. 5.1) runs to choose the disseminator nodes. In
Fig. 10, we illustrate the delivery of two distinct contents
through the disseminators chosen by TDP. After that, the
nodes carrying a content run locally an algorithm (Sec. 5.2)
which takes a forwarding decision.

5.1. 1st TOOTS phase: TDP Policy

Herein, we describe our proposed Tactful-Based Dissemination Policy (TDP) (Alg. 1). This policy chooses disseminator nodes according to their social behavior (i.e., in terms of encounters) in each time window (previously described). The intention behind TDP is to start the content delivery task by placing the content closer to the consumer nodes for possibly reducing the overhead and delivery latency. To follow, we explain how we leverage the user routines in terms of encounters in the policy for choosing the content disseminators.

Considering the network as a dynamic contact graph
$G_t = (V, E_p)$, there is a set of users $V$ (i.e., mobile nodes),
and a set of edges $E_p$ found during the period $p$ of the
week $k$. We assume that the operator has a central entity
that, at the end of each week $k$, receives the information
below from each node (i.e., operator subscribers) $u \in V$.

• (a): $\sigma(u)_p$ - a set of users $v$ encountered by $u$ for each period $p$.

* (b): $\Delta_{C_{LID}}(u)$ - the average local improved centrality degree metric [16] of a user $u$ for each period $p$. The $C_{LID}$ coefficient is calculated based on the node's number of contacts, how long (duration) they took, and how early (earliness) they happened. Therefore, a higher $C_{LID}$ is given to a node with more contacts that had longer durations and occurred earlier (i.e., in a period $p$)

In an instant *t* of the week *k* + 1 when there is a set
of users (consumers) *C*(*c*) ∈ *V* requests for a content *c*,
the TDP (Alg. 1) runs to choose the disseminator nodes.
<figure><img src="image_13.png" /><figcaption>Figure 10: TOOTS evaluation scenario [15].</figcaption></figure>

<table><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>1</td><td>begin</td></tr><tr><td>2</td><td>D(c) ← ∅</td></tr><tr><td>3</td><td>while C ≠ ∅ do</td></tr><tr><td>4</td><td>let u ∈ V maximizing<br/>|σ<sub>p</sub>(u) ∩ C| / |C| + Δ<sub>C<sub>LID<sub>p</sub></sub></sub>(u)|</td></tr><tr><td>5</td><td>D(c) ← u</td></tr><tr><td>6</td><td>C ← C − σ(u)</td></tr><tr><td>7</td><td>end</td></tr><tr><td>8</td><td>Return D(c)</td></tr><tr><td>9</td><td>end</td></tr></tbody></table>

The policy uses the $\sigma(u)_p$ from the week $k$ to select users with past direct contacts with the consumers. According to [19], due to our human routines, there is regularity in our contacts and interactions. The Alg. 1 prioritizes these direct contacts (i.e., as they are most likely to repeat) for trying to save network and user device resources. Furthermore, the $C_{LID}$ applies for identifying nodes' popularity and coverage through contacts duration and earliness. This metric is justified because, in such an opportunistic scenario, a contact that happens earlier in a time window and lasts enough to transmit content might decrease the delivery latency. Further, depending on the content's size, trying to transmit through short-duration contacts can waste resources without full content forwarding.

The Alg. 1 runs for selecting a disseminator set $D(c)$ and starting the delivery of $c$ (content) in the period $p$. The disseminator set starts empty (line 2), as the content delivery begins only upon having a set of Consumers $C$ interested in content $c$. The policy selects (lines 4 and 5) the user $u$ with the higher coefficient from the direct contacts with Consumers ($\sigma_p(u) \cap C$), normalized by the size of $C$, summed with $u$'s average $C_{LID}$ in $p$ (i.e., $\Delta_{C_{LID}}(u)$). After that, all consumers with direct encounters along the selected node $u$ are removed (line 6). With this, we avoid

the possibility of selecting another user with a similar coefficient for direct contacts and which covers the same nodes. The Alg. 1 loops (line 3) while the consumer set is not totally covered ($C \neq \emptyset$). We assume all users in the dataset encounter at least one node (i.e., there are no isolated nodes). Following in Sec. 6, the TDP is evaluated with varying consumer set sizes (1%, 5%, and 10% of each dataset total nodes).

## 5.2. 2nd TOOTS phase: Human-Aware Forwarding

After running the Alg. 1, the content $c$ is transmitted to each chosen disseminator node ($u \in D(c)$), which stores $c$ in a local buffer. From this moment, when any node carrying $c$ has an encounter, the Alg. 2 runs locally for deciding if the content is forwarded.

The algorithm input is: a destination node $d$ (i.e., $d \in C$), the content $c$, the present period $p$, the encountered node $v$, and the coordinates of $d$'s cell, given by $l$. All metrics coefficients are stored locally by each node in a table divided by period $p$. The content $c$ is transmitted from $u$ to $v$, only if an algorithm's condition is satisfied. First (line 2), if $v$ already carries $c$, $u$ waits till the next encounter. Second (line 4), if $v$ is the destination (i.e., $v = d$), $u$ transmits $c$. The success of the transmission depends if there is an edge $e$ between $u$ and $v$, with enough persistence (i.e., that does not suffer disconnection caused by a topology change) until an amount of time $t$ necessary to transfer $c$'s full data.

As previously stated (Sec. 4), the geographic space of both datasets was divided into network cells. If $v$ is at the same cell reported by the destination (given by $l$), the algorithm compares the centrality degree from $u$ and $v$ in $p$. If $v$'s avg. CD is higher (line 7), $c$ is forwarded, as $v$ has a higher forwarding potential inside its cell (i.e., $v$ met more nodes).

If the previous test is false, the algorithm checks if $\Delta_{RG_p}(v) > \Delta_{RG_p}(u)$ and $\Delta_{ST_{cell}}(v) > \Delta_{ST_{cell}}(u)$. If true, that means $v$ has less “popularity” than $u$ (i.e., lower avg. CD). On the other hand, $v$ has a higher avg. RG which gives it the potential to do larger displacements inside the cell given by $l$. Furthermore, $v$'s routine makes it stay
<figure><img src="image_14.png" /></figure>

longer inside *l* (*v* has higher avg. ST). Due to these intu-
tions, *c* is forwarded to *v* (line 10).

When *v* is in a different cell than the one given by *l*, an
instant mobility test towards *l* occurs. If *v*'s predominant
direction in the last 30 minutes was towards *l* (i.e., the line
12 test is true), *c* is forwarded, as *v* can potentially reach
or get close to the cell domain given by *l*.

Last, if the direction test is not true, the Destination Proximity metric is used. If *v*'s avg. MP ($\Delta_{MP_p^l(v)}$) is smaller than *u*'s, *c* is forwarded, as that means *v* got closer (or visited) the cell corresponding to *l* during the period *p* and due to human routines, this behavior is more likely to repeat. The following section presents the experimentation results and analysis.

6. Experimentation Results and Analysis

As previously stated, TOOTS' scenario's goal is cost-
effective content delivery through users' opportunistic com-
munication. In the state-of-art of opportunistic forwarding
strategies, the cost-effectiveness comes through reducing
the content overhead (i.e., the percentage of network in-
fection) and the delay (herein analyzed as the contents av-
erage latency from source to destination) while maximizing
the delivery rate. In our evaluations, the contents range
from 11-14 MB, an average size for 60 seconds YouTube
720P HD 30fps advertising videos. TOOTS uses seven
days of user mobility (extracted from NCCU and GRM
datasets) during a learning phase. The content generation
happens through one day, with one content delivery task
starting every hour. Finally, three days refer to the deliv-
ery deadline, which is a reasonable time for delay-tolerant

content [16].

Each content has a set of random consumers with vary-
ing set sizes (in the percentage of nodes from each dataset).
Network content injection happens through the mobile
nodes. The first set of users carrying the content is called
the Disseminator set. They run an algorithm to make
a forwarding decision upon having a contact (i.e., given
by a specific communication range). Every node in the
simulation has an 802.11/11 Mbps network interface. We
evaluate two communication ranges: 30 m (like an avg.
for WiFi Direct) and 10 m (commonly referred to as the
Bluetooth range). These technologies mentioned are just
examples of existing D2D options for the scenario. The
strategy proposed herein nor its evaluations depend on
other particular characteristics from WiFi Direct or Blue-
tooth. Evaluations with other communication ranges or
parameters from different technologies such as BLE [34], or
Google Nearby [35] are possible without limitations from
our strategy.

The entire scenario simulations occur through the Op-
portunistic Network Environment (ONE) Simulator. We
used the ONE simulator for several reasons, among those:
(i) due to its wide availability of state-of-art opportunis-
tic forwarding algorithms implementations and prior pub-
lished evaluations within the simulator; (ii) the fact that
NCCU and GRM were made available ready to import into
ONE; (iii) the highly customizable and suitable specific
features of opportunistic networks already implemented
and available; (iv) a customizable report module that mea-
sures performance parameters commonly considered in op-
portunistic networks. We imported the NCCU and GRM
datasets into ONE as mobility models. Each experiment
case runs 30 times, and the confidence intervals appear
when necessary.

6.1. TDP Results and Analysis

This section presents the evaluation results of the TDP
policy. For this, we combine the TDP with two state-of-
art forwarding strategies: store-wait-forward (a.k.a., direct
delivery) and epidemic forwarding. In this combination,
we use the TDP for electing the disseminator nodes chosen
as content sources, followed by running each forwarding
strategy. The performance of the TDP-enhanced store-
wait-forward and epidemic forwarding appears in Fig. 11.

Upon an encounter, the store-wait-forward algorithm
only transmits the content to the next node if it is the
destination (i.e., the encountered node is a consumer). For
such reason, the store-wait-forward has zero overhead. As
shown in Sec. 4, the traditional epidemic with a 30 m
communication range had 98.44% and 99.62% overhead
respectively on NCCU and GRM.

However, the TDP-enhanced epidemic might decrease
delivery latency with a comparable delivery rate. Given
the metrics applied in the TDP policy, the TDP-enhanced
store-wait-forward can increase the delivery rate while de-
creasing the delivery latency. Even though the store-wait-
forward algorithm's success depends on direct encounters
<figure><img src="image_15.png" /><figcaption>Figure 11: Tactful dissemination policy average delivery rate and average delivery latency performance evaluation with varying communication range (10 m and 30 m).</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>Figure 12: Delivery rate, delivery latency, and overhead performance comparison of TOOTS, Bubble Rap-CDP, Bubble Rap-TDP, and Bubble Rap-RDP on NCCU and GRM datasets with varying communication range (10 m and 30 m).</figcaption></figure>

with the consumers, the TDP content dissemination improves it. Still, depending on dataset characteristics and the social bonds between source and destination nodes, the improvements might take time or never happen.

### 6.1.1. *Delivery Rate Evaluation*

In Fig. 11(a), the TDP-enhanced store-wait-forward shows an improved average delivery rate of 82% and 75% respectively on NCCU and GRM, independent of the consumer set size evaluated (1%, 5%, and 10% of each dataset). The explanation for this delivery rate improvement recalls one of TDP insights, which is choosing nodes with

direct encounters per period with the consumers. Compared with the traditional store-wait-forward, the TDP-enhanced strategy's average delivery rate with 1% of consumer set size was 18% and 60% higher respectively on NCCU and GRM. In Fig. 11(a), the TDP-enhanced epidemic forwarding, as expected, reaches a 100% average delivery rate regardless of the consumer set size and dataset. Compared with the traditional Epidemic forwarding algorithm, The TDP-enhanced Epidemic had decreased average hop count, impacting the delivery latency (analysis to follow).

With a more restricted contact range (Fig. 11(b)), as
expected, the performance of the content delivery system decreases on both datasets. Still, when compared with the traditional store-wait-forward, the TDP-enhanced has better performance in delivery rate and delivery latency. The plot also shows that the TDP-Enhanced Epidemic reaches a 100% delivery rate in all scenarios on both datasets, which is an improvement compared to the traditional Epidemic. Furthermore, thanks to TDP-policy, the overhead on GRM with 1% of consumers was 50% smaller. The reason behind this recalls a characteristic of this dataset, which is nodes with fewer encounters (i.e., lower CD). The plot from Fig. 11(b) also shows there is no impact caused by the contact range when the percentage of consumers varies up to 10% in those datasets.

### 6.1.2. Delivery Latency Evaluation

Following in the evaluations, in Fig. 11(c), we plot the average delivery latency. The TDP-enhanced store-wait-forward, regardless of the consumers' size, takes 13-15h to deliver the contents on NCCU and 18h-19h on GRM. With that said, the TDP policy makes it possible to deliver at least 75% of the delay-tolerant contents in an acceptable time [16], regardless of the dataset, and with zero overhead. Compared with the traditional store-wait-forward, the TDP-enhanced strategy's average delivery latency with 1% of consumers was reduced 23% on NCCU and 48% on GRM. As previously stated, thanks to the TDP policy, the number of hops in epidemic forwarding decreased, so the delivery delay (18.6% and 64.5% smaller respectively on NCCU and GRM with 1% of consumers). Still, the networking infection of epidemic forwarding makes this algorithm very costly or unfeasible in real scenarios. Again, with a more restricted contact range (Fig. 11(d)), there are fewer contacts on both datasets, so the delivery delay increases. Nevertheless, even in this scenario, thanks to TDP policy, most delay-tolerant contents still reach their consumers in an acceptable time. As Epidemic forwarding is unfeasible in realistic scenarios, and TDP-Enhanced store-wait-forward showed an average delivery rate of 55%, we look for a forwarding algorithm to increase the delivery rate as lower as possible overhead and delivery latency.

## 6.2. TOOTS forwarding Results and Analysis

Finally, we present the entire strategy's evaluation regarding delivery rate, delivery latency, and overhead within NCCU and GRM datasets. As with the state-of-art epidemic forwarding evaluation, the scenario has random consumers with a set size equal to 1% of dataset total nodes and varying communication range (10 m and 30 m).

We compared TOOTS' performance with Bubble Rap, which was remarked as the most popular social-based forwarding algorithm in delay-tolerant networks [10, 11, 26]. Both forwarding algorithms run in a distributed fashion, taking decisions at the node that holds the content. Bubble Rap works by assigning a global rank and a local rank

to each node. The global rank accounts for the node's popularity in the whole network, while the local rank measures the popularity inside a community. Both centrality-related ranks use the C-Window temporal approach, which accounts for nodes' popularity in the last time window of 24 hours [6]. Bubble Rap also relies on social communities calculations, where each node belongs to at least one community. According to these metrics, a content *c* stored in the buffer of a node *u* is transmitted by Bubble Rap to an encountered node *v*, when: *v* is the consumer (i.e., the destination *d*); *v*'s global rank is higher than *u*'s, or *v* belongs to the consumer's (*d*) community; *v* has higher local rank and belongs to the consumer's community.

Herein, for a fair comparison, we combine Bubble Rap with three policies for choosing dissemination nodes. These policies are responsible for injecting the contents in the network whenever a content delivery process starts:

* **Random-based Dissemination Policy (RDP):** chooses the origin nodes randomly (i.e., it works as the traditional Bubble Rap trying to forward content to source-destination using intermediary nodes);

* **Centrality-based Dissemination Policy (CDP):** chooses the origin node as the higher centrality node (i.e., the node which has more encounters);

* **Tactful-based Dissemination Policy (TDP):** our proposal detailed in Sec. 5.1. TDP node selection relies on direct encounters with the consumers, combined with a higher $C_{LID}$ metric coefficient.

### 6.2.1. Delivery Rate Evaluation

First, in Fig. 12(a), TOOTS and Bubble Rap are evaluated in terms of delivery rate through the NCCU dataset with a 30 m communication range. TOOTS reached 100% delivery ratio and was also the fastest strategy, with approx. 90% of the generated contents delivered in up to 9 hours. Even in the NCCU dataset with fewer nodes, those with high centrality degrees, Bubble Rap-CDP failed to deliver about 10% of the contents. Adopting a CDP is not feasible in the real world. This strategy originates a “bottleneck” tending to train the most “popular” users’ device resources and creates a point of failure. Despite reaching a 100% delivery ratio, we expect a higher overhead in Bubble Rap-RDP (analysis to follow). Finally, Bubble Rap-TDP also delivered 100% of the contents, but this strategy took slightly more time than TOOTS to deliver all contents in such experiments.

Within the GRM dataset and 30 m communication range (Fig. 12(b)), TOOTS reaches 100% delivery rate, with approx. 97% of the contents in up to 12 hours. Bubble Rap-CDP delivery rate is even worst than in NCCU. The explanation relates to the fact that GRM nodes' have a much lower centrality degree. Further, a communication bottleneck arises due to a higher node density, where nodes' interfaces can transmit only one content at once. As in the previous analysis, Bubble Rap-RDP reached a
100% delivery ratio but with an expected higher overhead (analysis to follow). Bubble Rap-TDP delivered approx. 94% of the contents. The explanation relates to a characteristic of GRM: nodes with low centrality degrees, which makes Bubble Rap-TDP need more time to reach 100% delivery rate.

From Fig. 12(e) to Fig. 12(h), we evaluate how imposing a more restricted contact range (10 m) affects the strategies' performance in terms of delivery rate, delivery latency, and overhead on both datasets. In Fig. 12(e), we see that TOOTS is the fastest and the only strategy that reaches 100% delivery rate on the real-world NCCU dataset. Bubble Rap-TDP and Bubble Rap-RDP reach close to 90% delivery rate and require more time, which could be more than acceptable for delay-tolerant content. Bubble Rap-CDP fronts an even worst bottleneck. The restricted communication range reduces the number of contacts and also their duration.

When the dataset is the GRM (Fig. 12(f)), we see that the reduced contact range impacts the algorithms' lower performance. The delivery rate ranges from 56% (TOOTS) to 68% (Bubble Rap-RDP). On the other hand, Bubble Rap-TDP reaches a very similar delivery rate (65%), with less average latency. That means, again, thanks to TDP, there was less delivery latency. The reason behind this reduced performance on the GRM is the already shallow CD nodes of the dataset. These nodes suffer even more CD reduction when the lower contact range is applied. With that said, the efficiency of opportunistic forwarding algorithms and their deployment in realistic scenarios depend on the populations' characteristics in terms of contacts and the technology used for D2D communication. D2D technologies with higher transmission capacity and higher contact range can compensate for certain contact restrictions imposed by the populations' characteristics or mobility context.

### 6.2.2. Delivery Latency Evaluation

In Fig. 12(c), the strategies are evaluated in terms of delivery latency, considering a 30 m communication range. TOOTS had the lower average delivery latency on both datasets, followed by Bubble Rap-RDP and Bubble Rap-TDP, respectively, on NCCU and GRM. We remark that only TOOTS and Bubble Rap-RDP delivered 100% of the contents in up to 72h. On GRM, Bubble Rap-CDP had a much higher average delivery latency, as this strategy struggles with the bottlenecks on fewer nodes with higher centrality, and by a characteristic from this dataset shown in Sec. 3: from the content-generation time till their time-to-live (i.e., end of the simulation), over 90% of the nodes had less than 0.4 centrality degree, i.e., low coefficients.

Fig. 12(g) certifies TOOTS as the strategy with the smaller delay on the NCCU dataset when the contact range is restricted (i.e., 10 m). Recalling that TOOTS was also the only strategy to reach 100% delivery rate. On NCCU, Bubble Rap-RDP has the second smaller delay, but its delivery rate is comparable with Bubble Rap-TDP, which

has much less overhead (analysis to follow). With a restricted communication range on NCCU, the delivery delay approximately doubles for most strategies. Thus, if the devices' transmission power in a given scenario is more restricted, the contents will take more time to reach their consumers opportunistically.

On GRM (Fig. 12(g)), due to the dataset's characteristic (low nodes' CD) and fewer contact occurrences, TOOTS' delivery latency increases almost ten times. Nevertheless, the delay-tolerant content reaches in an acceptable time. Bubble Rap-CDP shows smaller delivery latency than TOOTS, but its delivery rate is shallow due to the communication and transmission bottlenecks. Thanks to the TDP policy, there is 28% less delivery delay with Bubble Rap-TDP than Bubble Rap-RDP. We recall that on GRM, Bubble Rap-TDP has approximately the same delivery rate as Bubble Rap-RDP.

### 6.2.3. Overhead Evaluation

In Fig. 12(d), we evaluate the overhead of each strategy. Bubble Rap-CDP appears with the smaller overhead on NCCU and GRM datasets with a 30 m communication range. On NCCU, the reason behind this is the existence of higher centrality degree nodes, making it possible for the disseminator nodes to find the destination directly for most of the generated contents. Still, as previously discussed, there is a bottleneck, lowering Bubble Rap-CDP's delivery rate compared to other strategies. As expected, Bubble Rap-RDP had the worst-case in terms of overhead. Compared with Bubble Rap-TDP, the latter performs with 53% less overhead on NCCU and 65% less on GRM.

Nevertheless, we remark that the TDP-enhanced Bubble Rap needs more time to reach a 100% delivery rate on GRM when there is a 72 h deadline. Applying other larger real-world datasets with other contacts distributions will be interesting when evaluating this strategy. TOOTS was the fastest strategy. It reached a 100% delivery rate and had 10% and 17% less overhead than Bubble Rap-RDP, respectively, on NCCU and GRM.

When we restrict the communication range (Fig. 12(h)), the overhead of all strategies also decreases on both datasets. On the other hand, particularly on GRM, no strategy reaches 100% delivery rate in the content TTL (i.e., 72h). On NCCU, if time is not the primary concern, the 10 m communication range is enough for TOOTS to deliver 100% of the contents in such a scenario. In this case, the strategy can save more device resources, as fewer contacts impose fewer forwarding decisions. Thanks to TDP policy, Bubble Rap-TDP is the second-best option in terms of overhead, considering a delivery rate of approximately 90% on NCCU and 65% on GRM. Bubble Rap-CDP has a very low overhead on both datasets.

On the other hand, its delivery rate is shallow, and as previously said, it tends to drain the most “popular” nodes. Bubble Rap-RDP has the higher overhead on NCCU, and its delivery ratio is close to 90% (i.e., 10% less than
TOOTS). On GRM, Bubble RAP-RDP has better overhead than TOOTS (at the cost of a slightly better delivery rate and low delivery latency). From these findings, we claim that due to the dataset's characteristics and the lack of heterogeneity per period, TOOTS has more difficulty delivering the content on GRM with a 10 m range.

## 7. Conclusion and Future Work

Despite appearing as an enabler of future networking generations since 4G/LTE, opportunistic communication solutions still lack more implementations in real-world scenarios. The OppNets paradigm is resurging through the vast possibilities open by human big data generated by user devices and appears as a key enabler to 5G [1, 2] and 6G [3]. Throughout our experience, for building a novel opportunistic human-aware strategy, we found several preliminary phases that play a significant role in reaching performance goals at the end. This work guided the reader through all the steps necessary for building the Tactful Opportunistic Communication Strategy (TOOTS) for cost-effective content delivery in cellular networks. The best practices and lessons learned from the literature and our strategy's implementation made it possible to improve performance in delivery ratio, delivery latency, and overhead. This strategy can assist in scenarios such as data offloading, capillarity expansion given by users' mobility, and content delivery in challenging situations (e.g., emergency, rural areas, and crowded places). The steps followed in our process can serve as a guideline to build other human-aware networking solutions (including opportunistic strategies). Furthermore, this work has a more in-depth view of the human aspect in networking, which will be a significant player in computer networking for dealing with multiple challenges while reaching improved QoE and QoS more naturally [5].

Future work concerning TOOTS will need to evaluate each metric's correlation with the performance of the whole strategy. With that said, this knowledge can bring even more improved performance. As discussed throughout the sections, TOOTS relies on different aspects inherent to humans. Not surprisingly, the strategy's presented results are more correlated with the real-world dataset used (NCCU). In this dataset, the human-aware time-division made it possible to calculate the metrics to reflect the users' routines with fine-grained granularity, possibly leading to better strategy performance. There is a need for investigating other ideas of time-division through insights obtained from other populations' studies (i.e., characterizations).

Despite the increased availability of real datasets in the last years, there is still a lack of those covering larger populations (e.g., entire metropolitan areas). These datasets are essential for identifying possible insights for future strategies and other scenarios. Further, according to the results, a dissemination strategy plays an essential role

in improving the content delivery performance in a scenario such as the one presented. Future work will need to evaluate TOOTS and other state-of-art proposals' effectiveness through varying contact ranges, bandwidth, increasing content size, and the number of days for the algorithm's learning phase. Investigations on node energy constraints and incentive mechanisms to deal with user selfishness are also necessary. Furthermore, opportunistic strategies will require evaluation throughout modern D2D technologies specifications and modern life scenarios (e.g., autonomous vehicles). The previous section shows that population characteristics, technological capabilities (e.g., contact range, bandwidth), and other aspects can impact the strategy's effectiveness.

Finally, opportunistic D2D communication works need to discuss envisaged scenarios with realistic challenges in crowded (i.e., metropolitan) areas and rural areas to motivate a more widespread adoption of human-centered technologies by the mobile carriers and industry.

## Acknowledgments

This work was supported in part by CAPES (88881.135682/2016-01, 88887.468235/2019-00); CNPq (465.560/2014-8, 310.201/2019-5, 432064/2018-4); FAPERJ (E-26/203.046/2017); FAPESB (TIC0004/2015); EMBRACE associate team Inria project; and ANR MITIK project (PRC AAPG2019).

We thank the outstanding contributions and presence of Prof. Artur Ziviani throughout this entire research work. We deeply miss him and will be forever grateful.

## References

[1] I. F. Akyildiz, S. Nie, S.-C. Lin, M. Chandrasekaran, 5g roadmap: 10 key enabling technologies, Comput. Netw. 106 (Supplement C) (2016) 17-48.

[2] P. K. Mishra, A. K. Mishra, S. Tripathi, Relay selection scheme for dynamic network scenario in multi-hop d2d communication, in: IEEE ICCCS, 2019, pp. 538-542.

[3] S. Zhang, J. Liu, H. Guo, M. Qi, N. Kato, Envisioning device-to-device communications in 6g, IEEE Network 34 (3) (2020) 86-91.

[4] M. Waqas, Y. Niu, Y. Li, M. Ahmed, D. Jin, S. Chen, Z. Han, A comprehensive survey on mobility-aware d2d communications: Principles, practice and challenges, IEEE Communications Surveys Tutorials 22 (3) (2020) 1863-1886.

[5] R. L. Costa, A. C. Viana, A. Ziviani, L. N. Sampaio, Tactful networking: Humans in the communication loop, IEEE Transactions on Emerging Topics in Computational Intelligence 5 (1) (2021) 92-107.

[6] P. Hui, J. Crowcroft, E. Yoneki, Bubble rap: Social-based forwarding in delay-tolerant networks, IEEE TMC 10 (11) (2011) 1576-1589.

[7] W. Moreira, P. Mendes, S. Sargento, Opportunistic routing based on daily routines, in: IEEE WoWMoM, 2012, pp. 1-6.

[8] R. I. Ciobanu, C. Dobre, V. Cristea, D. Al-Jumeily, Social aspects for opportunistic communication, in: 2012 11th International Symposium on Parallel and Distributed Computing, 2012, pp. 251-258. doi:10.1109/ISPDc.2012.41.

[9] R. I. Ciobanu, C. Dobre, V. Cristea, Sprint: Social prediction-based opportunistic routing, in: 2013 IEEE 14th International Symposium on "A World of Wireless, Mobile and Multimedia
Networks" (WoWMoM), 2013, pp. 1-7. doi:10.1109/WoWMoM. 2013.6583442.

[10] I. O. Nunes, P. O. S. V. de Melo, A. A. F. Loureiro, Leveraging d2d multihop communication through social group meeting awareness, IEEE Wireless Communications 23 (4) (2016) 12–19.

[11] I. O. Nunes, C. Celes, I. Nunes, P. O. S. Vaz de Melo, A. A. F. Loureiro, Combining spatial and social awareness in d2d opportunistic routing, IEEE Communications Magazine 56 (1) (2018) 128–135.

[12] R. L. Costa, A. Carneiro Viana, A. Ziviani, L. N. Sampaio, Towards human-aware d2d communication, in: 2020 16th International Conference on Distributed Computing in Sensor Systems (DCOSS), 2020, pp. 173–180.

[13] T. Tsai, H. Chan, Nccu trace: social-network-aware mobility trace, IEEE Communications Magazine 53 (10) (2015) 144–149.

[14] I. O. Nunes, C. Celes, M. D. Silva, P. O. Vaz de Melo, A. A. Loureiro, Grm: Group regularity mobility model, in: Proc. ACM MSWiM, 2017, pp. 85–89.

[15] R. L. Costa, A. C. Viana, A. Ziviani, L. N. Sampaio, Tactful opportunistic forwarding: What human routines and cooperation can improve?, in: L. Barolli, I. Woungang, T. Enokido (Eds.), Advanced Information Networking and Applications, Springer International Publishing, Cham, 2021, pp. 638–652.

[16] K. Thilakarathna, A. C. Viana, A. Seneviratne, H. Petander, Design and analysis of an efficient friend-to-friend content dissemination system, IEEE Transactions on Mobile Computing 16 (3) (2017) 702–715.

[17] G. Chen, S. Hoteit, A. C. Carneiro Viana, M. Fiore, C. Sarraute, Enriching sparse mobility information in Call Detail Records, Computer Communications 122 (2018) 44–58.

[18] H. Wang, S. Zeng, Y. Li, D. Jin, Predictability and prediction of human mobility based on application-collected location data, IEEE Transactions on Mobile Computing (2020) 1–1.

[19] E. M. R. Oliveira, A. C. Viana, C. Sarraute, J. Brea, I. Alvarez-Hamelin, On the regularity of human mobility, Pervasive and Mobile Computing 33 (Supplement C) (2016) 73–90.

[20] M. J. Williams, R. M. Whitaker, S. M. Allen, There and back again: Detecting regularity in human encounter communities, IEEE Transactions on Mobile Computing 16 (6) (2017) 1744–1757.

[21] M. C. Gonzalez, C. Hidalgo, A.-L. Barabasi, Understanding individual human mobility patterns, Nature 453 (2008) 779–82.

[22] P. O. V. de Melo, A. C. Viana, M. Fiore, K. Jaffrès-Runser, F. L. Mouël, A. A. Loureiro, L. Addepalli, C. Guangshuo, Recast: Telling apart social and random relationships in dynamic networks, Performance Evaluation 87 (2015) 19–36.

[23] C. Song, Z. Qu, N. Blumm, A.-L. Barabasi, Limits of predictability in human mobility, Science 327 (5968) (2010) 1018–1021.

[24] J. Guo, S. Zhang, J. Zhu, R. Ni, Measuring the gap between the maximum predictability and prediction accuracy of human mobility, IEEE Access 8 (2020) 131859–131869.

[25] A. Lindgren, A. Doria, O. Schelén, Probabilistic routing in intermittently connected networks, SIGMOBILE Mob. Comput. Commun. Rev. 7 (3) (2003) 19–20.

[26] J. Tao, H. Wu, S. Shi, J. Hu, Y. Gao, Contacts-aware opportunistic forwarding in mobile social networks: A community perspective, in: IEEE WCNC, 2018, pp. 1–6.

[27] P. Mendes, W. Moreira, S. Sargento, Social-aware opportunistic routing protocol based on user's interactions and interests, Vol. 129, 2013.

[28] Zhifei Mao, Jing Ma, Yuming Jiang, Bin Yao, Performance evaluation of wifi direct for data dissemination in mobile social networks, in: 2017 IEEE Symposium on Computers and Communications (ISCC), 2017, pp. 1213–1218.

[29] I. O. Nunes, C. Celes, I. Nunes, P. O. S. V. de Melo, A. A. F. Loureiro, Combining spatial and social awareness in d2d opportunistic routing, IEEE Communications Magazine 56 (1) (2018) 128–135.

[30] Eeti, A. Singh, H. Cherifi, Centrality-based opinion modeling on temporal networks, IEEE Access 8 (2020) 1945–1961.

[31] M. Salehi, E. Hossain, Stochastic geometry analysis of sojourn time in multi-tier cellular networks, IEEE Transactions on Wireless Communications (2020) 1–1.

[32] A. Keränen, J. Ott, T. Kärkkäinen, The one simulator for dtn protocol evaluation, in: Proc. ICST, Simutools '09, 2009.

[33] Y. Mao, C. You, J. Zhang, K. Huang, K. B. Letaief, A survey on mobile edge computing: The communication perspective, IEEE Communications Surveys Tutorials 19 (4) (2017) 2322–2358.

[34] P. Juturu, V. Chilakanti, G. A. Babu, Intelligent bluetooth device to device connection shift, in: 2020 IEEE Wireless Communications and Networking Conference (WCNC), 2020, pp. 1–5. doi:10.1109/WCNC45663.2020.9120548.

[35] L. Meftah, R. Rouvoy, I. Chrisment, Testing nearby peer-to-peer mobile apps at large, in: 2019 IEEE/ACM 6th International Conference on Mobile Software Engineering and Systems (MOBILESoft), 2019, pp. 1–11. doi:10.1109/MOBILESoft. 2019.00009.