How to Enable Delay Tolerant Network Solutions for Internet of Things: From Taxonomy to Open Challenges †

: Internet of Things (IoT) is witnessing an increasing range of application domains (industry 4.0, eHealth, smart city, etc.). Meanwhile, IoT is still facing communication challenges because of limited capabilities in computing, storage and energy constraints of smart objects. The use of Delay Tolerant Network (DTN) as basis for communication in IoT is promising but needs more development. In this paper, we present a literature review and a classiﬁcation of DTN routing protocols. Furthermore, we survey a number of DTN solutions for IoT and propose a new taxonomy to motivate the importance of enabling DTN for IoT applications. The novelty of this classiﬁcation is the focus on X-DTN category, which combines Delay Tolerant schemes with new technologies (e.g., Fog Computing). We also point out some open issues for potential Delay Tolerant IoT schemes.


Introduction
The word "smart" used before the names of devices such as in smartphone, smarttv and smartwatch means that these devices are connected to the Internet and can send and receive information. These devices represent IoT. IoT is "An open and comprehensive network of intelligent objects that have the capacity to auto-organize, share information, data and resources, reacting and acting in face of situations and changes in the environment" [1]. IoT revolutionized many domains such as environmental monitoring, medical treatment, public health, Intelligent Transportation System (ITS), smart grid and other areas [2]. Communication in IoT is challenging since smart objects are mobile and heterogeneous. Furthermore, smart objects are limited in computing, storage and energy capacities. Conventional TCP/IP protocols are not suitable to achieve reliable communication in IoT since they assume end-to-end connectivity. DTN is an alternative that was designed for challenged networks characterized by lack of contemporaneous end-to-end connectivity [3].
DTN's first application was the Inter-Planetary Network (IPN) [4]. Cerf and his team developed IPN in the 1990s. IPN is characterized by long delays and intermittent connectivity since it comprises both terrestrial and interplanetary links. In 2003, Fall [5] adapted the IPN architecture for terrestrial networks. DTN is a network architecture designed to address challenges in disrupted networks that suffer long latency. The principle of DTN is the Store-Carry-Forward approach, where nodes can store and transport messages called "bundles" to their destination. To assure interoperability, DTN architecture introduces a message oriented overlay, called the "bundle layer", on top of the transport layer [6]. The Bundle Protocol (BP) is used to exchange data across a DTN [7].
Although many DTN solutions for IoT are proposed in the literature, standardization remains unclear. In this paper, we survey existing DTN solutions for IoT and give a comparison based on IoT constraints. We introduce two classifications, the first is for DTN routing while the second is for DTN solutions for IoT. We mainly focus on a new category called X-DTN, which aims to combine delay tolerant schemes with other technologies (M2M, ICN, Fog Computing, etc.). We intend to help new readers to have better understanding of this research area with most recent solutions.
The remainder of this paper is organized as follows. Section 2 covers important surveys on DTN routing protocols together with a classification we propose. In Section 3, we classify DTN solutions for IoT and we review existing solutions, which we compare and discuss in Section 4. Some concluding remarks and perspectives are available in Section 5.

DTN Routing Classification
Many survey papers have addressed the challenges and opportunities in DTN. Some of them give a taxonomy of routing protocols, while others focus only on design issues. Although DTN has been studied for several years, we believe it is useful to recall the importance of surveying DTN routing solutions in order to better understand their applicability in IoT domains. In this section, we cover important surveys on DTN routing protocols together with our proposed classification illustrated in Figure 1. The classification in [8] is based on information about network topology such as historical data used by the routing protocol to decide where and when to forward the packets. Two approaches were proposed: Deterministic and Stochastic. In the Deterministic approach, the nodes assume that future network behavior is known apriori. In the Stochastic approach, the nodes assume that no knowledge about network behavior is known.
Shen et al. [9] classified routing protocols based on the property used to find the destination into two families Flooding and Forwarding. The Flooding family uses replication and the Forwarding family uses knowledge about the network. Khabbaz et al. [10] gave more details about the Forwarding family.
D'souza et al. [11] proposed a classification based on the type of knowledge used for routing into Flooding based approach: History based approach and Special devices based approach. In Flooding based approach, there is no knowledge about the network and the nodes flood the packets in the network. In History based approach, history of encounters between nodes is used for routing decisions. The nodes use additional devices to communicate such as stationary or mobile nodes in the Special devices based approach.
The surveys presented above proposed two main classes based on knowledge about the network, Deterministic ( Forwarding-based or History-based ) and Stochastic ( Flooding-based or Replication-based ).
Abraham et al. [12] talked about unicast and broadcast routing in DTN. Cao et al. [13] introduced a taxonomy of routing in DTNs into Unicasting, Multicasting and Anycasting issues, which addresses the number of copies of the packets sent from a destination and whether a packet is sent to one or more destinations. The Unicasting category is detailed depending on the design characteristics of routing algorithms into Naive replication, Utility forwarding and Hybrid. Nevertheless, they focused on Opportunistic routing in which relay node selection is based on factors such as mobility patterns and probability of contacting the destination.
Zhu et al. [14] presented a survey and comparison of Social-based routing protocols in DTN. They listed positive and negative social routing properties such as community and centrality, used to make routing decisions. The survey in [15] considers both Social-based and Opportunistic routing techniques.
A survey on Delay Tolerant Underwater Wireless Sensor Network (UWSN) routing is presented in [16]. The authors classified DTN routing protocols in UWSNs, based on the definition of DTN, into Scheduled contact, Opportunistic contact and Predicted contact. In Scheduled contact, a base station is used as a scheduler and a relay node to ensure communication between nodes. Relay nodes are deployed to convey information between sensors in Opportunistic contact. In Predicted contact, communication depends on a prediction scheme.
The work in [17] summarizes previous classifications to three principal categories: Network topology, Routing strategy and Message replication and semantics. Network topology includes Replication-based and Forwarding-based approaches. Routing strategy groups Social-based routing and Opportunistic routing. Replication and semantics covers Unicast, Multicast and Anycast routing. However, the classification does not cover the routing techniques that use auxiliary devices such as relay nodes and base stations.
To extend the classification in [17], we add a category called Routing technique. This category classifies routing protocols based on the auxiliary devices used to route the packets. It includes Routing with Assistance and Routing without Assistance. In Routing with Assistance, nodes depend on auxiliary stationary or mobile devices to communicate, whereas, in Routing without Assistance, nodes depend on prediction and replication [13] to route the packets and do not rely on additional devices

DTN Solutions for IoT
It is known that IoT environments face many challenges such as availability, reliability, interoperability of heterogeneous systems, and power management [18]. One major challenge is the ability to cope with the high level of dynamism in the network. In recent years, DTN related research has been identified as potential enablers for the IoT [19], on that account a number of DTN solutions for IoT and similar domains especially Wireless Sensor Network (WSN) are found in the literature. In this section, we first motivate the importance of enabling delay tolerant schemes for IoT applications. We propose then a taxonomy of DTN solutions for IoT then we review various existing solutions.

Motivation for Enabling Delay Tolerant IoT
There is a very strong dependency between DTN characteristics and IoT constraints. Figure 2 and the previous work of Benhamida et al. [17] show the importance of considering delay tolerant schemes for IoT applications. The diagram combines DTN main performance metrics and IoT characteristics. This dependency makes it easier to understand how to tailor DTN solutions by enhancing some performance metrics and considering IoT issues at the same time. As declared in [17], most IoT applications constitute a huge number of interconnected objects (e.g., smart grid, smart industry, etc.). Hence, the great amount of exchanged data is a concern since the application needs to process every required information from the environment. Obviously, the huge quantity of data introduces a bigger challenge for DTN architecture to enhance delivery ratio and data efficiency. Since DTN schemes aim to increase delivery ratio, it would be even harder to achieve when the application has many exchanged information. Furthermore, the increasing number of connected objects make the scalability another challenge to consider, especially in sparse environment where data may take a long way to be delivered in an intermittently connected network (e.g., smart city). Delivery latency and network coverage are then two main DTN characteristics concerned by the scalability in the IoT. Furthermore, resource management is another constraint in the IoT and DTN architectures. The limited battery supply and memory buffer in small objects should be considered to design efficient and optimized DTN solutions. Mobility and security are yet additional IoT issues directly connected to DTN characteristics. We conclude that designing delay tolerant schemes, should give more attention to specific IoT constraints considering the same performance metrics. In what follows, we discuss the existing DTN solutions in the literature that have been especially designed for IoT applications.

Taxonomy of DTN Solutions for IoT
There are a few surveys in the literature to review DTN solutions for IoT [15,17,20]. Each one proposes a classification and a discussion based on predefined performance criteria related to their point of view and field of interests. In addition to these most recent surveys, the present work introduces a new taxonomy based on the adopted approach in each solution. We classify the solutions into three main categories: BP-based solutions, Routing-based solutions and solutions combining DTN with other technologies, which we call X-DTN. The latter is considered as the novelty of this survey, since it is the first work to review the combination of Delay Tolerant schemes with another technology in order to insure a reliable IoT. Figure 3 illustrates our classification.

BP-Based
BP-based solutions target DTN architecture and especially the BP (Bundle Protocol), showing its efficiency for IoT [19,21] and WSNs [22]. BP is a specific protocol proposed for DTNs [7] that supports the store-carry-forward principle where messages are stored locally at each node then they are carried and forwarded to the destination when access is available. Most solutions in this class are BP implementations like IBR-DTN [23], µDTN [24] and nanoDTN [25]. Another important topic in DTN architecture is the Convergence Layer (CL) that represents a network overlay to assure the adaptation between the bundle layer and the underlying protocols [6]. Security is a major feature of the DTN Architectural Description [6]. Security specification for the BP is provided in [26] but it still presents an interesting research area, particularly for IoT contexts.

Routing-Based
IoT and WSN characteristics made DTN routing more challenging. Consideration of energy constraints, limited bandwidth, scalability, and network heterogeneity improves and makes DTN routing more efficient for IoT. Most routing protocols focus on the route election and the number of messages replicated in the network, but, in IoT context, selecting the good relay nodes to forward the message to the destination affects routing performance [15]. A buffer management algorithm [27] is also critical to help routing in terms of loss rate and delivery delay.

X-DTN
These solutions exploits and combines DTN with a second technology, taking advantage of two technologies helps to tackle DTN problems while enabling new technologies for IoT environments. Some examples of X-DTN solutions we can find in the literature are the combination of DTN with Opportunistic networking [28], with Information-Centric Networking (ICN) [29], with Machine to Machine (M2M) [30], and with Fog Computing [31].

Literature Review
Many works address IoT challenges with DTN solutions. Following the proposed classification above, we discuss a number of these solutions.

BP-Based
These solutions target DTN architecture and BP implementations. In [22], the authors proposed an implementation of the BP for WSNs. They developed a BP convergence layer for IEEE 802.15.4-based networks as a replacement for layers 3 and 4 of the IP stack. For evaluation, they used an elevator as a data mule to transfer measurements from the roof of a 15-storey building to a computer on the third floor. The results show that the overhead is reduced to a minimum and the applicability of BP even for low-power 8-bit WSN nodes. The authors of [21] proposed direct opportunistic interaction between smart objects and mobile users through features of Bluetooth Low Energy (BLE), enabling objects to define their interaction models and interface, without need for Internet connectivity and preinstalled user interfaces. The authors of [19] implemented BP binding in place of UDP as an underlying transport for Constrained Application Protocol (CoAP) to enable Delay Tolerant IoT. They chose CoAP as a solution to limited capacity and energy constraints of small objects and BP as a solution to intermittent and delayed connectivity. Besides, we can find many BP implementations in the literature such as IBR-DTN [23], µDTN [24] and nanoDTN [25]. nanoDTN is a lightweight BP implementation based on µDTN and compliant with hardware constrained IoT devices. "IoT-cum-DTN" is a framework proposed in [32] for communication between IoT and DTN, in which both typical publish/subscribe semantics of IoT communications and DTN-based communications are preserved; however, this work still only focuses on improving delivery performance and does not consider resource constraints. To evolve data collection in IoT, the authors of [33] proposed an architecture relying on DTN approach and MQTT messaging protocol. They analyzed MQTT-SN (MQTT for Sensor Networks) behavior, combined with the IBR-DTN implementation of DTN. The performance evaluation showed good results in terms of delivery in a disrupted environment but it is limited in terms of network scalability.

Routing-Based
This category is about routing in DTN for IoT environments. In [34], the solution uses a delay-tolerant approach for data routing and carrier nodes selection to minimize delay across the network. In [35], the authors proposed a generic Prediction Assisted Single-Copy Routing (PASR) scheme for underwater DTNs; PASR utilizes the greedy algorithm ACPG (Aggressive Chronological Projected Graph) for mobility prediction using historical information about the network connectivity. The authors of [27] proposed a buffer management algorithm called SmartGap for DT-WSNs (Delay Tolerant-WSNs). SmartGap targets the Quality of Information (QoI); the value of a single packet is estimated by means of its contribution to the recreation of the original signal. Reliable Multicast Disruption Tolerant Networking (RMDTN) [36] is a routing protocol that supports multicast in DTN, a designated ferry is used as a data mule to achieve better resource utilization and data delivery.
"IoB-DTN" [37] is a DTN multi-hop protocol designed for IoT applications running on urban bike sharing system based sensor network. It is based on DTN flooding strategies where knowledge on the network is mitigated by redundancy of packets. However, this redundancy costs energy as part of packet transmission. The authors of [38] introduced a new DTN routing protocol optimized for IoT called Scheduling-Probabilistic Routing Protocol using History of Encounters and Transitivity (Scheduling-PROPHET). The protocol's basic idea is using the history of encounters to calculate delivery predictability, in order to deduce if a carrier node will transmit a message or drop it. However, the protocol performs better with large buffer and Bluetooth as a transmission interface for all nodes, which is not the case in real IoT environments.

X-DTN
Summarizes works that combine DTN with another technology to achieve better performances. The authors of [28] presented the "Opportunistic IoT" framework, referring to information sharing among smart devices based on opportunistic human contact. In [29], ICN and DTN solutions are combined into a novel system architecture supporting a range of networking protocols over different transport networks using ICNs publish/subscribe paradigm. A framework for integrated RFID sensor networks in the IoT is proposed. Another architecture is proposed in [30] to interconnect standard-based M2M platforms for DTNs in order to collect data from sensor devices. Manzoni et al. [31] presented an architecture of a Fog Computing "content island" integrating a publish/subscribe mechanism with DTN. "Content islands" interconnect groups of things to interchange data and processing within the island and with other islands. Publish/subscribe paradigm is implemented through a MQTT gateway which will spread "global" content to other islands through a DTN daemon, while "local" content is interchanged through a local MQTT broker.

Comparison and Discussion
In the previous section, we classify DTN solutions for IoT into three categories: BP-based, Routing-based and X-DTN. We also review a number of proposed solutions in the literature. In this section, we summarize these solutions in Tables 1 and 2. In Table 1, we highlight targeted environment and used technologies for each solution. This table gives an overall view of DTN solutions for IoT organized by our classification categories. As can be seen, several reference technologies are available but there is not a standard unified DTN solution for IoT that combines both a DTN architecture with a routing protocol. In Table 2, we compare the solutions based on the following IoT constraints: delivery, mobility, heterogeneity, scalability and resources. We choose theses constraints since they are common to both IoT and DTN. We observe that most solutions focus on improving delivery and resources consumption. Using mobility still needs more investigation while the most persistent problem is the heterogeneity and scalability in IoT environments.

Conclusions
IoT is still a new research area that requires development, especially in terms of communication reliability. In this article, we review and classify DTN routing protocols. We also present a comparative survey of various DTN solutions for IoT and we propose a new classification for these solutions. We highlight used technologies in each solution and compare them based on IoT constraints.
The majority of existing solutions are targeted for particular environments or contexts and do not exploit existing DTN and IoT standards; more standardization efforts are needed in this research field. Besides, most solutions target improving delivery and to a less extent, resource consumption while the heterogeneity and scalability are still major problems facing communication in IoT.
We aim to motivate researchers with this article, to start in this evolving research field with a better understanding. In future works, we will propose a solution for communication reliability in IoT using DTN approach. We will exploit DTN and IoT existing standards in both categories, BP-based (DTN architecture) and DTN routing without losing focus on the potential opportunity to explore X-DTN category. The latter combines delay tolerant schemes with other technologies which have common characteristics with IoT (Fog Computing, ICN, Opportunistic Networks, etc.).