# Beaconing-Aware Optimal Policies for Two-Hop Routing in Multi-Class Delay Tolerant Networks

## Abstract

In Delay Tolerant Networks (DTNs), two-hop routing compromises energy versus delay more conveniently than epidemic routing. Literature provides comprehensive results on optimal routing policies for mobile nodes with homogeneous mobility, often neglecting signaling costs. Routing policies are customarily computed by means of fluid approximation techniques, which assure solutions to be optimal only when the number of nodes is infinite, while they provide a coarse approximation otherwise. This work addresses heterogeneous mobility patterns and multiple wireless transmission technologies; moreover, we explicitly consider the beaconing/signaling costs to support routing and the possibility for nodes to discard packets after a local time. We theoretically characterize the optimal policies by deriving their formal properties. Such analysis is leveraged to define two algorithmic approaches which allow to trade off optimality with computational efficiency. Theoretical bounds on the approximation guarantees of the proposed algorithms are derived. We then experimentally evaluated them in realistic scenarios of multi-class DTNs.

## 1Introduction

Delay–tolerant networks (DTNs) are sparse and/or highly mobile wireless ad hoc networks which assure no continuous connectivity. Examples of such networks are those operating in mobile or hash terrestrial environments, or interplanetary networks. Disruption may occur because of the limits of wireless radio range, sparsity of mobile nodes, energy resources, attacks, and noise. One central problem in DTNs is the routing of packets from a source towards the desired destinations. When no *a priori* information is available over the mobility pattern of the nodes, a common technique for overcoming lack of connectivity is to disseminate multiple copies of the packet in the network: this enhances the probability that at least one of them will reach the destination node within a given temporal deadline. This is referred to as *epidemic–style* forwarding, because, alike the spread of infectious diseases, each time a packet–carrying node encounters a new node not having a copy thereof, the carrier may infect this new node by passing on a packet copy; newly infected nodes, in turn, may behave similarly. The destination receives the packet when it meets an infected node. However, epidemic routing is very energy consuming and a convenient compromise of energy versus delay compared to epidemic routing is provided by two-hop routing [11] where the infection is limited at the contacts between the source node and intermediary nodes, that is, the source node passes on the packets to be transmitted to all the mobile node she encounters (provided that these last ones do not already have a copy of the packet in their local buffer), and the “infected” mobile node can deliver the packets they are carrying only to the final destination.

We target here the design of optimal two-hop routing policies for DTNs as in [1]. In two-hop routing, a routing policy controls the decisions taken by the source node to forward/not to forward a given packet to a given mobile node she is encountering at a given time instant. In this work, we further consider network scenarios where mobile nodes are categorized in district multiple classes which may capture different mobility patterns and different available communication technologies onboard and we study the “shape” of optimal routing policies under heterogeneous mix of mobile nodes classes.

In the seminal work [3], the authors study optimal static and dynamic control (proved to be threshold based) policies for two-hop DTN when mobile nodes are homogeneous. In this case, optimal policies can be found in closed form. Furthermore, the authors show that when the parameters are unknown it is still possible to obtain a policy that converges to the optimal one by using some adaptive auto–tuning mechanism. Extensions of such adaptive mechanism are proposed in [12]. Heterogeneous scenarios are studied in [18] where mobile nodes belong to multiple distinct classes and the routing policy may be class-dependent; the authors resort to fluid approximation to characterize the optimal routing policies; however, even if the proposed approach performs well when the number of mobile nodes goes to infinity, fluid approximation may lead to coarse solutions for finite numbers of mobile nodes (e.g., in other fields in [19], fluid approximation is shown to perform well when the number of users is over 200). Optimal control techniques are further proposed under the assumption that the number of copies of the packet is monotonically increasing in time. Along the same lines, in [8], the authors provide the closed form structure of the controller and provide stochastic algorithms for the learning of the parameters. Timers have been proposed to be associated with messages when stored at mobile nodes, so that after a given threshold the message is discarded. Their optimization under fluid approximation is discussed in [2]. In [21] and in [7], the authors optimize network performance by designing the mobility of message relays. Evolutionary game theory has been adopted in [6] to incentivize mobile nodes. Many other related problems have been studied. In [5] the authors deal with the problem of transferring large files from source to destination when all packets are not available at the source prior to the first transmission. In [4], a class of replication mechanisms for packets in the network that include coding in order to improve the probability of successful delivery within a given time limit. In [10], nodes are considered selfish/non–cooperative and the problem is to incentivize the mobile nodes to forward the packet. The first node that delivers the packet receives a unitary reward. The only cost of the mobile nodes is due to beaconing. The authors study the best strategies by using evolutionary game theory tools. In [9], the authors focus on multi–hop routing scenarios in the attempt to design incentives for the mobile nodes to avoid that these nodes behave strategically in terms of edge hiding and edge insertion. The proposed model works only when beaconing costs are not present and each mobile node is subject to the same cost. A similar technological, but not technical, approach is proposed in [22]. In [13], the authors study different routing strategies when the nodes have a limited buffer and provide an experimental comparison of the strategies. A similar work is presented in [15] except that here the authors introduce social information about the nodes. Cooperative aspects are treated in [16] and [17].

Differently than the aforementioned reference literature, (i) we explicitly include in the definition of the optimal routing policy the cost for beaconing messages exchanged by mobile nodes to support packet forwarding; (ii) we allow mobile nodes to discard the packets they are carrying upon expiration of a local temporal deadline (the number of copies of a packet is thus no-longer monotonically as customarily assumed in the reference literature); (iii) we do not resort to fluid approximation, but rather propose optimization algorithms for finite mobile node populations; in details, we introduce an algorithm to find optimal routing policies running in exponential time, as well as approximate polynomial-time algorithms when the number of nodes is finite; in the latter case, formal approximation theoretical bounds are also derived. Finally, we provide a thorough experimental evaluation with realistic settings of the proposed algorithms in terms of approximation ratio, scalability in the number of classes, further evaluating the impact of network parameters onto the optimal routing policies.

## 2Problem statement

### 2.1Scenario

We consider an environment populated by one *source* node, one *sink* node and multiple *mobile nodes*. *Sink* and *source* node may as well be mobile. A packet is initially held by the source and it must be delivered to the sink no later than time . We consider a discrete time representation developing in slots of fixed duration and we denote the total number of useful time slots as , where the –th time slot corresponds to the time interval . Mobile nodes are divided according to a set of classes . Each class encodes the features of its nodes, including their *mobility profile* and *transmission technology*. In particular, given a class , indicates the total number of mobile nodes belonging to that class; indicates the *local* time to live, namely the amount of time for which each mobile node of class will keep a local copy of the packet before discarding it and not accepting it again in the future. The mobility profile of a node of class is given by the average speed . Finally, we describe the transmission technology for class with the following parameters:

the communication range for class is denoted by ;

the

*beaconing cost*captures the energy consumed for the connection control and signaling procedures to support packet transmissions in class ,; as an example, the beaconing cost may capture the energy consumed to send/receive beaconing messages to discover nearby mobile nodes;the

*transmission cost*is the energy consumed to transmit a packet to a recipient in class .

Different classes can have the same technology, e.g., WiFi, sharing beaconing costs. We denote by a technology, and we denote by the subset of classes adopting technology . With overriding of notation, we use indistinguishably and when . Table ? summarizes all the parameters that define a generic class .

number of nodes in class | |
---|---|

packet’s local time to live | |

average speed | |

communication range | |

beaconing cost | |

transmission cost | |

Transmission opportunities between two nodes are given by contacts taking place when each node is within the communication range of the other one. We restrict our setting to a 2–hop routing scheme, where each mobile node can receive the packet only from the source and can forward it only to the sink. Contacts at the source and at the sink are assumed to follow a multi–class Poisson law, where the arrival rate for nodes of class (either at the source or the sink) is denoted by and computed according to [3]:

where is a constant set to and is the radius of circle in which the nodes move.

When a contact is made between the source and a mobile node that did not receive the packet, the source forwards it according to a *forwarding policy* which depends on the current time and the recipient’s class. Given a time slot and a class , the policy profile at time is where indicates the forward probability at time slot for class ; we also denote with the entire policy for such class . In general, when the packet is forwarded, some energy is spent and the packet’s delivery probability is increased. We denote with the probability of delivering the message before time given policy profile . Obviously, such value is prevented from growing indefinitely by a budget constraint. We call the upper bound on the total spent energy (including both beaconing and transmissions).

### 2.2Formal model

We define as the random variable expressing the number of mobile nodes of class that have received the packet by time slot , while is a random variable expressing the number of mobile nodes of class that still keep a copy of the packet at time slot . These variables both depend on and are, in general, different. Indeed, since a mobile node can both receive and discard a packet before time slot , we have that . Furthermore, we denote by the probability that a mobile node of class does not receive any packet in time slots as function of . The expected number of mobile nodes of class that receive a packet in time slots is:

where . The expected number of mobile nodes of class that have the packet at time slot is:

The probability that a packet is delivered by to the sink is:

where

The budget constraint is formulated as:

The left term of the inequality adds up the expected transmission costs with the expected beaconing costs for class , given a policy profile . In particular, transmission costs are obtained by multiplying by the expected number of nodes that will receive the packet from slot 0 to slot ; on the other side, a beaconing costs of is paid for each time slot with a probability of , i.e., when a packet transmission could be made.

We aim at finding the optimal policy that maximizes without violating budget constraint (Equation 2).

### 2.3Problem properties

We now show some theoretical properties that we shall exploit in addressing the optimization problem introduced above.

It is easy to see that is monotonically increasing in and that, as a consequence, transmitting for a larger (expected) number of slots cannot result in a lower delivery probability.

Similarly to what proposed in [3], we define a threshold–based policy as:

where . As in the single–class case, optimal policies are threshold based.

The delivery delay c.d.f. is , where and . Let us denote with a *non–threshold* policy for class and with a policy obtained by shifting to the left all the non-empty slots of and by rounding them so that matches the definition of threshold policy introduced above. For any obtained in this way we have that and therefore

that is, for any given joint policy , if we substitute the marginal policy of a class with its threshold version the probability of delivery within time steps will not decrease.

Consider, for instance, a two–class instance with: , , , , , , . We approximated the optimal policy profile by discretizing the values of with a fine grid with step . In addition to these points, we considered all the points in which the threshold of one class is integer and the threshold of the other class is calculated in such a way the budget is completely consumed. We evaluated the objective function at all these points and select the maximum. The approximately optimal policy is , . Hence, at the optimum, a fractional part is assigned to both classes.

Nonlinearity is trivial. Nonconvexity is proved by showing the nonconvexity of the feasibility region by computing the Hessian matrix of the budget constraint (Equation 2) to which we will refer here with (notice that we restrict our attention on threshold policies from now). Hessian matrix is:

The above properties show that the optimization problem is hard. In particular, the adoption of non–convex programming techniques required by the nature of the problem cannot assure to find of global optimal solutions. For these reasons, we focus on the problem of developing approximation algorithms and of studying their theoretical and empirical approximation errors.

## 3Approximation algorithms

In this section, we introduce two approaches to compute the optimal (threshold) policy. We provide the formalization of two approximation algorithms and we discuss their guarantees on the solution quality loss.

### 3.1Non–polynomial–time approximation scheme

We start by defining an approximation scheme that does not run in polynomial time, but for which optimality losses can be arbitrarily bounded. We overconstrain the optimization problem, allowing only a single class to have a fractional threshold in its associated policy. This additional constraint is likely to introduce worsenings in the solution quality (see Property ?) but it allows us to provide a combinatorial version of the optimization problem. Indeed, once all the classes except one have been assigned integer policies, the potentially fractional policy of the remaining class is univocally determined either by the policy that consumes all the remaining budget or the one that transmits until the last useful time slot (see Property ?). In addition, we split each slot of length in sub–slots of length where, for simplicity, .

This overconstrained problem can be solved optimally by using an enumeration algorithm: we enumerate all the feasible threshold policies and we select the best one (see Property ?). We report in Algorithm ? the necessary steps. At Step 1, the algorithm initializes to be zero. If it is not possible to entirely consume the budget, then the optimal policy profile is to assign to each class (Step 2–3). Otherwise, the algorithm enumerates all the classes , and for each class it enumerates all the policy profiles s.t. is integer and budget is entirely consumed (Step 5–6). Finally, we keep trace of the best policy found so far.

We now describe an efficient method to enumerate all and only the feasible policy profiles s.t. is integer and budget is entirely consumed. First, we build a lexicographic order over and we scan lexicographically the classes in . Then, for each we determine the range of feasible values for on the basis of the policies assigned to the classes as follows:

where is computed as follows:

initially we compute:

where

if , then is the solution (that can be approximated by means of Netwon algorithm) of the following equation:

and where and are defined in the following way:

Once the previous steps are done, for every element in , we assign it to and go to the next class according to the lexicographic order. Finally, once the policies of all the classes have been assigned, the policy of is easily given by .

We need to prove that:

all the policies except are integer,

the budget is exactly consumed, and

all and only the feasible policies are enumerated

The first two points are trivial by construction (given that the policy of is the only potentially non–integer and is computed as the policy that consumes the budget given the policies of all the other classes). To prove the third point, we observe that is always a well–defined range. Indeed, returns the largest that consumes exactly the remaining budget given the budget consumed by all the classes preceding in the lexicographic order. Assigning a policy larger than does not allow one to consume entirely the budget. If the policies assigned to the previous classes are feasible, then is always non–negative. As well, returns the smallest that consumes exactly the remaining budget given the budget consumed by all the classes preceding in the lexicographic order and assuming that the classes that succeed transmit all the slots. Assigning a policy smaller than does no allow one to consume entirely the budget. Even in this case, if the policies assigned to the classes that precede is feasible, then is always smaller than . Thus, by construction, for each policy assigned to class belonging to , it is always possible to find a feasible policy for the succeeding classes.

The number of policies enumerated by Algorithm ? is exponential in the number of classes, being .

We can derive a theoretical lower bound over the quality of the solution found by Algorithm ? w.r.t. the optimal solution of the optimization problem.

Call the optimal policy profile and call the policy profile in which for all and . Obviously, . In addition, it is obvious that . This is because is a feasible policy profile in which at most one policy is fractional that is not assured to consume exactly the budget. We can write a lower bound to as:

By using such lower bound over , we can write:

since, given and , we have . Thus, we are interested in:

where the minimization is over all the parameters. Although the definition of is intricate, a bound can be derived disregarding the exponential nature of all the and considering them as arbitrary values in . In this case, for reasons of symmetry, the values that minimize the maximum ratio prescribe for all . This leads to the bound stated in the theorem.

Notice that the theoretical lower bound does not depend on whether the beaconing costs are present. The worst case is when and , obtaining a ratio of . However, it can be observed that the worst case ratio goes to one exponentially in . Thus we can obtain a good approximation ratio with a small value of , e.g, the theoretical lower bound over the approximation ratio is about when . Algorithm ? is an approximation scheme (AS), given that the ratio goes to one as goes to zero. However, it is not a fully polynomial time AS (FPTAS), its complexity not being polynomial in all the parameters.

### 3.2Polynomial–time approximation algorithm

In this section, we discuss a heuristic approach to approximate the optimal policy in polynomial time. We start by providing Algorithm ?, a method that greedily maximizes an objective function . We shall consider two versions of this function, denoted with and , and we will discuss approximation bounds guaranteed by their employment.

Algorithm ? works on the same discrete-time representation we introduced above, where each time slot has a temporal length of . It starts from an initial empty policy and it proceeds considering only integer threshold policies. At each iteration, it appends a locally optimal time slot for a class meaning that such class will transmit with probability of for an additional subsequent time slot. Class is selected as the one that would introduce the largest gain in if a slot is assigned to it. We denote with the integer index for class , referring to the last allocated time slot. Similarly, denotes the discrete marginal gain of obtained by allocating a slot to class in the current policy.

#### First version, locally optimizing

In the first version of Algorithm ?, we consider the maximization of the marginal gain of , i.e., the delivery probability. Namely, at step (7) it holds that . In this case, represents the benefit, in terms of delivery probability, that an additional time slot for class would introduce at the current iteration. By exploiting a result presented in [14] we are able to provide a bound on the solution quality obtained with this version of the greedy algorithm. The result we shall use can be summarized as follows (see [14] for details).

Theorem ? states that greedily maximizing a submodular set function introduces a bounded suboptimality. Eventually, the bound converges to () when , that is, when the maximum number of selections allowed by the cardinality constraint is made.

In order to apply this result to Algorithm ?, we need to show that the problem of finding an optimal integer policy can be expressed as the maximization of a submodular set function subject to a cardinality constraint. This similarity can be shown by using the following simple formalism. Let us assume that each element in the ground set is a pair where and . Then, every subset can be uniquely associated to an integer policy that we denote as . Intuitively, the correspondence between and is obtained by the following construction rule:

Therefore, the objective function for a policy can be rewritten as a set function .

The second necessary step is to derive a cardinality constraint to define the problem’s feasibility region. In our problem, the feasibility of a policy is determined by the budget limit, namely by Constraint (Equation 2). For this reason, ideally one would like to find a such that if and only if violates Constraint (Equation 2). However, it can be easily shown that budget feasibility cannot be expressed with a cardinality constraint. The reason is straightforward. The budget of a policy does not solely depend on the number of transmitting slots, but also on how those slots are distributed among the different classes. Nevertheless, a necessary (not sufficient) cardinality upper bound can be determined via the following theorem.

Let us assume that . Then, consider a threshold policy where . If is budget–feasible then, by definition, the policy obtained in this way should be feasible too: for every where substitute with . However, by definition of such a policy cannot be budget–feasible.

Under the above assumption, the optimal integer policy problem can be associated, up to a relaxation of the feasibility constraint, to the maximization of the set function , subject to . In the next step we show the submodularity of .

First, let us consider a setting with a single class. From Property ?, we can focus only on threshold policies and rewrite as a function of , namely the threshold value (this value, in general, can be non–integer). Then it can be easily shown that is a concave function since the Hessian matrix has strictly negative eigenvalues. Given a function , then is submodular on the subsets of an arbitrary set if and only if is concave. We can then conclude that is submodular in the case of a single class. Let us now show submodularity for the case with two classes. Let us denoted with the marginal gain of obtained by adding the element to the set , namely adding a transmitting slot to some class to the policy . For submodularity to hold, we need to show that for every , , such that and we have that . By definition adds a slot to a single class, let us assume without loss of generality that this class is . Then we have:

and, analogously,

Since by submodularity of and by monotonicity, we have that is submodular. The same reasoning can be extended to an arbitrary number of classes.

Theorem ? can be applied by showing that Algorithm ? corresponds to the greedy element-selection rule reported in ( ?). It is easy to see that rule ( ?), when applied to the integer policy problem, proceeds by locally optimal appends in the same way that Algorithm ? does. Hence, we are now in the position of state the following theorem:

The inequality stated in the theorem follows immediately from the following two properties. First, by applying Theorem ? to Algorithm ? (version 1) we have that . Second, since is the optimal solution of a relaxed version of the integer policy problem, it holds that .

The previous theorem, provides an *online* bound on the solution quality, being it dependent on the number of iterations the algorithm will succeed in performing without violating the budget constraint. An *offline* guarantee can be given by computing the minimum number of slot to be assigned to each class . This number can be computed by setting and computing the maximum number of time slots during which can transmit without saturating the budget.

#### Second version, normalizing with budget costs

The second version of our algorithm is an improvement to the previous version that holds when no beaconing costs are considered. Here is obtained by normalizing with the budget cost that an additional time slot will introduce. In other words, will represent a ration between benefits and costs. Under the assumption that no beaconing costs are present and that we deal with threshold policies, each transmission has an independent cost and the budget spent by a policy is given by:

and, consequently,

If we modify rule ( ?) by normalizing the objective function by the budget cost for each candidate element, we can again show the equivalence between the new rule and Algorithm ? (version 2). As a consequence, we can again resort to a result presented in [14] and provide a quality bound on the solution obtained with the combination of the two versions of Algorithm ? when beaconing costs are not considered.

The proof follows immediately by the consideration made above and a straightforward adaptation of results presented in [14].

## 4Experimental evaluation

In this section, we provide some experimental evaluations of the proposed algorithms. Results are obtained from MATLAB simulations and are aimed at showing the feasibility of our approach and evaluating its performance in terms of solution’s quality. We shall also discuss some qualitative issues observed in the obtained policies.

### 4.1Experimental setting

Each instance of our problem is described by different parameters. In our experiments, we generated istances by considering finite sets of values for each parameter, see Table 5 for a complete summary. In particular, we devote our attention to three different mobility profiles and to three different transmission technologies for mobile nodes. Mobility profiles are characterized by increasing average speeds. The scenario that we imagine is populated by mobile devices carried by pedestrians, users on bycycles, and users on vehicles, respectively. The transmission technologies we consider provide increasing communication ranges: ZigBee, Bluetooth 4.0. and Wi-Fi Direct. We derive the corresponding values for and by considering the technical specifications of each technology and assuming an application scenario where a single packet has a size of kB and a slot interval . For simplicity, we assign the same number of users to each class.

temporal deadline for delivery () |
---|

25, 50, 100, 250 |

radius of the environment () |
---|

350, 500, 750,1000 |

number of nodes |
---|

9, 15, 20 |

mobility profiles () |
---|

pedestrians (1.5) |

bicycles (6) |

vehicles (9) |

transmission technologies |
---|

ZigBee () |

Bluetooth 4.0 () |

Wi-Fi Direct () |

In the experimental results proposed here, we consider up to 3 classes and a temporal discretization varying according to . The reason behind this choice can be intuitively described by the two graphs of Figure ?, where we depict the theoretical lower bound from Theorem ? with respect to different resolutions and numbers of classes. As it can be seen, a maximum resolution of represents a reasonable choice to guarantee about of the optimal solution quality without the burden of a prohibitive number of time slots. On the other side, by adopting a maximum number of 3 classes we obtain a case which is fairly close to the worst case (derived for an infinite number of classes) and that is computable by means of our grid algorithm (as discussed in the following—we recall that our grid search requires compute time that is exponential in the number of classes). Finally, we remark that we chose a small number of nodes for simplicity in our experiments, but that the compute time of all our algorithms is linear in the number of nodes.

### 4.2Benchmarks

We compare the performance of our algorithm w.r.t. the performance of two heuristic easily–computable algorithms and of an upper bound over the value of the optimal policy.

#### Greedy on arrival rate

This algorithm works as follows: it sorts the classes in descending order of , then it allocates all the possible budget to the classes from the first one in the order to the last one. For instance, given three classes with , the algorithm assigns all the possible budget to class and, if there is a remaining budget, then all the remaining budget is assigned to class and so on. The rationale is that we expect that the larger the arrival rate the larger the delivery probability. The complexity of this algorithm is obviously easy given that the policy can be found by solving at most equations.

#### Class–independent policies

This algorithm searches for the optimal solution of an overconstrained problem in which: the policies related to all the classes are the same, formally for all , and, when the policy is probabilistic, then either the source transmits to all the classes or it does not transmit at all. This last assumption leads to a new formulation of the budget constraint:

By Property ?, the optimal policy is such that the budget is completely consumed and therefore the above inequality holds with equality. Therefore, the optimization problem reduces to the problem of finding the policy that completely consumes the budget. Formally, interpreting the (class–independent) threshold as a continuous variable, we can write:

Function is a single–variable function strictly monotonically decreasing in and infinitely differentiable. Such a function admits only one zero, and therefore the above equation admits only one solution. Such a solution can be found (approximately) by using the Newton method, that in this case, due to the property of the function, has a quadratic convergence speed (the number of correct digits roughly at least doubles in every step). Thus, we obtain an approximate solution of high quality within very short time.

#### Upper bound over the optimal value

An over bound over the value of the optimal solution can be found by using a variation of the algorithm described in Section 3.1. More precisely, we use Algorithm ? to enumerate all the policies consuming entirely the budget and we change each policy rounding each to the smallest integer and then adding for every . Notice that these new policies violate the budget constraint. Among all these policies we find the one maximizing the delivery probability. Its value is an upper bound over the value of the optimal policy. In the graphs we denote this value as . The proof follows. Call the optimal policy profile with (potentially fractional) thresholds . Call a generic policy profile obtained as described above. It can be easily observed (it follows from the fact that, fixed the policies of all the classes but one, the policy of the remaining class that consumes entirely the budget is always one) that there alway exists a policy profile such that for all . Therefore, given that the objective function is strictly monotone in , the objective value of is strictly better than the value .

### 4.3Experimental results

Figure ? reports how varies as the values of the parameters vary as summarized in Table Table 5, , and . For each parameter, we average over the other instances sharing the same value for that parameter. It can be observed that grid search and greedy constructions obtain a remarkable better performance in each case when compared with the benchmarking greedy algorithms based on the arrival rate and the class-independent one. Not exploiting the knowledge about the different classes and solely considering the arrival rate turned out to achieve very similar performances. By increasing the value of , it can be seen how this gap with the benchmarks shrinks, suggesting the intuition that when the deadline for packet delivery is large even simplistic policies are able to obtain good delivery probabilities. Another aspect that can be observed is that greedy constructions revealed to be quite effective for the tested cases, since they were able to obtain high performances comparable to the grid search. By increasing the value of , it can be seen how this gap with the benchmarks increases, instead the gap keeps to be approximately constant as and vary. Interestingly, the approximation ratio of our algorithms is constant (i.e., ) w.r.t. all the parameters values.

A more detailed overview on how the performance varies with respect to is shown by the boxplots of Figure ?. These graphs show the similarity in performance between the grid search and the greedy constructions algorithms. These last ones obtained worse performances for a limited number of outlier instances. Also it is evident how having finer resolutions remarkably improves the solution’s quality.

The above results suggest that greedy constructions seem to be quite effective approaches to approximate the optimal policy requiring, at the same time, much less computational effort than the grid search. In Figure 1, we show a comparison between computational times obtained with the grid search and the greedy construction algorithms respectively. In particular, we evaluated the algorithms’ scalability when the number of classes grows. To obtain these results we fixed the values of some parameters (, , , ) and we generated random mobility profiles and transmission technologies by uniformly sampling from the following intervals: , , . It is easy to see how grid search shows an exponential growth in time, while greedy construction proved to be much more efficient even for larger number of classes. Considering a deadline of 1 hour, grid search was not able to compute a solution for more than 4 classes, while greedy construction managed to compute solution up to classes.

Finally, Figure 2 depicts a qualitative evaluation of the policies returned by our algorithms. We consider a reference value for the budget upper bound and we show how the thresholds of the optimal policy (obtained with grid search) are distributed over the three different technologies. It can be observed how, by increasing the budget, the optimal policy tends to schedule transmissions with all the three technologies. When the budget gets smaller and smaller, then the policy tries to rely more on those technology that have a longer communication range.

## 5Conclusions

In this paper we studied two-hop routing for Delay Tolerant Networks when heterogeneous technologies are present taking into account beaconing signal and deadlines after which nodes discard packets. Differently from the literature, whose adopts fluid approximation to find optimal policies—providing exact solution in the limit when the number of nodes is infinite, but a coarse approximation otherwise—, we adopt an operations research approach, formulating the problem as an optimization problem and designing approximation schemes with theoretical bounds. We thoroughly evaluated our algorithms with realistic settings in terms of approximation ratio and compute time as the parameters change. We experimentally showed that for all the generated instances our algorithms have an approximation ratio larger than 99% and that they scale linearly as the values of the parameters increase and therefore they can be applied with extremely large instances.

Michael Shell

Biography text here.

### References

**Combined optimal control of activation and transmission in delay-tolerant networks.**

E. Altman, A. Prakash Azad, T. Basar, and F. De Pellegrini.*IEEE ACM T NETWORK*, 21(2):482–494, 2013.**Optimal control in two–hop relay routing.**

E. Altman, T. Basar, and F. De Pellegrini.*IEEE T AUTOMAT CONTR*, 56(3):670–675, 2011.**Decentralized stochastic control of delay tolerant networks.**

E. Altman, G. Neglia, F. De Pellegrini, and D. Miorandi. In*INFOCOM*, pages 1134–1142, 2009.**Forward correction and fountain codes in delay–tolerant networks.**

E. Altman and F. De Pellegrini.*IEEE ACM T NETWORK*, 19(1):1–13, 2011.**Dynamic control of coding for progressive packet arrivals in DTNs.**

E. Altman, L. Sassatelli, and F. De Pellegrini.*IEEE T WIREL COMMUN*, 12(2):725–735, 2013.**Evolutionary forwarding games in delay tolerant networks: Equilibria, mechanism design and stochastic approximation.**

R. E. Azouzi, F. De Pellegrini, H. B. A. Sidi, and V. Kamble.*COMPUT NETW*, 57(4):1003–1018, 2013.**Design and field experimentation of an energy–efficient architecture for dtn throwboxes.**

N. Banerjee, M. D. Corner, and B. Neil Levine.*IEEE ACM T NETWORK*, 18(2):554–567, 2010.**Blind online optimal forwarding in heterogeneous delay tolerant networks.**

W. Chahin, R. El Azouzi, F. De Pellegrini, and A. P. Azad. In*Wireless Days*, pages 1–6, 2011.**Mobicent: a credit-based incentive system for disruption tolerant network.**

B.B. Chen and M.C. Chan. In*INFOCOM*, pages 1–9, 2010.**Evolutionary forwarding games in delay tolerant networks.**

R. El-Azouzi, F. De Pellegrini, and V. Kamble. In*WiOpt*, pages 76–84, 2010.**The message delay in mobile ad hoc networks.**

R. Groenevelt, P. Nain, and G. Koole.*PERFORM EVALUATION*, 62(1–4):210–228, 2005.**Distributed estimation of global parameters in delay–tolerant networks.**

A. Guerrieri, I. Carreras, F. De Pellegrini, D. Miorandi, and A. Montresor.*COMPUT COMMUN*, 33(13):1472–1482, 2010.**Routing in a delay tolerant network.**

Sushant Jain, Kevin Fall, and Rabin Patra. In*ACM SIGCOMM ’04*, pages 145–158, 2004.**Submodular function maximization.**

A. Krause and D. Golovin. In*Tractability: Practical Approaches to Hard Problems (to appear)*. Cambridge University Press, 2012.**Routing in socially selfish delay tolerant networks.**

Q. Li, S. Zhu, and G. Cao. In*IEEE INFOCOM*, pages 1–9, 2010.**Incentive-aware data dissemination in delay-tolerant mobile networks.**

T. Ning, Z. Yang, X. Xie, and H. Wu. SECON, 2011.**Coalition formation games for improving data delivery in delay tolerant networks.**

D. Niyato, P. Wang, W. Saad, and A. Hjorungnes. In*GLOBECOM*, pages 1–5, 2010.**Optimal monotone forwarding policies in delay tolerant mobile ad hoc networks with multiple classes of nodes.**

F. De Pellegrini, E. Altman, and T. Basar. In*WiOpt*, pages 497–504, 2010.**A fluid approximation for service systems responding to unexpected overloads.**

O. Perry and W. Whitt.*OPER RES*, 59(5):1159–1170, 2011.**Accuracy of fluid approximations for queueing systems with congestion-sensitive demand and implications for capacity sizing.**

R. S. Randhawa.*OPER RES LETT*, 41(1):27–31, 2013.**Evolutionary games in wireless networks.**

H. Tembine, E. Altman, R. El Azouzi, and Y. Hayel.*IEEE T SYST MAN CY B*, 40(3):634–646, 2010.**Smart: A secure multilayer credit-based incentive scheme for delay-tolerant networks.**

H. Zhu, X. Lin, R. Lu, Y. Fan, and X. Shen.*IEEE T VEH TECHNOL*, 58(8):4628–4639, 2009.