WIRELESS MOBILE NETWORKS: CROSS-LAYER COMMUNICATIONS
Cross-layer distributed approach for optimal rate allocation for homogeneous wireless multicast A. Mohamed and H. Alnuweiri Abstract: Multicast-based data communication is an efficient communication scheme especially in multihop ad hoc networks where the MAC layer is based on one-hop broadcast from one source to multiple receivers. The problem of resource allocation for a set of homogeneous multicast sessions over multihop wireless network is addressed. An iterative algorithm is proposed that achieves the optimal rates for a set of multicast sessions such that the aggregate utility for all sessions is maximised. The authors demonstrate analytically and through simulations that the algorithm achieves optimal resource utilisation while guaranteeing fairness among multicast sessions. The algorithm in network environments with asynchronous distributed computations has been further analysed. Two implementations for the algorithm based on different network settings are presented and show that the algorithm not only converges to the optimal rates in all network settings but it also tracks network changing conditions, including mobility and dynamic channel capacity.
1
Introduction
Recent advances in the last decade promote ad hoc networks to become one of the potential candidates for many wireless-based applications. Ad hoc networks empowered by multicast-based communication represent a key strategy for providing scalable, bandwidth-efficient and grouporiented wireless services which are scalable and simple to implement and work with the existing wireless standards. Wireless ad hoc networks support peer-to-peer communication between active nodes through wireless links, and therefore, the network topology changes by changing the location of the wireless nodes caused by mobility. Typically, an active node has routing capability that allows it to create multihop path to any other node and, depending on its location, can forward packets for its neighbouring nodes through that path. Therefore, ad hoc networks are extremely flexible, self-configurable and do not require any infrastructure for their operation. This has opened the door for the possibility of providing many applications over wireless, such as Videoconferencing, TV-over-wireless, intelligent transportation systems, field games, rescue and disaster recovery and military operations. This consequently has led to the potential of using multicast as a bandwidth-efficient technique for communication. The one-hop broadcast characteristic of the MAC layer in wireless ad hoc networks has triggered the use of multicast communication scheme as one of the natural strategies that can multiply the overall network throughput with very limited overhead. This is because multicast packets are forwarded once to reach all the multicast members in the neighbourhood using a single transmission, and this effect increases even more in multihop ad hoc networks.
Multicast, however, introduces new challenges due to its complexity, and lack of standards and techniques that can effectively allocate network resources. Efficient resource allocation is required to guarantee optimal resource utilisation while providing system-wide fairness to different network flows end-to-end. The challenge in multicast resource allocation is that, not only the resource allocation has to optimise access to network resources for each sourcedestination pair, but also it has to relate different sourcedestination pairs on the same multicast group to try to utilise the bandwidth efficiency of each multicast session (i.e. ‘intraflow bandwidth efficiency’) and achieve systemwide fairness across all multicast sessions (i.e. interflow fairness). Homogeneous multicasting allows all receivers of a multicast tree to receive information at the same data rate controlled by the tree source. Such notion makes our problem formulation more tractable especially for small to medium-sized networks (e.g. teleconferencing over an enterprise mesh network). It also simplifies the implementation of our solution even with large number of multicast trees since the rate control will be performed solely at the tree source. In this paper, we present an optimisation model that captures the problem of homogeneous multicast resource allocation in wireless ad hoc networks. Homogeneous multicasting allows all receivers of a multicast tree to receive the same date rate, which is controlled by the tree source. Such notion makes our problem formulation more tractable especially for small-to-medium-sized networks (e.g. teleconferencing mesh network). It will also simplify the implementation of our solution even with large number of multicast trees since the rate control will solely be performed at the tree source. Our solution has the following important features:
# The Institution of Engineering and Technology 2007 doi:10.1049/iet-com:20060224 Paper first received 25th April 2006 and in revised form 17th February 2007 The authors are with the Department of Electrical and Computer Engineering, University of British Columbia, Vancouver, BC, Canada V6T 1Z4 E-mail:
[email protected]
838
† It guarantees the optimal resource utilisation while providing system-wide fairness for end-to-end multicast flows. † It guarantees steering the entire network towards the optimal point in real time, and hence reacts robustly to network conditions as they occur. IET Commun., 2007, 1, (5), pp. 838 –845
† It is based on primal – dual and pricing methods which facilitate the decomposition of the resource optimisation problem into sub-problems that are easy to solve in a modular structure. † For network deployment, we design a cross-layer framework which utilises a measurement-based technique for MAC layer channel capacity estimation, and a light-weight network HELLO protocol for constructing contention domains to allow for allocating resources across end-to-end multicast sessions. † This cross-layer solution also works in a totally distributed network environment, with limited overhead and with no synchronisation requirements between node calculations. The problem of resource allocation for unicast flows has been investigated before in [1 –3]. A common pricing mechanism has been used in all of them where each network resource calculates a price that represents the relationship between the load on this network resource and the capacity that it can offer. A utility function is associated with each end-to-end flow to represent the flow’s resource requirement. The authors in [1, 2] have studied the resource allocation in wired networks where they used the pricing mechanism to calculate a price on each link and then send this price through feedback to sources to calculate the required rate that optimises the aggregate utilities of all network sources. Yuan et al. in [3] considered a similar pricing mechanism for allocating end-to-end unicast flow rates in wireless ad hoc networks where they devised a mechanism to model the wireless nodes based on their locations into a contention graph. The graph was then used as the base for calculating the load on each contention domain versus the capacity offered by the wireless channel. None of these studies, however, considered the multicast flows where the resource allocation mechanism relates the multicast source-destination pairs to benefit from the bandwidth efficiency of multicast as a communication scheme. Resource allocation for multicast wired networks has been studied in [4]. They define the multicast tree between one source and multiple receivers as group of terminal (nonjunction) nodes and branch (junction) nodes, and each downstream on a branch node contributes to the load of the link that the downstream traverses. However, as we will see in the following sections of this paper, the locationbased contention, the one-hop broadcast nature of the wireless MAC layer and the absence of any centralised control in the multihop wireless networks make the problem in our case much more complex. 2
some protocols which require acknowledgment from j to i (e.g. IEEE 802.11 MAC), node i is also required to be interference free at the time of sending the acknowledgment. We model the wireless ad hoc network as a directed graph G ¼ (V , E), where E is the set of wireless ‘virtual’ links produced as a result of nodes located within the transmission range of each other. Each wireless link e [ E has two end nodes, i and j (i.e. e ¼ {i, j}).The network is shared by a set of M end-to-end multicast groups. Each multicast group m has a unique source node sm , a set of receivers Rm ¼ {rm1 , rm2 , . . . }, and uses a subset of wireless links Em and a subset of nodes Vm for either receiving or relaying traffic (i.e. Rm # Vm ). Thus, a multicast group m [ M is defined by the triplet {sm , Rm , Em }. Each multicast group has a rate xm (expressed in bits/sec) which is allowed to vary within the rate interval Im ¼ [wm , Wm ] [2], and I is the set of all such intervals. A fundamental difference between the unicast and multicast case, is the fact that one-hop broadcast may be used to transfer traffic from one sending node to one or more receiving nodes. To capture this notion, the one-hop data transmission from one sending node i to a set of receiving nodes J # Vm within the multicast flow m along one or more wireless links (branches) is referred to as a multicast subflow of m or fmi . The set of multicast subflows on a multicast group m is referred to as Fm ¼ {fm1 , fm2 , . . . }, and identified by different colours in Fig. 1. The set of all multicast subflows for all the M groups is referred to as F. Each multicast subflow uses one or more branches bmij from one sending node i to a set of receiving nodes J # Vm , i.e. fmi ¼ {bmij :8bmij ¼ {i, j}j [ J }, with a cardinality Kmi equal to the number of branches of fmi . We also define an active wireless link aij [ E to be the wireless link that carries traffic from at least one multicast group, and A # E is the set of all active links. Also, aiJ refers to the aggregated multicast subflow from node i and is represented by the set of active links aij 8j [ J that are used by one or more multicast subflows fmi 8m [ M simultaneously. For simplicity, we will assume that a packet is successfully transmitted over a multicast subflow fmi if (1) the packet reaches all receiving nodes J on all the branches bmij ; and (2) acknowledgments (using the notation of IEEE 802.11 MAC standards) have been transmitted successfully from all these receiving nodes back to the sending node i [6]. This means that the maximum rate for subflow fmi cannot exceed the rate that can be withstood on the most contended branch of that subflow. Based on this assumption, the protocol model can be extended for
Model and problem formulation
We describe the model and explain the notations used in this paper. Then we present a mathematical formulation of the optimisation problem. 2.1
Model and notations
We consider a wireless ad hoc network consisting of a set of nodes V spread over a wireless space, each with a specific transmission range and interference range. We exploit the protocol model explained in [5] and leveraged in [3] for wireless packet transmission. In this model, the transmission from node i is successfully received by node j (i, j [ V ) if (1) the distance between the two nodes is no more than a certain range (i.e. transmission range), and (2) for all other nodes k [ V simultaneously transmitting over the same channel, the distance between j and k is more than a specific range (i.e. interference range). For IET Commun., Vol. 1, No. 5, October 2007
Fig. 1 Wireless ad hoc Network showing one multicast group m 839
multicast subflows as follows: the traffic from two different subflows on a group of active wireless links contend if either the sending node or any of the receiving nodes of one subflow are within the interference range of the sending node or any of the receiving nodes of the other subflow. To model the contention between the active wireless links, we use a contention domain mechanism [7] by forming a logical contention graph Gc ¼ (Vc , Ec ). Each vertex in Gc corresponds to the aggregated multicast subflow aiJ which carries the traffic from one or more subflows simultaneously. A link between two vertices indicates that the traffic on the two aggregated subflows contend with each other. A complete subgraph in Gc is referred to as a clique. A maximal clique is the clique that is not part of any other clique. This clique represents the maximal set of active wireless links that contend with each other. This means that only one ‘subflow’ within this clique may transmit a packet at a time [3]. Therefore, the sum of the rates over the maximal clique cannot exceed the channel capacity achieved by using a particular scheduling mechanism in the MAC layer (e.g. IEEE 802.11 DCF). The following inequality formulates these set of constraints X xm cq 8q [ Q (1) m:(Fm >Vcq )=1
3
Solution approach
Solving the resource allocation problem P with a centralised approach would require the knowledge of all the utility functions and all contention domains and multicast groups which is impractical. Instead, we propose a decentralised scheme that minimises the coordination between networks nodes, and adapts naturally to network changes without requiring any synchronisation among network nodes when performing price calculations. The key to this solution is the use of the duality theory [8], which suggests solving the dual problem by introducing additional dual variables called prices using the same notation as in [1, 3, 4]. 3.1
Dual problem
The first step is to define the Lagrangian function L(x, p) for the optimisation problem P as follows X X L(x, p) ¼ Um (xm ) þ pq (cq xm Gqm ) m[M
¼
where q is a maximal clique in the set of all maximal cliques Q, cq is the achieved channel capacity for clique q based on the scheduling discipline used in the MAC layer and Vcq # A are the set of vertices in Gc that belong to clique q. 2.2
has a solution, whereas assumption 2 forces this solution to be unique.
Mathematical formulation
X
q[Q
(Um (xm ) xm
m[M
X
pq Gqm ) þ
q[Q
X
(5) pq cq
q[Q
where p ¼ (pq , q [ Q) is the vector of Lagrange multipliers. The objective function of the dual problem then becomes (c.f. section 3.4.2 in [9]) X D(p) ¼ maxxm [Im L(x, p) q[Q
Each multicast group m [ M is associated with a utility function Um (xm ) that measures the degree of satisfaction in assigning a specific rate xm for multicast group m. An example of a utility function to achieve inter-session proportional fairness is given in Section 5. The utility function also serves as a network-wide efficient tool for achieving certain fair allocation behaviour (e.g. proportional fairness, max – min fairness) [1]. The optimisation problem is to find the set of rates assigned to all multicast groups in M such that the aggregated utility function of all multicast groups is maximised. This can be formulated as a nonlinear optimisation problem as follows X P: maximise Um (xm ) (2)
¼ pq cq þ
X
maxxm [Im (Um (xm ) xm
m[M
X
pq Gqm ) (6)
q[Q
and the dual problem D for the primal problem P can then be defined as follows D: minp0 D(p)
(7)
Here, pq may be interpreted as the price per unit bandwidth consumed at clique q. We can also define the aggregated price for group m as a result of consuming bandwidth on all maximal cliques q [ Q as follows X lm ¼ pq Gqm (8) q:(Fm >Vcq )=1
m[M
subject to Gx C 8q [ Q xm [ Im 8m [ M
(3) (4)
Equation (3) is the matrix form of (1) where x is a vector of all multicast group rates, and C is the vector of achieved capacity on all maximal cliques. G is the clique-group matrix with each element (Gqm ) representing the number of multicast subflows belonging to tree m within a maximal clique q. We will make the following assumptions to facilitate the solution for the primal problem P: Assumption 1: There exists at least one vector x~ [ I such P ˜ m cq 8q [ Q and x~ m [ Im (which that m[(F > Vcq ) x P means, m[(F > Vcq ) w~ m cq 8q [ Q). Assumption 2: In the interval Im , all the utility functions Um 8m [ M are increasing, strictly concave and twice continuously differentiable. Thus Um00 gm . 0. The importance of these assumptions lies in the fact that assumption 1 implies that problem P is feasible, that is, it 840
4 Optimal resource allocation for wireless multicast (ORAWM) We present a distributed iterative algorithm that solves the primal problem P by applying the gradient projection method [8] to the dual problem D. This implies that the clique prices pq (t þ 1) at time t þ 1 is adjusted in the opposite direction to the gradient rD(p) as follows " # @D( p(t)) pq (t þ 1) ¼ pq (t) a (9) @pq where a . 0 is the step size. Since Um m [ M are concave functions, D(p) is continuously differentiable (pp. 669 in [9]) and hence its gradient based on (6) is X @D(p) ¼ cq xm (t)Gqm @pq m:(F >V q )=1 m
q[Q
(10)
c
IET Commun., Vol. 1, No. 5, October 2007
Using (9), we calculate the group price by substituting into (8) and finally, we calculate the rate for each group as a function of the group price as follows m xm (t þ 1) ¼ [Um01 (lm (t))]W wm
(11)
In order to prove the convergence of this algorithm we define the following new terms: P 1. Ym ¼ q[Q Gqm which measures the number of subflows in Pclique q for group m, and Y ¼ maxm[M q[Q Gqm , which indicates the number of subflows P for the largest group m [ M. 2. Zm ¼ m[M Gqm which measures the number P of subflows of group m in clique m, and Z ¼ maxq[Q m[M Gq m indicates the number of subflows in the most congested clique q [ Q. 3. g¯ ¼ max m [ M gm indicates the upper bound on all Um00 (xm )8m [ M. We can obtain the following convergence result (full proof is given in [10]). Theorem 1: For step size values of a that satisfy the inequal¯ starting from any initial rate ity 0 , a , 2g¯ =Y¯ Z, x(0)(xm [ Im 8m [ M), and clique prices p(0) 08q [ Q, every accumulation point (x ; p ) of the sequence (x(t); p(t)) generated by the dual gradient Algorithm (i.e. as described in (9– 11)) is primal – dual optimal. 4.1
A crucial part of our algorithm is how to calculate the individual group prices lm in a decentralised way given the prices of the individual maximal cliques pq 8q [ Q. To facilitate discussion in this part, we introduce the following new terms: 1. pm (i): the parent node of node i along the tree of group m. 2. lm (i): the accumulated price for group m at node i. 3. lmi : the price for subflow fmi , which is the total price of all maximal cliques that fmi belongs to. Note that there is no parent node for the group source, i.e. pm (sm ) ¼ 1, and the accumulated price at the source lm (sm ) ¼ 0. We can then define the accumulated group price recursively as follows
lm (pm (i)) þ lmpm (i) Kmpm (i)
8i [ Vm
(12)
where Kmpm (i) is the cardinality of subflow fmpm (i) . Theorem 2: If =m # Rm such that =m ¼ {i:fmi ¼ 18i} defines the set of terminal nodes for group m, then the group price can be calculated as follows X lm ¼ lm (i) i[=m
The detailed proof is given in [10]. Theorem 2 implies that in order to calculate the price for group m, we need to calculate the accumulated price on each branch using (12) until we hit the terminal node of this branch. Then, send this accumulated price back to the source to calculate the group price by simply adding the accumulated price of all branches. To illustrate the result of Theorem 2 within the context of our problem formulation, we consider the example in Fig. 2. IET Commun., Vol. 1, No. 5, October 2007
a Network topology b Contention graph
The network topology shown in Fig. 2a has one multicast group m which has two receivers (i.e. terminal nodes) 5 and 6, and traffic that goes along four multicast subflows as shown in the figure. Fig. 2a shows the contention graph corresponding to this network topology and the two maximal cliques with prices p1 and p2 as shown. Based on Equation (8) and assuming we have global knowledge about the network, the price for the multicast group m is lm ¼ 3p1 þ 3p2 , which is the sum of the product of the number of subflows of m in each clique and the price of this clique. Based on Theorem 2, however, we can calculate the group price based on the summation of accumulated branch prices lm (5) and lm (6) that can be calculated recursively from lm (3) and lm (4), respectively, as follows (p1 þ p2 ) þ (p1 þ p2 ) þ p1 2 (p þ p2 ) þ (p1 þ p2 ) þ p2 lm (6) ¼ lm (4) þ p2 ¼ 1 2
lm (5) ¼ lm (3) þ p1 ¼
Group price calculation
lm (i) ¼
Fig. 2 Example for calculating the multicast group price
It is easy to see that the summation of lm (5) and lm (6) is equivalent to lm calculated based on equation (8). The reason for transforming the group price into this form is to facilitate the group price calculation in a distributed environment where all the nodes that are members of the group are contributing in an accumulative fashion to the price calculation. Furthermore, for multicast group price calculation, we must consider all the branches of the multicast tree in the calculation because different subflows may exist in different branches of the tree. This simple mechanism for calculating the group price facilitates our solution due to the following features: 1. It is simple to implement using one field that stores the accumulated price for all branches of subflow fmi (i.e. note from (12) that the accumulated price is the same for all branches that belong to the same subflow). 2. It allows for distributed computation because each node needs to know (for each group) only the accumulated price for its parent node and the price of the next subflow. Then it performs a simple calculation to get the accumulated price for the following nodes. 3. It also allows for asynchronism because the source does not need to wait for all accumulated prices from all branches to calculate the group price and the next group’s optimal rate. Instead, it uses estimation based on the previously received values as will be shown next. 4.2 ORAWM: Asynchronous distributed algorithm (ORAWM_AD) In order to facilitate the distributed computation of our algorithm, we must assume that for any update, a node 841
may not have the exact current value of neither the rate nor the price. Instead, it receives a sequence of recent values at different time instances. Therefore, the node will use a weighted average of these values in estimating the price or the rate at any given time. Let T ¼ {0, 1, 2, . . . } be the set of times at which either the rates or the prices are updated at any node. Hence, we define some time instance terminology as follows: 1. Tq # T : the set of time instances at which pq is updated by one node within clique q. 2. Tmi # T : the set of time instances at which node i [ M which has fmi [ Fm updates lmi and lm (i). 3. Tm # T : the set of time instances at which the source of group m updates xm . Based on these time instances, the details of our asynchronous algorithm (ORAWM_AD) are listed in Fig. 3. This asynchronous model is general and can allow for any update policy for the rates or prices. For example, the accumulated price fed back to the source from some terminal nodes may be delayed or lost for some l(i, t)t [ [t0 B, . . . , t], but we can still guarantee the convergence by estimating the accumulated price based on the
recent received values. Also, the algorithm attains convergence using some popular update policies such as the following: † latest instant update: only the last received clique price pq (t) for some t [ [t B, . . . , t], is used estimate lˆ m (t), i.e. bqi (t0 ,t) ¼ biq (t0 ,t) ¼ bim (t0 ,t) ¼ 1 if t0 ¼ t and 0 otherwise. † latest average update: only the average over the latest k received values is used for estimation, i.e. bqi (t0 ,t), biq (t0 ,t), bim (t0 ,t) . 0 for t0 ¼ t k þ 1, . . . , t and 0 otherwise. The support for these different update policies demonstrates the versatility of our asynchronous algorithm. Fig.4 depicts the cross-layer architecture of our solution ORAWM based on Algorithm 1. The following theorem illustrates the convergence of this model (detailed proof is given in [10]). Theorem 3: For step size values of a that are sufficiently small, starting from any initial rate x(0)(xm [ Im 8m [ M), and clique prices p(0) 0 8q [ Q, every accumulation
Fig. 3 ORAWM: Asynchronous distributed algorithm 842
IET Commun., Vol. 1, No. 5, October 2007
Fig. 4 Cross-layer architecture for ORAWM
point (x ; p ) of the sequence (x(t); p(t)) generated by the asynchronous Algorithm 1 (ORAWM) is primal–dual optimal. 4.3
Dynamic network environment
So far we have assumed that the cliques’ achieved capacity, and the set of group utility functions are not functions of time. However, due to online calculation, and subproblem decomposition, it can be shown that our asynchronous algorithm works in the case when these quantities change with time. For example, the clique’s capacity may be timevarying depending on the scheduling discipline used at the MAC layer. In this case, the clique procedure in Algorithm 1 will be the same except that in computing rD(p(t)) at step 3, the current clique capacity cp (t) is used in place of the constant capacity cp . The same applies to the time-varying utility functions Um (xm , t). In general, if the change in the environment parameters is slow relative to the convergence rate of the algorithm, the algorithm can track the changes in the optimal rates based on changing these quantities with time. This is shown in our experimental evaluation discussed in the following section. 5
Simulation results
In all our experiments, we use the utility functions Um (xm ) ¼ gm ln(xm )xm . 0 for imposing proportional fairness among the multicast groups where gm is the differentiation gain, i.e. xm (t) ¼ gm =lm (t). We implemented all the simulations using the ns-2 simulator. In the first experiment, we deployed our ORAWM_AD algorithm in a real network that uses multicast aware IEEE 802.11 DCF MAC scheduler [6] with a bandwidth
management mechanism for measuring the channel capacity (i.e. channel capacity estimator in Fig. 4) based on [11] and (MAODV) [12] for routing. We take as an example the network in Fig. 5 with 3 multicast sessions as shown in Fig. 5a and the corresponding contention graph as shown in Fig. 5b. We use equal differentiation gains, i.e. gm ¼ 18m [ M. However, we start each of these sessions in a different time to test the ability of our algorithm to track network changes. The start times of sessions m1 , m2 , m3 are 20, 40, 60 s, respectively, and the initial rates xm (0)8m [ M are selected from a uniform distribution in the range [50, 250] kbps. We have fixed all the other parameters including the step size, and we measured the rate of each multicast session against time. Fig. 6 shows the result using a time-varying channel capacity realised by the MAC scheduler. From this figure, we observe that although the MAC channel capacity (i.e. the basic rate of sending data in IEEE 802.11 DCF) is set to 1 Mbps, the achieved channel capacity changes with time and does not go above 800 Kbps. Nevertheless, our algorithm continuously tracks the change in channel capacity and provides proportional fairness among all the multicast sessions based on the current available channel capacity. Second, we study the convergence using different differentiation gains and source start/stop times. In this experiment we use fixed channel capacity, assuming that the scheduling mechanism used in the MAC layer is ideal (i.e. channel utilisation is always one). In addition to the session start times we set the stop times for sessions
Fig. 5 Impact of changing capacity and source start/stop time a Multicast network with flow pattern b Resulting contention graph
Fig. 6 Convergence for variable Channel capacity using IEEE 802.11 DCF scheduling
IET Commun., Vol. 1, No. 5, October 2007
843
Fig. 8 Impact of mobility and route changes a Network topology b Contention graph for current position
Fig. 7 Convergence with different differentiation gains and start/stop times
m1 , m2 , m3 at 120, 140, 160, respectively. We show the difference between the rates obtained using our algorithm running in a totally distributed and asynchronous environment, and the optimal theoretical rates calculated offline. Fig. 7 shows the results using differentiation gains 3, 2, 1, respectively. We notice that the algorithm converges online to the optimal rates that guarantee maximum aggregated utility providing proportional fairness amongst all active multicast sessions at any given time. Furthermore, it responds fairly quickly to the changes resulting from adding or removing multicast sessions. In the last experiment, we study the impact of mobility and route changes on our algorithm using the network in Fig. 8a. The corresponding contention graph for this case is shown in Fig. 8b. We generate a mobility pattern where node 2 moves from position 1 to position 2 as shown in figure using a speed of 3 m/s and pause time 20 s. We start two multicast sessions m1 and m2 with receiver sets [4, 5] and [3, 6], respectively, at time 20 s. Fig. 9 shows the calculated group rates and the throughput observed at receivers [r4 , r5 , r3 , r6 ], respectively. The figure shows three different regions depending on the change of routes resulting from the node mobility. In region 1, only node 4 is receiving traffic for group m1 and node 6 is receiving traffic for group m2 . As expected in this case, our algorithm will discriminate against the flow with longer path, because it consumes more network resources, giving group m1
higher rate in this case (note that this discrimination can be compensated, if desired, by changing the utility functions). As node 2 moves to region 2, the routes for which are shown by Fig. 8a, all receivers become active and the optimal rates converge to the same value for both groups. The scenario in region 1 will then be reversed in region 3 giving m2 higher rate in this case. 6
Conclusion and future work
We have presented a new multicast-based algorithm and analytical model for resource optimisation over multihop ad hoc networks. This algorithm is used to control the rates of the multicast sessions in such a way that guarantees the optimal resource utilisation of the wireless network resources while achieving fairness among the multicast sessions. This algorithm utilises the bandwidth-efficiency feature of multicast which increases the overall network available bandwidth. Based on using maximal cliques as the main resource entity in the network, we model the multicast sessions in a form of contention domains, and calculate the group price for the end-to-end multicast session. We proposed a mechanism for calculating the group price based on the branch accumulated price which allows the calculation to occur using distributed computations. We also demonstrated our theoretical claims and proofs by simulations designed to capture different aspects of the wireless network conditions. Several issues related to our problem could be investigated further. In this paper, we considered rate allocation (bottleneck metric) as the performance metric. Other
Fig. 9 Convergence with mobility and route changes a Calculated group rate b Received thruoghout 844
IET Commun., Vol. 1, No. 5, October 2007
performance metrics such as delay, jitter (additive metrics) or loss probability (multiplicative metric) may have practical importance and may introduce a challenge in constructing contention domains. Also note that our solutions work for homogeneous multicast trees, where all receivers are expected to receive the same rate from the source. This makes our model more tractable especially when the number multicast trees is large (see experiments in Section 5) and simpler to implement in small to medium-sized ad hoc networks. However, in some network environments, it might be difficult to send the same rate to a group of receivers with different capabilities. Therefore, modifying our solutions to work for heterogeneous multicast trees may have a significant potential. Although our asynchronous algorithm converges online to the optimal rates, the convergence behaviour is critically sensitive to the value of the step size. Therefore, it might be useful to design a technique which guarantees the convergence with less sensitivity on the step size without sacrificing the important feature of distributed computations.
7
Acknowledgment
We would like to thank professor Yuan Xue from Vanderbilt University for her great help and support throughout this work. This research was supported by a collaborative R&D grant from the National Sciences & Engineering Research Council (NSERC) of Canada.
IET Commun., Vol. 1, No. 5, October 2007
8
References
1 Low, S.H., and Lapsley, D.E.: ‘Optimization flow control: basic algorithm and convergence’, IEEE/ACM Trans. Netw., 1999, 7, pp. 861–874 2 La, R.J., and Anantharam, V.: ‘Utility-based rate control in the Internet for elastic traffic’, IEEE/ACM Trans. Netw., 2003, 10, (2), pp. 272–286 3 Xue, Y., Li, B., and Nahrstedt, K.: ‘Optimal resource allocation in wireless ad hoc networks: a price-based approach’. Technical Report, University of Illinois at Urbana-Champaign, June 2004 4 Kar, K., Sarkar, S., and Tassiulas, L.: ‘A scalable low overhead rate control algorithm for multirate multicast sessions’. IEEE J. Sel. Areas Commun., Special issue in Network Support for Multicast Communications, 2002, vol. 20, pp. 1541–1557 5 Gupta, P., and Kumar, P.: ‘The capacity of wireless networks’, IEEE Tran. Inf. Theory, 2000, 46, pp. 388– 404 6 Gossain, H., Nandiraju, N., Anand, K., and Agrawal, D.P.: ‘Supporting MAC layer multicast in IEEE 802.11 based MANETs: issues and solutions’. LCN, 2004, pp. 172– 179 7 Luo, H., Lu, S., and Bharghavan, V.: ‘A new model for packet scheduling in multihop wireless networks’ (MobiCom, Boston, Massachusetts, 2000), pp. 76–86 8 Bertsekas, D.: ‘Nonlinear programming’ (Athena Scientific, 1999) 9 Bertsekas, D., and Tsitsiklis, J.: ‘Parallel and distributed computation’ (Prentice-Hall, 1989) 10 Mohamed, A., and Alnuweiri, H.: ‘Optimal resource allocation for homogeneous wireless multicast’. Technical report, University of British Columbia, BC, Canada, 2006, http://www.ece.ubc. ca/amrm/tr/orawm2006_TR.pdf 11 Nahrstedt, K., Shah, S.H., and Chen, K.: ‘Dynamic bandwidth management for single-hop ad hoc wireless networks’ (ACM/ Kluwer Mobile Networks and Applications (MONET), 2005), p. 10 12 Royer, E.M., and Perkins, C.E.: ‘Multicast operation of the ad-hoc on-demand distance vector routing protocol’. ACM/IEEE Int. Conf. on Mobile Computing and Networking (MOBICOM), 1999, pp. 207–218
845