Post on 20-Jul-2020
transcript
An adaptive routing algorithm considering position and socialsimilarities in an opportunistic network
Kiyoung Jang1 • Junyeop Lee1 • Sun-Kyum Kim1• Ji-Hyeun Yoon1 •
Sung-Bong Yang1
Published online: 23 August 2015
� Springer Science+Business Media New York 2015
Abstract An opportunistic network (OPPNET) is a
wireless networks without an infrastructure. In OPPNET,
communication intermittently occurs when one node meets
with another node. Thus, a connected path between the
source and destination nodes rarely exists. For this reason,
nodes need not only to forward messages but are also to
store and carry messages as relay nodes. In OPPNET,
several routing algorithms that rely on relay nodes with
appropriate behavior have been proposed. Some of these
are referred to as context-ignorant routing algorithms,
which manipulate flooding, and others are referred to as
context-aware routing algorithms, which utilize the con-
textual information. We propose a routing algorithm that
employs a novel similarity based on both position and
social information. We combine the position similarity
with the social similarity using the fuzzy inference method
to obtain the enhanced performance. Through this method,
the proposed algorithm utilizes more proper relay nodes in
forwarding adaptively and achieves significant improve-
ment on the performance especially under memory con-
strained environment. We analyze the proposed algorithm
on the NS-2 network simulator with the home-cell com-
munity-based mobility model. Experimental results show
that the proposed algorithm outperforms typical routing
algorithms in terms of the network traffic and delivery
delay.
Keywords Opportunistic network � Social network �Similarity � Network routing � Fuzzy theory
1 Introduction
An opportunistic network (OPPNET) [1, 2, 3, 4] is an ad
hoc network, emerged from advances in wireless commu-
nication technologies and from the popularity of mobile
devices [5, 6, 7, 8, 9, 10]. OPPNET comes under the field
of both a mobile ad hoc network (MANET) [11] and a
delay-tolerant network (DTN) [12, 13, 14, 15]. In OPP-
NET, there is rarely a connected path between the source
and the destination node because communication between
the two nodes intermittently occurs only if one node
encounters another. Thus, nodes must communicate via
multi-hopping and transmit messages to relay nodes that
forward messages to other nodes [16]. Relay nodes are
supposed to store and carry messages; in this network,
there are sometimes no other nodes within communication
range. Unlike in a mobile ad hoc network (MANET) [17],
opportunities for communication in OPPNET are created
by the mobility of the nodes.
Figure 1 illustrates an example of message forwarding
in OPPNET. In the figure, a dotted circle indicates the
communication range of a node and an arrow shows the
moving direction of a node. In the figure, we assume that
node A is to send a message to node D. At time t1, A meets
C and forwards the message to C. Then, C saves the
& Sung-Bong Yang
sbyang@cs.yonsei.ac.kr
Kiyoung Jang
wall2010@yonsei.ac.kr
Junyeop Lee
kotzyi@yonsei.ac.kr
Sun-Kyum Kim
skyum@yonsei.ac.kr
Ji-Hyeun Yoon
y_chick@yonsei.ac.kr
1 Department of Computer Science, Yonsei University, Seoul,
Korea
123
Wireless Netw (2016) 22:1537–1551
DOI 10.1007/s11276-015-1048-3
message and moves in the direction of its arrow. At time t2,
C meets D and forwards the message to D. Consequently,
although no direct path between A and D is established at
the time when A starts to send the message, D receives the
message successfully.
In OPPNET, it is very crucial to select proper relay
nodes to send messages to the destination successfully [18].
Previously, many routing algorithms have been proposed in
attempts to find suitable relay nodes [19, 20, 21, 22, 23].
Some routing algorithms, known as context-ignorant rout-
ing algorithms, diffuse messages all over the network.
These algorithms have higher network traffic with low
delivery delay. Contrastingly, context-aware routing algo-
rithms use contextual information about the nodes to
transfer messages [24, 25, 26, 27]. These algorithms have
lower network traffic and longer delay in delivery [28].
In context-aware algorithms, similarities among the
nodes (users) are sometimes used [29]. However, there are
few algorithms that use both similarity and position simi-
larity; they simply use the average value of the user simi-
larity and the position similarity. Hence, in this paper, we
propose a routing algorithm, called the position and social
similarities-based routing algorithm (PaSS), which
exploits a novel similarity on the basis of the fuzzy infer-
ence using the contact and position information. PaSS
reflects the concept that people move around routinely in
their everyday life, especially during the weekdays. For
example, students spend most of their time at schools in the
morning and office workers mostly stay at their offices. To
take advantage of this concept, PaSS uses similarities of
the position and social contact information among the
nodes in the network. If the position similarity between a
pair of nodes is high, they are highly likely to spend most
of their time at the same locations. Moreover, if the social
similarity between a pair of nodes is high, they are highly
likely to meet the common nodes, enhancing the delivery
rate. Therefore, when a node has a message for a destina-
tion node, the node transmits the message to another node
that has a higher similarity with the destination node. In
addition, PaSS combines the position similarity with the
social similarity through fuzzy inference to control the
degrees of position and social similarities adaptively; that
is, we should consider more positional similarity at some
occasions, while social similarity is more important at
some other occasions. Such an adaptive control allows
PaSS to pick proper relay nodes in delivering messages.
Experimental results show that PaSS surpasses typical
routing algorithms in terms of the network traffic and
delivery delay.
The rest of the paper is organized as follows. Section 2
explains the related work and Sect. 3 describes the pro-
posed routing algorithm in detail. In Sect. 4, we present the
simulation results. Finally, we conclude the paper in
Sect. 5.
2 Related work
2.1 Classification of routing algorithms
in an opportunistic network
Routing algorithms are opportunistic networks that can be
classified into two groups: context-ignorant algorithms and
context-aware algorithms. Context-ignorant algorithms are
basically used to manipulate flooding [30]. Alternatively,
context-aware algorithms utilize the contextual information
of nodes in order to select the proper relay node [31, 32, 33,
34, 35, 36]. In context-ignorant algorithms, each node dif-
fuses messages all over the network; the algorithm cannot
use information about the nodes to select the proper relay
node [37, 38, 39]. The context-ignorant routing algorithms
clearly have high performance in terms of their delivery
delay because there are many contact opportunities among
the nodes. However, they have very high network traffic due
to an exceedingly large number of communications.
Alternatively, context-aware routing algorithms exploit the
contextual information of the nodes to find the proper relay
nodes for delivering a message to its destination. Compared
to context-ignorant algorithms, context-aware routing
methods have longer delivery delay because they do not
Fig. 1 Message forwarding in
OPPNET (t1\ t2)
1538 Wireless Netw (2016) 22:1537–1551
123
always choose the proper relay nodes. In order to select
proper relay nodes, the context-aware algorithms usually
require computationally heavy processes and more infor-
mation than context-ignorant algorithms.
2.2 Context-ignorant routing algorithms
The epidemic forwarding [40] algorithm spreads messages
all over the network like an epidemic spreads a virus. Once
a node receives a message, it keeps the message in its
memory space until its memory space overflows and sends
the message to other nodes that it encounters. However,
this dissemination procedure may be interrupted by a
limited hop count, time to live (TTL). If the hop count limit
is one, the communication cannot be accomplished unless a
node meets the destination node. Our algorithm partially
adopts the basic strategies of the epidemic algorithm.
The spray-and-wait algorithm [41] forces the source
node to keep sending the message to all of the nodes it
encounters. However, when a node receives the message
from the sender, it keeps the message until it meets desti-
nation node. This algorithm may drastically reduce the
network traffic due to the fact that it limits the number of
nodes that carry messages.
The vector routing algorithm [42] spreads messages all
over the network using both direction and speed of each
node. When a node encounters another node, it compares
its direction and speed with those of the encountered node.
If the angle between the directions of these nodes is large,
it transmits the messages to the encountered node. This
algorithm may reduce the network traffic compared to the
Epidemic algorithm, but has much more network traffic
than context-ignorant routing algorithms.
2.3 Context-aware routing algorithms
The PRoPHET forwarding algorithm [43] allows each node
to collect the contact probability of other nodes. Each node
computes the predictability that a node will have contact
with the destination. Two nodes then exchange the sum-
mary vectors when they encounter each other, including the
contact probability information with respect to the desti-
nation. Afterwards, each node determines the next relay
node from the summary of the vector information. Our
proposed algorithm also utilizes the contact information to
obtain the social similarity.
The SimBet forwarding algorithm [44] uses the social
information of the nodes. When two nodes meet, they
exchange information about their lists of neighbors. Then,
each node determines the ‘betweenness’ and ‘similarity’
values from this information. The betweenness is the
number of shortest paths from all nodes to all others
passing through the node, and the similarity value is the
number of common neighbors between two nodes. The
betweeness and similarity values are used to predict which
nodes are more promising relay nodes. Our algorithm uti-
lizes a newly-defined similarity that uses both contact and
position information of nodes.
In the MobySpace forwarding algorithm [45], each node
uses the mobility patterns as the contextual information.
MobySpace is defined as a multi-dimensional Euclidean
space where each axis denotes a location and the distance is
the contact probability between nodes. If two nodes are
close to each other in the MobySpace, they may have
similar mobility patterns. Thus, the best carrier is chosen as
the node that is closest to the destination in the MobyS-
pace. However, in order to construct a more precise
MobySpace, the contexts of all of the nodes are required.
The SPRINT algorithm [46] uses social information with
contact history and the Poisson-based prediction of future
encounters in order to optimize routing paths. When node
A encounters another node B, they exchange the utility
values that are computed considering the social informa-
tion and Poisson-based prediction for the messages. If
A has a smaller utility value for a message than B, the
A transmits the message to B. This algorithm not only uses
social information from the history of contacts, but also
from social networks. In addition, it includes the possible
Poisson-based prediction on the future behaviors of nodes
in the routing decision.
The BUBBLE Rap algorithm [47] uses two types of
social information, ranking and community. If node A has a
message destined for B, A would bubble the message up
using the global ranking until it reaches a node that belongs
to the community of B. Then in the BUBBLE Rap, the
local ranking system is used instead of the global ranking
and a message is bubbled up until its destination is reached.
The RENA algorithm [48] uses the regional movement
history and the probability of a node found in a particular
region. Moreover, it uses staying time, hitting time and
return time from that region. If node A has a message
destined for another node B, A calculates the delivery time
to B using the probabilities of both A and B. The message is
forwarded to some region with low delivery time. This
algorithm uses the probability of position information in
order to deliver messages.
3 Proposed algorithm
3.1 Overview
There are many routing algorithms that employ the user
similarity [44, 49] between nodes within a network. The user
similarity used in these routing algorithms is the number of
common neighbors between a pair of nodes. Most routing
Wireless Netw (2016) 22:1537–1551 1539
123
algorithms consider only the common neighbors when
determining the social similarity; they do not consider the
position information. Thus, we propose a routing algorithm
using a novel similarity that considers both the social simi-
larity and the position similarity. In our proposed algorithm,
each node collects the contact and position information and
exchanges this information with other nodes during the
warm-up period. In addition to the position and social sim-
ilarity, the period over which a message is forwarded is also
calculated from this information.
By collecting the information we mean that each node
periodically collects information related to its position and
the amount of contact it has made with other nodes during
the warm-up period. Note that a node also exchanges its
contact and position information with its neighbors to
collect the overall information. At the end of the warm-up
period, each node calculates the position and social simi-
larities among all nodes. Note that the calculated results of
the nodes may not be the same but they are all look alike.
Next, we will describe the proposed algorithm in detail.
3.2 Proposed algorithm
The proposed routing algorithm, PaSS, runs in three steps:
collecting information, computing social and position
similarities, and forwarding messages. Collecting infor-
mation and computing social and position similarities are
executed during the warm-up period.
3.2.1 Collecting information
During the warm-up period, each node gathers its contact
information and its position information for the similarities.
For gathering contact information, when a node has contact
with another node, the node saves how many contacts it has
with that counterpart node. Figure 2 shows the contact
information of four nodes. For example, in Fig. 2(a), N1
has one contact with N2, two contacts with N3, and four
contacts with N4. In Fig. 2(b), N2 has five contacts with N4
and has met N1 once. N2 does not know about the existence
of N3 since there is no contact between N2 and N3.
To gather the position information, each node saves its
current location at every second. To determine its location,
each node is assumed to have a positioning system [50, 51]
and the map data. The map is divided into 3 9 3 grids.
Therefore, each node converts its location into the corre-
sponding position information; the position information is
a set of nine numbers, each of which represents the number
of times the node visits a grid. For example, Fig. 3 shows
N1’s movement; N1 visits seven grids in the map, and
Fig. 5(a) shows the position information of N1 corre-
sponding to Fig. 3. The position information (1, 1) has a
value ‘1’ since the node visited once the grid (1, 1).
After collecting this information, each node exchanges
the contact and position information with other nodes. As a
result, each node could collect the contact and position
information of almost all the nodes in the network at the
end of the warm-up period. Figure 4 shows the contact
information of the four nodes in Fig. 2. After exchanging
the information, N2 knows about the existence of N3 from
the contact information collected from other nodes.
3.2.2 Computation of position and social similarities
We define the social similarity (S) from the contact infor-
mation and the position similarity (P) from the position
information. Then, we use a novel metric, referred to as the
position and social similarities (F), which is a combination
of the social and position similarities made using the fuzzy
inference. Figure 5 shows the position information of N1,
N2, N3, and N4. Using the contact information and the
Fig. 2 Contact information of nodes N1, N2, N3, and N4
Fig. 3 Movement of node N1
Fig. 4 Contact information
1540 Wireless Netw (2016) 22:1537–1551
123
position information as in Figs. 4 and 5, respectively, the
position and social similarities can be calculated.
Social similarity computation: Each node uses the con-
tact information to define the social similarity between a
pair of nodes. The social similarity S(i, j) between Ni and Nj
is defined by the Tanimoto coefficient [52, 53] because the
Tanimoto coefficient considers frequency, which is related
to the contact count. Hence, S(i,j) is calculated as follows.
S i; jð Þ¼Pn
k¼1Ci;kCj;kPn
k¼1;k 6¼j Ci;k
� �2þPn
k¼1;k 6¼i Cj;k
� �2�Pn
k¼1Ci;kCj;k
;
ð1Þ
In the above equation, Ci,j denotes the number of contacts
between Ni and Nj. For example, in Fig. 4, S(1, 2) = 0.80,
because when i = 1 and j = 2,P
k=1,k=1,2n (c1,k)
2 =
22 ? 42 = 20. In the same way,P
k=1,k=1,2n (c2,k)
2 = 02 ?
52 = 25 andP
k=1n C1,kC2,k = 0 9 1 ? 1 9 0 ? 2 9 0 ?
4 9 5 = 20, and Sð1; 2Þ ¼ 2020þ25�20
¼ 0:80.
Position similarity computation: As above, each node
divides the map into 3 9 3 grids. Each node uses the
position information of nodes to define the position simi-
larity between a pair of nodes. Since the position infor-
mation consists of a 2-dimensional table, we modify
Eq. (1) to incorporate with 2-dimensional data. The posi-
tion similarity P(i, j) between Ni and Nj is calculated as
follows.
In Eq. (2), Gk,li = grid (k, l). For example, we calculate
P(1, 4) using the position information in Fig. 5. Then, P(1,
2) = 0.60.
Combination of position and social similarities: In
PaSS, we utilize a fuzzy inference mechanism that is
suitable for obtaining the degrees of social similarity and
position similarity for the ratio. Our fuzzy inference system
consists of three steps: fuzzification, fuzzy inference, and
defuzzification. In the first step, each node converts its own
input values (i.e., the social similarity and position simi-
larity) into membership degrees of the fuzzy sets. In the
second step, each node performs fuzzy inference based on a
set of if–then rules using the membership degrees obtained
in the fuzzification step. The last step is defuzzification, in
which the results of the fuzzy inference are converted into a
crisp value, which is a fitness degree for similarity. Our
system is based on the Mamdani fuzzy inference system
[54], which is the most common fuzzy methodology.
Step 1: Fuzzification is performed to use the inputs to
determine the degrees of membership for the appropriate
fuzzy sets, each of which is characterized by a membership
function. In our system, there are two inputs (position
similarity and social similarity) and three fuzzy sets (high,
medium, and low) for each input. The output is a set of
membership degrees in the fuzzy sets, where a membership
degree is always between 0 and 1. Fuzzification, therefore,
provides an answer to the question ‘‘to what extent is a
node suitable to act as a relay node?’’. Figure 6 provides
the answers to this question (rated on a scale of 0–1) via
three membership functions of the position similarity. For
example, P(1, 2) = 0.6, given our graphical definition of
the position similarity membership functions, corresponds
to llow = 0.4, lmedium = 0.8, and lhigh = 0.6, where l is a
membership function. Fuzzification of an input usually
amounts to either a table lookup or a function evaluation.
When defining (membership) functions, there are several
methods that can be used such as triangular, trapezoidal,
Gaussian, and generalized bell membership functions [43].
Although each has its own merits, we use the triangular
membership function formulation because it is the lowest
computational method, which is desirable because our
fuzzy inference system operates on mobile devices. Note
that the membership function graphs in Fig. 6 are defined
according to Eq. (3).
Fig. 5 Position information of N1, N2, N3, and N4
Pði; jÞ ¼Pd
l¼1
Pdk¼1 Gi
k;lGjk;l
� �
Pdl¼1
Pdk¼1 Gi
k;l
� �2
þPd
l¼1
Pdk¼1 G
jk;l
� �2
�Pd
l¼1
Pdk¼1 Gi
k;lGjk;l
� � ; ð2Þ
Wireless Netw (2016) 22:1537–1551 1541
123
llowðxÞ ¼1� x; 0� x� 1
0; 1� x
�
lmiddleðxÞ ¼
0; x� 0
2x; 0� x� 0:52� 2x; 0:5� x� 1
0; 1� x
8>><
>>:ð3Þ
lhighðxÞ ¼0; x� 0
x; 0� x� 1
�
The above functions are based on the triangular member-
ship function formulation (TMFF) [54, 55], which is
specified by three parameters (a, b, and c) as follows:
triangle x; a; b; cð Þ ¼
0; x� ax� a
b� a; a� x� b
c� x
c� b; b� x� c
0; c� x
8>>>>><
>>>>>:
Similarly, we can obtain the social similarity membership
functions based on TMFF as shown below.
llow xð Þ ¼ 1� x; 0� x� 1
0; 1� x
�
lmiddleðxÞ ¼
0; x� 0
2x; 0� x� 0:52� 2x; 0:5� x� 1
0; 1� x
8>><
>>:ð4Þ
lhighðxÞ ¼0; x� 0
x; 0� x� 1
�
For example, S(1, 2) = 0.8 corresponds to llow = 0.2,
lmedium = 0.4, and lhigh = 0.8 for the social similarity
membership functions in Fig. 7.
Step 2: Fuzzy inference is the reasoning step for the
fuzzy values (membership degrees) based on the accepted
rules. We assumed that a node possessing high social
similarity and high position similarity with the destination
node is a proper relay node. Based on this assumption, our
fuzzy if–then rules were developed. Generally, a fuzzy if–
then rule is expressed as ‘‘if x is A, then y is B,’’ where
A and B are linguistic values (good, fair, and bad) defined
by the fuzzy sets. The if–then rules for the fuzzy inference
of our system are defined below:
• Rule 1: If the position similarity is low, then the result
is bad.
• Rule 2: If the position similarity is medium, then the
result is fair.
• Rule 3: If the position similarity is high, then the result
is good.
• Rule 4: If the social similarity is low, then the result is
bad.
• Rule 5: If the social similarity is medium, then the
result is fair.
• Rule 6: If the social similarity is high, then the result is
good.
For the above rules, we associate a control variable with
the result, indicating the suitability of a node to become a
relay node. The control variable has three linguistic values:
good, fair, and bad. To define the control membership
functions for these linguistic values, we also use TMFF.
The control membership functions are given in Eq. (5), and
their corresponding graphs are shown in Fig. 8.
lbad xð Þ ¼ 1� x; 0� x� 1
0; 1� x
�
lfair xð Þ ¼
0; x� 0
2x; 0� x� 0:51� 2x; 0:5� x� 1
0; 1� x
8>><
>>:ð5Þ
Fig. 7 Social similarity membership functionFig. 6 Position similarity membership function
1542 Wireless Netw (2016) 22:1537–1551
123
lgood xð Þ ¼ 0; x� 0
x; 0� x� 1
�
In our fuzzy inference system, we apply the min–max
inference of the Mamdani fuzzy inference system, in which
the AND (minimization) and the OR (maximization)
operations are used. Because the decisions are based on the
testing of all of the rules in the system, the fuzzy sets (each
of which represents the truncated output function of each
rule) are combined into a single fuzzy set using OR oper-
ation. This combination process is referred to as aggrega-
tion. Since we have two input variables (i.e., the position
and social similarity), aggregation is performed for the
results produced by applying all six rules with respect to
each variable. The results of both aggregations are then
combined to produce the final fuzzy set using AND oper-
ation. For example, if N1 has P(1, 2) = 0.6 and S(1,
2) = 0.8 for N2, then the node finds that llow = 0.4,
lmedium = 0.8, and lhigh = 0.6 for the position similarity
and llow = 0.2, lmedium = 0.4, and lhigh = 0.8 for the
social similarity via fuzzification. Next, the node applies
Rule 1 with llow = 0.4 for the position similarity. Figure 9
shows how to apply Rule 1 when the position similarity is
low; the shaded area in Fig. 9(b) is obtained with AND
operation. Similarly, Figs. 10, 11, 12, 13 and 14 show the
results of applying Rules 2–6 when lmedium = 0.8 andFig. 8 Control membership function
Fig. 9 Result applying Rule 1
with a position similarity of llow
Fig. 10 Result applying Rule 2
with lmiddle = 0.6 for the
position similarity
Wireless Netw (2016) 22:1537–1551 1543
123
lhigh = 0.6 for the position similarity and when
lhigh = 0.8, lmedium = 0.4, and llow = 0.2 for the social
similarity. The node now can compute the shaded area in
Fig. 15 by aggregating the results in Figs. 9(b), 10 and
11(b); note that OR operations are performed at this time.
Similarly, Fig. 16 is obtained by aggregating the results in
Figs. 12(b), 13 and 14(b). Finally, the node calculates the
shaded area in Fig. 17(b) by performing AND operation on
the shaded areas of Figs. 15 and 16.
Step 3: Defuzzification, which is the reverse process of
fuzzification, is conducted to produce a quantifiable result
in fuzzy logic, given a fuzzy set, as shown in Fig. 17(b).
Fig. 11 Result applying Rule 3
with lhigh = 0.6 for position
similarity
Fig. 12 Result applying Rule 4
with llow = 0.8 for the social
similarity
Fig. 13 Result applying Rule 5
with lmiddle = 0.8 for the social
similarity
1544 Wireless Netw (2016) 22:1537–1551
123
Notice that, in this figure, we do not use the shaded area but
instead use the curve on the upper boundary of the area.
The membership degrees of the fuzzy set are interpreted
into a specific value during the defuzzification process. For
the defuzzification in our system, we use the center of
gravity (COG), which is one of the most common and
useful techniques for defuzzification. Using the COG, each
node computes an f-value using Eq. (6). This value is used
for relay node selection during each network update.
f�value ¼P
s� degree sð ÞP
degree sð Þ ð6Þ
Here, s is a sample point of control and degree(s) is the
membership degree of control at s. To compute an f-value,
we must first decide the number of sample points. For our
fuzzy system, we use 10 sample points {0.1, 0.2, 0.3, …,
1.0}. Note that each degree(s) in the table is obtained from
Fig. 17(b); that is, for each s on the x-axis, we obtain the
corresponding membership degree on the y-axis. The f-
value for the example is 0.62 as shown below.
f�value ¼ 0:1� 0:2þ 0:2� 0:4þ � � � þ 1:0� 0:6ð Þ0:2þ 0:4þ � � � þ 0:6ð Þ
¼ 3:03
4:90¼ 0:62 ð7Þ
In PaSS, we use f-values for forwarding. The larger a
node’s f-value, the more suitable it is to be a relay node.
3.2.3 Forwarding messages
We outline the PaSS routing in Algorithm 1, which pre-
sents the communication process for a message m between
Ni and Nj. When Ni meets Nj (assuming that Ni has m), if
the destination D of m is Nj, then Ni simply transmits the
message to Nj. Otherwise, Ni compares F(j, D) with F(i, D).
If F(j, D) are greater than F(i, D), Ni transmits m to Nj.
Fig. 14 Result applying Rule 6
with lhigh = 0.8 for the social
similarity
Fig. 15 Aggregation of the results in Figs. 9(b), 10 and 11(b) Fig. 16 Aggregation of the results in Figs. 12(b), 13 and 14(b)
Wireless Netw (2016) 22:1537–1551 1545
123
Figure 18 shows an example where N1 wants to deliver a
message m to N4. At time t1, N1 has m and N1, N2, and N3 are
assumed to have f-values 0.46, 0.62, and 0.52, respectively,
against N4. And they start to move around the network. At
time t2, N1 encounters N2. Because N2 does not have m, N1
compares F 2; 4ð Þ with F 1; 4ð Þ. Since F 2; 4ð Þ is greater thanF 1; 4ð Þ, N1 transmits m to N2. At time t3, N1 meets with N3.
Then, because N3 does not havem and F 3; 4ð Þ[F 1; 4ð Þ, N1
transmits m to N3. At time t4, N2 meets with N4 and finally
m is successfully delivered to N4.
Fig. 17 Final fuzzy set
obtained by the aggregation of
Figs. 15 and 16
Fig. 18 Process of PaSS
routing algorithm
(t1\ t2\ t3\ t4)
1546 Wireless Netw (2016) 22:1537–1551
123
4 Simulation results
4.1 Simulation environment
We use the network simulator NS-2 v.2.35 [56] for the
simulations. The number of nodes is set to 40. The network
area is set to 450 m 9 450 m and the communication ran-
ges are 10, 20, 30, 40, and 50 m. The memory space is set to
2, 4, 6, 8, and 10. We assume that when the memory space
of a node is full and a node receives a message, the node
throws out the first message that it received. The movement
of a node follows the HCMM [57], which is a frequently
used movement pattern in OPPNET simulations. The
velocity of a node ranges from 1 to 9 m/s; this speed is
appropriate for pedestrians and vehicles. In our simulator,
each mobile node issues a single message. The total simu-
lation time is 15,000 s. The warm-up time is 1200 s, the
gathering information time is 1000 s, and the exchanging
information time is 200 s. After transmitting a message to
other nodes, the node from which the message originated
does not delete the message. In addition, we do not consider
the capacities of the bandwidth and power; this is done for
the sake of simplicity because the network traffic and
delivery delay are indirectly related with the power. Table 1
shows an overview of the environment used in our simu-
lation. In this experiment, we evaluate two metrics: the
network traffic and the delay time. Our simulations continue
until all of the messages are delivered (i.e., the delivery
success ratio is 1). The network traffic is the number of
packets sent and received between nodes. However, we do
not consider the network traffic related to exchanging
information because information exchange occurs during
the warm-up time. The delay time is the time period
between the moment that a message is generated and the
time when the message is delivered to the destination.
4.2 Simulation results
In the simulation, we compare the performances of the
network traffic and average delivery delay of PaSS with
those of the Epidemic, PRoPHET, SimBet, Vector Routing
(VR), and RENA algorithms. We assume that the com-
munication range is 10 m and that each node can store
10 messages in its memory space. Figure 19 shows the
comparison among Epidemic, PRoPHET, SimBet, VR,
RENA, and PaSS algorithms. The network traffics of
Epidemic, PRoPHET, SimBet, and VR are about 17 times,
two times, three times, five times larger than that of PaSS,
respectively. RENA has lower network traffic than PaSS,
since RENA is based on the Spray and Search (SAS)
algorithm. The delay of PaSS is about 14.4, 36.0, and
66.1 % shorter than those of PRoPHET, SimBet, and
RENA, respectively. On the other hand, Epidemic and VR
show shorter delays than PaSS, since Epidemic and VR are
executed on the basis of flooding. As we expected, PaSS
reduces the network traffic and the delivery delay com-
pared to the algorithms with social information and shows
suitable performance compared to the algorithms with
position information; PRoPHET and SimBet exploit only
the contact information and VR and RENA use only the
position information. However, PaSS uses both the social
and position similarities with fuzzy inference through
which two similarities are used adaptively. For this reason,
as PaSS selects proper relay nodes, the performance of
Table 1 Simulation environment
Simulation environment
Network simulator NS-2 v.2.35
Mobility model HCMM
Map size (m2) 450 9 450
Number of nodes 40
Velocity of a node (m/s) 1–9
Simulation time (s) 15,000
Warm up time (s) 1200
Communication range (m) 10 (default), 20, 30, 40, 50
Memory space (the number of
messages)
2, 4, 6, 8, 10 (default)
Number of generated messages per node 1
Other algorithms to be compared Epidemic
PRoPHET
SimBet
Vector routing
RENAFig. 19 Network traffic and delivery delay results
Wireless Netw (2016) 22:1537–1551 1547
123
PaSS is better than others in terms of the network traffic
and delivery delay.
4.3 Communication range
We look into the network traffic and delivery delay with
various communication ranges (10, 20, 30, 40, and 50 m).
Figure 20 shows the simulation results of the Epidemic,
SimBet, PRoPHET, VR, RENA, and PaSS algorithms. For
all of the communication ranges, most routing algorithms
except RENA have a mostly consistent increase in the net-
work traffic with increasing communication range, which is
limited by the memory space (which is 10 messages in size).
Since RENA is based on the spray and search (SAS) algo-
rithm, the network traffic in RENA shows virtually no
change. Unlike the network traffic, every algorithm experi-
ences a decrease in the delivery delay as the communication
range increases. For all of the communication ranges, PaSS
has better performance in terms of the network traffic and
delivery delay comparedwith other algorithms. The position
similarity was unaffected by changes in the communication
range, but the social similarity was affected. For this reason,
PaSS has smaller changes than other algorithms in terms of
the network traffic. However, VR has as large changes as
other algorithms since it spreads message only using node’s
direction, although it uses position information.
4.4 Memory space
We also analyze the performance with memory spaces of
various sizes. The unit of memory space is the number of
messages; each node can save 2, 4, 6, 8, and 10 messages,
respectively. Figure 21 shows the simulation results of the
Epidemic, SimBet, PRoPHET, VR, RENA, and PaSS
algorithms. When the size of the memory space is bigger,
most of the algorithms except RENA have lower network
traffic and delivery delay. RENA shows almost no changes
both in the network traffic and delivery delay since it is
based on the SAS algorithm. PaSS shows the best perfor-
mance in terms of the network traffic and delivery delay
compared to other algorithms for all of the different
memory space sizes. Although VR has better performance
than PaSS in term of the delivery delay, it shows much
lower performance than PaSS in the network traffic.
Additionally, for the delivery delay, the performance gap
between PaSS and VR is decreased as the memory space
decreases. Such a performance gain made possible by the
fact that PaSS selects proper relay nodes adaptively
through fuzzy inference.
5 Conclusion
In OPPNET, the user similarity is used in many routing
algorithms. However, there are few algorithms that use both
the user similarity and the position similarity. We propose
the PaSS routing algorithm, referred to as the position and
social similarities-based routing algorithm, which exploits a
novel similarity based on the fuzzy inference using both the
contact and position information. The proposed algorithm
selects proper relay nodes to send messages by exploiting
the position and social similarities, which are combined as
Fig. 20 Network traffic and delivery delay with various communi-
cation ranges
0.0
500.0
1000.0
1500.0
2000.0
2 4 6 8 10Del
iver
y de
lay
(sec
)
Memory space (number of messages)
Epidemic PRoPHET SimBet VR RENA PaSS
Fig. 21 Network traffic and delivery delay with various memory
spaces
1548 Wireless Netw (2016) 22:1537–1551
123
the relevant degrees of social similarity and position simi-
larity for the ratio by fuzzy inference.
Experimental results demonstrate that PaSS reduced the
network traffic compared to the other algorithms. Addi-
tionally, the delivery delay was also shorter (except when
compared to the Epidemic algorithm). Furthermore, our
proposed algorithm effectively uses the memory space;
when the memory size is small, the memory size of our
proposed algorithm has little effect on the delivery delay and
the network traffic compared to the other algorithms, because
PaSS selects relay nodes more accurately by using fuzzy
inference. However, PaSS does have some constraints. Our
proposed algorithm must exchange a significant amount of
information among the nodes and does not consider the up-
to-date information of nodes during the forwarding period. In
the future, we plan to study enhanced dynamic forwarding
algorithms with varying node information in OPPNET.
References
1. Conti, M., & Kumar, M. (2010). Opportunities in opportunistic
computing. IEEE Computer, 43(1), 42–50.
2. Conti, M., Giordano, S., May, M., & Passarella, A. (2010). From
opportunistic networks to opportunistic computing networks.
IEEE Communications Magazine, 48(9), 126–139.
3. Wang, X., Vasilakos, A., Chen, M., Liu, Y., & Kwon, T. (2012).
A survey of green mobile networks: Opportunities and chal-
lenges. Mobile Networks and Applications, 17(1), 4–20.
4. Sheng, Z., Yang, S., Yu, Y., Vasilakos, A., Mccann, J., & Leung,
K. (2013). A survey on the ietf protocol suite for the internet of
things: Standards, challenges, and opportunities. Wireless Com-
munications, IEEE, 20(6), 91–98.
5. Sheng, Z., Yang, S., Yu, Y., Vasilakos, A., Mccann, J., & Leung,
K. (2013). A survey on the ietf protocol suite for the internet of
things: Standards, challenges, and opportunities. Wireless Com-
munications IEEE, 20(6), 91–98.
6. Liu, J., Wan, J., Wang, Q., Li, D., Qiao, Y., & Cai, H. (2015). A
novel energy-saving one-sided synchronous two-way ranging
algorithm for vehicular positioning. ACM/Springer Mobile Net-
works and Applications.
7. Sengupta, S., Das, S., Nasir, M., Vasilakos, A., & Pedrycz, W.
(2012). An evolutionarymultiobjective sleep-scheduling scheme for
differentiated coverage in wireless sensor networks. IEEE Trans-
actions on Systems, Man, and Cybernetics, 42(6), 1093–1102.
8. Yan, Z., Zhang, P., & Vasilakos, A. (2014). A survey on trust
management for internet of things. Journal of Network and
Computer Applications, 42, 120–134.
9. Duarte, P., Fadlullah, Z., Vasilakos, A., & Kato, N. (2012). On
the partially overlapped channel assignment on wireless mesh
network backbone: A game theoretic approach. IEEE Journal on
Selected Areas in Communications, 30(1), 119–127.
10. Rahimi, M., Venkatasubramanian, N., Mehrotra, S., & Vasilakos,
A. (2012). MAPCloud: Mobile applications on an elastic and
scalable 2-tier cloud architecture. In Proceedings of the 2012
IEEE/ACM fifth international conference on utility and cloud
computing, pp. 83–90.
11. Bansal, M., Rajput, R., & Gupta, G. (1999). Mobile ad hoc net-
working (MANET): Routing protocol performance issues and
evaluation considerations. The internet society.
12. Zhang, Z. (2006). Routing in intermittently connected mobile ad
hoc networks and delay tolerant networks: Overview and chal-
lengers. IEEE Communication Surveys Tutorials, 8(10), 24–37.
13. Yao, Y., Cao, Q., & Vasilakos, A. (2013). EDAL: An energy-
efficient, delay-aware, and lifetime-balancing data collection
protocol for wireless sensor networks. MASS, 2013, 182–190.
14. Vasilakos, A., Zhang, Y., & Spyropoulos, T. (2012). Delay toler-
ant networks: Protocols and applications. New York: CRC Press.
15. Attar, A., Tang, H., Vasilakos, A., Yu, F., & Leung, V. (2012). A
survey of security challenges in cognitive radio networks: Solu-
tions and future research directions. Proceedings of the IEEE,
100(12), 3172–3186.
16. Xiao, Y., Peng, M., Gibson, J., Xie, G., Ding-Zhu, D., & Vasi-
lakos, A. (2012). Tight performance bounds of multihop fair
access for MAC protocols in wireless sensor networks and
underwater sensor networks. IEEE Transactions on Mobile
Computing, 11(10), 1538–1554.
17. Yen, Y., Chao, H., Chang, R., & Vasilakos, A. (2011). Flooding-
limited and multi-constrained QoS multicast routing based on the
genetic algorithm for MANETs. Mathematical and Computer
Modelling, 53(11), 2238–2250.
18. Spyropoulos, T., Rais, R., Turletti, T., Obraczka, K., & Vasilakos,
A. (2010). Routing for disruption tolerant networks: taxonomy
and design. Wireless Networks, 16(8), 2349–2370.
19. Liu, J., Wan, J., Wang, Q., Deng, P., Zhou, K., & Qiao, Y. (2015),
A survey on position-based routing for vehicular ad hoc net-
works. Springer Telecommunication Systems.
20. Han, K., Luo, J., Liu, Y., & Vasilakos, A. (2013). Algorithm design
for data communications in duty-cycled wireless sensor networks:
A survey. IEEE Communications Magazine, 51(7), 107–113.
21. Zeng, Y., Xiang, K., Li, D., & Vasilakos, A. (2013). Directional
routing and scheduling for green vehicular delay tolerant net-
works. Wireless Networks, 19(2), 161–173.
22. Chilamkurti, N., Zeadally, S., Vasilakos, A., Sharma, V. (2009).Cross-layer support for energy efficient routing in wireless sensor
networks. Journal of Sensors, 2009, 9.
23. Woungang, I., Dhurandher, S., Anpalagan, A., & Vasilakos, A.
(2013). Routing in opportunistic networks. New York: Springer.
24. Cheng, H., Xiong, N., Vasilakos, A., Yang, L., Chen, G., &
Zhuang, X. (2012). Nodes organization for channel assignment
with topology preservation in multi-radio wireless mesh net-
works. Ad Hoc Networks, 10(5), 760–773.
25. Wei, G., Ling, Y., Guo, B., Xiao, B., & Vasilakos, A. (2011).
Prediction-based data aggregation in wireless sensor networks:
Combining grey model and Kalman Filter. Computer Commu-
nications, 34(6), 793–802.
26. Liu, X., Zhu, Y., Kong, L., Liu, C., Gu, Y., Vasilakos, A., & Wu,
M. (2014). CDC: Compressive data collection for wireless sensor
networks. IEEE Transactions on Parallel and Distributed Sys-
tems, 26(8), 2188–2197.
27. Xu, X., Ansari, R., Khokhar, A., & Vasilakos, A. (2015). Hier-
archical data aggregation using compressive sensing (HDACS) in
WSNs. ACM Transactions on Sensor Networks, 11(3), 45.
28. Li, M., Li, Z., & Vasilakos, A. (2013). A survey on topology
control in wireless sensor networks: Taxonomy, comparative study,
and open issues. Proceedings of the IEEE, 101(12), 2538–2557.
29. Meng, T., Wu, F., Yang, Z., Chen, G., & Vasilakos, A. (2015).
Spatial reusability-aware routing in multi-hop wireless net-
works. IEEE Transactions on Computers, PP(99), 1.
30. Zeng, Y., Li, D., & Vasilakos, A. (2013). Real-time data report
and task execution in wireless sensor and actuator networks using
self-aware mobile actuators. Computer Communications, 36(9),
988–997.
31. Youssef, M., Ibrahim, M., Abdelatif, M., Chen, L., & Vasilakos,
A. (2014). Routing metrics of cognitive radio networks: A survey,
communications surveys and tutorials. IEEE, 16(1), 92–109.
Wireless Netw (2016) 22:1537–1551 1549
123
32. Busch, C., Kanna, R., & Vasilakos, A. (2012). Approximating
congestion ? dilation in networks via ‘‘quality of routing’’
games. IEEE Transactions on Computers, 61(9), 1270–1283.
33. Li, P., Guo, S., Yu, S., & Vasilakos, A. (2014). Reliable multicast
with pipelined network coding using opportunistic feeding and
routing. IEEE Transactions on Parallel and Distributed Systems,
25(12), 3264–3273.
34. Dvir, A., & Vasilakos, A. (2011). Backpressure-based routing
protocol for DTNs. ACM SIGCOMM Computer Communication
Review, 41(4), 405–406.
35. Youssef, M., Ibrahim, M., Abdelatif, M., Chen, L., & Vasilakos,
A. (2014). Routing metrics of cognitive radio networks: A survey.
IEEE Communications Surveys and Tutorials, 16(1), 92–109.
36. Zhang, X., Zhang, Y., Yan, F., & Vasilakos, A. (2015). Inter-
ference-based topology control algorithm for delay-constrained
mobile ad hoc networks. IEEE Transactions on Mobile Com-
puting, 14(4), 742–754.
37. Li, P., Guo, S., Yu, S., & Vasilakos, A. (2012). CodePipe: An
opportunistic feeding and routing protocol for reliable multicast
with pipelined network coding. INFOCOM, pp. 100–108.
38. Yen, Y., Chao, H., Chang, R., & Vasilakos, A. (2011). Flooding-
limited and multi-constrained QoS multicast routing based on the
genetic algorithm for MANETs. Mathematical and Computer
Modelling, 53(11–12), 2238–2250.
39. Liu, Y., Xiong, N., Zhao, Y., Vasilakos, A., Gao, J., & Jia, Y.
(2010). Multi-layer clustering routing algorithm for wireless
vehicular sensor networks. IET Communications, 4(7), 810–816.
40. Vahdat, A., & Becker, D. (2000). Epidemic routing for partially
connected ad hoc networks. Technical report CS-200006, Duke
University.
41. Spyropoulos, T., Psounis, K., & Raghavendra, C. (2005). Spray
and wait: An efficient routing scheme for intermittently con-
nected mobile networks. In Proceedings of ACM SIGCOMM
2005, pp. 252–259.
42. Kang, H., & Kim, D. (2008). Vector routing for delay tolerant
networks. In IEEE vehicular technology conference, pp. 1–5.
43. Lindgren, A., Doria, A., & Schelen, O. (2004). Probabilistic
routing in intermittently connected networks. Service Assurance
with Partial and Intermittent Resources, 3126(LNCS), 239–254.
44. Daly, E. M., & Haahr, M. (2009). Social network analysis for
routing in disconnected delay-tolerant MANETs. IEEE Trans-
actions on Mobile Computing, 8(5), 606–621.
45. Leguay, J., Friedman, T., & Conan, V. (2005). DTN routing in a
mobility pattern space. In Proceedings of the 2005 ACM SIG-
COMM workshop on delay-tolerant networking, pp. 276–283.
46. Ciobanu, R., Dobre, C., & Cristea, V. (2013). SPRINT: Social
prediction-based opportunistic routing. In 2013 IEEE 14th
international symposium and workshops: World of wireless,
mobile and multimedia networks, pp. 1–7.
47. Hui, P., Crowcroft, J., & Yoneki, E. (2011). Bubble rap: Social-
based forwarding in delay-tolerant networks. IEEE Transactions
on Mobile Computing, 10(11), 1576–1589.
48. Wen, H., Ren, F., Liu, J., Lin, C., Li, P., & Fang, Y. (2011). A
storage-friendly routing scheme in intermittently connected
mobile network. IEEE Transactions on Vehicular Technology,
60(3), 1138–1149.
49. Watts, D. J., & Strogatz, S. H. (1998). Collective dynamics of
‘small-world’ networks. Nature, 393(6684), 440–442.
50. Kaplan, E. D. (1996). Understanding the GPS: Principles and
applications. Artech House.
51. Capkun, S., Hamdi, M., & Hubaux, J. (2001). GPS-free posi-
tioning in mobile ad hoc networks. In Proceedings of the 34th
Hawaii international conference on system sciences.
52. Flower, D. R. (1998). On the properties of bit string-based
measures of chemical similarity. Journal of Chemical Informa-
tion and Modeling, 38(3), 379–386.
53. Willett, P. (1998). Chemical similarity searching. Journal of
Chemical Information and Modeling, 38(6), 983–996.
54. Jyh-Shing, R. J., Chuen-Tsai, S., &Mizutani, E. (1996).Neuro-fuzzy
and soft computing. Upper Saddle River, NJ: Prentice-Hall Inc.
55. Zadeh, L. A. (1965). Fuzzy sets. Information and Control, 8,
338–353.
56. Network Simulator-2. http://www.isi.edu/nsnam/ns/.
57. Boldrini, C., & Passarella, A. (2010). HCMM: Modelling spatial
and temporal properties of human mobility driven by users’ social
relationships. Computer Communications, 33(9), 1056–1074.
Kiyoung Jang is currently an
M.S. candidate in Computer
Science at Yonsei University in
Korea. His research interests
include mobile social networks,
delay tolerant networks and
social network analysis.
Junyeop Lee is currently an
Ph.D. candidate in Computer
Science at Yonsei University in
Korea. His research interests
include mobile social networks,
delay tolerant networks and
social network analysis.
Sun-Kyum Kim received his
M.S. in Computer Science from
Yonsei University in Korea in
2012. He is currently a Ph.D.
candidate at Yonsei University.
His research interests include
mobile social networks, delay
tolerant networks and social
network analysis.
1550 Wireless Netw (2016) 22:1537–1551
123
Ji-Hyeun Yoon is currently an
Ph.D. candidate in Computer
Science at Yonsei University in
Korea. His research interests
include mobile social networks,
delay tolerant networks and
social network analysis.
Sung-Bong Yang received his
M.S. and Ph.D. from the
Department of Computer Sci-
ence at the University of Okla-
homa in 1986 and 1992,
respectively. He has been a
professor at Yonsei University
since 1994. His research inter-
ests include graph algorithms,
mobile computing, and social
network analysis.
Wireless Netw (2016) 22:1537–1551 1551
123