Computer Communications xxx (2014) xxx–xxx
Contents lists available at ScienceDirect
Computer Communications journal homepage: www.elsevier.com/locate/comcom
Protocols, mobility models and tools in opportunistic networks: A survey Vinícius F.S. Mota a,b,⇑, Felipe D. Cunha a, Daniel F. Macedo a, José M.S. Nogueira a, Antonio A.F. Loureiro a a b
Computer Science Department, Universidade Federal de Minas Gerais, Belo Horizonte, Minas Gerais, Brazil Computer Science Laboratory (LIGM), Université Paris-Est, Champs sur Marne, France
a r t i c l e
i n f o
Article history: Available online xxxx Keywords: Opportunistic networks Delay-tolerant networks Context-awareness Vehicular ad hoc networks Pocket switched networks
a b s t r a c t In opportunistic networks, instead of assuming an end-to-end path as in the traditional Internet model, messages are exchanged opportunistically when an encounter happens between two nodes. In the last years, several forwarding algorithms to efficiently decide when to forward messages were proposed. Those protocols are commonly suitable to a specific scenario, which has led to the creation of new subtypes of networks. Two different examples are pocket switched networks – PSN and vehicular networks – VANETs, since those networks have different features like a specific mobility pattern and intermittent connectivity. In this article we present an overview of opportunistic networks, proposing a taxonomy which encompasses those new types of network. We discuss the commonly used tools, simulators, contact traces, mobility models and applications available. Moreover, we analyzed a set of forwarding protocols to map the approach used by the research community to evaluate their proposals in terms of mobility, contacts and traffic pattern, reliability of simulations and practical projects. We show that although researchers are making efforts to use more realistic contact models (e.g., using real traces) the traffic pattern is generally disregarded, using assumptions that may not fit real applications. Ó 2014 Elsevier B.V. All rights reserved.
1. Introduction The Internet has brought new applications such as email, World Wide Web and VoIP, revolutionizing the way we access and create information. In the last years, smartphones, tablets and other mobile communication devices have become popular. These devices have significantly increased their storage capacities, processing and specially their communication technologies, ranging from Bluetooth and Wi-Fi to 4G. This communication capacity enables novel classes of applications, ranging from mobile social networks to safety control in vehicular networks. Those applications sometimes are based on the direct communication among the devices, which forward messages from one device to another. Such mobile networks where data is forwarded opportunistically whenever a ‘‘contact’’ takes place are known in the literature as opportunistic networks [1]. The mobility in this kind of network is crucial, since it helps to spread data more efficiently. However, such mobility is ⇑ Corresponding author at: Computer Science Department, Universidade Federal de Minas Gerais, Belo Horizonte, Minas Gerais, Brazil. Tel.: +55 31 3409 5860; fax: +55 31 3409 5858. E-mail addresses:
[email protected] (V.F.S. Mota),
[email protected] (F.D. Cunha),
[email protected] (D.F. Macedo),
[email protected] (J.M.S. Nogueira),
[email protected] (A.A.F. Loureiro).
considered a challenge because it may cause scattering of nodes, preventing the correct data delivery [2]. Networks formed by mobile devices carried by people (a subset of opportunistic networks) are called Pocket Switch Networks (PSNs) [3]. Two important aspects characterize the PSNs: (i) they are formed by devices with high storage and processing capacity, however with limited energy and usually limited bandwidth; and (ii) their movement is influenced by human mobility. Vehicles equipped with processing capability and wireless communication devices are another application of opportunistic networks. Vehicles send and receive information to other vehicles as well as to a roadside infrastructure, providing valuable information for intelligent traffic systems, as well as improving the driver’s security and route decision. vehicular networks (VANETs) do not have energy constraints, however VANETs suffer from high mobility and variable node density, which can influence the communication among nodes [4,5]. Finally, Inter-Planetary Networks (IPNs) are networks established to ensure communication among Earth and satellites or even other planets [6]. Due to the movement of planets and satellites as well as their rotation, the communication exhibits frequent interruptions. Also, the significant distances among planets cause the communication to exhibit long delays.
http://dx.doi.org/10.1016/j.comcom.2014.03.019 0140-3664/Ó 2014 Elsevier B.V. All rights reserved.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
2
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
The research in opportunistic networking started in the context of interplanetary networks, where the Delay/Disruption Tolerant Network (DTN) concept was born [6]. In our view, DTNs are a special case of a much larger class of networks, called opportunistic networks (or OppNets). OppNets are networks where the low node density and/or unpredictability of node movement, together with the harsh nature of the wireless links, may create long periods of node disconnections as well as partitions among sections of the network. Many studies about OppNets were published in the literature in the last ten years. Among those, message routing, mobility characterization and the impact of the mobility model on the performance of the network are the most frequent topics. In the literature, there are several surveys addressing different aspects of OppNets [7–12]. Grasic and Lindgren [12] analyzed the evaluation practices in the literature, taking into account factors such as the mobility and connectivity models, network traffic, node characteristics and code validation, and repeatability. Other surveys are limited to a description of existing protocols as well as the research challenges in the field [7–11]. This article does not provide an in-depth and exhaustive review of research proposals in the area. Instead, the focus of this article is to show the evolution of OppNet research and evaluation, providing the readers a comprehensive step-by-step survey of the protocols and discussing the simulators, platforms and tools available for researchers. While Grasic and Lindgren’s survey only analyzed network simulators, we provide an overview of platforms, testbeds and applications as well, and also propose a taxonomy of the different platforms and mobility models. This article surveys the evolution of the opportunistic networking research and describes the state-of-the-art in evaluation practices in the field. First, we propose a taxonomy of the different types and applications of opportunistic network. Next, we analyze a set of forwarding protocols and classify them according to the taxonomy. Then, we describe the existing mobility models, contact traces, tools and simulators public available. Moreover, we discuss the evaluation practices and the common assumptions made by the research community to evaluate their proposals and the practical issues for the feasibility of opportunistic networking. The rest of this work is organized as follows: Section 2 presents an overview of OppNets. Section 3 presents the main projects, deployments and classes of applications found in opportunistic networks. Section 4 presents a taxonomy to classify the forwarding protocols designed for stochastic, social or context aware networks. Section 5 surveys and analyzes the existing mobility models and traces, followed by an enumeration of the simulators and tools in Section 6. Section 7 discusses the main challenges in OppNets. Finally, Section 8 presents the concluding remarks.
2. Opportunistic networking Opportunistic networks are networks that, unlike classic networks, are prone to frequent disconnections and high communication delays. The frequent disconnections preclude the use of classic message forwarding paradigms, since those are based on the establishment of an instantaneous end-to-end path from source to destination. As a consequence, OppNets employ the store-carry-forward paradigm, where messages are stored in intermediate nodes until a suitable forwarding opportunity occurs. In some scenarios, it may be the case that node disconnection is the most frequent state, and as such the node may only communicate when a link is established (in OppNet jargon, this is called a contact). The node, then, selects a set of messages to be forwarded using the recently established link, using some sort of priority scheme [7]. The process of storing a message for later transmission is also known in the literature as custody. The second key aspect of
OppNets is the typically long end-to-end delay. In interplanetary networks, this delay is due to the distance among source and destination, while in vehicular networks or pocket switched networks this is due to the long disconnection times. As a consequence, OppNet messages tend to be self-contained, as connection-oriented protocols or interactive protocols tend to perform poorly under long delays (due to the high bandwidth-delay problem [13]). Since OppNets were proposed after DTNs, it is important to clarify the difference between both concepts, which are frequently mistaken as the same thing. DTNs were developed for the interconnection of networks (i.e., an inter-network protocol for Internets), where the interconnection among those networks suffers from long disconnections and interruptions. DTNs operate over the TCP/IP protocol stack, serving as a ‘‘gateway’’ for interconnecting Internets over delay and disruption-constrained links. OppNets, meanwhile, are a broader concept, since they support the disconnection and interruption of communication among Internets, as well as among nodes within the same network. OppNets do not mandate the use of the TCP/IP protocol stack, and are characterized by the use of the store-carry-forward paradigm, where messages are stored in secondary storage devices (e.g., hard drives and flash cards), and those messages are forwarded whenever a communication link is established (a contact). Although the protocols proposed in the DTN RFCs may be employed in other scenarios (e.g., VANETs or PSNs), it may be too costly on others (e.g., sensor nodes installed in wild animals [14]), and as such only the concept of custody and self-contained messages is kept. 2.1. Types of opportunistic networks Due to the frequent confusion among the DTN and OppNet concepts, as well as the large range of applications and restrictions found in OppNets, we propose a taxonomy to clarify the similarities and differences among the concepts and applications. OppNets are also found in the literature under different names, such as challenged networks or intermittently connected networks, referring to scenarios in which it is not possible to guarantee an endto-end path between nodes. The proposed classification is shown in Fig. 1. Opportunistic networks are divided into challenged networks and delay tolerant networks, which are detailed below. 2.1.1. Delay tolerant networks We classify DTNs as the scenarios that strictly follow the Bundle Protocol implementation [15]. This protocol’s development is led by the IRTF DTN Research Group [16], which is the core of DTN research. Fig. 2 shows the protocol stack of a DTN node. The Bundle implements the store-carry-forwarding paradigm, implementing hop-by-hop reliability and security, instead of end-to-end as in the TCP/IP protocol stack. The bundle protocol handles intermittent connectivity (storing a message) and carrying this message until a contact takes place. In this moment, the routing protocol will decide if the node will forward or not the stored messages. The DTN2 reference implementation is based on the Linux operating system and follows the standards described in the RFC 4838. This implementation also supports the Licklider Transmission Protocol (LTP) [17], used for reliable communication among two DTN gateways. Two classes of networks belong to DTNs: Underwater Networks: Enable applications for oceanographic data collection, pollution monitoring, offshore exploration, disaster prevention, assisted navigation and tactical surveillance. Underwater communication presents several challenges [8,18]: almost all underwater communication uses acoustic waves, since radio waves suffer severe attenuation in salty water; the medium access is an open problem in underwater networks; nodes are expensive and the monitoring areas are
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
3
Fig. 1. Taxonomy of opportunistic networks.
Fig. 2. Protocol stack of a DTN node.
large, which makes the network sparse; furthermore, nodes move with the tides and currents. As in terrestrial networks, the energy is a limited resource in this type of network, since the nodes have a limited battery and the cost of transmission is high. The high error rates of underwater links as well the sparsity of nodes, which also could have depleted their energy resources, make the use of DTN paradigm a suitable solution. Inter-Planetary Networks: As said before, the interplanetary network was the primary research focus in DTN, since it may suffer from very large and variable propagation delays, low data rates, possibly time-disjoint periods of reception and transmission, intermittent scheduled connectivity, high link error rates, and lack of fixed communication infrastructure [19]. The main factors that influence the operation of IPNs are the long distances among nodes, as well as the movement of planets and satellites [20]. The former generates long delays and high error rates, while the latter creates frequent disconnections. A particular factor in IPNs that differ those networks from other types of opportunistic networks is the predictability of contacts, since it is possible to calculate when the next contact will happen using the equations for the trajectories of celestial bodies and satellites. 2.1.2. Challenged networks Fall [1] defines challenged networks as all networks that violate one or more assumptions of the Internet architecture, such as the
existence of an end-to-end path or have a bounded round trip time between source and destination. Moreover, challenged networks are characterized by one or more of the following characteristics: high latency, frequent disconnections, long queuing times, limited longevity and limited resources [1]. Challenged networks occur frequently in mobile networks, due to high node mobility, sparse density or unreliable links. However, it is not easy to identify whether a network is a mobile ad hoc network (MANET) [21], where the traditional Internet architecture applies, or whether it is a challenged network. Several routing protocols for MANETs were proposed, for instance AODV [22], OLSR [23] and DSDV [24]. Those, however, perform poorly in challenged networks, requiring new routing protocols (discussed in Section 4). Manfredi et al. [21] proposed a framework to evaluate when to use traditional routing strategies, informed opportunistic routing or simply message flooding based on three measures: the average number of flows in the network, the probability of existing an arbitrary route, and the unpredictability of the network topology. After analyzing several traces, they found that real networks may sometimes behave as an opportunistic network and sometimes as a MANET, and parts of the network may display different behaviors. Since challenged networks encompass several applications, we highlight bellow the three more popular scenarios in OppNet research: Vehicular Ad Hoc Networks (VANETs): VANETs differ from MANETs in the following characteristics [9]: – Predictable mobility: vehicles have to stay on the road and follow directions and speed limits; – High mobility: the network topology changes rapidly because of vehicle speed; – Variable topology in time and space: traffic jams and location (urban or rural) influence the network topology; – Large scale: all vehicles are potential nodes on the network; – Partitioned networks: the communication range is limited, creating partitions; – No energy limitations. In the literature, VANETs are sometimes considered challenged networks, or considered a high speed MANET [25]. However, in [26] the authors showed that the duration of contacts between cars using the IEEE 802.11 standard crossing at 20 km/h is about 40 s, at 40 km/h is about 15 s and at 60 km/h is about 11 s. If TCP is used at 60 km/h, the goodput is very low (e.g., average of 80KB transferred per contact) and the connections are unreliable: in four out of ten
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
4
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
experiments no data was transferred at all. UDP gives better results, with about 2 MB transferred in a contact at 60 km/h. This motivates the use of OppNet techniques in VANETs. Pocket Switched Networks (PSNs): It is a type of network formed by people carrying portable devices (e.g., smart phones, PDAs) [3]. In such environments, mobile nodes (i.e., devices) are sparsely distributed and networks are often partitioned due to geographical separation or node movement. Knowing the human mobility pattern is one of the key factors to develop efficient protocols in this kind of network. Many studies were conducted to capture traces of human mobility using Bluetooth or Wi-Fi scanning (discussed in the next section). PSNs can enable social-based applications, creating user-centric networks. PSN also could be beneficial in an infra-structured network, with the fixed nodes providing services (e.g., Internet), and mobile users interacting in an opportunistic fashion when far from the fixed nodes. Mobile Wireless Sensor Networks (MWSNs): Wireless sensors networks (WSNs) can be used to monitor remote locations such as rainforests and volcanoes. Those networks employ low power sensor nodes due to size, price and battery constraints, and as such the network lifetime is usually short [27]. The concept of WSN was extended to Mobile WSN (MSWN), where sensors are used to monitor wildlife. For instance, in the ZebraNet project [14] zebras use a collar with a sensor and data is transferred opportunistically whenever zebras pass near fixed access points. Examples of other projects are the SWIM network [28] for whale tracking, and TurtleNet for turtle tracking [29]. 3. Applications and projects This section describes the projects focused on real applications or prototypes of opportunistic networks. We classify these applications according to their specific scenarios, and show that there are several practical opportunistic networks in operation. 3.1. Space communication As said in Section 2, the DTN concepts came from Interplanetary communications. The NASA Scan program1 and the European Space Agency (ESA) conducted a set of experiments to verify the feasibility of the Bundle Protocol (BP) among spacecraft and devices on Earth. The first feasibility experiment of DTN for space communication was presented in [30]. In 2008, Wood et al. used the Bundle protocol in the Disaster Monitoring Constellation (DMC), a set of satellites that form a low-Earth-orbit sensor network that captures images and sends the data payloads to a ground station. They employed the reliability of the Bundle Protocol to mask long delays and interruptions and highlighted the drawbacks of the DTN implementation at that time, for instance, the lack of checksums in the Bundles. More recently, Jenkins et al. [31] described the implementation and tests with the Bundle Protocol in the International Space Station (ISS). They customized the publicly available ION implementation2, which is a DTN implementation for embedded devices, in order to support long delays and interruptions in remote commands among spacecrafts and the Earth. The authors concluded that the two main issues for the success of DTNs in space communication are selective acknowledgments and to improve the custody transfer algorithms. 1 2
http://www.nasa.gov/scan. http://ion.ocp.ohiou.edu/.
3.2. WildLife monitoring One of the first DTN-like projects was ZebraNet [14,32] which focused on wildlife monitoring. Researchers monitored zebras with special collars equipped with GPS, a solar battery, memory, a small CPU and wireless transceivers. Thus, zebras formed a very sparse mobile wireless sensor network. In a first deployment in 2004, seven zebras wore the collar during less than one week. A second experiment was deployed during the summer of 2005 with four zebras during approximately ten days. The base station was a vehicle collecting the data whenever zebras were in radio range. Liu et al. [32] made an analysis of the design choices for the hardware and software of Zebranet. The major challenge was the energy constraint of the hardware. The authors used flooding as well as a history-based routing protocol, and they showed that even algorithms which attempted to reduce memory usage would drain all the memory available in the sensors. Also, the authors found a limitation in their reliable multicast mechanism, since sparse networks may have a high rate of packet losses and retransmissions. 3.3. Social applications The Haggle project provides an open-source architecture for opportunistic, data-oriented networking [33]. The core system is event-driven, and consists of a single event queue and a set of managers that create and act on various system events such as new neighbor discovery or incoming data from the local applications or the network. It is one of the most important architectures for opportunistic content sharing in pocket switched networks. Mobiclique [34] extended the Haggle reference implementation with social-aware functionalities. It added social profile management, social graph maintenance and a social graph-based forwarding algorithm. Mobiclique employs Bluetooth in the link layer due to the high energy consumption of Wi-Fi. This extension was used to characterize the social network formed in CoNext’07 and CoNext’08 conferences [34]. Another extension of Haggle appears in [35]. In that extension, the authors provided a middleware that autonomically learns context and social information. Conti and Kumar [36] presented how Haggle could be used in opportunistic computing. The major practical advantage of Haggle is its ability to compile and run within Android devices, which is one of the most popular mobile operating systems in the market. However, to the best of our knowledge and our tests using the Haggle API, it only works in rooted Android devices3, limiting its usage only to expert and tech-savvy users. Helgason et al. [37] proposed an API for an opportunistic peerto-peer system. They focused on direct sharing content between peers of the network. The API was implemented for the Android platform, based on the IEEE 802.11 standard in ad hoc mode. Applications access the services of the platform through a publish/subscribe interface. There are three main components: (i) a content structure responsible for content matching, lookups and opportunistic downloading; (ii) a solicitation protocol to discover content; and (iii) an API to provide third-party development. Unfortunately, the code is not publicly available. 3.4. Cellular traffic offloading The number of users of 3G networks is increasing in the entire world. At the same time, the traffic demand is increasing due to the use of smartphones, which allow real-time video and voice 3
A hack that allows to run Android in root mode.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
applications. Wireless Internet Service Providers (WISPs) have been facing bottlenecks in the bandwidth available for the users. In popular events, like football matches or large concerts, the number of users sharing the same antenna could decrease the overall quality of the provided service. In these cases, if users are interested in the same content, such as a replay of a goal or the live transmission of the show in their smartphones, instead of getting the content directly from the 3G networks, they could obtain it from local sources. Some of the access points could act as a caching mechanism, and opportunistically relay the message to other users with the same interest. This is the main objective of Mobile Advanced Delivery Server (MADServer) [38] where the authors suggest a middleware that is deployed between the web server and the web application. The time-critical content is delivered in a traditional manner, while time-insensitive content is delivered based on the DTN2 reference implementation. The authors show that MADServer can save 3G bandwidth usage, but it is still an open issue how to select the content to be sent in the traditional way or opportunistically, based on the context of the user. 3.5. Vehicular networks The main objective of vehicular networks (or vehicular ad hoc networks – VANETS) is to increase the driver’s safety, however the network could support other applications such as coordinate traffic signals, inform the driver about weather conditions, find a place to park, improve the vision of the driver and alerts about obstacles, buildings, other vehicles and potential hazards, locate areas, places, streets and create routes, and applications to provide entertainment to the driver and passengers [39]. In order to provide remote medical monitoring, Noshadi et al. [40] presented an application that collects physiological data of the patients outside the coverage area. Their approach uses VANETs to collect the patient’s data. This solution can be used in a typical scenario where cellular or other types of communication have failed or are congested. The vehicles also collect noise, chemical and traffic samples along the route. Thus, VANETs can be a promising approach to make this collection. An entertainment application is presented in [41,42]. The authors present CarTorrent, which is one of first examples of peer-to-peer file sharing system projected for vehicular networks. The authors use a parallel download mechanism from multiple hosts, similar to BitTorrent, and show that it is possible to share peer-to-peer content even with the constraints of VANETs. A parking assistance application is proposed in [43]. SmartPark is an application that collects information about parking space availability and coordinates the drivers in order to guide them to free parking spots. In this application each parking spot has a wireless mote that verifies its occupancy, and every vehicle has a wireless communication device to receive the information about free parking spaces. 3.6. Challenged environments Challenged environments usually lack wired or wireless communication infrastructures and reliable energy supplies. As such, data needs to be transported using some sort of vehicle (buses, helicopters, boats, etc.) as a ‘‘data mule’’. A gateway connected to the Internet or to a data center, located in a place with constant connection and energy, responds to requests received from the data mules. The data mules act as the communication link, carrying requests from the challenged environments to the gateway, and carrying the responses from the gateway to the challenged environment.
5
An example of this environments can be found in [44], where the authors present an application to provide electronic health care for riverain communities, using boats as data mules. Furthermore, this is a poor region and low cost solutions like this can be a good opportunity to explore and project novel opportunistic applications, such as e-government, e-mail communication, among other delay insensitive applications. The Bytewalla project aims to provide Internet access in remote regions, such as villages with poor (or any) communications infrastructure in Africa [45]. The main idea is that travelers become ‘‘data mules’’. So, when users travel to a city with a better infrastructure, they carry the requests and after coming back to the village with the responses. To achieve this goal, they implemented a DTN2-based server, which follows the specifications of the Bundle Protocol, as well as a DTN-Email application for Android phones [46]. The Bytewala code (server and mobile) is public available [45]. The N4C4, Networking for Communications in Challenged Communities, is an European project which ended in 2011 and focused on building an architecture to provide Internet connectivity in remote regions using the DTN implementation. An example that uses the N4C architecture is nowcat5 [47], a network that senses the weather conditions, predicting natural disasters. The focus is build a sensor node that works in severe climate conditions, measuring the temperature, snow depth and other values in order to predict avalanches. The data is collected in a sensor network, which sends the data to a DTN gateway located on a more secure place of the mountain. BeachNet [48] is a project for content sharing in environments where nodes are static, however the amount of nodes can vary and nodes switch between inactive and active modes. This behavior may result in network partitions, which appear and disappear during the network lifetime. For instance, this can occur in summer beaches and picnic areas. The purpose of the authors is to disseminate content using the store-carry-forward principles of opportunistic networking in those environments. DakNet [49] is a platform for e-government and e-markets in remote areas. The objective of the project is to allow citizens of poor and distant communities to have access to government services as well as to query prices of goods. The project has been deployed in rural areas of India and Cambodia, and employs buses, motorcycles and even or carts as data mules. For further reading on experiments in challenged environments, demos and prototypes, the Extreme Conference5 is the most important conference in experimentation and prototypes. Every edition is organized in a different challenged and exotic environment, where the participants deploy their own protocols and nodes in order to implement a specific application. 4. Forwarding protocols evolution In this section, we discuss the evolution and the evaluation methodology of a set of forwarding protocols. First, we define our taxonomy to classify each protocol and following, we classify them into three groups: No Context, in which the protocols forward a message in the network without any prior knowledge. Partial Context, which uses only network information in message forwarding (e.g., state of the neighborhood and history of contacts). Full Context, which includes the protocols that also employ the state of the surrounding environment in addition to network attributes to infer better forwarding decisions.
4 5
http://www.n4c.eu. http://extremecom.org/.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
6
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
4.1. Protocols classification
4.2. No context
A significant effort has been made in forwarding protocols6 for intermittently connected networks in the last years. The objective of message forwarding is to answer the following question: To whom should a node forward a certain message, in order to maximize the message delivery while minimizing the delay and the number of replicas? This problem leads to forwarding protocols that differ in the knowledge that nodes have about the network state. Some protocols assume that nodes have no knowledge (stochastic protocols); others assume that nodes have information such as network topology and mean time between successive meetings of two nodes (deterministic protocols) [50]. A more extensive review of existing forwarding protocols is presented in [7,11]. In this section we review a set of papers showing how researchers looked at the forwarding problem and evaluate their proposals, classifying them according to the knowledge required by each proposal. The list of analyzed papers is not exhaustive, since our aim is to show how opportunistic research became more ‘‘social’’ within the last decade. We also focus only in stochastic algorithms, which are applicable when the network has an unpredictable behavior and it can make few assumptions about the future position of the nodes. Deterministic protocols are not frequently studied in the literature, due to their applicability only in a few scenarios such as space networks. In practice, most OppNet scenarios demand stochastic forwarding protocols. Some examples of stochastic protocols are [51–53]. Stochastic forwarding algorithms evolved from simple Epidemic [51,53], passing through encounter and social based algorithms [52,54] and more recently context-based forwarding algorithms [55]. However, the information and computation requirements used to predict node encounters is increasing. Two protocols highlighted in the literature are Epidemic [51] and Prophet [52]. Epidemic achieves optimal delay with unlimited relay buffers and perfect PHY and MAC layers because it routes data by flooding the network, in order to exploit the best possible delivery delay brought by node mobility. However, such flooding scheme generally incurs in significant overhead [56]. Prophet has been used as the official forwarding protocol in the DTN implementation [16]. Both protocols were used as benchmarks in most of the work we analyzed. Researchers realized that human mobility follows regular patterns, and as such forwarding protocols could take advantage of this regularity using the context of the user [57]. Context can be defined as the information surrounding the system or the user, which can be physical (location, temperature, and so on), system attributes (available resources or services), and related to the user (preferences, habits, etc.) [58]. Moreover, context provides perceptual information about the location and status of the people, places, and other devices in the environment [59]. Thus, context information of an environment could help to infer future location, user encounters and users’ interest. Here we emphasize two drawbacks of the use of context: (i) more context information increases the communication overhead; (ii) to learn from context requires a warm-up time, which can be of some minutes up to weeks. Table 1 summarizes all the protocols described below. This list does not represent all the opportunistic forwarding protocols already published, however it provides an insight on the directions of opportunistic research.
These protocols have no knowledge about the network, topology or the frequency of meetings among nodes. A node forwards a message based only on its own state.
6 We prefer the use of the nomenclature forwarding protocol instead of routing protocol, since the latter implies that the relay node will identify a route from itself to the destination. This is not possible in stochastic OppNets, which only forward the message to a set of nodes that are more likely to deliver the message.
4.2.1. Epidemic Epidemic is a forwarding protocol that disseminates messages much like the spreading of a disease [51]. A node receiving a message forwards it to all its neighbors, who repeat this process. This cycle is repeated until the message reaches its destination or until a maximum number of hops are reached. The goal of Epidemic is to maximize data delivery and to minimize the delay. The authors used the NS-2 simulator to evaluate their proposal considering forty-five nodes with random Waypoint mobility model and the following traffic pattern: a subset of the 50 nodes are selected as message sources/sinks, with forty-five nodes sending one message (1 KB) to forty-four other nodes in the system. Epidemic is commonly used as a benchmark for the evaluation of forwarding proposals, since it is efficient in message delivery and in delay, however the number of extra messages (overhead) increases proportionally to the number of nodes. In devices with limited resources, this algorithm may have a low delivery rate. 4.2.2. Single-copy algorithms Spyropoulous [60] proposed a set of single-copy based protocols for opportunistic network. In the Direct transmission, a node forwards a message only if it contacts the destination. This approach has unbounded delay but each message is only transmitted once. In Randomized Routing Algorithm, the message is forwarded based on a probability p. In Utility-based Routing, a utility function indicates how useful a node is based on the number of meetings among a pair of nodes and time elapsed since the last encounter of the nodes. The Seek and Focus Routing Protocol initially uses Randomized, and changes to utility-based forwarding when a high utility node is discovered. The authors analyzed their proposal with a custom simulator using Random-walk and Random Waypoint as mobility models. Since the utility value is low in the beginning of the deployment of the network, the authors show that a pure Randomized algorithm is efficient with high transmission ranges, however using Seek and Focus provides overall better results. 4.2.3. Spray and wait Spray and wait consists of two phases: in the Spray phase, L copies of a message are spread in the network from a source to L distinct nodes. The L nodes carry the message copy and use direct transmission to forward the message only to its destination [53]. The authors proposed a family of Spray and Wait variations, which differ in how the L copies would be spread initially. The most efficient is called Binary Spray and wait, where a node A with L > 1 copies of a message gives L=2 copies of the message to each node that it encounters. The authors prove that Binary Spray and Wait is optimal, providing minimum delay among all Spray and Wait algorithms, when all nodes move in an independent and identically random manner. The issue with this algorithm is how to choose the minimum value of L that will achieve the best performance in the network (maximize message delivery rate and minimize message latency). If the network size and transmission range are kept constant, then L=M has to decrease with the number of nodes [53]. Spyropoulous et al. evaluated their work with a custom simulator using Random-Waypoint as mobility model. Simulation results show that Spray and Wait has a lower overhead than Epidemic, since the number of messages forwarded on the network is limited to L. The authors analyzed the traffic, increasing the number of
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
7
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx Table 1 Categorization of forwarding protocols in opportunistic networks. Year Class
Protocol
Main feature
Drawbacks
2000 No Epidemic Context [51] 2004 SingleCopy [60] 2005 Spray and Wait [53]
Maximizes message delivery rate High overhead and minimizes message latency Lowest Overhead High delay and low delivery probabilities Sprays only L copies of the Increases the delay message
2003 Partial Prophet Context [72]
History based
Best suited network Scenario Highly dense and dynamic Dense networks
Works similarly to Epidemic in dense scenarios 2005 CAR [61] Exchanges a multi-objective Needs time to learn delivery probability context 2010 HYMAD Hybrid of ad hoc and Tested only in high [62] opportunistic forwarding density scenarios 2007 HiBOp [63] Exchanges user interests Needs a time to learn context 2007 Full SimBet Ego-centric centrality and its It may overload nodes Context [65] social similarity with high centrality 2008 BubbleRap Groups and ranks nodes within a May not work in random [71] community networks 2010 SSAR [66] Uses the selfish properties of the Demands user users intervention Ranking of central nodes Can overload the central 2010 People Rank [67] node 2011 SREP [69] Ranking central nodes inside Can overload the central communities node 2011 3R [70] Characterizes user habits Long warm up time
1
Networks with small world properties Regular mobility and meeting patterns Social networks Dense networks
Validation tool
Fifty nodes moving in a 1500300 m2 area in NS-2 random-waypoint mode Random-walk in a 500 500 Torus Custom simulator1 100 nodes move according to the random Custom waypoint model in a 500500 m2 grid simulator 1 Fifty nodes moving in a 3000 1500 m2 area Custom using a community based mobility model simulator 80 Nodes moving in a 1000 1000 m2 area using a community based mobility model 62 nodes on the RollerNet trace
OmniNet++
Not mentioned Social networks 80 Nodes moving in a 1250 1250 m2 area Custom using community based mobility model simulator Social networks MIT Reality Mining Dataset [74] Custom simulator Clustered networks Several CRAWDAD [68] Datasets HaggleSim emulator Social network One message per day using the MIT Dataset Custom [74] simulator Social networks Several public datasets Custom simulator Social networks 100 Nodes moving in a 4000 4000 m area ONE using a community based mobility model Trace of 123 Bluetooth users Custom Social networks simulator with regular patterns
Simulator developed by the authors.
messages from 200 (low traffic) up to 1000 (high traffic). The message exchange occurred among a pair of randomly selected nodes, with a uniform inter-arrival time. Since the subset of nodes carrying the message is smaller than that of Epidemic, in some scenarios Spray and Wait can present larger latencies. 4.3. Partial context We classify as partial context, all protocols that gather information about their meetings with other nodes or infer the mobility of the nodes. Those protocol employ this information to select the best node to forward a message to the destination. Here, there are no interactions between the user and the forwarding algorithm. 4.3.1. Prophet One way to reduce the overhead of Epidemic is to attempt to identify mobility or contact patterns. Prophet (Probabilistic Routing Protocol using History of Encounters and Transitivity) [52] uses a probabilistic metric called ‘‘delivery predictability’’ P 2 ½0; 1 that indicates how likely it is that a node will be able to deliver a message to a certain destination. PRoPHET takes into account the history of previous contacts. Moreover, it assumes that node movement is not random and that it is possible to identify mobility patterns. Thus, if a node has visited frequently a part of the network, there is a high probability that this same place will be visited in the future. The probabilistic model is based on the prediction of the delivery probability of each node for each known destination. To the best of our knowledge, Prophet was the first context-aware protocol in the literature. A problem occurs with the algorithm when nodes tend to form closed communities, where every node would have a high probability P for meeting every other node in the community, thus in this case PROPHET could act as the Epidemic algorithm, relaying a message for each node with high probability.
The authors evaluated Prophet using a custom simulator, where one message exchange occurred every 10 s among a pair of random nodes. Simulation results using the community-based model showed that Prophet improves the performance in networks with high mobility or in which the nodes have a large communication range, since these factors allow for a greater number of encounters among the nodes, which consequently allows the exchange of more context information. However, there are no studies on the warm up time required for the protocol to perform optimally. The DTN2 reference implementation uses Prophet as its default forwarding protocol [16]. As such, Prophet is largely used as a baseline to evaluate new proposals. 4.3.2. CAR The Context-Aware Routing protocol (CAR) attempts to predict if a destination belongs to the same connected part of the network of the sender (or the relay node) [61]. The authors use as context information the number of neighbors of a node and its current energy level. We classified this protocol as partial context since in order to gather the network information a node does not require explicit message exchanges. If the destination is on the connected part of the network, the message is forwarded using DSDV (ad hoc routing); otherwise, it employs a utility function based in the change rate of the connectivity and the probability of the destination to be in the same cluster of the relay node. To evaluate their proposal the authors proposed a community based mobility model that creates clusters in the network. They used OmNet++ to run the simulations and modeled the traffic as a Poisson process. The authors evaluate the influence of buffer size and density using as metric the delay, delivery rate and context exchange overhead. 4.3.3. HYMAD HYMAD is a hybrid DTN-MANET forwarding protocol, since MANET routing tends to have a lower overhead in highly
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
8
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
connected groups of nodes [62]. In HYMAD, nodes identify ‘‘groups’’ of connected neighbors. It forwards messages using MANET routing within the groups, while inter-group communication occurs using the DTN paradigm. The authors evaluated HYMAD using the Rollernet trace (we describe the traces in Section 5), which is a dense trace with high connectivity among the nodes. As the analyzed scenario presents strong clusters and regular mobility patterns, the hybrid protocol achieves a good performance when compared to epidemic. However, the authors do not analyze how HYMAD would perform in sparse scenarios.
4.4. Full context In this category, the protocols use information of their surroundings. Besides the frequency of meetings and history of contacts, they may also analyze information based on the habits of the users, relationship between the users, etc.
4.4.1. HiBOp A history based forwarding protocol for opportunistic networks (HiBOp) was proposed in [63,64]. HiBOp utilizes the network topology, the history of contacts and user context to allow a node to learn its similarities with other nodes, so a message is spread among similar users. HiBOp requires users to provide information about themselves, like home and work address, hobbies and fun, etc. The basic idea is that a node with similarity information to that of the destination has more chances to meet the destination. As a consequence, HiBOp stores a contact history with the place that nodes last met each other to aid in forwarding. The authors used a custom simulator to evaluate HiBOp against Epidemic and prophet. In the analyzed scenario, forty nodes moved according to the Community model in a grid of 1250 1250 m. A set of twenty randomly chosen nodes would send messages between themselves. Each sender generates a message within a time interval that follows an exponential distribution. The authors show that HiBOp has lower buffer occupation with high delays, however the paper lacks a discussion about the time required for HiBOp to learn the context information.
4.4.2. SimBet SimBet [65] is a forwarding protocol based on social interactions that uses centrality and social similarity metrics to define the probability of the node contacting the destination. In this context, nodes with high centrality values will be bridges between different communities in the network. Further, nodes with higher similarity indexes have the highest probabilities to find a common neighbor with the destination. Thus, first the authors use the centrality metric to exchange the message among the communities and next the similarity metric is used within the community to deliver the message to the destination.
4.4.3. BubbleRap In [54] the authors proposed BubbleRap, a forwarding protocol which uses social network metrics to choose which nodes should relay a message. First, they proposed a distributed method to detect communities. Thereby, each node knows its community. Then, they used the betweenness centrality7 metric as a rank for each node. When a node has a message, it bubbles the message to a node with a higher rank. 7 Normalized number of times a node acts as relay for other nodes on all the shortest delay deliveries. Intuitively, a popular node has higher betweenness.
4.4.4. SSAR Li et al. [66] proposed the Social Selfishness Aware Routing (SSAR), a forwarding protocol that employs social characteristics to define if the node should forward a message. The authors define social selfishness as the willingness of a node to forward messages received from nodes with which it has no social ties. This contrasts with most protocols in the literature, which assume that the nodes will always forward the messages. The protocol assumes that every node knows its social relationship with other nodes and allocates resources based in this knowledge. The authors evaluate SSAR using a real trace of MIT student mobility in a custom simulator, where each node generates a message per day to a random destination, and compared SSAR against Prophet and Simbet [65]. The authors considered the TTL of a message varying from 0 up to 150 days, i.e., they assume a delay of six months, which is unrealistic for any network application. 4.4.5. People rank PeopleRank is a social opportunistic forwarding protocol proposed in [67]. Based on the idea of page rank to index web pages on Google, the authors proposed a scheme to rank nodes based on its ‘‘importance’’ in the network. A social relationship between two nodes is defined when they are declared friends and share k common interests. When two nodes meet, they exchange their current PeopleRank values and the number of social neighbors they have. A message is forwarded only to nodes with greater rank. The authors evaluate PeopleRank with a large number of real traces available in Crawdad [68] comparing it against Epidemic, contact based and social algorithms. The following metrics are employed for forwarding: (i) centrality, where a node forwards the message if its betweness centrality is lower than that of the contacted node; (ii) degree, a message is forwarded for nodes with higher degree). The authors computed the delay-optimal path to use as their benchmark. 4.4.6. SREP The Social Relationship Enhanced Predicable Routing protocol (SREP) was proposed in [69]. SREP assumes that user mobility has a deterministic behavior, and as such users have preferred places (also called a community) which they visit frequently. The authors adapted a semi-deterministic Markov process to model the probability of a node belonging to a certain community. SREP also employs a page rank-like algorithm to rank nodes inside a community. The authors make strong assumptions, for example that two nodes in the same community have enough bandwidth and time to always forward a message. In this case we can see the community as a strong connected graph. SREP was the only analyzed protocol which evaluated its warm up time, that is, the time needed to construct the probability table required in forwarding decisions. 4.4.7. 3R Vu et al. proposed a forwarding protocol based on the observations of a real trace [70]. The authors collected Wi-Fi/Bluetooth traces of 123 phones during six months in 2010. They characterized the trace as a fine-grained encounter trace, since the phones made a Bluetooth scan each 60 s and, if a phone can scan a device, then they are in the same location. The authors show that the pattern of those encounters is regular and predictable. As a consequence, they proposed 3R, which learns the patterns of encounters, creating a table with per-node encounter probabilities for each hour of each day (weekday and weekend). The granularity of the table was evaluated, since the method can create quite large probability tables. The main drawback of 3R is that it requires a long bootstrapping period.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
9
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
4.5. Discussion
nodes could be better employed in opportunistic forwarding as shown in [73].
On the set of the papers analyzed, we observed the following metrics in all of them: Delivery ratio, the number of messages successfully delivered; delay, the time until a message gets to the final destination; and communication overhead, the number of replicated messages in the network. In [71,66], the delay is analyzed as the maximum Time-To-Live (TTL) of a message. However, Li et al. assume a TTL ranging from 0 up to 150 days of delay [66]. We note that almost all authors developed their own simulator to evaluate their solutions. The main impact of these customized simulators is the lack of repeatability when new solutions are proposed, since it is quite hard to compare a new protocol with the existing ones. In addition, there is a lack of clarity in some parameters and assumptions made by the authors. Only [51,60,72,63,66] mentioned the size of the buffer, although there is a non-negligible communication overhead associated with the buffer capacity. The bandwidth was shown only in [66] (2Mbps). Other studies abstract this parameter, considering that a message is transmitted instantly when a pairwise contact occurs, that is, there is no transmission delay. In the works that used synthetic mobility models, the area considered varies from a 50 50[torus] to a 4000 4000 m2 rectangular area, while the number of nodes in the evaluations range from 5 up to 100 nodes and the radio range goes from 5 up to 250 m. It is important to note that all works assumed unlimited energy in the nodes. As can be seen in Table 1, the use of context to predict node encounters appears to be the natural evolution of the protocols. However, this information could increase the overhead of control messages, since all protocols need to exchange previous information to update their forwarding table. All protocols suffer from high overhead communication in some scenarios, because they may behave like Epidemic when no context is available, forwarding messages to a high number of nodes. To overcome this, the protocols tend to use more context information to reduce the number of message forwards. However, more context information requires more message exchanges, increasing the number of transmissions. Thus, there is a tradeoff between context information and network overhead. Half of the forwarding protocols that were validated with traces employ traces of students in a campus or in a conference assuming that those traces has strong ‘‘social’’ pattern. A recent work analyzed a set of real traces, separating users in two behavioral classes: socials, which are devices that appear frequently, and vagabonds, which are the rest of the population [73]. This study showed that most areas are dominated by vagabonds. All socialand context-aware protocols presented in this article use one or more metrics of the importance of the node in the network, thus usually excluding the vagabonds of the forwarding set. Those
5. Mobility and contact patterns An important aspect of the evaluation of opportunistic algorithms is the mobility pattern of the nodes, which determines the contact pattern as well as the contact duration. Thus, the literature is ripe with mobility models for opportunistic networks. An extensive review of the existing mobility models can be found in several papers [75–78]. According to these works, the mobility pattern can be influenced by physical factors, like obstacles, the speed limits and boundaries defined by the streets; and social factors, for instance preferred places, working time and free times and even the movement of friends. Thus, it is important to choose a good model to reflect the real scenario in which the protocol is expected to be deployed. The contact pattern can be modelled using one of two methods. The first method is to use a synthetic model, which generates patterns according to certain rules or equations that describe a class of users or applications. Another option is to use real traces, collected in real deployments. There are two kinds of traces in the literature, which are contact traces and GPS traces. The former provides a list of contacts, defining the two or more nodes which participate in a contact, as well as the start and end times of that contact. GPS traces provide the location of a node within a given moment in time. Thus, GPS traces are more powerful since they allow for more complex studies, for example varying the communication range of the nodes. Traces are attractive since they exhibit the real behavior of nodes in a certain scenario, as opposed to synthetic models, which simplify some details of node mobility. However, traces tend to have shortcomings such as the need for a previous sanitization, the existence of gaps and inconsistencies, and the usually low number of nodes (the latter is due to the difficulty of running a long experiment with a large number of nodes). Synthetic models, on the other hand, are more flexible, since they frequently provide parameters that can be adjusted, allowing for different scenarios. One test that is possible with synthetic models, which is quite hard to do in traces, is to change characteristics of the network such as the average number of nodes in a community, the average speed, or the number of evaluated nodes. The following sections describe the most common models and traces found in the literature. 5.1. Synthetic models We summarize the common used mobility models in the Table 2. The most traditional models that can be used in any kind of network are: Random Walk, Random Direction and Random
Table 2 Categorization of mobility models. Mobility model
Direction
Velocity
Stops and obstacles
Best networks suited
Random Walk Random Direction Random Waypoint Probabilistic Random Walk Boundless Simulation Area Gauss Markov Model Voronoi Diagram Model RPGM Social Networks Interaction Model City Section Model Stop Sign Model Probabilistic Traffic Sign Model Traffic Light Model
random random random probabilistic random and no border limitations random random random social-based attraction laws street map based street map based street map based street map based
random random random random variable according to acceleration random random random random limited according to street limits variable variable variable
no no no no no no yes no no no stop signals stop and traffic lights traffic lights
none none none none none none PSN, VANETs PSN PSN, VANETs VANETs VANETs VANETs VANETs
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
10
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
Waypoint. All these models are based in uniform distributions for speed, direction and pause times, and usually have user-definable maximum and minimum values for each of those parameters. These are iterative models, in which a new mobility decision is taken every time that the nodes reach its destination. A probabilistic variation of Random Walk is defined in [75]. This model employs probabilities to define the next destination of the mobile node. Through the matrix of probabilities the node determines a new position, and the node moves to the new position. An important aspect is that those classic models are hard to be implemented correctly, although they are quite intuitive. Yoon et al. show that several known implementations do not present a stationary state [79]. Instead, the average node speed tends to decrease with time. As a consequence, the implementation must be chosen carefully. The Boundless Simulation Area Mobility Model is presented in [75]. This model converts the 2D simulation area into a Torusshaped area. Thus, the model does not have a limit or border. The nodes have path obstructions, with the speed and acceleration varying within a set of values. Another random model, called Gauss Markov Mobility Model, presents a behavior that uses random variables to determine and change the direction and speed of the nodes during each interval. The focus of this model is to produce paths with different directions over time. These models, however, do not consider obstacles or interferences. The model presented in [80] attempts to define more realistic paths. The model defines routes with regions where the radio signal is blocked, as well as obstacles. The paths are computed using the shortest paths in a Voronoi diagram. This model was used to reflect the movement of people around a college campus, according to predefined pathways that interconnect and lead into buildings. The Reference Point Group Model (RPGM) models the random movement of groups [75]. In RPGM, node movements are based on small deviations of the path followed by a node considered as the logical center. RPGM is commonly used to simulate emergency scenarios such as battlefields and disasters, however the logical center movement has random directions and speeds. In [52] was proposed the community model, in which the area is divided into regions and then each node moves to a region with a certain probability. However, this approach does not consider the correlation between the movements of individual nodes, as it may be the case in the movement of groups of nodes performing a similar task. Movement models for Pocket Switched Networks were also proposed. In [81] the authors present a model that reflects the contact among people, capturing the probability of the interaction among two nodes. This model is based on the social behavior of the humans and the relationship among groups of people. The speed is defined in a random way and the direction of node movement is defined according to social attraction laws. The model was validated against real traces, showing a good approximation of number of contacts and contact duration. In VANETs, nodes have movement restrictions, which are not captured in other models. The factors that affect the mobility in VANETs are [82]: the street layouts, the size of blocks, traffic control mechanisms, the average speed and the interdependence of the vehicular motion. A model that attempts to reflect those restrictions is the City Section Mobility Model [82]. This model takes into account the speed limits and the direction of the streets. Thus, the model creates a path between source and destination in order to minimize the trip time with regards to the speed limits. The Stop Sign Model[82] reproduces the movement of vehicles around the city where every intersection has a stop sign. The vehicle stops for a period of time and continues its path. The goal of the model is to capture the influence of stop signs in the performance of forwarding protocols. An extension of this model, Probabilistic Traffic Sign Model, replaces the stop sign by traffic signals. If the lights are green the vehicle drives through, while with red lights the
vehicle stops. The vehicles stop in a signal with a probability p, and the amount of wait time is randomly chosen between 0 and w s. Therefore, there is no coordination among the traffic lights. Another model that attempts to capture the influence of traffic lights is the Traffic Light Model [82]. This model adds the coordination among traffic lights at the same intersection and it considers the deceleration required for vehicles to stop. Other important feature is the use of multiple lanes and different types of road. An important framework that creates and models the movement of vehicles is SUMO (Simulation of Urban Mobility) [83]. SUMO is open source, and includes algorithms to consider traffic lights, route choice and different traffic densities. The advantage of SUMO is that it can load a map of a real city and create a movement trace for this map. Other tool used to create realistic vehicular mobility traces is VanetMobiSim [84]. It is also freely available and the trace formats are compatible with several simulators. It divides the mobility in macro-mobility and micro-mobility. Macro-mobility defines the road topology, which takes into account the type of road, and accepts real life maps. The micro-mobility model captures the behavior of the driver and its actions during the trip. 5.1.1. Discussion Although easy to implement and use as input for simulationbased evaluations (RandomWay point is largely used in MANET research), totally or partially random mobility models do not represent any kind of mobility. In [85] the authors investigate the trajectory of 100 thousand mobile phone users in a six-month period and show that human mobility is regular in space and time, that is, people tend to go to a few locations with high probability. Karamshuk et al. classified the properties of human mobility as spatial (distance travelled), temporal (time spent at each location) and social (contact and inter-contact times among users) [78]. The authors observed that most human mobility models consider only one of these properties and argue that a realistic synthetic model should take both into account. Several human mobility models were proposed based on the analysis of traces, however the only one used in the set of forwarding protocols we analyzed was the Community Model. We believe that one possible reason for that is the increasing of complexity (and uncertainty of correctness) of the synthetic mobility models based on the human behavior. 5.2. Traces Several projects have focused on collecting information from real deployments. These traces represent the behavior and encounters (usually Bluetooth contact) of participants in several scenarios, such as a conference, or the students in a campus, among others, allowing the characterization of human mobility. This section only evaluates publicly available traces, which can be downloaded without signing any kind of agreement. Other traces are available with certain use and disclosure restrictions. The Haggle Project gathered a set of traces from volunteers in conferences. In the 2005 and 2006 editions of INFOCOM the authors distributed iMote devices to 41 and 98 participants, respectively [33]. In the editions of 2007 and 2008 of the CoNext conference, 28 and 22 users, respectively, were equipped with smartphones running the Mobiclique middleware to log the contact between the users [34]. In addition, Pietilänen et al. gathered the contact information of 76 users in SIGCOMM’09 using the same middleware [86]. The Cambridge trace contains data of 36 iMotes logging Bluetooth scannings each five minutes for ten days. The motes were carried by the students of University of Cambridge, and twenty static iMotes were deployed in popular places of the campus [87].
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
11
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
The MIT Reality Mining Project employed 100 Nokia 660 phones to gather information about mobility and encounters of MIT students during nine months [88]. The dataset provides information about call logs, Bluetooth devices in proximity, cell tower IDs, application usage, and phone status (such as charging and idle). The Dartmouth dataset logged the access of wireless devices through 550 access points over 17 weeks between 2003 and 2004 [89]. The authors identified 7000 unique devices during their experiment. The Pari-Roller tour brings together thousands of people to rollerblade through Paris. The Rollernet project distributed 62 iMotes for volunteers in August of 2006 among 2500 rollerbladers, logging Bluetooth encounters every 15 s [90]. The mobility of the participants follows the rules defined by the staff of PariRoller (e.g., speed, pauses and paths). The authors found oscillations on the connectivity, which is low when local density is low (participants are rolling) and high when some deceleration happens. They called this the accordion phenomenon. The Cabspotting project8 provides the GPS coordinates of 500 San Francisco cabs every 10 s over 30 days. Each taxi was equipped with a GPS receiver and sent location updates (timestamp, identifier, geo-coordinates) to a central server. In practice, 343 cabs (69%) have average sampling frequency lower than 100 s [91]. The Microsoft GeoLife project gathered GPS trajectories from 169 users in 2009 and 182 users in 2012. The data was collected from 04=2007 until 08=2012. In this dataset, 73 users have labeled their trajectories with transportation modes, such as driving, taking a bus, riding a bike and walking. The sampling of 91:5% of the trajectories are logged every 15 s or every 5–10 meters per point.9 This dataset can be used to evaluate VANET protocols or for travel recommendation algorithms [92]. The Shanghai Grid project equipped 5631 cabs and 3620 buses with a GPS unit and a GPRS communication module, and logged their movements between February and March of 2007. The main goal of the project was to provide a traffic information system to the city of Shanghai in China10 [93]. The dataset contains the instant speed, the geographic location and the occupation status of each cab. The granularity of the information is about 1 min for the cabs and buses. A multi-agent traffic simulator, developed by ETH Zurich, created a trace for the city of Zurich, Switzerland11 [94]. This trace contains public and private traffic with high levels of realism, reproducing the behavior of a large city during 24 h. With 25 billions records (direction/speed) of 260 thousand vehicles, the trace covers an area with 250 km 260 km. Table 3 summarizes the traces above. Most of them are stored in the Community Resource for Archiving Wireless Data (Crawdad) [68] website. 5.2.1. Discussion Several works attempted to characterize human mobility based on real traces [3,92,73]. These works identified that the most important metrics for opportunistic networks are contact time – the time a pair of nodes is in contact with each other – and inter-contact time – the time passed after two successive encounters among a pair of nodes. In [3] was showed that the contact time follows a power law curve, and 90 % of contacts last less than ten minutes. This result 8 9 10 11
http://cabspotting.org. http://research.microsoft.com/en-us/projects/geolife/. http:/wirelesslab.sjtu.edu.cn/. http://www.lst.inf.ethz.ch/research/ad-hoc/car-traces/.
Table 3 Categorization of mobility and contact traces. Dataset
Scenario
Data
Number of nodes
Duration (days)
Infocom05 Infocom06 CoNext07 CoNext08 Sigcomm09
Conference
Bluetooth Bluetooth Bluetooth Bluetooth Bluetooth
41 98 28 22 76
3 3 3:5 3:5 2
Cambridge MIT Darthmout
Campus
Bluetooth Bluetooth WiFi
36 100 550
10 246 119
Rollernet SanFrancisco GeoLife [92] Shanghai [95] Zurich [94]
City
Bluetooth GPS GPS GPS
62 500 182 9251
0:12 30 2008 31
Artificial
260:000
1
implies that nodes have very few time to exchange data with each other, so there is a need for efficient contact protocols. The authors also showed that the inter-contact time has heavy tail properties. The same behavior is observed in the Cambridge Dataset [87] and in the Rollernet trace [90]. In Gao et al., the authors showed that the pairwise inter-contact time of the MIT and INFOCOM traces is exponentially distributed. Moreover, the frequency of contacts between the nodes can be modeled as a poisson process [96]. In a VANET scenario, Zhu et al. also found an exponentially distributed inter-contact time pattern in the cabs and buses of Shanghai [97]. As Bluetooth scanning always returns all the Bluetooth devices found, in all Bluetooth contact traces there is a high number of discovered devices that do not participate in the experiment. The use of these traces and their properties was largely used to propose and evaluate opportunistic forwarding protocols, most of them based on social network properties (see Section 4). In [73] the authors analyzed the interaction among Social (nodes which stay for a long time in a place) and Vagabonds, showing that the density is more important than the social behavior, even when Vagabonds are considered for dissemination in opportunistic networks. It is important to note that even the use of real traces may lead to overestimated results. Ristanovic et al. implemented a testbed application for OppNets, and show that delivery ratio and delay are overestimated in simulations when they follow unrealistic assumptions, i.e., infinite buffer storage [98]. 6. Simulators and tools In this section we give a brief description of the most commonly used simulators in our literature review. It is important to note that DTN routing occurs over the network layer, and under-layer factors such as collision detection in the MAC layer, beaconing and neighbor discovery are commonly disregarded in simulations. The most common studied metrics are: delivery rate, how many messages achieve the destination; end-to-end delay, the delay from the message being produced at the source and being received at the destination; and communication overhead, how many times a message is replicated in the network. NS-2 [99]: A complete network simulator, simulating all the TCP/IP stack as well as effects of the wireless environment. It has several well-known network protocols already implemented, such as TCP and UDP in transport Layer, IEEE 802:3 and 802:11 implementations in the host-to-network layer, among others. However, few protocols specific for OppNets are public available. It supports synthetic and real traces.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
12
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
ONE [100]: Opportunistic Network Environment. It is a JavaBased opportunistic simulator, which abstracts the physical and MAC layers, and focuses on message forwarding among nodes. It has several DTN forwarding protocols implemented, such as Epidemic, Prophet and Spray and Wait. Moreover, it supports the use of real contact traces. However, it is not suitable for low-layer evaluation. GloMoSim [101]: is a network simulator developed for wired and wireless networks, but it actually only supports wireless network protocols. This simulator is based on the OSI architecture, and many protocols with these characteristics can be simulated. MobiREAL [102]: is a network simulator for mobile ubiquitous computing. It was designed to be as general as possible, allowing to simulate realistic mobility models of humans and vehicles. It also allows to change the behavior of nodes according to the application requirements. Omninet++ [103]: is a C++-based discrete event network simulator which employs the interaction among processes through message passing. One strength of this simulator is the possibility to execute and build simulations under a graphical user interface. Custom simulator: We noted that more than 50% of the forwarding protocols that we analyzed were evaluated with proprietary tools or simulators developed by the authors. Usually they are custom built in order to evaluate a certain aspect or network. The weakness of these custom simulators is the lack of repeatability of the evaluation, since some of the implementation details are not completely described. Further, there are simulators or frameworks specifically tailored to VANETs, which consider the restrictions of vehicle movement and the interactions among vehicles. TraNS [104] (Traffic and Network Simulation Environment) links two important open-source simulators: the SUMO traffic simulator [83], and Network Simulator-2 [99]. GrooveNet [105]: is an extensible event-based simulator that employs street maps. Additionally it supports multiple vehicles, trip and mobility models including traffic lights, lane changing and GPS models. It is also possible to simulate multiple network interfaces for vehicle-to-vehicle and vehicle-to-infrastructure communication. 7. Practical issues It is notable that the lack of real applications is the Achilles heel of OppNet research. Crowcroft et al. argue that even TCP/IP research has a gap of eleven years among theory and practice [106]. Researchers proposed many solutions for opportunistic networks in the last decade, however few real deployments exist. This section attempts to identify the issues that have hindered the deployment of OppNets. 7.1. Communication issues OppNets suffer from a lack of communication technology for reliable connection and service discovery in an ad hoc or infrastructure-assisted fashion. The communication interfaces vary from WiFi, WiFi Direct, WiFi-Opp and Bluetooth. However, off-the-shell technologies suffer from long association delays [107–110]. Several studies were conducted to characterize the performance of IEEE 802:11 in VANET scenarios. Those findings can also be applied to OppNets in general. In [107], the authors showed that the connection is divided into three times: connection phase, also
called entry phase; production phase; and exit phase. In the production phase a vehicle at 80 km/h could transfer up to 9 MB of data as far as 600 m from the access point. Bychkovsky et al. [108] collected data traces using vehicles for almost one year around the Boston metropolitan area and showed that the median connection duration and time between associations in another AP is 13 and 75 s, respectively. The authors also found that the delay of DHCP to acquire an IP address is often higher than the scanning and association times, as in their experiments acquiring an IP address could take up to 5 s. Based on that, the IEEE 802:11p standard [111] aims to support longer-range operation, faster association, higher node speeds and reliable broadcast. Bluetooth is the most common choice to interconnect two wireless devices, however it was not designed with OppNets in mind. Bluetooth works very well for interconnecting personal devices, but it has several limitations in simultaneous connections (limited to seven connections) and in neighborhood discovery [112]. In addition, devices need to be paired previously, so unknown nodes are not able to connect without user interaction. WiFi in ad hoc mode can be used to opportunistically exchange messages among users. Today, several mobile devices are able to work as a router using a communication interface linked to the Internet and another serving as a gateway to other devices. Although this function allows the creation of ad hoc networks among a group of users, ad hoc WiFi is not easy to implement in off-the-shelf devices available in the market. The main reason is that operating systems like IOS and Android offer high level SDK to developers which do not allow to modify the radio and MAC parameters, and sometimes do not even allow to access low level communication information. Thus, creating opportunistic applications for popular mobile OSs is a challenge in itself. The Haggle project created a middleware for Android phones, however in order to access low level information (Bluetooth or WiFi), Haggle only runs on rooted devices. The WiFi Direct standard is a new option for multi-player game and instant content sharing in an ad hoc fashion, however in our tests we identified that it suffers from long delays to discover neighbors and presents a long association time. 7.2. Privacy and legal questions All forwarding protocols in opportunistic networks presented here assume that there is no malicious node in the network. In this case, how to guarantee the privacy of the user? Further, messages are stored in another user’s device while they wait to be forwarded. Thus, mechanisms to provide anonymous and private requests are still an open challenge in OppNets. The use of open WiFi access points as relay and cache mechanism for 3G network or VANETs could improve the user experience, however it creates privacy and legal questions [113]. Should a node that forwarded illegal content be legally responsible? Even in P2P networks there is no agreement about this issue. With the popularization of free WiFi hotspots, there is a need of user authentication so that users are legally responsible for their actions in the network. However, authenticating each time you change networks can be a stressful task. Some telecom operators which provide free hotspots use EAP-SIM [114], a standard that provides authentication based on the GSM SIM card. Nevertheless, this authentication works only for clients of the provider and depends on the availability of compatible hotspots. 7.3. Evaluation issues Evaluation can be done in testbeds, for instance as done in ZebraNet, or in simulators, as done by most of the forwarding protocols presented in this work. There are several important
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
questions regarding the simulation of OppNets that are discussed below. Fig. 3 summarizes the evaluation tools and methods employed in the set of papers that we analyzed. First, a large part of the studies employ custom simulators, which make it hard for the research community to compare new solutions with previous ones. In effect, the majority of forwarding protocols was compared against Epidemic and Prophet, disregarding protocols that are more recent. Moreover, parameters such as bandwidth allocation and buffer capacity are commonly omitted by the researchers. In some cases, even the radio range is dismissed by the authors, as in [61,69]. Finally, in the entire set of the analyzed studies, none of them considered energy constrained nodes. Next, there are efforts to increase the reality of simulations using contact traces or GPS data, which can give real contact and movement models, however those represent a specific scenario, requiring the validation against several traces in order to ensure that the results are applicable to a wide range of applications. Furthermore, the traffic pattern used for evaluation is usually not based on the expected traffic on a real network. This flaw is understandable, since there are not many real OppNet deployments, and to the best of our knowledge, no traffic traces of existing OppNets. The most common practice is to model traffic having a constant message rate. In such case, for each time interval, source and destination nodes are chosen randomly to exchange a message. There is no common practice for the interval among messages, though. Only two studies used an exponential distribution to create messages [63,61], which seem to be more closely related to the traffic found in P2P applications [115]. Finally, as protocols become more complex and require information about their neighborhood to construct their forwarding tables, and as such those protocols will need time to warm up their forwarding table. The information regarding the time required for a node to ‘‘learn’’ the topology and make better forwarding decisions is discussed only in [69]. For instance, the 3R protocol [70] builds a table with the hour of the day and day of the week that two persons meet, but it is not clear how much time is needed to build an accurate table. In addition, the protocols which ‘‘learn’’ the behavior of a user do not discuss what happens when the user changes his/her own behavior. Almost all existing traces represent students in a campus or people in a conference. Thus, in vacation periods such protocols may not work, since the behavior of the student changes suddenly. Finally, the studies do not consider the effect of churn (nodes leaving or entering the network). Those nodes will also need some time to retune their forwarding tables, and appropriate methods for faster bootstrapping of new nodes should be developed.
13
8. Final remarks In this paper, we surveyed the evolution of opportunistic network research in the last decade. We proposed to categorize the many existing opportunistic network scenarios and present a set of already deployed applications. Next, we discussed the evolution and evaluation practices of forwarding protocols and presented the simulators and tools used in the evaluations. Since the proposal of Epidemic protocol in 2000 and the DTN architecture in 2003, the main goal of the surveyed opportunistic forwarding protocols was to maximize the delivery message ratio, while minimizing the communication overhead. To achieve this goal, the researchers realized that the mobility, contact patterns and the context are important aspects for the success of an opportunistic network. Figuring out where, when and how long an encounter will take can lead to more efficient data forwarding protocols. Although many studies were proposed, this question is still open, and there is room for optimizations based on the characteristics of each specific deployment. When proposing new protocols, the authors should be more careful in the definition and description of the evaluation scenarios. We are not claiming for a default evaluation framework for OppNets, since it depends on the application requirements. However, there is a lack of repeatability in the literature and most of the solutions cannot be compared with new ones in similar scenarios due to the incomplete description of the evaluation scenarios. Although there are some real experiments on opportunistic networking, such as the Haggle project, the bottleneck of the research in OppNets continues to be the lack of application behavior data, which leads to questionable assumptions for the traffic pattern and the energy model, among others. In addition, there is still room for research in issues such as (i) energy consumption: pocket devices present energy constraints, which must be taken into account when devising the message exchange protocol; (ii) the user’s willingness to collaborate with the network: there is a need for incentive mechanisms in order to increase the likelihood of a user offering its resources to help another user; (iii) deployment of a large scale OppNet: real deployments can help researchers better parameterize simulations and analytical models for OppNets; and (iv) Social behavior of the users: understanding the social behavior of the network participants can improve the overall performance of the network. We believe that our work could help new researchers in opportunistic networks figure out the basic steps in this topic, and to stress the importance of evaluating their proposals using more realistic parameters.
References
Fig. 3. Common tools and methods for protocol evaluation.
[1] K. Fall, A delay-tolerant network architecture for challenged internets, in: Proceedings of the 2003 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, 2003, pp. 27–34. [2] M. Gerla, L. Chen, Y. Lee, B. Zhou, J. Chen, G. Yang, S. Das, Dealing with node mobility in ad hoc wireless network, in: Formal Methods for Mobile Computing, Springer, 2005, pp. 331–338. [3] P. Hui, A. Chaintreau, J. Scott, R. Gass, J. Crowcroft, C. Diot, Pocket switched networks and human mobility in conference environments, in: Proceedings of the 2005 ACM SIGCOMM Workshop on Delay-Tolerant Networking, WDTN ’05, ACM, New York, NY, USA, 2005, pp. 244–251. [4] M. Faezipour, M. Nourani, A. Saeed, S. Addepalli, Progress and challenges in intelligent vehicle area networks, Commun. ACM 55 (2) (2012) 90–100. [5] A. Boukerche, H.A.B.F. Oliveira, E.F. Nakamura, A.A.F. Loureiro, Vehicular ad hoc networks: a new challenge for localization-based systems, Comput. Commun. 31 (12) (2008) 2838–2849. [6] S. Burleigh, A. Hooke, L. Torgerson, K. Fall, V. Cerf, B. Durst, K. Scott, H. Weiss, Delay-tolerant networking: an approach to interplanetary internet, IEEE Commun. Mag. 41 (6) (2003) 128–136. [7] Z. Zhang, Routing in intermittently connected mobile ad hoc networks and delay tolerant networks: overview and challenges, IEEE Commun. Surv. Tutor. 8 (1) (2006) 24–37.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
14
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx
[8] J. Partan, J. Kurose, B.N. Levine, A survey of practical issues in underwater networks, in: Underwater Networks, ACM, 2006, pp. 17–24. [9] F. Martinez, C. Toh, J. Cano, C. Calafate, P. Manzoni, A survey and comparative study of simulators for vehicular ad hoc networks (vanets), Wireless Commun. Mobile Comput. 11 (7) (2011) 813–828. [10] P.R. Pereira, A. Casaca, J.J.P.C. Rodrigues, V.N.G.J. Soares, J. Triay, C. CervelloPastor, From delay-tolerant networks to vehicular delay-tolerant networks, IEEE Commun. Surv. Tutor. 14 (4) (2012) 1166–1182. [11] M. Khabbaz, C. Assi, W. Fawaz, Disruption-tolerant networking: a comprehensive survey on recent developments and persisting challenges, IEEE Commun. Surv. Tutor. 14 (2) (2012) 607–640. [12] S. Grasic, A. Lindgren, An analysis of evaluation practices for dtn routing protocols, in: Proceedings of the Seventh ACM International Workshop on Challenged Networks, ACM, 2012, pp. 57–64. [13] D. Katabi, M. Handley, C. Rohrs, Congestion control for high bandwidth-delay product networks, in: Proceedings of the Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications (SIGCOMM), 2002, pp. 89–102. [14] P. Juang, H. Oki, Y. Wang, M. Martonosi, L. Peh, D. Rubenstein, Energy-efficient computing for wildlife tracking: design tradeoffs and early experiences with zebranet, ACM SIGPLAN Not. 37 (10) (2002) 96–107. [15] M.J. Pitkänen, J. Ott, Enabling opportunistic storage for mobile dtns, Pervasive Mobile Comput. 4 (5) (2008) 579–594. [16] DTN, Delay-tolerant network research group, 2013.
. [17] M. Ramadas, S. Burleigh, S. Farrell, Licklider transmission protocol – specification, RFC 5326, IETF, 2008. [18] I.F. Akyildiz, D. Pompili, T. Melodia, Underwater acoustic sensor networks: research challenges, Ad Hoc Networks 3 (3) (2005) 257–279. [19] R. Wang, T. Taleb, A. Jamalipour, B. Sun, Protocols for reliable data transport in space internet, IEEE Commun. Surv. Tutor. 11 (2) (2009) 21–32. [20] I.F. Akyildiz, Ö.B. Akan, C. Chen, J. Fang, W. Su, Interplanetary internet: stateof-the-art and research challenges, Comput. Networks 43 (2) (2003) 75–112. [21] V. Manfredi, M. Crovella, J. Kurose, Understanding stateful vs stateless communication strategies for ad hoc networks, in: Proceedings of the 17th Annual International Conference on Mobile Computing and Networking, MobiCom ’11, ACM, New York, NY, USA, 2011, pp. 313–324. [22] C.E. Perkins, E.M. Royer, Ad-hoc on-demand distance vector routing, in: Proceedings of the Second IEEE Workshop on Mobile Computing Systems and Applications, vol. 2, 1999, pp. 90–100. [23] T. Clausen, P. Jacquet, Optimized link state routing protocol (olsr), RFC 3626, IETF, 2003. [24] C. Perkins, P. Bhagwat, Highly dynamic destination-sequenced distancevector routing (dsdv) for mobile computers, in: Proceedings of the Conference on Communications Architectures, Protocols and Applications, 1994, pp. 234– 244. [25] F. Gil-Castineira, F. Gonzalez-Castano, L. Franck, Extending vehicular can fieldbuses with delay-tolerant networks, IEEE Trans. Ind. Electron. 55 (9) (2008) 3307–3314. [26] M. Rubinstein, F. Ben Abdesslem, M. De Amorim, S. Cavalcanti, R. dos Santos Alves, L. Costa, O. Duarte, M. Campista, Measuring the capacity of in-car to incar vehicular networks, IEEE Commun. Mag. 47 (11) (2009) 128–136. [27] I. Akyildiz, W. Su, Y. Sankarasubramaniam, E. Cayirci, Wireless sensor networks: a survey, Comput. Networks 38 (4) (2002) 393–422. [28] T. Small, Z. Haas, The shared wireless infostation model: a new ad hoc networking paradigm (or where there is a whale, there is a way), in: Proceedings of the Fourth ACM International Symposium on Mobile Ad Hoc Networking & Computing, ACM, 2003, pp. 233–244. [29] UMASS, UMass TurtleNet, 2013.
. [30] L. Wood, W. Ivancic, W. Eddy, D. Stewart, J. Northam, C. Jackson, A. da Silva Curiel, Use of the delay-tolerant networking bundle protocol from space, in: Proceedings of the 59th Astronautical Congress, Glasgow. IAC, 2008. [31] A. Jenkins, S. Kuzminsky, K.K. Gifford, R.L. Pitts, K. Nichols, Delay/disruptiontolerant networking: flight test results from the international space station, in: 2010 IEEE Aerospace Conference, IEEE, 2010, pp. 1–8. [32] T. Liu, C. Sadler, P. Zhang, M. Martonosi, Implementing software on resourceconstrained mobile sensors: experiences with impala and zebranet, in: Proceedings of the Second International Conference on Mobile Systems, Applications, and Services, ACM, 2004, pp. 256–269. [33] Haggle, Haggle project, 2013. . [34] A. Pietiläinen, E. Oliver, J. LeBrun, G. Varghese, C. Diot, Mobiclique: middleware for mobile social networking, in: Proceedings of the Second ACM Workshop on Online Social Networks, ACM, 2009, pp. 49–54. [35] C. Boldrini, M. Conti, F. Delmastro, A. Passarella, Context-and social-aware middleware for opportunistic networks, J. Network Comput. Appl. 33 (5) (2010) 525–541. [36] M. Conti, M. Kumar, Opportunities in opportunistic computing, Computer 43 (1) (2010) 42–50. [37] O.R. Helgason, E.A. Yavuz, S.T. Kouyoumdjieva, L. Pajevic, G. Karlsson, A mobile peer-to-peer system for opportunistic content-centric networking, in: MobiHeld, ACM, 2010, pp. 21–26. [38] A. Petz, A. Lindgren, P. Hui, C. Julien, Madserver: a server architecture for mobile advanced delivery, in: Proceedings of the Seventh ACM International Workshop on Challenged Networks, ACM, 2012, pp. 17–22. [39] K. Kamini, R. Kumar, Vanet parameters and applications: a review, Glob. J. Comput. Sci. Technol. 10 (7) (2010) 72–77.
[40] H. Noshadi, E. Giordano, H. Hagopian, G. Pau, M. Gerla, M. Sarrafzadeh, Remote medical monitoring through vehicular ad hoc network, in: IEEE 68th Vehicular Technology Conference, VTC 2008-Fall, 2008, pp. 1–5. [41] K. Lee, S.-H. Lee, R. Cheung, U. Lee, M. Gerla, First experience with cartorrent in a real vehicular ad hoc network testbed, in: 2007 Mobile Networking for Vehicular Environments, 2007, pp. 109–114. [42] A. Nandan, S. Das, G. Pau, M. Gerla, M. Sanadidi, Co-operative downloading in vehicular ad-hoc wireless networks, in: Second Annual Conference on Wireless On-demand Network Systems and Services, WONS 2005, 2005, pp. 32–41. [43] Project SmartPark, Parking made easy, 2005. . [44] M.M. Coutinho, T. Moreira, E. Silva, A. Efrat, T. Johnson, A new proposal of data mule network focused on amazon riverine population, in: Proceedings of the Third Extreme Conference on Communication: The Amazon Expedition, ExtremeCom ’11, ACM, New York, NY, USA, 2011, pp. 10:1–10:2. [45] Bytewala, Bytewala project, 2013. . [46] H. Ntareme, M. Zennaro, B. Pehrson, Delay tolerant network on smartphones: applications for communication challenged areas, in: Third Extreme Workshop on Communications, September 2011, 2011. [47] J. Arkko, A. Keranen, S. Farrel, K. Hartnett, E. Davies, Snowcat5: networking in snow, in: Proceedings of the Fourth Extreme Conference on Communication: The Alpine Expedition, ExtremeCom ’12, ACM, New York, NY, USA, 2012, pp. 10:1–10:2. [48] J. Ott, A. Keränen, E. Hyytiä, Beachnet: propagation-based information sharing in mostly static networks, in: Proceedings of the Third Extreme Conference on Communication: The Amazon Expedition, ExtremeCom ’11, ACM, New York, NY, USA, 2011, pp. 15:1–15:6. [49] A. Pentland, R. Fletcher, A. Hasson, DakNet: rethinking connectivity in developing nations, IEEE Comput. 37 (1) (2004) 78–83. [50] L. Pelusi, A. Passarella, M. Conti, Opportunistic networking: data forwarding in disconnected mobile ad hoc networks, IEEE Commun. Mag. 44 (11) (2006) 134–141. [51] A. Vahdat, D. Becker, Epidemic routing for partially connected ad hoc networks, Tech. Report, Duke University, 2000. [52] A. Lindgren, A. Doria, O. Schelen, Probabilistic routing in intermittently connected networks, Mobile Comput. Commun. Rev. 7 (3) (2003) 19–20. [53] T. Spyropoulos, K. Psounis, C. Raghavendra, Spray and wait: an efficient routing scheme for intermittently connected mobile networks, in: ACM SIGCOMM workshop on delay-tolerant networking, WDTN, 2005, pp. 252– 259. [54] P. Hui, J. Crowcroft, E. Yoneki, Bubble rap: social-based forwarding in delaytolerant networks, IEEE Trans. Mobile Comput. 10 (11) (2011) 1576–1589. [55] H.A. Nguyen, S. Giordano, Context information prediction for social-based routing in opportunistic networks, Ad Hoc Networks 10 (8) (2012) 1557– 1569. [56] V. Del Duca Almeida, A. Oliveira, D. Macedo, J. Nogueira, Performance evaluation of manet and dtn routing protocols, in: IFIP Wireless Days (WD), 2012, pp. 1–6. [57] A. Miklas, K. Gollu, K. Chan, S. Saroiu, K. Gummadi, E. De Lara, Exploiting social interactions in mobile systems, UbiComp 2007: Ubiquitous Computing, 2007, pp. 409–428. [58] A. Dey, Understanding and using context, Pers. Ubiquitous Comput. 5 (1) (2001) 4–7. [59] M. Khedr, A. Karmouch, Negotiating context information in context-aware systems, IEEE Intell. Syst. 19 (6) (2004) 21–29. [60] T. Spyropoulos, K. Psounis, C. Raghavendra, Single-copy routing in intermittently connected mobile networks, in: 2004 First Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks, IEEE SECON 2004, 2004, pp. 235–244. [61] S.H.M. Musolesi, C. Mascolo, Adaptive routing for intermittently connected mobile ad hoc networks, in: Sixth IEEE International Symposium on a World of Wireless Mobile and Multimedia Networks, 2005, pp. 183–189. [62] J. Whitbeck, V. Conan, Hymad: hybrid dtn-manet routing for dense and highly dynamic wireless networks, Comput. Commun. 33 (13) (2010) 1483– 1492. [63] C. Boldrini, M. Conti, J. Jacopini, A. Passarella, Hibop: a history based routing protocol for opportunistic networks, in: IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks, WoWMoM 2007, IEEE, 2007, pp. 1–12. [64] C. Boldrini, M. Conti, A. Passarella, Exploiting users social relations to forward data in opportunistic networks: the hibop solution, Pervasive Mobile Comput. 4 (5) (2008) 633–657. [65] E. Daly, M. Haahr, Social network analysis for routing in disconnected delaytolerant manets, in: Proceedings of the Eightth ACM International Symposium on Mobile Ad Hoc Networking and Computing, ACM, 2007, pp. 32–40. [66] Q. Li, S. Zhu, G. Cao, Routing in socially selfish delay tolerant networks, in: 2010 Proceedings IEEE INFOCOM, 2010, pp. 1–9. [67] A. Mtibaa, M. May, C. Diot, M. Ammar, Peoplerank: social opportunistic forwarding, in: 2010 Proceedings IEEE INFOCOM, IEEE, 2010, pp. 1–5. [68] A community resource for archiving wireless data at dartmouth, crawdad, 2013. . [69] X. Xie, Y. Zhang, C. Dai, M. Song, Social relationship enhanced predicable routing in opportunistic network, in: 2011 Seventh International Conference on Mobile Ad-hoc and Sensor Networks (MSN), IEEE, 2011, pp. 268–275.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019
V.F.S. Mota et al. / Computer Communications xxx (2014) xxx–xxx [70] L. Vu, Q. Do, K. Nahrstedt, 3R: fine-grained encounter-based routing in delay tolerant networks, in: 2011 IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks (WoWMoM), IEEE, 2011, pp. 1–6. [71] P. Hui, J. Crowcroft, E. Yoneki, Bubble rap: social-based forwarding in delay tolerant networks, in: Proceedings of the Ninth ACM International Symposium on Mobile Ad Hoc Networking and Computing, ACM, 2008, pp. 241–250. [72] A. Lindgren, A. Doria, O. Schelen, Probabilistic routing in intermittently connected networks, Serv. Assur. Partial Intermittent Res. (2004) 239–254. [73] G. Zyba, G. Voelker, S. Ioannidis, C. Diot, Dissemination in opportunistic mobile ad-hoc networks: the power of the crowd, in: 2011 Proceedings IEEE INFOCOM, IEEE, 2011, pp. 1179–1187. [74] MIT Lab, MIT MEDIA LAB: reality mining, 2012. . [75] T. Camp, J. Boleng, V. Davies, A survey of mobility models for ad hoc network research, Wireless Commun. Mobile Comput. 2 (5) (2002) 483–502. [76] G. Lin, N. G., R. Rajaraman, Mobility models for ad hoc network simulation, in: INFOCOM 2004. Twenty-third Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 1, 2004 (pp. 4, vol. xxxv+2866). [77] J. Harri, F. Filali, C. Bonnet, Mobility models for vehicular ad hoc networks: a survey and taxonomy, IEEE Commun. Surv. Tutor. 11 (4) (2009) 19–41. [78] D. Karamshuk, C. Boldrini, M. Conti, A. Passarella, Human mobility models for opportunistic networks, IEEE Commun. Mag. 49 (12) (2011) 157–165. [79] J. Yoon, M. Liu, B. Noble, Random waypoint considered harmful, in: TwentySecond Annual Joint Conference of the IEEE Computer and Communications (INFOCOM), vol. 2, 2003, pp. 1312–1321. [80] A. Jardosh, E.M. Belding-Royer, K.C. Almeroth, S. Suri, Towards realistic mobility models for mobile ad hoc networks, in: Proceedings of the Ninth Annual International Conference on Mobile Computing and Networking, MobiCom ’03, ACM, New York, NY, USA, 2003, pp. 217–229. [81] M. Musolesi, C. Mascolo, Designing mobility models based on social network theory, SIGMOBILE Mobile Comput. Commun. Rev. 11 (3) (2007) 59–70. [82] A. Mahajan, N. Potnis, K. Gopalan, A. Wang, Urban mobility models for VANETs, in: Proceedings of Second Workshop on Next Generation, Wireless Networks, 2006. [83] M. Behrisch, L. Bieker, J. Erdmann, D. Krajzewicz, Sumo – simulation of urban mobility: an overview, in: The Third International Conference on Advances in System Simulation SIMUL 2011, Barcelona, Spain, 2011, pp. 63–68. [84] J. Härri, F. Filali, C. Bonnet, M. Fiore, Vanetmobisim: generating realistic mobility patterns for vanets, in: Proceedings of the Third International Workshop on Vehicular Ad Hoc Networks, VANET ’06, ACM, 2006, pp. 96– 97. [85] M. Gonzalez, C. Hidalgo, A. Barabasi, Understanding individual human mobility patterns, Nature 453 (7196) (2008) 779–782. [86] A.-K. Pietilänen, C. Diot, Dissemination in opportunistic social networks: the role of temporal communities, in: Proceedings of the Thirteenth ACM International Symposium on Mobile Ad Hoc Networking and Computing, ACM, 2012, pp. 165–174. [87] J. Leguay, A. Lindgren, J. Scott, T. Friedman, J. Crowcroft, Opportunistic content distribution in an urban setting, in: Proceedings of the 2006 SIGCOMM Workshop on Challenged Networks, CHANTS ’06, ACM, New York, NY, USA, 2006, pp. 205–212. [88] N. Eagle, A. Pentland, Reality mining: sensing complex social systems, Pers. Ubiquitous Comput. 10 (4) (2006) 255–268. [89] T. Henderson, D. Kotz, I. Abyzov, The changing usage of a mature campuswide wireless network, in: Proceedings of the 10th Annual International Conference on Mobile Computing and Networking, MobiCom ’04, ACM, New York, NY, USA, 2004, pp. 187–201. [90] P. Tournoux, J. Leguay, F. Benbadis, V. Conan, M. De Amorim, J. Whitbeck, The accordion phenomenon: analysis, characterization, and impact on dtn routing, in: IEEE INFOCOM 2009, 2009, pp. 1116–1124. [91] S. Dimatteo, P. Hui, B. Han, V. Li, Cellular traffic offloading through wifi networks, in: 2011 IEEE Eighth International Conference on Mobile Adhoc and Sensor Systems (MASS), 2011, pp. 192–201. [92] Y. Zheng, L. Zhang, X. Xie, W. Ma, Mining interesting locations and travel sequences from gps trajectories, in: Proceedings of the 18th International Conference on World Wide Web, 2009, pp. 791–800. [93] S.J.T. University, Suvnet-trace data., 2007. Downloaded from http:// wirelesslab.sjtu.edu.cn/download.html.
15
[94] V. Naumov, R. Baumann, T. Gross, An evaluation of inter-vehicle ad hoc networks based on realistic vehicular traces, in: Proceedings of the Seventh ACM International Symposium on Mobile Ad Hoc Networking and Computing, MobiHoc ’06, ACM, New York, NY, USA, 2006, pp. 108–119. [95] H. Zhu, M. Li, Dealing with vehicular traces, 2013, pp. 15–21. [96] W. Gao, Q. Li, B. Zhao, G. Cao, Multicasting in delay tolerant networks: a social network perspective, in: Proceedings of the Tenth ACM International Symposium on Mobile Ad Hoc Networking and Computing, MobiHoc ’09, ACM, New York, NY, USA, 2009, pp. 299–308. [97] H. Zhu, M. Li, L. Fu, G. Xue, Y. Zhu, L.M. Ni, Impact of traffic influxes: revealing exponential intercontact time in urban vanets, IEEE Trans. Parallel Distrib. Syst. 22 (8) (2011) 1258–1266. [98] N. Ristanovic, G. Theodorakopoulos, J.-Y.L. Boudec, Traps and pitfalls of using contact traces in performance studies of opportunistic networks, in: Proceedings IEEE INFOCOM, IEEE, 2012, pp. 1377–1385. [99] NS2, The network simulator, 2002. . [100] A. Keränen, J. Ott, T. Kärkkäinen, The one simulator for dtn protocol evaluation, in: Proceedings of the Second International Conference on Simulation Tools and Techniques, Simutools ’09, ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), ICST, Brussels, Belgium, 2009, pp. 55:1–55:10. [101] X. Zeng, R. Bagrodia, M. Gerla, Glomosim: a library for parallel simulation of large-scale wireless networks, in: Workshop on Parallel and Distributed, Simulation, 1998, pp. 154–161. [102] K. Konishi, K. Maeda, K. Sato, A. Yamasaki, H. Yamaguchi, K. Yasumoto, T. Higashino, Mobireal simulator-evaluating manet applications in real environments, in: 13th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, 2005, pp. 499–502. [103] A. Varga, R. Hornig, An overview of the omnet++ simulation environment, in: Simutools ’08: Proceedings of the First International Conference on Simulation Tools and Techniques for Communications, Networks and Systems & Workshops, ICST, Brussels, Belgium, 2008, pp. 1–10. [104] M. Piórkowski, M. Raya, A.L. Lugo, P. Papadimitratos, M. Grossglauser, J.-P. Hubaux, Trans: realistic joint traffic and network simulator for vanets, SIGMOBILE Mobile Comput. Commun. Rev. 12 (1) (2008) 31–33. [105] R. Mangharam, D. Weller, R. Rajkumar, P. Mudalige, F. Bai, Groovenet: a hybrid simulator for vehicle-to-vehicle networks (invited paper). [106] J. Crowcroft, E. Yoneki, P. Hui, T. Henderson, Promoting tolerance for delay tolerant network research, Comput. Commun. Rev. 38 (5) (2008) 63. [107] J. Ott, D. Kutscher, Drive-thru internet: Ieee 802.11b for automobile users, in: INFOCOM 2004. Twenty-Third Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 1, 2004 (pp. 4 vol. xxxv+2866). [108] V. Bychkovsky, B. Hull, A. Miu, H. Balakrishnan, S. Madden, A measurement study of vehicular internet access using in situ wi-fi networks, in: Proceedings of the 12th Annual International Conference on Mobile Computing and Networking, ACM, 2006, pp. 50–61. [109] D. Hadaller, S. Keshav, T. Brecht, S. Agarwal, Vehicular opportunistic communication under the microscope, in: Proceedings of the Fifth International Conference on Mobile Systems, Applications and Services, MobiSys ’07, ACM, New York, NY, USA, 2007, pp. 206–219. [110] M. Pitkanen, T. Karkkainen, J. Ott, Mobility and service discovery in opportunistic networks, in: 2012 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops), IEEE, 2012, pp. 204–210. [111] S. Grafling, P. Mahonen, J. Riihijarvi, Performance evaluation of ieee 1609 wave and ieee 802.11p for vehicular communications, in: 2010 Second International Conference on Ubiquitous and Future Networks (ICUFN), 2010, pp. 344–348. [112] A. Pietiläinen, C. Diot, Experimenting with opportunistic networking, in: Proceedings of the ACM MobiArch Workshop, 2009. [113] R. Hale, Wi-fi liability: potential legal risks in accessing and operating wireless internet, Santa Clara Comput. High Technol. Law J. 21 (2005) 543. [114] H. Haverinen, J. Salowey, Extensible authentication protocol method for global system for mobile communications (gsm) subscriber identity modules (eap-sim), RFC 4186, IETF, 2006. [115] N. Basher, A. Mahanti, A. Mahanti, C. Williamson, M. Arlitt, A comparative analysis of web and peer-to-peer traffic, in: Proceedings of the 17th International Conference on World Wide Web, ACM, 2008, pp. 287–296.
Please cite this article in press as: V.F.S. Mota et al., Protocols, mobility models and tools in opportunistic networks: A survey, Comput. Commun. (2014), http://dx.doi.org/10.1016/j.comcom.2014.03.019