Abstract
Keywords
Introduction
A delay/disruption tolerant network (DTN) was initially motivated by the idea of deploying an interplanetary Internet (IPN) 1 for deep space communication. Examples of DTN application in real life mainly include wildlife tracking sensor networks, 2 PeopleNet, 3 ocean sensor networks, 4 military networks, 5 and vehicular ad hoc networks. 6 Unlike traditional networks such as the transmission control protocol/Internet protocol (TCP/IP)-based Internet, the DTN is often subject to high latency caused by long propagation delay, intermittent connectivity, node resources that are extremely limited, and other characteristics.7–20
Thus, a traditional “store-and-forward” network cannot complete its communication. It adopts a “storage-carry-forward” routing mode, and a node carries the message before locating a relay or destination node. 1 The message will be relayed from one node to another until the message arrives at the destination or is dropped when its time to live (TTL) equals 0. 6 In order to increase the delivery ratio of the network, the DTN usually uses multiple copy routing protocols to forward the message; however, in a constrained-resource condition, the limited network resources are rapidly exhausted resulting in a sharp decline in network performance. Therefore, an efficient routing algorithm is crucial for improving the performance of a network in a constrained-resource condition.
With constrained resources, message delay and hop count are the two critical metrics for evaluating the performance of a DTN routing algorithm. Delay is the time required for a message to be transmitted from one end of the network to the other; 21 it includes the transmission, propagation, processing, and queuing delays. 22 The longer the delay, the longer the occupation of the network resource. Although delays are permitted in the DTN, 23 it is important to reduce them for a network in a constrained-resource condition. 24 Hop counts are the number of nodes that the message has experienced in the process of reaching the destination node. The channel will be occupied if the hop count of the message is incremented by one. Thus, when the number of channels/channel bandwidth is limited, reducing the message hop counts is also important to effectively utilize limited network resources.
To efficiently utilize limited network resources, we propose a DTN routing and buffer management algorithm based on weight (RABP). First, the algorithm estimates the message delay and hop count experienced by the message up to the destination node in order to construct a weight function of the delay and hop count. Furthermore, the RABP algorithm selects a node with the lowest weight value as the relay node and implements buffer management based on the weight of the message carried by the node, to efficiently utilize the limited network resources.
The rest of this article is organized as follows: section “Related works” presents the related works. In section “Network model,” the network model is described, and the RABP algorithm is presented in section “RABP algorithm.” Section “Simulation experiments and results” describes the simulation experiments and results. Finally, the conclusions are summarized in section “Conclusion.”
Related works
In this section, we review existing works on message delay and hop count. Currently, several routing algorithms are available for addressing delay; however, research on hop count is relatively limited.
Algorithms that address delay include the minimum expected delay (MED) algorithm proposed by Jain et al., 21 the minimum estimated expected delay (MEED) algorithm proposed by Jones et al., 22 and the expected delay (ED) algorithm proposed by Liu and Wu. 23 However, these three metrics compute the ED based on the MED among individual routes from the current node to the destination; they do not consider the aggregation of the EDs from multiple available routes. Thus, they do not effectively cope with unforeseeable changes in the node contact topology. Hence, Le et al. 24 proposed an expected minimum delay (EMD) algorithm with an alternative relay selection metric based on the EMD among all possible routes to the destination. This metric accounts for the expected gain in the meeting probability when multiple routes are available, and it estimates the actual delay more accurately. However, in this algorithm, in order to reduce the message delay up to the destination node, several relay nodes may be required to forward the message, thereby increasing the channel occupancy time. Therefore, to achieve near-optimal network performance in a constrained-resource condition on the premise of reducing the network delay, reducing the message hop count is also particularly important.
Some literatures are available for addressing the message hop count issue. Wu et al. 25 proposed an algorithm for limiting the message hop count in edge router (ER) routing. This method can obtain a better performance by controlling the message hop count. You et al. 26 proposed a hop count–based multi-path forwarding (HCMF) algorithm. The main idea was to let the nodes decide whether or not to trigger the replication mechanism by comparing the average hop count value with the estimated one.
Thus, most available routing studies on message delay or hop count consider only a single performance metric; buffer management is rarely considered simultaneously. In this study, we simultaneously considered the message delay and hop count and proposed a DTN routing algorithm and a buffer management algorithm based on weight to achieve near-optimal network performance in a constrained-resource condition.
Network model
We model the DTN as a network composed of randomly moving nodes; these nodes and the
connections between them are modeled as an undirected graph
In this article, a message carried by a node in the network has a weight, wherein the
weight quota of the message carried by the current node is
RABP algorithm
In this section, we first introduce the main idea of the RABP and then present the detailed design of the RABP algorithm in the following section.
This algorithm simultaneously estimates the message delay and hop count experienced by the message up to the destination node and constructs a weight function of the delay and hop count. A node with the least weight value will be selected as the relay node, that is, a node that arrives at the destination node of a message with less delay, and fewer hop counts will be selected as the next hop node.
Simultaneously, based on the weight of the message carried by the node, a buffer management mechanism is introduced. As the message arrives at the destination node with less delay and fewer hop counts, it is more likely to reach the destination node; thus, reducing the number of copies in the network is necessary.
The source node sets the number of copies of the message based on the weight of the message carried by the source node. During message forwarding, the number of copies assigned to the relay node depends on the weight of the message carried by it. For a lesser weight, more message copies are allocated. When the number of message copies allocated to the next hop is greater than zero, the message occupies the buffer space of one message only. When the node buffer overflows, the message with the least copies is first discarded; if the buffer continues to overflow, messages with the largest weight carried by the node will be discarded until the node has sufficient space for a new message.
Delay estimate
In this section, we introduce the EMD calculation. The EMD is calculated in the
literature
24
as
follows: Suppose a node
where
From the literature,
24
where
Hop count estimate
In this section, we introduce the EMJ calculation. The EMJ can be calculated as follows:
When a connection is built between two nodes, one hop count is added. Therefore, we
estimate the hop count of the message for reaching the destination node as per the ratio
of the delay to the average interval contact time. Then,
Relay node selection
In this section, we first introduce the weight of the message carried by the relay node
and then present the relay node selection. Suppose a node
In order to maximize the performances of these two metrics simultaneously, node
where
Buffer management
For efficient utilization of the node buffer resources, we introduce a buffer management
mechanism to efficiently allocate the number of message copies based on the weight of the
message carried by a node. As the message arrives at the destination node with less delay
and fewer hop counts, it is more likely to reach its destination node; thus, reducing the
number of copies in a network is necessary. When the source node generates a message
where
Suppose that the relay node of
where
When
RABP algorithm implementation
Based on the above, we present the concrete realization of the RABP algorithm in this section. The RABP algorithm is implemented, as presented in Table 1.
RABP algorithm.
At a time slot
Simulation experiments and results
In this section, we evaluate the performance of the RABP with the widely used simulator Opportunistic Networking (ONE) 27 and compare it to the following three multiple copy routing protocols: the Epidemic, 28 the Prophet, 29 and the Spray and wait (SAW). 30
Simulation settings
In the simulation, the nodes consist of pedestrians, taxis, and trams; the movement model
of the nodes is the “ShortestPathMapBasedMovement.” The initial values of adjustment
factors are
Simulation parameters.
TTL: time to live.
Simulation results comparison
Delivery ratio
The delivery ratio is the ratio of the successfully delivered to the generated messages within a given time period. 31
Figure 1(a) illustrates the changes in the message delivery ratio when the buffer size is varied from 8 to 40 M; with the increase in the node buffer size, the message delivery ratios of all the four algorithms increase. Among these four algorithms, the delivery ratio of the RABP algorithm is the highest, whereas that of the Prophet algorithm is the least. Figure 1(b) depicts the changes in the message delivery ratio when the simulation time is varied from 60 to 300 h; the delivery ratios of all the four algorithms are relatively stable during the period 60–300 h. The delivery ratios of the Epidemic and Prophet algorithms are closely matched, while the delivery ratio of the RABP algorithm is the highest. Overall, the delivery ratio of the RABP algorithm is the highest. This is mainly because the algorithm can select an appropriate node as one of the relay nodes. Thus, the delivery ratio of the message is increased.

Delivery ratio on varying the buffer size and simulation time: (a) illustrates the changes in the message delivery ratio when the buffer size is varied and (b) depicts the changes in the message delivery ratio when the simulation time is varied.
Average delay
Average delay is the average time between message generation and successful reception at a destination node.
Figure 2(a) illustrates the changes in the delay when the buffer size is varied from 8 to 40 M; on increasing the node buffer size, the message delays of all the four algorithms increase. Among the four algorithms, the delays of the Epidemic and Prophet algorithms are closely matched. The delay of the RABP is considerably lower compared to the other three compared algorithms. Figure 2(b) displays the changes in the message delay when the simulation time is varied from 60 to 300 h; the delays of all the four algorithms are relatively stable during the period 60–300 h. Among these four algorithms, the delay of the Prophet algorithm is the highest, whereas that of the RABP algorithm is the least. Overall, the delay of the RABP algorithm is the lowest. This is mainly because the algorithm can select a node with the least weight as one of the relay nodes. Thus, the average delay of the network is reduced.

Delay on varying the buffer size and simulation time: (a) illustrates the changes in the delay when the buffer size is varied and (b) displays the changes in the message delay when the simulation time is varied.
Overhead ratio
Overhead ratio is the ratio of the number of messages that are not successfully delivered to the destination node to the number of messages that are successfully delivered to the destination node.
Figure 3(a) illustrates the changes in the network overhead when the buffer size is varied from 8 to 40 M; when the buffer size increases from 8 to 40 M, the overheads of the Epidemic and Prophet algorithms decrease; the overhead of the Epidemic algorithm is the largest, whereas that of the RABP algorithm is the least. Figure 3(b) depicts the changes in the overhead when the simulation time is varied from 60 to 300 h. During the simulation period 60–300 h, the changes in the network overhead of all the four algorithms are relatively less; the overhead of the Epidemic algorithm is the largest, whereas that of the RABP algorithm is the least. Overall, the overhead of the RABP algorithm is the least. This is mainly because the RABP algorithm implements buffer management based on the weight of the message carried by the node such that the number of message copies is limited. Thus, the overheads are reduced.

Overhead on varying the buffer size and simulation time: (a) illustrates the changes in the network overhead when the buffer size is varied and (b) depicts the changes in the overhead when the simulation time is varied.
Average hop count
The value of the average hop is calculated using equation (9) 32
where
Figure 4(a) illustrates the changes in the message hop count when the buffer size is varied from 8 to 40 M. In Figure 4(a), when the buffer size increases from 8 to 40 M, the hop counts of the Epidemic and Prophet algorithms decrease, whereas the changes in the message hop counts of the SAW and the RABP algorithms are relatively less. The message hop counts of the RABP algorithm are lesser compared to those of the other three compared algorithms. Figure 4(b) depicts the changes in the message hop count when the simulation time is varied from 60 to 300 h. During the simulation period 60–300 h, the changes in the message hop counts of all the four algorithms are relatively less. The message hop count of the Epidemic algorithm is the largest, whereas that of the RABP algorithm is the least. Overall, the hop count of the RABP algorithm is the least. This is mainly because the algorithm can select a node with the least weight as one of the relay nodes. Thus, the message hop counts are reduced.

Hop count on varying the buffer size and simulation time: (a) illustrates the changes in the message hop count when the buffer size is varied and (b) depicts the changes in the message hop count when the simulation time is varied.
Conclusion
In this article, we proposed an RABP algorithm to solve relay node selection and buffer management issues with constrained network resources. The RABP estimates the delay and hop count of the message carried by the node to the destination and constructs a weight function of the delay and hop count. The node with the least weight value is selected as one of the relay nodes such that the message delay and hop count from the relay node to the destination are near optimal. Simultaneously, based on the weight, the number of message copies is limited. Thus, the limited network resources are efficiently utilized. Simulation results show that the RABP algorithm outperforms the Epidemic, Prophet, and SAW routing in terms of the message delivery ratio, average delay, network overhead, and average hop count.
