Disruption Tolerant Networks (DTNs) are characterized by intermittent connectivity and potentially high end-to-end delays. As a consequence, the lack of adequate awareness of temporal path variability impacts throughput, energy efficiency and delay In particular, state-of-the-art DTN routing protocols that use time-averaged metrics and on-the-fly forwarding decisions based on past history not only miss out on good forwarding opportunities but also are vulnerable to using paths of poor quality. The more recent sociability-based protocols expend large control overheads to achieve better path planning, but are insensitive to variable packet deadlines. In contrast, we explore in this paper whether a DTN protocol with an expectation of future contacts in a “prediction time frame”—a window into the future—can effectively employ time-dependent path-planning. We leverage recent analyses of several mobility traces[1, 2, 3] that have shown periodic behavior being exhibited along with some degree of randomness. These hint at the possibility of achieving fine-grained predictability of node inter-contacts within some time frame and, thereby, making time-dependent choices of paths which are reliable and/or timely. Recent research has also demonstrated a “small-world phenomenon” in real-life dynamic networks[4, 5, 6], wherein a network is connected via short paths that grow only logarithmically with its size. These suggest that as long as frame based, fine-grain path planning preserves the small-world property, enumeration of available paths should not incur high overhead. Contributions of the paper.
We introduce a temporal frame-based approach for DTN routing. Intuitively, a frame is an interval of time in which node-pair inter-contact (link) probabilities are high for sufficiently many pairs such that together these pairs imply a temporally giant connected graph, over which reliable routing is possible even if there is a trade-off with delay. Through the analysis of real life dynamic network traces, we show that a suitably chosen time frame allows for deterministic or highly reliable meetings of a significant fraction of node pairs in the network, greatly improving the average path probabilities and expected throughput, while preserving the small-woorld property of the network. In the context of a frame, we next introduce a model of pairwise inter-contacts that can be used for predicting upper-bounds on node meeting instants. The model is simple to implement, and requires minimal information in a real-world dynamic setting. It does not assume the existence of infrastructure nor any advance knowledge of the underlying mobility model and network dynamics: nodes leverage the intrinsic pattern of inter-contacts to extract link information in the course of normal network evolution. Using the predicted schedules, we then demonstrate fine-grained network path planning using traditional QoS metrics (such as path length, delay, reliability, etc.), by designing REAPER (for Reliable, Efficient and Predictive Routing), a fully distributed single-copy routing framework that allows for temporally variable selection of the best path subject to some deadline constraints for message delivery. The common case control overhead of REAPER is polylogarithmic in the number of relay nodes, while maintaining enough information to be used with a variety of optimization objectives (in this paper, we optimize for path lengths, incerchangeably referred to as costs). REAPER is flexible in that it allows for the specification of the delay constraint on a per-message basis. The protocol also self-stabilizes under a bounded number of failures in the system; the formal proof of stabilization is presented in the Appendix. We have evaluated the performance of REAPER against link-metric based infrastructure-free single-copy DTN protocols, namely, Minimum Estimated Expected Delay-Based Distance Vector Routing (MEED-DVR) and Probabilistic Routing Protocol using a History of Encounters and Transitivity (PROPHET) . The evaluation is based on ns-2 simulations and considers a realistic human-carried mobile network setting. It shows an improvement in throughput of up to () over MEED-DVR (PROPHET) across light to heavy traffic loads, with up to () lesser average path lengths. In addition to discussing how these improvements hold even with respect to more recent single-copy protocols, we observe that REAPER has (best case ) lower control overhead than the sociability metric based BUBBLE Rap, and has about better throughput as a consequence of fine-grained path planning. Organization of the paper. In Section 2, we present related work on small worlds, inter-contact modeling, and routing in DTNs. In Section 3, we introduce and analyze the frame-based inter-contacts model and prediction problem. We describe REAPER and provide simulation-based validation in Sections 4 and 5 respectively. Section 6 features concluding remarks and discusses future work. Finally, the Appendix section presents the complete protocol and provides proofs of self-stabilization, correctness, optimality, and cycle-avoidance.
2 Related work
Small worlds in dynamic networks. As early as 1967, Milgram demonstrated in a famous experiment that human acquaintances are connected by the proverbial “six degrees of separation”. Until relatively recently, research on the small world phenomenon predominantly analyzed static graphs [4, 5]. However, recent research has shown this phenomenon manifests in dynamic graphs as well. Through the existence of spatio-temporal “communities” “superconnectors” that carry information across communities, the small-world phenomenon results in networks with only polylogarithmic path lengths. Nguyen et al  demonstrated high correlations of shortest dynamic path lengths and clustering coefficient over periods of 24 hours, attributing the observations to cycles in daily human activities. Clauset et al  and Nguyen et al  designed autocorrelation-based metrics for measuring temporal similarity and estimating the extent of disorder in small world dynamic networks. It turns out however, for reasons we discuss in Section 3, that autocorrelation techniques yield poor estimators for characterizing pairwise inter-contacts. Routing in DTNs.
Routing algorithms in DTN literature can be classified into two broad categories: replication-based and single-copy. In the former category, some prominent examples are Epidemic, Spray and Wait , MaxProp  and RAPID . Backpressure-based routing schemes use queue differentials to make forwarding decisions that achieve throughput optimality. A recent variation of backpressure routing, BWAR , jointly optimizes throughput and delay, but it relies on the ability to forward commodities destined for some node at every link and therefore reduces to epidemic-based flooding for a single destination class. Our work belongs to the second category of protocols, which uses statistical link metrics to choose a suitable relay for single-hop forwarding. This approach inherently yields more energy efficiency, if not more goodput, but its throughput or delivery delay can be adversely affected if the forwarding node is not chosen properly. Popular infrastructure-free benchmark protocols in this category are PROPHET  and MEED , which respectively maximize path probability and minimize expected delay, and serve as the basis for comparison with REAPER. Other probabilistic forwarding algorithms, such as [17, 18] assume some kind of global knowledge or the existence of static infrastructure. In the context of social networks, a third category of protocols has found prominence in recent times: those that route packets based on sociability information. BUBBLE Rap is such a benchmark that performs quite well in terms of throughput and cost in small- world networks, and is known to perform better than other centrality-based protocols (e.g., Simbet). In this paper, we analyze how fine-grained path planning gives our framework higher throughput and much better control overhead than BUBBLE Rap. More recent work such as[20, 21] advocate the discovery of temporally transient contact patterns and communities from DTN traces; however, such methods require global knowledge and are realized in a purely centralized manner.
3 Frame-Based Reliability and The Prediction Problem
3.1 Finding characteristic time frames in Human-Centric DTNs
We use three data sets from the Dartmouth Haggle project and one from the University of Milano that contain opportunistic Bluetooth contact traces between users in conference, lab or campus environments. In order to focus on purely peer-to-peer communication, we filter out all contacts with access points as well as with external nodes that can facilitate message transmission by acting as static or mobile infrastructure. The traces are analyzed as follows: we iterate over the interval duration, , from minute to roughly half of the total trace duration . In each iteration, we consider contiguous windows of length and calculate the following metrics of interest: (i) the average per-node inter-contacts probability, (ii) the percentage of connected links, (iii) the average path probability considering the most reliable paths, and (iv) the network diameter comprising of shortest hop paths. The normalized metrics are presented in Fig. 3.1(a)-(d). Observe that the node inter-node meeting probability increases greatly with the use of larger time-frames without compromising network connectivity. Interestingly, in each case, the average path quality is at least that of the average link quality in a suitably chosen window of time, despite the fact that path probabilities are multiplicative. This can be inferred from the small world property of the networks in the following way. A fraction of links are assured connectivity within each frame. Some of these relays are also superconnectors, i.e., they communicate with many other nodes in the network, even if with reliability lower than , yielding higher path qualities that surpass the individual link probabilities between the corresponding source-destination pairs.
It follows from this analysis that the use of time frames for routing in DTNs greatly enhances path quality and, as a result, throughput. The choice of a characteristic frame duration for a certain network is somewhat subjective, and as such trades reliability for overhead. For our purpose, we choose the minimum frame length that yields an average path reliability of or higher while maintaining a giant-connected component of or more of all available paths111 Observe that per pair of nodes we could have used a potentially different frame length for the same probability threshold due to variances in their meeting patterns over time. To avoid analysis over common multiples of frame lengths associated with node pairs in paths, we select a “one size fits all” characteristic frame length.
Observe that per pair of nodes we could have used a potentially different frame length for the same probability threshold due to variances in their meeting patterns over time. To avoid analysis over common multiples of frame lengths associated with node pairs in paths, we select a “one size fits all” characteristic frame length.. The characteristic frame lengths estimated for the four traces, along with their average path quality, connected component size (%) and network diameter are shown in Table 3.1.
Note that a larger frame length does not preclude the existence or discovery of short-delay paths in the network; it is merely used to enumerate future paths at any given point in the frame to enable routing at a finer level of granularity, as will be discussed in the next section. The criterion for selecting a frame length raises an important question: for any given frame length, isn’t it preferable to only include links of high reliability (say, above a certain cost threshold, ) to create paths in the network? Contrary to intuition however, our analysis shows otherwise. By way of example, Fig. 3.2(a) summarizes the variations of network metrics with increasing values of for the Infocom05 trace using its characteristic frame duration of day. Observe that the path reliability increases with increasing , and, while the diameter increases, it still preserves a small world. However, connectivity worsens, and the overall network throughput obtained from Little’s Law decreases. This phenomenon may be explained as follows: the assured contacts observed at the threshold of continue to provide the best available paths even when relatively low reliability links are admitted. Thus, even though a direct link between two nodes and may be admitted with a lower threshold, the best quality path for routing packets between them would likely still be the existing slightly longer path through the assured set of links, since most of the network is already connected through the small-world by then. Consequently, it can be observed in Fig. 3.2(b) that the path quality ECDFs are identical for a wide range of lower admission thresholds. Lowering the threshold further would help improve connectivity but not affect the existing best paths. When lower quality paths are omitted, the gain in average path quality is surpassed by the loss in connectivity, and consequently, the highest throughput is observed at . Therefore, the inclusion of low-quality links in a small world network typically enhances its performance once the characteristic frame length has been fixed. A vital difference in our analysis methodology from previous work is worth addressing here. In Nguyen et al , an adjacency matrix-based technique for discovering higher-hop path is described. Let be the adjacency matrix of a dynamic network up to time . According to Nguyen et al, the union should enumerate the higher hop paths of length . We regard this estimation as being too optimistic for frame-based computation of higher-hop paths, since the relative ordering of links in time is not captured in the adjacency matrix corresponding to a frame interval. We therefore eschew the occurrence of multiple hops during a frame interval , and discover higher-hop paths by computing . The network diameter, as expected, is bounded by as many intervals as the number of logical operations needed for convergence in the number of paths.
3.2 The Frame Based Inter-Contacts Model
As explained previously, the node-pair inter-contacts relative to a time frame are essentially a mix of assured and probabilistic events. We propose the following inter-contact model to characterize both aspects for a pair of nodes and relative to a frame of length :
i) Non-zero, independent meetings. There exists for each pair of nodes and such that the number of meetings in each frame is . The meetings are assumed to be independent.
ii) Bounded jitter. There exists a monotonically non-decreasing sequence of time instants in each frame, with , the start of the frame, such that for the first meetings, the th meeting instant between and has p.d.f. defined as in . , which represents the last meeting, however, is allowed to be probabilistic. Mathematically,
Note that the value of can be , accommodating the possibility of links with purely probabilistic contacts. The proposed inter-contacts model can be easily extended to slotted time frames, with summations replacing integration. Henceforth in the paper, we divide time into equidistant slots of length each and use contiguous slots to constitute the frame between a pair of nodes and .
3.3 The Prediction Problem
Let be a data structure that enumerates the history of independent contacts between and in the past time frames. The indicator variable , for and , is if and only if and met at the th slot of the th timeframe. The prediction problem can now be stated as: Given and the present time instant , predict the maximum delay before the next contact between and . To solve the prediction problem in our inter-contact model, we first estimate the meeting interval upper-bounds in the timeframe from history data, essentially converting the set of history timeframes into a single summary data structure that we term as the frame. Once the frame has been constructed, the time instant is mapped to an appropriate position in the frame and the nearest slot is returned. Step 1: Estimation of slot probabilities. We first find , the average number of a contacts per slot for the th timeslot in the timeframe. Step 2: Estimation of . The slots are estimated by a two-pass method. In the first pass, we keep adding consecutive slot probabilities till we reach a slot where the aggregate crosses . If such a slot is found, we mark it as , and continue to scan for successive slots in the same way, adding any extra probability that may be carried forward from the previous slot. That is, each subsequent for is essentially
Finally, we represent as the last slot observed in with non-zero probability. The frame constructed in this way is essentially a conservative (upper-bounded) representation of the meeting pattern between a pair of nodes, to be used as input to the routing framework described in the next section. We henceforth use the terms “frame” and “frame” interchangeably. The present instant can be normalized to the frame by the formula:
The maximum delay before the next contact is, therefore,
Note that the prediction strategy can compute a fine-grained meeting schedule without explicitly estimating the statistical characteristics of the inter-node mobility model. It can thus be readily computed online and can adapt to changes in meeting patterns given the same frame length. Previous work such as Nguyen et al  has advocated the use of autocorrelations to find the characteristic frame in a network, by computing autocorrelations over the inter-contact time series for each pair of nodes represented as a bit vector, and selecting the modal interval. The autocorrelation method, however, is restrictive in the sense that it looks for exact matches of corresponding elements in two consecutive intervals. Therefore, it does not capture meetings within bounded jitters, which is the property desired for path planning with bounded QoS estimates.
4 Reliable Efficient and Predictive Routing (REAPER)
In this section, we show how frames can be used to take temporally fine-grained routing decisions with an efficient routing framework that allows for diverse optimization objectives. For ease of exposition, we assume the network consists of nodes that each seek to send packets to one class of destination nodes (each node in this class is indistinguishably labeled , the “base station”). That said, the framework is readily extended to support multiple destination classes, anycast, or any-to-any routing requirements. Informally, our specific routing objective is to design a protocol that optimizes the cost of routing to a base station in a disruption tolerant network subject to deadline constraints. We use the standard notion  of dynamic path, delay, and cost or path length (interchangeably referred to as “hop count”). As the destinations are implicit, we abbreviate a path from to a base station at time as . Also, for ease of exposition, we define two additional functions:
(i) Next-hop, , for node in path : the node following node in the path .
(ii) Next-contact, , for node in path : the contact time between and on path . Let be the frame for any pair of nodes and of length . The routing problem can be stated as: Given a time slot and a deadline , letting denote the set of paths from to D at time , select a path from that satisfies the optimization objective:
The REAPER routing framework uses a fully distributed dynamic programming algorithm for solving the constrained optimization problem via the exchange of control packets between nodes. Each node in REAPER maintains a routing table of rows called the t-frame, as defined next.
Definition. A t-frame at node is an matrix of tuples. When routing converges, for and , is the tuple , where is a path in with such that
and each additionally satisfies the order enforcement property that the stored path delays are always in decreasing order of path lengths:
where and respectively refer to the first and second components of .
Thus, a t-frame has one or more entries corresponding to each of the slots, where the entry stores the best-delay -cost path and the corresponding next-hop neighbor originating at slot (which must be a meeting slot corresponding to the said neighbor). Note that the same -slot can offer a separate best path through the same or different neighbor(s) corresponding to each possible path length from to . However, we only store such paths if a higher-cost path has strictly lesser delay than all lower-cost paths in the same slot.
A node that meets a destination node enlists corresponding to each meeting slot in the t-frame. It then propagates to each meeting node , via a data structure called the s-frame, the path information from its t-frame adjusted relative to its meeting schedule with . To construct the s-frame, first “aligns” the slots of its t-frame with those in the frame (a one-to-one correspondence is observed since both frames are of the same length ). then computes, corresponding to each meeting slot , the best delay path available through it at each hop between the t-frame slots in the range that does not have as the next neighbor (for best-effort cycle avoidance).
Definition. An s-frame is an matrix that advertises from to the best-delay paths has via at the meeting times in . When the routing algorithm converges, with and the column entry ranging over the slots in , each element is the singleton , where is a path in with such that
where the range is defined as
Additionally, each must satisfy the order enforcement property from the t-frame definition. The s-frame is computed using Algorithm 1. The t-frame update algorithm by upon receiving is shown in Algorithm 2.
Let us illustrate the route dissemination process discussed above through an example. Assume that nodes and meet the destination directly, and learns about the available 2-hop paths to through them. Let slots, i.e., each t-frame or s-frame has dimension . However, since and do not meet, only paths of length up to are available. When meets (Fig. 4.1(a)), gets initialized at hop with the tuple at each meeting (colored) slot in . Similarly, when meets (Fig. 4.1(b)), gets initialized. Without loss of generality, assume meets before . As shown in Fig. 4.1(c), creates using Algorithm 1 that advertises the best -hop path at each meeting slot till the next meeting in . Upon receiving this information, initializes . When C meets B, gets updated with any new or better information obtained from using Algorithm 2. For example, the third slot (highlighted) in Fig. 4.1(d) has potentially two conflicting 2-hop paths, and stores , the least-delay path information. The forwarding algorithm searches the t-frame in a row-major fashion to find the next-hop node with least cost and best delay that satisfies the remaining deadline for a packet, given the present time that is relativized to the start of the frame using Equation 3.1. Clearly, if a higher-hop path had more delay than a lower-hop path originating in the same slot, the latter would always be selected over the former, since the search proceeds in an increasing order of hops. Thus, storing the former’s details would be tantamount to redundant information. Keeping this in mind, the order enforcement has been implemented in Algorithm 1 and Algorithm 2.
Discussion. The REAPER framework solves a temporal formulation of the traditional constrained shortest path problem in static graphs, using a multiple metric Bellman Ford algorithm. REAPER achieves completeness and optimality (cf. Appendix A) by solving the problem essentially over successive dynamic graphs in time. This bound, coupled with the small-world property of the underlying network, greatly reduces the complexity in REAPER when compared to competitive protocols such as BUBBLE Rap (cf. Section 5). Since the use of a frame inherently preserves the small world property, a t-frame storing polylogarithmic path lengths is sufficient to achieve near-complete enumerations of best paths. Since space is needed in each t-frame slot for the delay and next hop information, the overall storage complexity per node is . The storage is further reduced by order enforcement, and can even be in well-behaved networks where delays are an increasing function of path lengths. The control overhead (s-frame) per contact, can correspondingly vary between and ( and for any-to-any communication). Note that the routing framework does not assume a pre-defined fixed deadline, therefore every packet can have a different deadline and the same t-frame would be used by the forwarding algorithm to serve them all. Importantly, minor variations on the same t-frame can be used for solving a variety of optimization objectives, such as smallest delay–shortest length, highest reliability–shortest length, etc. in a fine-grained way.
We have validated our protocol using ns-2.34 simulations over synthetic mobility traces generated for a synthetic University Campus Environment mobility scenario, that exhibits the small world phenomenon. This is a -node synthetic trace that uses the Time Variant Community Model (TVCM) of Wei-Jen Hsu et. al. . For details on the simulation area and TVCM instantiation parameters, please refer to Appendix 0.B.
5.1 Reference Routing Algorithms
The case of replication-based protocols is relatively straightforward: as the network is driven towards near-capacity, the performance of many multiple-copy protocols[12, 13, 14] breaks down well before reaching the regime of ultra-heavy load. We do not therefore evaluate these protocols more comprehensively here. With respect to the single-copy protocols, we eschew consideration of those popular link-metric based single-copy protocols that use some notion of global knowledge of contacts or infrastructure such as well-known landmarks [17, 18]. Instead, we focus on the two canonical representatives of infrastructure-free protocols: MEED-DVR, an optimization algorithm based on the “Minimum Estimated Expected Delay (MEED)”  metric; and “Probabilistic Routing Protocol using a History of Encounters and Transitivity (PROPHET)” , which uses incremental forwarding based on node meeting probabilities that are aged according to three parameters (the designers’ parameter choices have been honored in this evaluation). For sociability metric-based protocols, we focus on the canonical state-of-the-art representative, BUBBLE Rap, which uses node communities and moving average degrees to route to the destination. We instantiate four versions of REAPER, with packet deadlines of , , and hours, to evaluate the sensitivity to deadline selection in the simulations. The simulation spans virtual days. Between the second and third days, the network generates -byte packets at various rates between bps to Kb/s for seconds. The network has the ns-2 default link capacity of Mbps, even though the network is connected to the base station only about of the time, and the actual achievable capacity is estimated to be lower than Kbps. Thus, the traffic rates range from ultra-low to ultra-high for this network.
Average Path Length (Cost). All four versions of REAPER have substantially lower average path lengths (Fig. 5.1(a)). As expected, PROPHET has the highest number of transmissions (about that of REAPER at the heaviest load), since the other two protocols globally optimize their respective metrics. Further, REAPER exploits the small world to yield logarithmic path lengths and is about better than MEED-DVR.
Throughput and Delivery Probability. As observed in Fig. 5.1(b), at ultra-high load (i.e. 9.6 Kb/s) REAPER_96, REAPER_72, REAPER_48 and REAPER_24 respectively have 135%, 128%, 128%, 114% higher throughput than MEED-DVR and 200%, 175%, 175%, 150% higher throughput than PROPHET. Observe that PROPHET and MEED-DVR lose capacity much quicker than all four versions of REAPER. A consequence of this is the loss in their delivery probabilities (Fig. 5.1(c)). In general, the four flavors of REAPER perform increasingly better with increasing deadlines. This is because shorter deadlines entail the use of longer paths to the destination and also result in higher packet drops due to possibly early expiration of deadlines. Average Delivery Delay. Fig. 5.1(d) plots the average delivery delays in the low traffic regime (up to 0.096 Kb/s) where all protocols have a 100% delivery ratio222We limit comparison to the low-traffic regime to get a fair comparison: the average delivery delay metric gets biased once packet losses start occurring.. We see that REAPER_96 and REAPER_72 perform comparably with MEED-DVR, while REAPER_48 and REAPER_24 have lesser average delays in the expected order of their deadlines. The good delay performance in REAPER despite deadlines is once again attributable to the use of time-dependent paths. Comparison with Sociability-Based Routing We now evaluate REAPER in comparison with the social routing benchmark Distributed BUBBLE Rap (DiBUBB), a protocol that classifies nodes into distinct communities and uses the average node degree over the past hours as a measure of individual centralities. Routing proceeds in an incremental fashion till the destination class is reached, and similarly to the destination node by forwarding to higher-degree members in the same class or to the base station itself. Because community detection is computationally expensive and incurs considerable overhead, we use an optimized version of the proposed algorithm SIMPLE for our evaluation. Like DiBUBB, REAPER exploits the small-world to achieve high throughput using logarithmic average path costs, albeit with traditional link metrics. In fact, REAPER uses slightly higher average path costs to the destination ( vs with packet deadlines of hours, and vs with deadlines of hours in the regime of ultra-heavy traffic). This slightly increased costs, however, results in noticeable benefits: REAPER achieves respectively about 42%, 30% and 10% higher throughput with deadlines of , and hours respectively. This result hints strongly at the benefits of fine-grained path planning: REAPER can change the planned path on the fly based on the remaining time for a packet, and maintain throughput by potentially forwarding packets that are near expiration over slightly longer routes. Social-based forwarding is oblivious to this dynamic change in urgency of a packet based on its remaining time, and uses the exact same paths for all packets regardless of their priorities (deadlines). In terms of overhead, much greater benefits are observed. Since DiBUBB always needs to transfer community and familiarity sets per contact, REAPER has an to times lower overhead than the former.
In this work, we have demonstrated the benefits of time-dependent path planning in the context of DTN routiung. We have designed a low-complexity online mechanism for predicting the pairwise meeting schedules of nodes, without explicitly estimating the underlying mobility statistics. By exploiting the ability to predict, we have designed a low overhead, self-stabilizing routing framework that performs fine-grained optimization of path hops under deadline constraints per se, but can be used for a variety of other optimization metrics. The delayed delivery mechanism coupled with time-sensitive global optimization of routing costs makes REAPER tunable to a wide range of capacity-delay trade-offs. As future work, we plan to extend the framework to encompass socially derived metrics to achieve scalability in large-scale human DTNs.
-  A. Chaintreau, P. Hui, et al. Impact of human mobility on opportunistic forwarding algorithms. IEEE Trans. on Mobile Computing, 6(6), 2007.
-  T. Karagiannis, J.-Y. Le Boudec, et al. Power law and exponential decay of inter contact times between mobile devices. In ACM MobiCom, 2007.
-  V. Conan, J. Leguay, et al. Characterizing pairwise inter-contact patterns in delay tolerant networks. In ICST Autonomics, 2007.
-  D.J. Watts and S.H. Strogatz. Collective dynamics of small-world networks. Nature, 393(6684), 1998.
-  J. Kleinberg. Navigation in a small world. Nature, 406(6798), 2000.
-  A.-D. Nguyeng, P. Senac, et al. Understanding and modeling the small-world phenomenon in dynamic networks. In ACM MSWiM, 2012.
-  E.P.C. Jones, L. Li, et al. Practical routing in delay-tolerant networks. IEEE Transactions on Mobile Computing, 6(8), 2007.
-  A. Lindgren, A. Doria, et al. Probabilistic routing in intermittently connected networks. ACM SIGMOBILE Mobile Computing and Communications Review, 7(3), 2003.
-  P. Hui, J. Crowcroft, et al. BUBBLE Rap: Social-based forwarding in delay-tolerant networks. IEEE Trans. on Mobile Computing, 10(11), 2011.
-  A. Clauset and N. Eagle. Persistence and periodicity in a dynamic proximity network. In DIMACS/DyDAn Workshop on Computational Methods for Dynamic Interaction Networks, 2007.
-  A.-D. Nguyeng, P. Senac, et al. How disorder impacts routing in human-centric disruption tolerant networks. In ACM SIGCOMM Workshop on Future Human-centric Multimedia Networking, 2013.
-  A. Vahdat and D. Becker. Epidemic routing for partially-connected ad hoc networks. Technical report, 2000.
-  T. Spyropoulos, K. Psounis, et al. Spray and wait: An efficient routing scheme for intermittently connected mobile networks. In ACM WDTN, 2005.
-  J. Burgess, B. Gallagher, et al. Maxprop: Routing for vehicle-based disruption-tolerant networks. In IEEE INFOCOM, 2006.
-  A. Balasubramanian, B. Levine, et al. DTN routing as a resource allocation problem. ACM SIGCOMM Computer Communication Review, 37(4), 2007.
-  M. Alresaini, M. Sathiamoorthy, et al. Backpressure with adaptive redundancy (BWAR). In IEEE INFOCOM, 2012.
-  Q. Yuan, I. Cardei, et al. Predict and relay: An efficient routing in disruption-tolerant networks. In ACM MobiHoc, 2009.
-  C. Liu and J. Wu. An optimal probabilistic forwarding protocol in delay tolerant networks. In ACM MobiHoc, 2009.
-  E. M. Daly and M. Haahr. Social network analysis for routing in disconnected delay-tolerant MANETs. In ACM MobiHoc, 2007.
-  W. Gao and G. Cao. On exploiting transient contact patterns for data forwarding in delay tolerant networks. In IEEE ICNP, 2010.
-  X. Zhang and G. Cao. Transient community detection and its application to data forwarding in delay tolerant networks. In IEEE ICNP, 2013.
-  J. Scott, R. Gass, et al. CRAWDAD data set cambridge/haggle (v. 2006-01-31). http://crawdad.org/cambridge/haggle/, 2006.
-  P. Meroni and S. Gaito andothers. CRAWDAD data set unimi/pmtr (v. 2008-12-01). http://crawdad.org/unimi/pmtr/, 2008.
-  E. Tardos and J. Kleinberg. Algorithm design. Pearson/Addison-Wesley, 2008.
-  W.-J. Hsu, T. Spyropoulos, et al. Modeling spatial and temporal dependencies of user mobility in wireless mobile networks. IEEE/ACM Transactions on Networking, 17(5), 2009.
Appendix 0.A APPENDIX: Analysis of REAPER
0.a.1 Complete Routing Module
In this section, we formally present the complete routing module using the standard guarded-command notation of distributed programs (Algorithm 3). We let represent the set of relay nodes. Also, for the sake of generality, the destination node is assumed to have a t-frame with only a hop path to itself at all times. Each relay additionally maintains , a single history of the last s-frame sent to it by every neighbor . The program actions - are executed assuming a weakly fair scheduling policy. Actions and respectively create an s-frame to be sent to a neighbor, and incorporate a t-frame received from a neighbor using algorithms previously discussed in Section IV. Actions - and are required to ensure that the program self-stabilizes after any errors, as explained next.
The guard macros , are sanity checks for t-frames and s-frames, required for self-stabilization. states that a destination node can only have a hop path to itself, while all the other nodes can only have hops. Whenever is not satisfied at a node, the corresponding t-frame is reset by actions and . states that an infinite-delay (non-data) slot in a t-frame should have no next hop, and a finite-delay slot should tally with the last-sent s-frame from the corresponding next hop. also checks the descending order of delays at a certain slot in the t-frame, as enforced by Algorithm 2. the If any data slot violates this condition, it would be reset by the action . The condition checks if an s-frame received from a neighbor is legal. The condition states that delay at any slot offered by the new s-frame cannot be higher than what it might have provided earlier for the same hop. This is understandable, since paths are upgraded only if a lower delay is discovered for the same hop in the same slot. When is violated, a node performs what we call the best-effort quarantine action (action ). It eliminates from the t-frame, all contributions from the dubious neighbor in a best effort at limiting the propagation of spurious paths to its other neighbors. However, it may so happen that the spurious s-frame gets forwarded a second time to the same node. Since a single history state is kept, the test would now pass and the spurious frame would get saved. But due to progress properties of the protocol discussed in the next section, eventually a valid s-frame would be forwarded to the node from the same neighbor. It is easy to see that the quarantine action would fire at most once during the process of replacement of an invalid s-frame with a new valid s-frame, and from the next meeting onwards would always be satisfied.
0.a.2 Correctness and Optimality
We establish the correctness and optimality of REAPER via the following two lemmas:
Lemma 1. The information in is both necessary and sufficient for REAPER to find the best cost path for at any instant . Proof Sketch: We consider the two obligations separately. Necessity of : A valid path for a node can be an invalid path for its higher-hop neighbor in terms of deadline satisfiability, in which case the best path could be a different path with a possibly higher cost. Therefore, storing a proper subset of every-hop best paths in can require additional requests for paths to the neighboring nodes since the deadline may not be met through any of them, or can yield suboptimal paths to the destination in terms of cost. Sufficiency of : It suffices to show that when the routing algorithm for REAPER converges, the best path at any instant can be computed from by the forwarding algorithm. Note that must have a valid suffix
from its next hop relay . This information is propagated to through the s-frame. By way of contradiction, assume that when meets a relay in slot , the best -hop path information through till the next meeting (at slot ) is not forwarded by . Since compares every - hop path through in the interval to compute the best -hop path at , this is not possible. Since the information of all best paths is present in the system, any instant can be mapped to a specific slot in and the corresponding best path computed using the forwarding algorithm.
Lemma 2. REAPER’s routing and forwarding algorithms satisfy Equation (4.1). Proof Sketch: Assume that a path is chosen at time by node . Recall its cost is hops, its next hop is . Let the contact with happen at meeting slot . By Lemma 1, the routing algorithm ensures the optimal path is in , and since the forwarding algorithm first checks for the lowest cost path, and then for lowest delay option, it cannot be that . If is sub-optimal, we have the following cases: Case I. The optimal path is a -hop path through the same relay at a different meeting slot . Since is sub-optimal, we must have
But since the forwarding algorithm compares same-hop best-delay paths at all slots in and minimizes , and by Lemma 1, no path is eschewed, this is impossible. Case II. The optimal path is a -hop path through a different relay at a different meeting slot . Since stores information corresponding to all relays, the algorithm would choose through and not .
0.a.3 Self-Stabilization and Progress
We prove the self-stabilization and progress properties of our distributed routing algorithm with a single base station for simplicity, using the convergent-stair technique. The extension to a destination class of nodes is straightforward.
Let be the set of nodes having an -hop path to the destination. It is easy to see that , a singleton set. Further, it is not necessary that for any . We then define the following set of invariants as shown in Fig. 0.A.1. It may be observed that implies stabilization of routes in the system.
0.a.3.1 Closure Properties
We first prove the closure properties of the invariants in Fig. 0.A.1. (A) is closed: When holds for a process , actions ,, and are disabled. We then have the following two cases: Case I. : In this case, only action is enabled. Since no change is made to through the action, all the three sub-clauses and continue to hold and is preserved. Case II. : Following the above logic, since the send action makes no changes to , is preserved. For the receive action , even if an existing value in is overwritten, note that fires only when the received frame is well-behaved with respect to , and the corresponding send happens when both and hold. Since each of the clauses is conservative, the changed also preserves . (B) is closed : We prove this by the method of induction. Base case: We have already shown that is closed. Therefore, it suffices to show that the second clause is closed given . Note that and that hop is always stable. Given , therefore, , never changes. For each , the send action at is disabled for . The receive action can only overwrite the first time meets , and the predicate holds by virtue of equality. If is not overwritten by action , the predicate is trivially preserved. Thus, is closed. Induction hypothesis: is closed. Induction: We need to show that is closed. For either or , implies only actions and are enabled. The send actions at or do not affect or till the th hop, so the predicate is trivially preserved. For process , the receive action does not affect either or . For process , since holds, no improved information till the th hop can be obtained from through the receive action , and the predicate continues to hold. Thus is closed.
0.a.3.2 Progress Properties
We now prove that our algorithm self-stabilizes, i.e. given any state , it converges to a state given a bounded number of failures. We prove the progress property using the following sequence of leads-to () formulations assuming a weakly fair scheduling policy, in the following two steps: (A) : Given a state , let us consider the variant function: , a lexicographic ordering where = the number of nodes in N that satisfy the guard of the th action. Clearly, whenever action 1, 2, 3 or 5 executes, the corresponding decreases by ; hence the variant function is monotonically decreasing with a lower limit of . When reaches its lower bound, the system is in state . (B) : implies that only actions 4 and 6 are enabled. Consider the variant function , where is an oracle variable denoting the total number of -hop paths to be eventually recorded in the system, and is the total number of -hop paths discovered in state . The function is lower-bounded at and is non-increasing, since it decreases through an updating receive action involving an s-frame , , , and remains constant otherwise. Due to the system assumption of weak fairness, we can say that the value of eventually decreases given , and the system reaches state in finite time. Thus, we prove that the algorithm is self-stabilizing under a bounded number of failures.
0.a.4 Cycle Avoidance
In the steady state, the per-link protocol overhead at a node is polylogarithmic. Storing the entire path instead of just the next hop would have sufficed to eliminate cycles, but at the cost of higher overhead. Instead, eachnode excludes from s-frame , all the paths that have as the next hop (as discussed before) as a first step at cycle avoidance. Observe that paths with cycles can still exist in the t-frame; nevertheless, we can assert:
Lemma 3. At any timeslot , any node will always select a cycle-free path to the destination. Proof Sketch: We consider two cases: Case I. A path has a cycle of length with as a recurring node. Let be the sequence , of which is the suffix . Assuming that there are no other paths in , the forwarding algorithm has to select between these two paths. Now and
With either path, since the forwarding algorithm proceeds in increasing order of hop counts, which has fewer hops would be selected over . Case II. A path has a cycle of length with a relay , , as a recurring node. Let be the sequence , and be the corresponding linear path . Both paths would feature on the same start slot in at hop indices and respectively. By reasoning as we did in the previous case, the forwarding algorithm would select . The case of paths that are a combination of cases I and II is handled similarly.
Appendix 0.B APPENDIX: TVCM Parameters Used in Section 5
The University Campus Environment is generated using the TVCM model based on two essential entities: “communities” and “time periods”. We choose communities in a geographic area of that are classified into home, work, food and
recreation communities (with one recreation community doubling as a food community). Every node has a probability of going to each community at each time period. Also, every node has an epoch length and an epoch time which signifies the stationary time of the nodes at those communities. We have instantiated parameters for the TVC model to faithfully approximate mobility patterns on a university campus, to obtain a synthetic University Campus Trace. A day has been divided intotime periods, and node mobility in each period is specified in terms of each node going to a certain community with a specific probability. Every community is in dimension. The node mobilities are generated in such a way that, in a certain time period , a node is given a specific probability to go to a certain community , as summarized in Table 0.B.1.