1
LAMOR: Lifetime-Aware Multipath
Optimized Routing Algorithm for Video
Transmission over Ad Hoc Networks
Liansheng Tan, Ling Xie, King-Tim Ko, Ming Lei and Moshe Zukerman
Abstract—Multipath routing is a key technique to
support video transmission over wireless ad hoc networks (WANETs). In WANETs, the lifetime of a node is related to its residual energy, current traffic conditions and the required energy consumed for sending a packet to its next hop in the path. In this paper, we propose a new adaptive routing scheme termed Lifetime-Aware Multipath Optimal Routing (LAMOR) for supporting high-speed real time video transmission in WANETs, which is optimized in terms of lifetime and analyze its characteristics. Both theoretical analysis and simulation results demonstrate that LAMOR indeed extends network lifetime and improves the transmission quality of video streams.
Index Terms— Ad Hoc Networks, Routing, Lifetime,
Multipath.
I.
INTRODUCTION
IRELESS ad-hoc network (WANET) consists of a collection of wireless nodes that self-organize into
This research has been partially supported by the Key Project of Chinese Ministry of Education under Grant No. 03114, the National Natural Science Foundation of China under Grant
Number 60573188, 60473085 and the Australian Research Council.
Liansheng Tan and Ling Xie are with the Computer Science Department of Central China Normal University, Wuhan 430079, PR. China (e-mail: [email protected],
King-Tim Ko is with Department of Electronic Engineering, City University of Hong Kong, Tat Chee Avenue, Kowloon, Hong Kong SAR, PR China (e-mail: [email protected])
Ming Lei is with School of Electronic Information of Wuhan University, Wuhan 430079, PR. China (e-mail:
Moshe Zukerman is with the Australian Research Council Special Research Center for Ultra-Broadband Information Networks (CUBIN) an affiliated program of National ICT Australia, EEE Dept., The University of Melbourne, Victoria 3010, Australia (e-mail: [email protected]).
a network without the help of an existing infrastructure. There are many challenges in supporting video communication over WANETs. One of them is routing. There is no fixed infrastructure and the topology is frequently changing due to node mobility or environmental changes. Therefore, it is very hard to maintain a stable and efficient end-to-end route in an ad hoc network. A technique, which recently received research interests, is to partition flows optimally over multiple paths [1]. Multipath routing can aggregate many link rates for a single video stream and hence sustain higher video bit-rates while simultaneously avoiding congestion by load balancing.
It is shown in [2] that path diversity is an effective tool for combating correlated packet losses over the Internet. The benefit of a congestion-optimized multipath routing algorithm is studied in [3]. In [4] and [16], the authors further propose a method to optimize rate allocation among a group of video frames and over multiple paths subject to minimum expected video distortion at a receiver. Multipath routing in WANETs has also been investigated from a source coding perspective, particularly with respect to multiple description (MD) codes. Specifically, in [5], multipath routing is used to send multiple descriptions of images and video data over a network with given link throughputs. In a recent report [6], the authors analyze the throughput delay tradeoff curve and show that there is a dramatic increase in throughput for asymptotically large networks, when multipath routing is used in comparison to direct communication in a WANET.
Due to power constraints and wireless channel conditions, multipath routing can also introduce significant delay, congestion, and unreliability. Thus, supporting multimedia data with multipath routing is still challenging. In this paper, we focus on an important issue in multipath routing in ad hoc networks, i.e., extending lifetime of nodes and paths. We propose an optimal rate allocation algorithm based on the lifetime of multiple paths. Routing protocols that do not consider lifetime of nodes may result in using the same paths for given traffic demands. This causes a quick exhaustion of energy of the
W
nodes, corruption of the links and unreliable data transmission. This problem can become much more serious in video stream because video transfers are long and concentrated. In addition, the energy exhaustion of some nodes may have an effect on the performance of mesh networks. We consider a network that is shared by a set of sources, each of which communicates with its corresponding destination using multiple paths. We develop a new technique for joint optimization called Lifetime-Aware Multipath Optimal Routing (LAMOR), which includes two key techniques: (1) lifetime-optimized multipath routing; and (2) optimal rate allocation among multiple paths.
II. LA
MOR
FORV
IDEOS
TREAMSA. Lifetime-aware multiple routes discovery
In order to ensure reliability in real-time video transmission sessions, we set a node lifetime threshold λ
0 and a path lifetime thresholdλaccording to empirical
evaluationin practiceto limit the choice of an active node and an active path. The main idea of our algorithm is not to overwork certain nodes on a heavily used path and distribute load among several active paths more evenly, so to extend the lifetime of the nodes. In the whole procedure, we decrease the values of λ0 and λ gradually
until some nodes are dead. That means we minimize these two values to the extreme case of that the network is broken down.
The Min-Max Battery Cost Routing (MMBCR) and the
Conditional Max-Min Battery Capacity Routing
(CMMBCR) [14-15] consider the residual energy of each host. The drain rate is a metric that measures the energy consumption speed in a given node. The Minimum Drain Rate (MDR) [7] proposes a method of calculating the drain rate DRi on the basis of the traffic load
characteristics. The drain rate DRi of a node i is estimated
by averaging the amount of energy consumption and equals to the energy dissipation per second during the past
T seconds. ECt denotes the total energy consumption
during the past T seconds. We have the following quantity relationship
T EC
DRi = t / , (1)
where the ratio signifies how long node i
can keep up with routing operations with current traffic conditions, i.e. the lifetime of node i, where RBP
i i i RBP DR C = / , (2) i i i RBP DR C = / i denotes
the residual battery.
In the circumstance that the node’s transmitting range is adjustable, the estimation for selecting a long lifetime
node by (2) is not sufficient for selecting a long lifetime route. This can be seen from the following analyses.
Let variable pik denote the energy consumption required
by node i for sending data to its next hop k in a route. Without loss of generality, we assume pik = d2, where d is
the distance between two nodes. In some cases, for node i
and node j, if Ci > Cj, but pik >> pjl, then choosing a
route including node i will deplete much energy of node i, which may exhaust the node’s energy quickly, and the route including node i will not have longer lifetime than the route including node j. So in the case that the node’s transmitting range is adjustable, in order to avoid using a longer hop, we modify (2) as
ik t c i i i p r T EC RBP C + = ~ (3) where denotes the rate at which packets pass through node i at time t for source C. In a given path r
t c r p, we let i r n p
C
L
p i~
min
∈ ∀=
. (4) pL is defined as the lifetime of the path rp . If
λ
>
p
L
(5) the path will be chosen as one of the active paths in the multiple path routing.
To increase the robustness of multipath routing, we construct maximally disjoint multiple paths in which no more than one path includes the same node to prevent it from being congested, and to utilize the available network resources more efficiently. Another advantage is that in the case where one of the paths is corrupted, the others will not be affected.
Under the limiting conditions imposed by the lifetime of nodes and paths, the maximally disjointmultiple routes discovery procedure is described as follows.
1) A host, which starts a route discovery, broadcasts a
route request packet. Each route request packet contains <initiator address, destination address, request id>.
2) Any host computes its own lifetime periodically by (2). If its lifetime Ci<λ0, it is set to the sleeping
state. Otherwise, switch to step 3.
3) If the pair <initiator address, request id> for this route request is found in this host’s list of recently seen requests and this host is not the target of the route request, then discard the route request packet and do not process it further, which will be used in finding several disjoint routes. If the target of the request matches this host’s own address, switch to
step 6.
4) Otherwise, if this host’s address is already listed in the route record in the request packet, then discard the route request packet and do not process it further. This will avoid propagating the request around a loop.
5) Otherwise, appends this host’s own address, and the
RBPi, DRi of the host to the route record in the route
request packet, and re-broadcasts the request. The
route record in the route request packet contains the address and the RBPi, DRi of each node passing
through in the route discovery procedure.
6) Otherwise, if the target of the request matches this host’s own address, then the route records in the packet to contain the route by which the request reached this host. Return a copy of this route in a
route reply packet to the initiator. And the nodes included in the route records will broadcast the route reply packet to the upstream node. When a node receives several route reply packets including itself for the same <S, D> pair, it will not broadcast the route reply packets received later.
The target of the route request receives all the route request packets and returns the copy of each route in route reply packets to the same initiator. This provides a possibility of finding multiple paths. Figure 1 illustrates the case of finding multiple routes for the <S, D> pair. In this model, node S broadcasts a request packet, and node D receives routes (S, A, B, C, D), (S, E, F, D), (S, J, K, L, D), and (S, A, B, M, H, D) from its neighbors and returns a copy of each route. Eventually, S finds three active disjoint paths (S, A, B, C, D), (S, E, F, D), (S, J, K, L, D). A B C L D F S K E J M H
Figure 1. Multiple paths discovery for <S, D> pair
The source node may receive several route reply packets containing of different route sequence of nodes. It computes the lifetime of each path for a given moderate rate by formulation (3) and (4), and then chooses some paths satisfying formulation (5) as active paths and stores
them in its routes cache. For choosing the active path, we let equals to the total rate r of the source C at time t. The source can store the active paths excluding of the destination in its cache in a tree structure. This mechanism is displayed in Figure 2 for the above model.
t c r
A
B
C
L
D
F
S
K
E
J
(S,D,id)
Figure 2 Multiple routes cache of source node
B. Delay-constraint multiple routes maintenance
Since wireless networks are inherently less reliable than wired networks [9], many wireless networks utilize a hop-by-hop acknowledgement at the data link level in order to provide early detection and retransmission of lost or corrupted packets. In conventional DSR [8], if the data link level reports a transmission problem for which it cannot recover, this host then sends a route error packet to the original sender of the packet that encounters the error. In our LAMOR, if the data link level reports a transmission problem, this host checks its route cache first and selects a maximum lifetime path as an alternative path. The technique to establish its route cache will be described in detail in subsection C. If an alternative route is found from the host to the destination, the host uses this alternative route to continue transmitting packets, which decreases time delay and increases delivery rate of video packets without retransmission. If no alternative route is found, this host sends a route error packet to its upstream node in the path. When the upstream node receives the error packet, it checks its route cache similarly to find an alternative route from it to the destination. This procedure is repeated until an active alternative route to the destination is found. If no intermediate node finds an alternative route in its route cache, the source will receive the route error packet eventually and distribute the video stream among the remainder active routes over again by using algorithm 1.
nodes and changing topology, all source nodes should periodically obtain new information of bottleneck nodes and new routes that take into account the continuously changing topology. Our routing protocol requires all sources to perform periodically route discovery and rate distribution among active routes in order to distribute its rate among active routes more evenly and efficiently even when there is no route breakage.
C. Multipath optimizations using cache
The routing can be optimized by full use of cache, as described in DSR [8]. However in the multipath routing, the mechanism may produce loops or joint multipath. For example in Figure 1, when B receives the route request packet with the destination D, there have existed two routes to D in its cache, namely (B, C, D) and (B, M, H, D). If B replies to the source with the two routes, then S will find four paths, they are (S, A, B, C, D), (S, A, B, M, H, D), (S, E, F, D) and (S, J, K, L, D). Obviously it forms two joint paths (S, A, B, C, D), (S, A, B, M, H, D). To avoid this case, B will reply to the source with the shortest hot count route. An intermediate node uses its cache to establish backup routes.
In Figure 1, B overhears (S, A, B, C, D) from C, meanwhile, B overhears route (S, E, F, D), (…F, C, D…) from F, (…M, H, D…), and (…M, C, D…) from M, it only stores the routes including itself as backup routes to some destination in its cache.
As for collision, LAMOR attempts to cache multiple active paths while avoiding the problems of many simultaneous replies, by causing each mobile host to delay slightly before replying. We suggest a host perform the following actions:
1) Pick a delay period d = H×(h+r), where h is the
length in number of network hops for the route to be returned in this host’s reply, r is s a random number between 0 and 1, and H is a small constant delay to be introduced per hop.
2) Delay transmitting the route reply from this host for a period of d.
3) Transmit the route reply to its upstream node.
4) If its next hop node does not receive the packet, it will retransmit the packet with limited times. In this paper, we set the maximum number of IEEE 802.11[10] MAC retransmissions to 2.
III. M
AXIMUML
IFETIMEO
PTIMALR
ATEA
LLOCATIONIn LAMOR, the rate allocation is optimized for a group of video frames at a time, over multiple paths. In this section, we investigate the problem of optimal rate
allocation among multiple paths to maximize the lifetime of the routes by evenly load distribution among multiple paths. The optimization is performed via dynamically distributing rate in terms of the changing bottleneck node’s lifetime, where the lifetime of each node is computed by its residual energy, current traffic conditions and the required energy consumed for sending a packet to its next hop in the path. The factors considered in computing the lifetime of a node will avoid the congestion and the energy overused of a node, so to provide strongly reliable paths for data transmission and improve the video quality.
The mathematics analysis of the optimal rate allocation and the complete algorithm is given as follows:
Given p active paths, we define the lifetime L of these paths as the duration from the beginning of sending data to the time when the first path is corrupted. The path is corrupted when one of the nodes in the path dies down at the first time. In this paper, we consider the situation where corruption of a node is mainly caused by its energy exhaust.
For a <source, destination> pair, we assume the rate of video packets generated by the source is r. We distribute the rate r of the source among the p active paths, we further assume that the distributed rates equal to r1, r2, r3,
… rp , respectively and r1+r2+r3+…+ rp = r. We then can
get the lifetime of the p paths L1, L2, L3, …, LP by
formulation (3) and (4) The lifetime of the total p paths is obtained by
L = min (L1, L2, L3, …, …LP) (6)
Without loss of generality, we assume the bottleneck node in each path is k, let LPK denote the bottleneck node’s
lifetime in path p, then LPK =
kl p k k p r T EC RBP + , where
denotes the energy consumption required for sending a packet to its next hop in path p, then the lifetime of the p
paths equal to L
kl
p
1k, L2k, L3k, …, LPk, respectively.
With regard to extending of the lifetime of the p paths, we propose the following result.
Theorem 1: If L1k= L2k = L3k =… =LPk= L, the lifetime L
of the p paths is maximal.
On the basis of the above theorem, the methodology for a source to distribute its rate r among p paths can be described into Algorithm 1. For a source node, since the number of the active routes in its cache and the number of nodes in a path are small, the complexity of this algorithm 1 is low.
Given p active paths for a source, how to get r1, r2, r3…
rp, and the procedure is given below:
1. Computing the lifetime of bottle node k in the p paths gets L1, L2, L3…LP, respectively by formulation (3) and
(4); 2. Let δ = + = = + = + k p kl k kl k k kl k k p r T EC RBP p r T EC RBP p r T EC RBP ... 2 1 ; 3. We get kl k k i p T EC RBP r =( − )/ δ according to step 2; 4. r1 + r2 + r3+ … + rp = r;
5. Obtains r1, r2, r3, …, rp according to step 3 and step 4.
Algorithm 1: Rate allocation algorithm
IV.
S
IMULATIONR
ESULTSTo validate our approach, this section presents simulation results. Simulations are performed in ns-2 [11]for video streaming over a WANET with 16 stationary nodes with initial energy 100 NJ randomly distributed over a 100 m × 100 m area. 10 video streaming sessions are set up between 10 arbitrary node pairs. We test our video simulation using H.264 [12] coded bit streams. “Foreman” video sequence is used with QCIF format [13]. The original frame rate is 30 fps. The maximum packet size is 1000 bytes. All packets exceeding the packet size of 1000 bytes are segmented at the sender and reassembled at the receiver by the transport agent.
We compare the performance of 1-path DSR routing algorithm, 6-path congestion-optimized multipath routing algorithm that has been shown obtain better performance over 3-path congestion-optimized routing, with LAMOR.Figure 3 plots the number of nodes alive in the networks throughout the simulation time with each video stream a fixed transmission rate. We firstly assign the parameterλ0, λ to 20 s and 15 s respectively and
decrease their values gradually in the simulation procedure. Simulation results show the LAMOR indeed decreases the dying speed of the nodes and extends the lifetime of the networks.
For the long-lasting and concentrated video stream, 1-path DSR causes the sharp decrease in the number of nodes alive after some time without considering the overuse of energy of nodes. Multiple paths can distribute load more evenly, but 6-path congesting- optimized routing is not adaptive for fixed 6 paths always, which may use some feeble paths and result in some feeble path
overused. The LAMOR is an adaptive routing algorithm without the fixed number of paths, it selects and allocates load according to the current conditions of different paths, trying to prevent some paths from being overused, so it is more load balancing.
The image distortion due to packet losses with playout deadline 350 ms is calculated by using the average peak signal-to-noise ratio (PSNR) of decoded frames over the original frames. In Figure 4, each video stream starts at the lowest available transmission rate and gradually ramps up the encoding rate based on the rate allocation algorithms. Rates are denoted in kilobits per seconds (kbps). We compute the average PSNR of the ten transmission sessions. 1-path DSR achieves encoder rate-PSNR performance at lower rates, when few packets are dropped due to the corruption of nodes. As the rate increases, LAMOR obtains the improved performance over the 6-path congestion-optimized algorithm.
Figure 5 plots the change of the average PSNR during the simulation time for two different routing and rate allocation algorithms. In order to generate statistically meaningful quality measures, for each simulation scenario we repeat the simulation ten times with different seeds. The presented PSNR values are the average of the ten experiments. Figure 5 shows in the later simulation time, LAMOR maintains higher average PSNR.
Figure 4 Average PSNR versus the different rate
Figure 5 Average PSNR versus the time
V. C
ONCLUSIONSIn this paper, we propose a Lifetime-Aware Optimized Multipath Routing approach for supporting high-speed real time video transmission over ad hoc networks. The routing algorithm is optimized in terms of the lifetime of paths, which are essential for discovering strongly reliable routes. We further propose a distributed rate allocation algorithm based on the discovered multiple paths, which extends the lifetime of the networks and improves the video quality. Simulation results validate the merit of the proposed approach. The impact of the network topology and traffic pattern on the performance of algorithm would also be a subject of future work.
R
EFERENCES[1] L. Kleinrock, “Queuing Systems, Volume Ⅱ : Computer Applications,” Wiley Interscience, New York, 1976.
[2] J. G. Apostolopoulos, “Unbalanced multiple description video communication using path diversity,” in Proc. Visual Communications and Image Processing (VCIP), Jan. 2001, pp.329-409. [3] E. Setton, X. Zhu, and B. Girod, “Congestion
optimized multipath streaming of video over ad hoc wireless networks,” in Proc. International Conference on Multimedia and Expo (ICME-04), Taipei, Taiwan, June 2004, July 2004,pp 1619-1622. [4] X. Zhu, S. Han, and B. Girod, “Congestion-aware rate allocation for multipath video streaming over ad hoc wireless networks,” in Proc. International Conference on image processing (ICIP-04), vol.4, Oct. 2004.
[5] N. Gogate, D. M. Chung, S.S. Panwar and Y. Wang, “Supporting image and video application in a multihop radio environment using path diversity and multiple description coding”, IEEE Trans. Circuits and Systems for Video Technology, vol. 12, no. 9, pp. 777-792, Sept. 2002.
[6] A. E. Gamal, J. Mammen, B. Prabhakar and D. Shah, “Throughput delay trade-off in wireless networks”, presented at ‘The First Bay Area Day in Communications, Networking and Signal Processing’, Feb. 2004, [Online] Available: http://www.eecs.berkeley.edu/dporrat/BADposters.h tml.
[7] D. Kim, J. J. Garcia-Luna-Aceves and K. Obraczka, “Routing mechanisms for mobile ad hoc networks based on the energy drain rate,” IEEE Trans. on Mobile Computing, vol. 2, no. 2, pp. 161-173, April-June 2003.
[8] D. B. Johnson, D. A. Maltz, and Y. Ch. Hu, “The dynamic source routing protocol for mobile ad hoc networks (DSR),” IETP MANET Working Group, Internet Draft, draft-ietf-manet-dsr-07.txt, [Online] Available:
http://www-2.cs.cmu.edu/~dmaltz/dsr.html
[9] D. F. Bantz and F. J. Bauchot, “Wireless LAN design alternatives,” IEEE Network, vol. 8, no. 2, pp.: 43–53, March/April 1994.
[10] ANSI/IEEE Std 802.11 1999 Edition, Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specification, IEEE, Aug. 1999.
[11] K. Fall and K. Varadhan, “NS notes and documents,” the VINT project UC Berkeley, LBL, USC/ISI, and Xerox PARC, Feb. 2000. [Online] Available: http://www.isi.edu/nsnam/ns/ns-documentation.html [12] ISO/IEC 1449-10:2003: “Coding of audiovisual
objects part-10: Advanced video coding”, 2003 (also ITU-T Recommendation H.264 ‘Advanced video coding for generic audiovisual services’)
[13] A. N. Netravali and B. G. Haskell. Digital Pictures: Representation, Compression, and Standards (2nd Ed). Plenum Press, New York, NY, 1995.
[14] S. Singh, M. Woo, and C. S. Raghavendra, “Power-aware with routing in mobile ad hoc networks,” in Proc. 4th. Annual ACM/IEEE international conference on Mobile Computing and Networking, Dallas, Oct. 25-30, 1998, pp.181-190. [15] C. K. Toh, “Maximum battery life routing to support
ubiquitous mobile computing in wireless ad hoc networks,” IEEE Commun. Mag., vol. 39, no. 6, pp. 138-147, June 2001.
[16]E. Setton, X. Zhu and B. Girod, “Congestion-optimized scheduling of video over wireless ad hoc networks”, IEEE 2005 International Symposium on Circuits and Systems, (ISCAS-05),