Mathematical Problems in Engineering

Volume 2014 (2014), Article ID 135945, 12 pages

http://dx.doi.org/10.1155/2014/135945

Research Article

Energy Effective Congestion Control for Multicast with Network Coding in Wireless Ad Hoc Network

Chuanxin Zhao,¹ Yonglong Luo,¹ Fulong Chen,¹ Ji Zhang,² and Ruchuan Wang³

¹Department of Computer and Technology, Anhui Normal University, Wuhu 241002, China

²Department of Mathematics and Computing, University of Southern Queensland, Toowoomba, QLD 4350, Australia

³College of Computer, Nanjing University of Posts and Telecommunications, Nanjing 210003, China

Received 16 February 2014; Accepted 18 April 2014; Published 22 May 2014

Academic Editor: Changzhi Wu

Copyright © 2014 Chuanxin Zhao et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

In order to improve network throughput and reduce energy consumption, we propose in this paper a cross-layer optimization design that is able to achieve multicast utility maximization and energy consumption minimization. The joint optimization of congestion control and power allocation is formulated to be a nonlinear nonconvex problem. Using dual decomposition, a distributed optimization algorithm is proposed to avoid the congestion by control flow rate at the source node and eliminate the bottleneck by allocating the power at the intermediate node. Simulation results show that the cross-layer algorithm can increase network performance, reduce the energy consumption of wireless nodes and prolong the network lifetime, while keeping network throughput basically unchanged.

1. Introduction

As a practical solution for the broadband wireless Internet, wireless multihop networks can provide good geographic coverage with low cost. Nodes at different locations communicate with each other by relaying information over wireless links. However, wireless links suffer limited capacity due to limited resource, fading channel, and mutual interference, and so forth. Multiuser resource assignment in interference-limited wireless network is a complex yet critical issue. The mutual interference among users is a major factor in limiting the performance of communication systems. However, it can be efficiently mitigated by carefully allocating wireless resources such as transmission power and frequency bands. An important consideration in the design of a multihop network is the network’s ability to efficiently support high throughput multicast applications over wireless links. One of the main challenges for designing high throughput in wireless multihop networks is the interference of multiple wireless links. Recently, some techniques have been developed for enhancing the performance of wireless multihop networks, which include cross-layer design that considers network utility maximization problem [1] and network coding which allows intermediate nodes to perform coding operations in addition to pure packet forwarding [2].

The network utility maximization (NUM) framework has been applied widely in network for rate allocation through congestion control protocols [1]. Congestion control regulates the source rates to avoid overwhelming link capacity. On the other hand, feasible power allocation can efficiently enhance link capacity. Multicast flow causes more congestion than unicast traffic due to the fact that multicast flow can be distributed in large multicast trees. With the multimedia applications becoming more popular in wireless network, how to enhance network performance for multicast applications is an urgent issue. This paper addresses the challenges together by considering a joint optimization of multicast congestion and power allocation for a wireless multihop network. We focus on optimal congestion control and power allocation, use the network utility maximization framework to design a cross-layer optimization model, and then propose an efficient distributed algorithm to solve the problem.

The remainder of this paper is organized as follows. The related works are described in Section 2 and energy efficient utility model is introduced in Section 3. A distributed algorithm will be presented in Section 4. Finally, a numerical simulation is conducted to evaluate the performance of the proposed distributed algorithm.

2. Related Work

Most resource allocation problems in wireless network can be formulated as network utility maximization (NUM) problems, which optimize the resource allocation as a whole through crossing different layers in a communication network. The network utility maximization problem is divided into multiple subproblems through dual decomposition, where each decomposed subproblem corresponds to resource allocation on one layer. In network utility maximization, the utility function represents an objective to be maximized while the constraints represent different underlying network characteristics. The primal variables correspond to resources and the Lagrange dual variables correspond to the interfaces among the layers. NUM substantially expands the scope of the classical network flow problem that relies on nonlinear concave utility objective functions. Moreover, there is an elegant economic interpretation of the dual-based distributed algorithm, where the Lagrange dual variables can be interpreted as shadow prices for resource allocation, and each end user in the network tries to maximize their net utilities and net revenue, respectively [3].

It has been widely recognized that cross-layer design can potentially lead to substantial performance of wireless networks [4]. Price and Javidi investigated the distributed rate assignment in CDMA-based wireless networks and presented a distributed rate assignment algorithm based on the congestion and interference constraints at the MAC and transport layer to enhance network capacity [5]. Ghasemi and Faez [6] presented a new algorithm for jointly optimal control of multicast session rate, link attempt rate, and link power in contention based multihop wireless networks, where the cross-layer resource allocation was formulated as a nonlinear optimization. The optimization variables were coordinated through two shadow prices, and a distributed algorithm for updating those variables was proposed. It was shown that it is possible to achieve increased network throughput and decrease the session’s end-to-end delay. A jointly optimal congestion control and power control algorithm for a general ad hoc network was presented in [7] to enhance the overall network performance, and it proposed a framework to adapt physical layer resource allocation to enhance the end-to-end utilities. In fact, the mutual interference links could be activated synchronously, if the transmission power of the different senders were properly adjusted [8]. The work in [8] showed that it was of a great importance to choose a proper transmitting power in the interference-limited environment. The increasing of power might result in high interference, which resulted in the total throughput utility reduction and a waste of energy. Zhang and Lee studied energy efficient utility maximization for wireless networks with/without multipath by formulating them into convex program [9]. The problem was solved by a distributed dual decomposition algorithm. van Nguyen et al. studied efficient and fair power allocation associated with congestion control in orthogonal frequency division multiplexing (OFDM) based multihop cognitive radio networks [10]. They considered mutual relationship through a cross-layer optimization design that addressed both aggregate utility maximization and energy consumption minimization with outage constraint of primary user. Yuan et al. proposed a cross-layer optimization framework for throughput maximization joint multicast routing problem and the wireless medium contention problem in wireless mesh networks [11]; however, they did not consider the issue of multicast congestion control.

On the other hand, network coding has extended the functionality of network nodes from storing/forwarding packets to performing algebraic operations on received data. Starting with the work of [12], employing network coding at intermediate nodes is advantageous to maximize multicast throughput. Various potential benefits of network coding have been shown which include the improvement of multicast session’s throughput and the reduction of the overhead of probabilistic routing [13]. Among the numerous network coding schemes, distributed random linear network coding receives more attention as it independently and randomly selects linear mappings from inputs onto output links. This encoding scheme has been implemented in practice, which is widely applied to P2P systems, network security, and network monitoring and management [14, 15]. Chen et al. [16] considered a flow control for network coding-based multicast flows in wired network [16]. In their work, optimization models were formulated for network resource allocation, which included two sets of decentralized controllers at sources and links/nodes for congestion control, and they are developed for wired networks with given coding subgraphs and without given coding subgraphs, respectively. Based on their work, we will consider both flow and power control for network coding-based multicast flows in interference-limited wireless multihop network.

3. Problem Formulation

3.1. Network Model

We consider a wireless multihop network with logical links shared by nodes which are equipped with multiradios working on the orthogonal channels. It is also assumed that there are multicast sessions in the network, where each multicast session has a source node and a destination node set . In order to improve the utilization of the network, the random linear network coding is assumed to be used in the multicast flows, and the network coding allows the flows of a multicast session to share network capacity by coding them together. For the case of multiple sessions sharing a network, achieving optimal throughput requires coding across sessions. However, it is difficult to design such network codes. Thus, we limit our consideration to codes within each session.

Traditionally, resource allocations are optimized separately which is difficult to support high quality communication. In this paper, we focus on the joint optimization of multicast flow rate control and power allocation, where the multicast tree is established and the channels are assigned in advance, such as in [17]. In the wireless network, the multiple information flows share the network links, and it is mandated that all the information flows on the links do not exceed the physical channel capacity. The data received by intermediate node should be forwarded (the source nodes send data while the destination nodes receive data only). The relationship of each information flow and physical flow can be expressed as

Here, is the source rate and represents the flow of session on link sent to the destination node . Link capacity can be shared by the flows on the links when the random linear network coding is adopted, and the limit of network capacity can be expressed as

Now, let us explain, with the help of Figure 1, multicast session model which is similar to the model in [16], which is a typical butterfly diagram. is the source node of the session while and are the destination nodes. Network coding can be performed on the wireless links to share link capacity for improving network capacity.

Figure 1: Typical butterfly diagram.

Figure 1 shows a multicast session where the flow is sent from the source node to left and right trees which are further depicted in Figure 2. The encoding can be performed on the wireless links shared by the different multicast trees. As shown in Figure 1, the link is the shared part of two trees, the multicast trees can share link capacity by network coding, the max rate of information flow for left multicast tree is 2, and the right multicast tree is 1.

Figure 2: Network coding at the shared link corresponded to the multicast tree decomposition.

Figure 2 shows the multicast subtrees partitioned by Figure 1. In the figure, the source node separates the flow sent to the destination node into two subtrees, each of which can change the transmission rate through adjusting at the source node. As shown in Figure 2, in a multicast session, the link using random linear network coding can achieve maximum upper bound in the ideal case. In order to express the corresponding relationship of the link and multicast , we define a multicast matrix , and the elements of the matrix are defined as follows [16]:

Here, represents the link set of multicast tree. The source node in a multicast tree sends the same information flow to the destination nodes. For the sake of simplicity, we assume that network coding occurs within session, and the constraints of the physical flow rate for each multicast stream on link can be expressed as

3.2. Network Interference Model

In an interference-limited wireless network, the information theoretic capacity of each link is not fixed. It can be considered as a function of the transmit power, the interference of adjacent link, bandwidth and modulation, and so forth. Assuming that the modulation scheme has been determined, the information theory capacity of link is considered as the function of the transmit power and channel conditions as follows:

where is bandwidth, is the vector of transmission power, and is a constant which depends on the modulation and bit error rate. Without loss of generality, we assume that . represents the SINR of the link , where is defined as

where represents white Gaussian noise of link at the receiving node, is the fading coefficient of the link from the transmitting node to the receiving node, is the interference of other links on the receiving node, is transmit power of source node, and is interference power of other nodes. Assuming that the CDMA system is adopted in the network, with reasonable spreading gain and under normal circumstances, ,   (e.g., ) [9], due to the fact that the interference is much smaller than the signal power. Equation (5) can be approximated instead as [18]

In wireless multihop networks, the sum of interference terms over can be conducted in practice only over the active links in the two-hop neighborhood. Interference information can be measured or obtained by mutual broadcasting of neighbor nodes.

3.3. Energy Efficient Multicast Rate Control Model

The wireless nodes are generally powered by a battery, so power control may conserve energy and reduce the interference among nodes. In this paper, we establish the model for energy efficient multicast rate control and power allocation optimization. The purpose of such optimization is to maximize the fair allocation of link bandwidth and minimize power for the network multicast session flow and reduce energy consumption. Assuming that is the utility of each multicast in the network and the utility function is separable, where is the sum of data rates which are distributed on the respective trees, then the problem can be formulated as P1. Consider

where is a continuously differentiable, strictly concave and incremental function, is the equilibrium coefficient, and is the cost function. For simplicity, the cost function can be expressed as the weights of power value as

Network performance includes not only the network throughput but also the fairness of user, which can be balanced through selecting the appropriate utility function. We design the utility function which can be flexibly adjustable by parameters as follows with reference to [19]:

where represents the weight of different flows and is the fairness parameter. While corresponds to proportional fairness, corresponds to the harmonic mean fairness, and corresponds to the max-min fairness. The weight of each multicast session flow is set to be 1 in the paper, which means that .

4. Optimization Approach and Distributed Algorithm

P1 is a nonconvex optimization problem, since the link constraint (8b) is a nonconvex region. However, a simple variable transformation can be used to transform the problem into an equivalent convex optimization problem P2. Consider

Furthermore, the objective function of P2 is not strictly concave, since some sources have multiple alternative multicast trees that may cause an instability problem in the convergence of an iterative algorithm—a persistent oscillation of the flow rate around the optimal value. It implies that although the dual variables may converge, the primal variables flow rates and transmit powers may not. To deal with this instability problem, we use ideas from proximal optimization algorithms [13, page 232]. The basic idea is that, instead of P3, we try to solve an equivalent problem by introducing a quadratic term of some auxiliary variables so that the optimization problem becomes strictly concave with respect to . Consider

Due to the fact that is sum of a linear function and a log-sum-exp function, problem (12a) is convex according to the theory of convex optimization.

Theorem 1. The transformed problem P2 is a convex optimization problem.

Proof. The constraints (12b) and (12c) are convex in since the log-sum-exp is convex in its domain [20]. Moreover, the utilities in (12a) are assumed to be strictly concave. Therefore, P2 is convex in .

Hence, the maximized value of (12a) is unique. Problem P2 can be solved by Lagrange dual decomposition which is the most important optimization method and has been widely used in constrained optimization problem. The original problem P3 is decomposed into two suboptimization problems.

We define the Lagrangian as

where is the vector of Lagrange multiplier which is associated with capacity constraints (12b), while is the vector of Lagrange multipliers which is associated with power constraints (12c), and and are primal variables. The dual problem P3 can be expressed as an unconstrained min-max problem:

where the dual function

From the prospective of economics, to understand , each user is selfish and wants to maximize its own utility. Yet, the user increases bandwidth will also reduce the available bandwidth for other users. corresponds to the balance maximizing link capacity and the minimizing power consumption. Such optimization process takes the following several steps.

Firstly, the price of the congestion on each link is updated according to the flow based on the projection gradient method [20]; the step of adjusting the direction for each link is calculated by ; the update algorithm can be expressed as follows:

Here, is the small positive step size, and “+” represents the projected onto the real number of positive real number space. If congestion has arisen on the multicast tree , then congestion control prices will rise accordingly, indicating that the source node should reduce the data rate.

Based on the gradient projection algorithm, smaller step iterative update in each time slot is chosen for the prices as follows:

Second, by considering the second optimization term in (15),

Notice that aims to maximize the sum of weighted capacities and minimize the power cost. Thus, (18) serves as a tool for power control at each link. Similar to [16], we substitute formula (7) into . Consider

Theorem 2. Problem is a convex optimization.

Proof. We know from [7] that is strict concave function and another term is concave function for ; obviously, problem (18) is a convex optimization.

Taking the derivative of with respect to ,

Coming back to instead of ,

where is a message calculated based on locally measurable quantities for transmitter . Consider

Then, we can write the gradient steps as the following distributed power control algorithm with message passing:

Next, we consider the first optimization in (15),

The first optimization in (15) can be used to regulate the flow rate at each source. If source only has a single tree, then we can get the optimal value through derivation of the subproblem :

According to the optimization theory, the rate of source node can obtain the optimal value when the derivation is zero; so

Otherwise, the optimization can be solved by a nonlinear Gauss-Seidel method which alternately (i) maximizes the objective function over while keeping fixed and (ii) maximizes over while keeping fixed. The algorithm repeats the following steps.

Step 1. Fix and maximize the problem P3. With the addition of the quadratic term, the problem P3 is now strictly convex with respect to . Hence, the maximizer of P3 is unique existence.

To be precise, taking the derivative of with respect to ,

Thus, according to the first-order necessary optimality condition, we have

where can be calculated by summing both sides of (27b) as formula (27c). Consider

Assuming that , it is a strictly increasing function; we can easily achieve unique solution for the equation . , where .

The iterative procedure follows as (27b) and (27c).

Step 2. The algorithm sets . The advantage of network utility maximization is that the optimization model can be implemented in a distributed network. Through broadcasting the information of the adjacent nodes as well as the feedback price for each link on the path, the network is able to share the global information among the nodes. After exchanging cross-layer information, the information of physical layer and transport layer can be shared. The control structure is showed in Figure 3.

The power allocation is executed at the physical layer of the wireless network; the information can be sent to upper layer; rate control can be implemented by adjusting the size of windows for TCP to avoid congestion. Joint optimization problem can be decomposed into layers of suboptimization problem by dual decomposition; each suboptimization problem uses gradient projection method to solve the optimization problem and then we design cross-layer multicast rate and power allocation optimization algorithm as follows. The parameters ,  , and represent the iteration of inner power allocation, intermediate nodes, and source nodes, respectively.

The above algorithm can be executed on the source node and the intermediate node through the sharing of information. Link price updates for each intermediate node requires the information from its nearest two-hop neighbors, which can be obtained through the broadcast of the two-hop neighbors. The price of each link is provided by the feedback returned to the source node, and the price information can be added into the underlying link ACK data packets; so it can be sent hop by hop back to the source node in the process of sending data along the path.

Algorithm 1 can achieve a global optimal solution of the iterative algorithm under certain conditions.

1. Inner power allocation algorithm.

    (1) Initialize parameter ;

    (2) Update ;

    (3) , repeat (2) until iterations end.

2. For each executes update at each node.

    (1) Receive messages from all interfering nodes in the neighborhood and execute inner power allocation;

    (2) Update power using formula (23);

    (3) Compute broadcast to all interfering nodes in the neighborhood;

    (4) Compute link capacity, and update link price using formula (17);

    (5) if then goto (1) else end.

3. At each source node.

    (1) Receive from the reverse path of link prices.

    (2) Update the multicast flow rate using (26) or (27b) and (27c)

    (3) Communicate to all links on the tree .

    (4) if then set and repeat to (1) until iterations end.

Algorithm 1: Cross-layer multicast rate and power allocation optimization.

Figure 3: The open loop control structure for layered protocol stack in wireless system.

Definition 3 (see [20]). Assuming is optimal value of dual variable. There exists fix step size , for every ,

Algorithm 1 converges to and .

Theorem 4. Assuming is optimal value of dual variable and is small step size, if the Euclidean norm of subgradient is bounded, is true for every . Algorithm 1 converges to the range of the optimum radius .

Proof. Consider

so

From Definition 3,

For , obviously,

So formula (17) converges to .

Similarly, formula (18) converges to . Therefore, Algorithm 1 will converge to global optimum while the step size is small enough.

5. Numerical Experiments and Analysis

In this section, we conduct numerical simulation to evaluate the performance of Algorithm 1. Without loss of generality, network multicast tree has been established and channels have been assigned at the stage of network initialization. We consider a simple topology as shown in Figure 4 where each node has multiradios, each link has been assigned channel label as “,” “,” “,” and so forth, and the capacity of link is determined by transmitting power, the path fading of the link, and the external interference.

Figure 4: A simple network with two multicast sessions.

There are two multicast sessions in this network scenario; the source node of session 1 is , while the destination nodes are and ; the source node of session 2 is , while the destination nodes are and . For the sake of simplicity, the same utility function is adopted for all sessions. The left multicast tree is represented as a solid line, while the right multicast tree is identified as dotted line. The encoded link of session 1 is , while the encoded link of session 2 is . The channel assignment of each link meets the condition where there is no strong interference in the surrounding area.

The system is initialized by the following configuration: the maximal transmit power is 2.5 mW for all the nodes, the interference noise of network is  mW, the bandwidth of each channel is 1 kHz, and the step size of iterative algorithm is unified set to be 0.0035; channel gain coefficient is set according to the distance between any two nodes in a uniformly distributed random selection within . The initial power of all links is set to be 0.1 mW, and the initial prices value is set to be 1 for congestion and power.

5.1. Network Utility

Figures 5(a) and 5(b) show, respectively, the evolution of rate for the multicast session with and , both of which show that the flow rate converges gradually along with the algorithm’s iteration. On the other hand, the speed of growth for the rate slows down gradually in this process. The rate for two sessions behaves similarly which illustrates that the algorithm has a good fairness. Also, the session rate when is lower than that when which indicates that the rate is slightly reduced when increasing the value of balance coefficients.

(a)

(b)

Figure 5: (a) Session rate with . (b) Session rate with .

In order to measure the difference of the tree for the same multicast session, the process of rate change of the left and the right multicast trees for session is shown in Figure 6. The rates of left and right multicast trees improve rapidly in the early stage but their patterns are different. The price of the tree is subject to interference and bandwidth, in which the tree featuring a lower price should be allocated more flow.

Figure 6: Flow rate of left tree and right tree of session 1.

Figure 7 shows the evolution of the congestion prices over different trees. The left and right tree price tends to be stable after 200 generations, which is similar to the flow evolution process in Figure 6.

Figure 7: Evolution of congestion prices over different multicast trees.

5.2. Power Consumption

In wireless network, the link owning lower channel gain needs to increase the power for eliminating the link’s bottleneck. Enhancing power will increase link capacity, but it will increase the interference to the neighbour nodes, consequently reducing the capacity of the nearby links. Therefore, the allocation of power is not the bigger the better in practice. A comparison of the nodes’ transmit power evolution process is shown in Figure 8 where the balance coefficient is set to be 0.

Figure 8: Evolution of transmit power .

From the top to the bottom in Figure 8, the power curves respond to nodes , , , , , , , , and . The node power is different due to the mutual interference of the neighboring nodes. The growth speed is not smooth; however, the power update of the most nodes is upward, as the cost of power consumption is not considered. Some nodes boost power in order to improve link capacity in the iterative process, while other nodes do not do so as they have met the bandwidth requirements.

Given wireless node’s limited energy, realizing a high throughput will shorten the life of nodes in the network. In the experiment, the balance coefficient value is set be 0.1 for reducing energy consumption. The results of power are showed in Figure 9 which correspond to nodes , , , , , , , , and from top to bottom. With the iteration of the algorithm, the power of some nodes is significantly decreased when balance parameter .

Figure 9: Evolution of transmit power .

5.3. The Effect of Tradeoff between the Total Energy Cost and Total Utility

The parameter plays a balancing role between the energy efficiency and network performance. The results of comparing different values of balance coefficient are shown in Figure 10(a). In this experiment, the balance coefficient is increased from 0 to 1 and the session rate is reduced to approximately 17.2% as a result. The experiment results for node transmission power are showed in Figure 10(b), which shows that the sum of node transmission power consumption is significantly decreased from 13 mW to 0.8 mW when the balance coefficient increases. The total power consumption of the power control is decreased noticeably, when network traffic is declined very slightly and the value of the balance coefficient is set as 0.1. The results show that the network energy consumption is very sensitive to the balance coefficient. Nevertheless, the balance coefficient has little effect on the rate of nodes, which represents a major advantage for battery-powered wireless networks.

(a)

(b)

Figure 10: (a) The effect of the tradeoff factor on total flow rate. (b) The effect of the tradeoff factor on total cost of power.

5.4. Comparison with the Equal and Fixed Power Allocation Algorithms

We compare our algorithm with the equal and fixed power allocation for the session rate evolution. The equal power allocation assumes that the nodes are allocated a maximum power of 2.5 mW to affiliated link, and the fixed power allocation sets the link power to be 0.5 mW. In this experiment, we randomly vary channel gain and independently run the simulation 10 times to measure the flow rate. As can be seen from Figure 11, the session rate based on our joint rate and power allocation is higher than that of the equal allocation. The session rate of the fixed power allocation is significantly lower than the other two alternatives, but, due to its fewer optimized variables, the fixed power allocation enjoys faster convergence. Although utility power optimization converges slowly, it needs fewer iterations to reach stable approximation, giving it more practical engineering advantages.

Figure 11: Session rate for three power allocations.

On the other hand, the equal power allocation costs a total power of 22.5 mW, while the fixed power needs 8.5 mW and the utility-based power allocation consumes 13 mW, which are significantly lower than the equal power allocation. The results reveal that the joint optimization can improve network performance, while reducing node power consumption and prolonging the life of network.

6. Conclusions

In this paper, we study the joint optimization of power allocation and rate control for multicast flow with network coding for enhancing wireless network throughput. Using the network utility maximization theory, we propose a multisession flow congestion control and power allocation optimization model under the condition that network coding subgraph is determined. We also use the dual decomposition to decompose the problem into source flow control and the intermediate node power allocation optimization problems, where each subproblem corresponds to resource allocation of the transport layer and the physical layer. For dealing with the instability problem by multiple subtrees, a proximal optimization algorithm is adopted. Analysis demonstrates that the distributed algorithm can converge under the condition that the step length is small enough. Finally, numerical simulation shows that our optimization algorithm can fairly allocate resources for network traffic. Due to the power controlling, the network node’s energy efficiency has been improved significantly with a small impact on the network capacity.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

The subject is sponsored by the National Natural Science Foundation of China (nos. 61370050 and 61373017), the Anhui Provincial Natural Science Foundation (no. 1308085QF118), and the Anhui Normal University Doctoral Startup Foundation (151305).

References

S. Samat, M. Patrick, and R. Catherine, “Cross-layer optimization using advanced physical layer techniques in wireless mesh networks,” IEEE Transactions on Wireless Communications, vol. 11, no. 4, pp. 1622–1631, 2012.

A. Khreishah, I. M. Khalil, and P. Ostovari, “Flow-based xor network coding for lossy wireless networks,” IEEE Transactions on Wireless Communications, vol. 11, no. 6, pp. 2321–2329, 2012.

S. Jagadeesan and V. Parthasarathy, “Cross-layer design in wireless sensor networks,” in Advances in Computer Science, Engineering & Applications, vol. 166, pp. 283–295, 2012.

C. Long, B. Li, Q. Zhang, B. Zhao, B. Yang, and X. Guan, “The end-to-end rate control in multiple-hop wireless networks: cross-layer formulation and optimal allocation,” IEEE Journal on Selected Areas in Communications, vol. 26, no. 4, pp. 719–731, 2008.

J. Price and T. Javidi, “Distributed rate assignments for simultaneous interference and congestion control in CDMA-based wireless networks,” IEEE Transactions on Vehicular Technology, vol. 57, no. 3, pp. 1980–1985, 2008.

A. Ghasemi and K. Faez, “Jointly rate and power control in contention based MultiHop Wireless Networks,” Computer Communications, vol. 30, no. 9, pp. 2021–2031, 2007.

M. Chiang, “Balancing transport and physical layers in wireless multihop networks: jointly optimal congestion control and power control,” IEEE Journal on Selected Areas in Communications, vol. 23, no. 1, pp. 104–116, 2005.

C. Long, B. Li, Q. Zhang, B. Zhao, B. Yang, and X. Guan, “The end-to-end rate control in multiple-hop wireless networks: cross-layer formulation and optimal allocation,” IEEE Journal on Selected Areas in Communications, vol. 26, no. 4, pp. 719–731, 2008.

J. Zhang and H.-N. Lee, “Energy-efficient utility maximization for wireless networks with/without multipath routing,” International Journal of Electronics and Communications, vol. 64, no. 2, pp. 99–111, 2010.

M. van Nguyen, S. H. Choong, and S. Lee, “Cross-layer optimization for congestion and power control in OFDM-based multi-Hop cognitive radio networks,” IEEE Transactions on Communications, vol. 60, no. 8, pp. 2101–2112, 2012.

J. Yuan, Z. Li, W. Yu, et al., “A cross-layer optimization framework for multihop multicast in wireless mesh networks,” IEEE Journal on Selected Areas in Communications, vol. 24, no. 11, pp. 2092–2103, 2006.

R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, “Network information flow,” IEEE Transactions on Information Theory, vol. 46, no. 4, pp. 1204–1216, 2000.

C. Fragouli and E. Soljanin, “Network coding applications,” Foundations and Trends in Networking, vol. 2, no. 2, pp. 135–269, 2007.

T. Matsuda, T. Noguchi, and T. Takine, “Survey of network coding and its applications,” IEICE Transactions on Communications, vol. E94-B, no. 3, pp. 698–717, 2011.

B. Li and D. Niu, “Random network coding in peer-to-peer networks: from theory to practice,” Proceedings of the IEEE, vol. 99, no. 3, pp. 513–523, 2011.

L. Chen, T. Ho, M. Chiang, S. H. Low, and J. C. Doyle, “Congestion control for multicast flows with network coding,” IEEE Transactions on Information Theory, vol. 58, no. 9, pp. 5908–5921, 2012.

C. Z. Kwong Zhu Fang, “Cognitive wireless mesh network QoS constraints of multicast routing algorithms,” Journal of Software, vol. 23, no. 11, pp. 3029–3044, 2012.

Y. Xi and E. M. Yeh, “Node-based optimal power control, routing, and congestion control in wireless networks,” IEEE Transactions on Information Theory, vol. 54, no. 9, pp. 4081–4106, 2008.

J. Mo and J. Walrand, “Fair end-to-end window-based congestion control,” IEEE/ACM Transactions on Networking, vol. 8, no. 5, pp. 556–567, 2000.

S. P. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004.