EENCR: An Energy-efficient Network Coding based Routing Protocol. May 8, 2014

Similar documents
A Novel Optimization of the Distance Source Routing (DSR) Protocol for the Mobile Ad Hoc Networks (MANET)

Review: Our Approach 2. CSC310 Information Theory

Calculation of the received voltage due to the radiation from multiple co-frequency sources

Dynamic Optimization. Assignment 1. Sasanka Nagavalli January 29, 2013 Robotics Institute Carnegie Mellon University

Adaptive Modulation for Multiple Antenna Channels

Performance Analysis of Multi User MIMO System with Block-Diagonalization Precoding Scheme

Comparative Analysis of Reuse 1 and 3 in Cellular Network Based On SIR Distribution and Rate

The Impact of Spectrum Sensing Frequency and Packet- Loading Scheme on Multimedia Transmission over Cognitive Radio Networks

Utility-based Routing

A NSGA-II algorithm to solve a bi-objective optimization of the redundancy allocation problem for series-parallel systems

Priority based Dynamic Multiple Robot Path Planning

A Metric for Opportunistic Routing in Duty Cycled Wireless Sensor Networks

A study of turbo codes for multilevel modulations in Gaussian and mobile channels

High Speed, Low Power And Area Efficient Carry-Select Adder

On Interference Alignment for Multi-hop MIMO Networks

Learning Ensembles of Convolutional Neural Networks

Digital Transmission

Parameter Free Iterative Decoding Metrics for Non-Coherent Orthogonal Modulation

Resource Allocation Optimization for Device-to- Device Communication Underlaying Cellular Networks

Joint Channel Assignment and Opportunistic Routing for Maximizing Throughput in Cognitive Radio Networks

Walsh Function Based Synthesis Method of PWM Pattern for Full-Bridge Inverter

A MODIFIED DIRECTIONAL FREQUENCY REUSE PLAN BASED ON CHANNEL ALTERNATION AND ROTATION

On the Feasibility of Receive Collaboration in Wireless Sensor Networks

Procedia Computer Science

Characterization and Analysis of Multi-Hop Wireless MIMO Network Throughput

To: Professor Avitabile Date: February 4, 2003 From: Mechanical Student Subject: Experiment #1 Numerical Methods Using Excel

The Performance Improvement of BASK System for Giga-Bit MODEM Using the Fuzzy System

NATIONAL RADIO ASTRONOMY OBSERVATORY Green Bank, West Virginia SPECTRAL PROCESSOR MEMO NO. 25. MEMORANDUM February 13, 1985

A Fuzzy-based Routing Strategy for Multihop Cognitive Radio Networks

Networks. Backpropagation. Backpropagation. Introduction to. Backpropagation Network training. Backpropagation Learning Details 1.04.

Distributed Uplink Scheduling in EV-DO Rev. A Networks

Joint Power Control and Scheduling for Two-Cell Energy Efficient Broadcasting with Network Coding

PRACTICAL, COMPUTATION EFFICIENT HIGH-ORDER NEURAL NETWORK FOR ROTATION AND SHIFT INVARIANT PATTERN RECOGNITION. Evgeny Artyomov and Orly Yadid-Pecht

MTBF PREDICTION REPORT

Topology Control for C-RAN Architecture Based on Complex Network

Network Reconfiguration in Distribution Systems Using a Modified TS Algorithm

Space Time Equalization-space time codes System Model for STCM

HUAWEI TECHNOLOGIES CO., LTD. Huawei Proprietary Page 1

A Comparison of Two Equivalent Real Formulations for Complex-Valued Linear Systems Part 2: Results

Define Y = # of mobiles from M total mobiles that have an adequate link. Measure of average portion of mobiles allocated a link of adequate quality.

Prevention of Sequential Message Loss in CAN Systems

Understanding the Spike Algorithm

Cooperative Multicast Scheduling Scheme for IPTV Service over IEEE Networks

Throughput Maximization by Adaptive Threshold Adjustment for AMC Systems

Secure Transmission of Sensitive data using multiple channels

A Predictive QoS Control Strategy for Wireless Sensor Networks

NETWORK 2001 Transportation Planning Under Multiple Objectives

熊本大学学術リポジトリ. Kumamoto University Repositor

antenna antenna (4.139)

Lifetime-Oriented Optimal Relay Deployment for Three-tier Wireless Sensor Networks

Movement - Assisted Sensor Deployment

Side-Match Vector Quantizers Using Neural Network Based Variance Predictor for Image Coding

Research of Dispatching Method in Elevator Group Control System Based on Fuzzy Neural Network. Yufeng Dai a, Yun Du b

Medium Access Control for Multi-Channel Parallel Transmission in Cognitive Radio Networks

Channel Alternation and Rotation in Narrow Beam Trisector Cellular Systems

Optimal Local Topology Knowledge for Energy Efficient Geographical Routing in Sensor Networks

Traffic balancing over licensed and unlicensed bands in heterogeneous networks

Rejection of PSK Interference in DS-SS/PSK System Using Adaptive Transversal Filter with Conditional Response Recalculation

Two-Phase Cooperative Broadcasting Based on Batched Network Code

JOURNAL OF SELECTED AREAS IN COMMUNICATIONS 1

Enhancing Throughput in Wireless Multi-Hop Network with Multiple Packet Reception

Keywords LTE, Uplink, Power Control, Fractional Power Control.

Full-duplex Relaying for D2D Communication in mmwave based 5G Networks

Opportunistic Beamforming for Finite Horizon Multicast

High Speed ADC Sampling Transients

Exploiting Idle Communication Power to Improve Wireless Network Performance and Energy Efficiency

The Synthesis of Dependable Communication Networks for Automotive Systems

Efficient Large Integers Arithmetic by Adopting Squaring and Complement Recoding Techniques

Revision of Lecture Twenty-One

Discussion on How to Express a Regional GPS Solution in the ITRF

IEE Electronics Letters, vol 34, no 17, August 1998, pp ESTIMATING STARTING POINT OF CONDUCTION OF CMOS GATES

A Current Differential Line Protection Using a Synchronous Reference Frame Approach

Passive Filters. References: Barbow (pp ), Hayes & Horowitz (pp 32-60), Rizzoni (Chap. 6)

Optimal Sizing and Allocation of Residential Photovoltaic Panels in a Distribution Network for Ancillary Services Application

Joint Adaptive Modulation and Power Allocation in Cognitive Radio Networks

An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks

Micro-grid Inverter Parallel Droop Control Method for Improving Dynamic Properties and the Effect of Power Sharing

Uncertainty in measurements of power and energy on power networks

Exploiting Dynamic Workload Variation in Low Energy Preemptive Task Scheduling

A High-Sensitivity Oversampling Digital Signal Detection Technique for CMOS Image Sensors Using Non-destructive Intermediate High-Speed Readout Mode

Rational Secret Sharing without Broadcast

Performance Study of OFDMA vs. OFDM/SDMA

Multiband Jamming Strategies with Minimum Rate Constraints

Enhanced Uplink Scheduling for Continuous Connectivity in High Speed Packet Access Systems

Utility-Based Power Control in Cellular Wireless Systems

Comparison of Two Measurement Devices I. Fundamental Ideas.

Optimal Transmission Scheduling of Cooperative Communications with A Full-duplex Relay

Distributed Resource Allocation and Scheduling in OFDMA Wireless Networks

Adaptive Distributed Topology Control for Wireless Ad-Hoc Sensor Networks

WIRELESS sensor networks are used in a wide range of

MIMO Precoding Using Rotating Codebooks

Forwarding Redundancy in Opportunistic Mobile Networks: Investigation, Elimination and Exploitation

Generalized Incomplete Trojan-Type Designs with Unequal Cell Sizes

Optimization of Scheduling in Wireless Ad-Hoc Networks. Using Matrix Games

A New Type of Weighted DV-Hop Algorithm Based on Correction Factor in WSNs

Frequency Assignment for Multi-Cell IEEE Wireless Networks

Figure 1. DC-DC Boost Converter

Study of Downlink Radio Resource Allocation Scheme with Interference Coordination in LTE A Network

Wireless Sensor Network Coverage Optimization Based on Fruit Fly Algorithm

The Effect Of Phase-Shifting Transformer On Total Consumers Payments

Transcription:

EENCR: An Energy-effcent Networ Codng based Routng Protocol May 8, 2014 1

1 Prelmnary Ahlswede et al. [2] frst proposed the networ codng technque. The authors showed that the use of networ codng can effectvely ncrease throughput n wred networs. Snce then, dfferent networ codng strateges have been studed, e.g., lnear networ codng [2], nonlnear networ codng [17] and random networ codng [11] [12]. Ho et al. [11] proved that the use of random networ codng can acheve the theoretcal maxmal throughput n wreless networs. And Erylmaz et al. [7] showed that networ codng can reduce transmsson latency, therefore can ncrease the throughput n multcast traffc flow. Recently, Chachuls et al. [4] proposed MORE, the frst protocol to ntegrate random networ codng wth opportunstc routng for uncast flow n wreless mesh networs. Experment results show that MORE yelds a hgher networ throughput than ExOR [3] whch only uses opportunstc routng. Based on the framewor of [4], [19] [14] further mprove the networ throughput by ntroducng dfferent ACK and rate control schemes. To the best of our nowledge, however, there has been no systemc study on spatal and energy consumpton control on networ-codng-based (NC-based) routng, whch s of great mportance n power-constraned dstrbuted systems, e.g., wreless sensor networs. In ths wor, we study the open problem of mnmal cost NC-based routng n wreless networs. Our man contrbutons are as follows. We propose an effectve load based approach to measure the expected number of transmssons of NC-based transmsson for arbtrary topologes. Ths s the frst mathematcal framewor to compute the transmsson cost of NC-based routng. We propose a polynomal greedy algorthm to compute the mnmal transmsson cost and the correspondng routng brad for NC-based routng. We prove the optmalty of ths algorthm and an upper bound of transmsson cost for the optmal NC-based routng brad, whch s equal to the cost of shortest sngle path routng. Based on the algorthm we proposed, we desgn and mplement EENCR, an energyeffcent NC-based routng protocol, for resource-constraned sensor platforms. In EENCR, 2

we ncorporate the 4-bt ln estmator of CTP [9], realze a lght-weght dstrbuted mplementaton for our greedy forwarder set selecton algorthm n the rougng engne, and desgn a modfed null-spaced-based (M-NSB) coded feedbac scheme and a correspondng rate control component. Compared to CTP, EENCR ntroduces zero addtonal communcaton cost but yelds an optmal routng brad wth lower cost than the shortest sngle path routng. We evaluate the performance of EENCR on the NetEye testbed by comparng t wth CTP [9], MORE [4] and CodeOR [19]. Experment results show that EENCR acheves a close to 100% relablty wth a large transmsson cost reducton of CTP,.e., 25-28%. And EENCR further mproves the goodput of NC-based routng protocol by adaptvely selectng the forwarders nstead of utlzng the whole forwarder canddate set. The remanng of ths chapter s organzed as follows. We frst ntroduce the system settngs and problem defnton. We then propose the effectve-load-based framewor to compute the transmsson cost of NC-based routng. Based on ths framewor, we desgn a polynomal-tme greedy algorthm that can compute the optmal routng brad for arbtrary topologes. Next we present EENCR, whch ncludes a dstrbuted mplementaton of our greedy algorthm. We evaluate the performance of EENCR under dfferent topologes on the NetEye testbed. Before we conclude ths chapter, we dscuss related wor n the feld of networ codng. 2 System settngs and problem defnton In ths secton, we frst present the system settngs we used n ths study. Next we explan why we choose ntra-flow networ codng n desgnng effcent routng protocol for mssoncrtcal WCPS. Based on the system model, we formally defne the problems of transmsson cost computaton and optmzaton for NC-based routng. 3

2.1 System settngs In ths study, we model a wreless networ as a drected graph G = (V,E) wth node S as the source and T as the destnaton. For each node G, we use U and D to denote the set of senders and recevers of, respectvely. And we denote the forwarder set of as FS D. For each ln j E, we denote ETX x j as ts expected number of transmsson to delver a pacet wth length x and P x j = 1 ETX j as the correspondng ln relablty. Snce networ codng wll not change the pacet length durng the transmsson, we use ETX j and P j for smplcty. Then we defne C T (x) as the transmsson cost of delverng x lnear ndependent pacets from to T, and C D (x) as the expected number of broadcasts of node when nodes n D collectvely receve x lnear ndependent coded pacets from. Assumng S needs to delver K pacets as a batch to T, we defne K j as the number of lnear ndependent pacets nodereceved from nodej. 2.2 Problem defnton We defne the mnmal cost NC-based routng problem as follows: Problem Q 0 Gven a drected graph G = (V,E) wth one source S and one destnaton T, fnd the optmal total transmsson cost and the correspondngfs for each nodeto delverk pacets usng ntra-flow random networ codng froms tot. To the best of our nowledge, however, there has been no study on how to measure the transmsson cost of ntra-flow networ codng, lettng alone the optmal transmsson cost. Therefore, we need to frst fnd a way to measure the transmsson cost of NC-based routng before we can solveq 0. Therefore, we defne the followng problem: Problem Q 1 the same as Q 0 except thatfs = D for each node. The soluton to problemq 1 can provde a mathematcal framewor to compute the expected transmsson cost of NC-based routng. Not only wll ths framewor provde a tool for our soluton to problemq 0, but also t wll shed lghts towards energy-effcency study of NC-based transmsson n future study. In the followng sectons, we wll propose optmal polynomal- 4

tme algorthms for both problemq 1 and Q 0. 3 Cost optmzaton for NC-based routng In ths secton, we frst propose an effectve load assgnment algorthm to solve problem Q 1. The ey dea of ths algorthm s to compute the number of encoded pacets each ntermedate node should forward and the correspondng cost. Based on ths approach, we then desgn a dstrbuted polynomal-tme algorthm to optmally solve Q 0. For each node n Q 0, we choose the forwarder set FS out of D usng a greedy algorthm based on the transmsson cost from each node nd tot We prove ths algorthm s optmalty and show that the optmal transmsson cost of NC-based routng has an upper bound that equals to the transmsson cost of the shortest path routng. 3.1 Effectve load based assgnment algorthm for Q 1 In NC-based opportunstc routng protocols, such as MORE [4], the networ throughput s sgnfcantly mproved compared wth sngle path routng. However, the transmsson cost of these protocols are not carefully controlled and t may be hgher than the cost of sngle path routng snce every ntermedate node wll forwards re-encoded pacets to ts own forwarder canddate set. To precsely measure and control the transmsson cost whle stll fully utlzng the beneft of networ codng on throughput, we propose a concept called effectve load. Defnton 1 For a nodej n the forwarder canddate setfcs, the effectve loadl j s defned as the number of lnear ndependent pacets that are receved by j but not by any of the other nodes n FCS that has lower transmsson cost to the destnaton. To demonstrate ths concept, we frst loo at the followng example n Fgure 1. In ths example, the source node S has K = 3 pacets that needs delverng to T and C AT < C BT. Therefore, node A has a hgher prorty than B n FCS S. When S stops broadcastng, the codng vectors of pacets receved by nodeaare{1,2,3} and{1,1,1} and the vectors at node 5

B are {2,3,5} and {1,1,1}. Snce node A has a lower transmsson cost to T than B, node A has an effectve load L A = 2. Node B only has an effectve load L B = 1 because the pacet wth codng coeffcent {1,1,1} s also receved by A. If both node A and B forward up to ther effectve load of re-encoded pacets to T, T wll receve 3 lnear ndependent pacets, whch s just enough to decode the whole batch. In the meantme, there wll be no unnecessary re-encodng forwardng operatons from FSC S tot. Fgure 1: An llustratng example of NC-based routng Based on the concept of effectve load, we then propose a framewor to compute the transmsson cost of NC-based routng based on dfferent effectve load between nodes wthn the same forwarder canddate set,.e., gven a node, each node j D wll forward L j lnear ndependent pacets to the destnaton To better llustrate how to use the effectve load approach to compute the transmsson cost of NC-based routng, we frst study the followng example n Fgure 2. In ths damond topology, we defne that P 2 P 4 P 6. The whole transmsson process can be dvded nto two steps. The frst step s nodes broadcastng tod S = {A,B,C} and the second step s nodes n D S forwardng re-encoded pacets tot. In the frst step, we treat node A,B,C as one sngle vrtual nodev DS. The ln relablty of ln S V DS s then expressed 6

Fgure 2: Example topology asp SVDS = 1 (1 P 1 )(1 P 3 )(1 P 5 ). Therefore, the transmsson cost for the frst step s C SDS (K) = K P SVDS = K 1 (1 P 1 )(1 P 3 )(1 P 5 ) (1) In the second step, snce we have P 2 P 4 P 6, we want path A T to forward as many pacets as t s capable of and path C T to forward as least pacets as needed. To compute the effectve load for nodes nd S, we frst computek, the expected number of lnear ndependent pacets receved by each node from S n the frst step. K S A = KP 1 1 (1 P 1 )(1 P 3 )(1 P 5 ) K S B = KP 3 1 (1 P 1 )(1 P 3 )(1 P 5 ) K S C = KP 5 1 (1 P 1 )(1 P 3 )(1 P 5 ) (2) UsngL to denote the number of lnear ndependent pacets nodeneeds to forward tot, t s easy to see thatl A = K S A. However, we cannot smply calculatel B asmn(k L A,K S B ) because node B and A may receve some same pacets, resultng n less entropy held by B. Instead, we need to compute KB S, the expected number of lnear ndependent pacets that are receved by nodeb but nota. 7

The detaled deducton to compute K S B K S B = KKS B K (1 P 1) = K S B (1 P 1) (3) s to solve an easy probablty theory problem and s hence omtted. It s easy to see thatk S B < K L A, thus we havel B = K B S. Smlarly, we havel C = K S C = KS C (1 P 1)(1 P 3 ) and we can verfy thatl A +L B +L C = K. Combnng these ntermedate results, we have the total transmsson cost computed as: C S (K) = C SDS (K)+C AT (L A ) = = +C BT (L B )+C CT (L C ) K 1 (1 P 1 )(1 P 3 )(1 P 5 ) + L A + L B + L C P 2 P 4 P 6 K 1 (1 P 1 )(1 P 3 )(1 P 5 ) [1+ P 1 + P 3(1 P 1 ) + P 5(1 P 1 )(1 P 3 ) ] P 2 P 4 P 6 Through ths example, we demonstrate how to compute the transmsson cost of NC-based routng. The basc dea s to frst compute the broadcast cost treatng all the nodes n the forwarder canddate set as one sngle vrtual node, and then compute the effectve load,.e., the number of re-encoded pacets needs to be forwarded at each node n the forwarder canddate set based on an non-decreasng order of ther cost to the destnaton. Although the topology n Fgure 2 conssts of only node-dsjont paths from the source to the destnaton, we can generalze ths approach to recursvely compute the cost of NC-based routng n arbtrary topologes. We formally present ths computng process as Algorthm 1. Bascally, each node runs Algorthm 1 to compute ts transmsson cost to the destnaton f every node n D has ts transmsson cost computed and updated. Node then sends ts own cost nformaton to ts sender(s). The sender(s) then run ths algorthm agan to compute ther transmsson cost to the destnaton. By the end of ths bacwards recursve process, the source node S wll be able to compute ts transmsson cost to the destnaton based on the transmsson cost of nodes n D S. Note that the complexty of Algorthm 1 s O( V lg V ), whch maes t (4) 8

sutable for power-constraned computaton platforms, e.g., the Telosb sensor platform. Algorthm 1 Compute the transmsson cost of NC-based routng for the current node S wth M forwarder canddates 1: Input: current nodes,d S = {A 1,A 2,...,A M } 2: Output: C S (1): the expected number of transmssons to delver 1 pacet froms tot 3: Sort nodes nd S by a non-descendng order ofc A (1), where = 1,2,...,M. 4: Sorted nodes are labeled as {A 1,A 2,...,A M } 1 5: C SDS (1) = 1 M =1 (1 P SA ) 6: L A 1 = C SDS (1)P SA 1 7: F = 1 P SA 1 8: for 2,3,...,M do 9: L A = C SDS (1)P SA F 10: C A (L A ) = L A C A (1) 11: F = F(1 P SA ) 12: end for 13: C S (1) = C SDS (1)+ M =1 C A (L A ) As descrbed above, the major prncple we use here s to always assgn more traffc load to forwarders wth lower cost, whch mples that we should apply dfferent utlzaton of forwarders n the DAG to mnmze the transmsson cost nstead of fully utlzng every possble path n the networ. Ths observaton provdes two nsghts: 1)t shows that we do not need full networ codng redundancy n the networ to perform regular data transmsson, whch would cause hgher transmsson cost and contenton; 2) extra redundancy may be used to provde proactve protecton to msson-crtcal networs aganst sngle node falures. These two nsghts lead us to the soluton to problemq 0 n ths chapter and problemqn Chapter 4. 3.2 Optmal NC-based transmsson cost algorthm In the last secton, we proposed a dstrbuted algorthm executed by each node to compute the transmsson cost of NC-based routng from a gven source to the destnaton. However, there stll lacs a precse control on transmsson cost n NC-based routng, mang NC-based transmsson energy-neffcent. Ths energy-neffcency s especally severe n dense networs where each node has many forwarder canddates. In MORE-based protocols, forwarder canddates wth low expected effectve load are usu- 9

ally not allowed to forward the flow to reduce the contenton n the networ, whch can reduce the transmsson cost sometmes. However, ths reducton s not guaranteed and sometmes t may even ncrease the transmsson cost. Based on the observatons we had a pror, we desgn a dstrbuted greedy algorthm, Algorthm 2. The basc dea of Algorthm 2 s as follows. For an nput node S, we frst sort all nodes n D S n a non-descendng order of ther transmsson cost to the destnaton. We then remove the node A wth the lowest transmsson cost from the sorted D S, add t to the forwarder set FS S and compute the total transmsson cost usng Algorthm 1. If the transmsson cost of S can be reduced by addng A to FS S, we eep t n FS S and add another node wth the lowest cost from the remanng sorted D S. We contnue ths loop untl ether of the followng two condtons s satsfed: 1. the sortedd S s empty,.e., all recevers ofs have been selected nto thefs S ; 2. movng another node from the sorted D S to FS S would ncrease the total transmsson cost from S tot. Each non-destnaton node executes ths algorthm to determne the mnmal transmsson cost from tself to the destnaton T and the correspondng forwarder canddate set. Upon the convergence of the whole networ, we wll get the soluton to problemq 0. The complexty of ths algorthm s O( V 2 lg V ). In NC-based routng, the sze of FC S can also be one and n ths case the routng brad s the equvalent to the shortest sngle path. Next we show readers the optmalty of ths algorthm by provng the followng theorem: Theorem 1 Gven a node S and ts forwarder canddate set D S = {A 1,A 2,...,A M }, Algorthm 2 yelds the mnmal transmsson cost to the destnaton node of NC-based routng and the correspondng forwarder set. Proof We prove the correctness of ths theorem by contradcton. Gven a node S and ts forwarder canddate set D S, we denote the mnmal transmsson cost as C and the correspondng transmsson forwarder set s FS S wth a cardnalty of. We sort nodes n FS S n 10

Algorthm 2 Compute the mnmal transmsson cost of NC-based routng and the correspondngfcs for the nput nodes wthm forwarders 1: Input: nodes,d S = {A 1,A 2,...,A M },FS S = 2: Output: CS (1): the mnmal transmsson cost to delver 1 pacet froms to T 3: Sort nodes nd S by a non-descendng order ofc A (1), where = 1,2,...,M. 4: Sorted nodes are labeled as {A 1,A 2,...,A M } 5: FS S = {A 1 } 6: CS (1) = 1 +C P SA A 1 (1) 1 7: for 2,3,...,M do 8: Run Algorthm 1 wth nputs and D S = {A 1,...,A } 9: Get the result ascs new (1) 10: fcs new (1) > C S (1) then 11: brea 12: else 13: FS S = FS S A 14: CS (1) = Cnew S (1) 15: end f 16: end for non-descendng order of ther transmsson cost to the destnaton and denote them as FS S = {A 1,A 2,...,A } wherec A 1 C A 2,..., C A. If ths theorem s not correct, then there exsts at least one node A x havng C Ax C A for some nteger [1,]. Wthout loss of generalty, we assume that C A 1 C Ax C A. We wll have a contradcton when we can fnd a forwarder set FS S that has a lower transmsson costc thanc. To fnd ths contradcton, we study the followng forwarder sets: FS S = {A 1,A 2,...,A } FS 1 S = FS S {A } (5) FSS 2 = FSS {A x} For each forwarder set, we compute the transmsson cost for these forwarder sets usng Algorthm 1. The transmsson cost offss s expressed as: C = 1+ =1 [C A P 1 SA j=1 (1 P SA )] j 1 =1 (1 P SA ) (6) Compared wthfs S, FS1 S does not have nodea, therefore costc 1 s expressed as: 11

C 1 = 1+ 1 =1 [C A P 1 SA j=1 (1 P SA )] j 1 1 =1 (1 P SA ) (7) On the other hand,fs 2 S conssts of bothfs S and nodea x. SnceA x has a lower transmsson cost than nodea, we computec 2 as: C 2 = 1 1 (1 P SAx ) =1 (1 P SA ) {1+ 1 =1 [C A P SA +C A P SA (1 P SAx ) 1 =1 (1 P SA )} 1 j=1 (1 P SA j )]+C A x P SAx 1 =1 (1 P SA ) (8) Based on our assumpton,c, C 1 and C 2 have the followng relatons: C C 1 0 C C 2 0 (9) The basc dea next s to prove that C C 2 0 when C C 1 0, whch leads to a contradcton. To accomplsh ths goal, we conduct some mathematcal transformaton of two nequtes above. The frst nequty s between C and C 1. Startng from the fact that C C 1 1, we have the followng useful result: 12

C 1 = 1 1 =1 (1 P SA ) 1 =1 (1 P SA ) 1+ 1+ 1 =1 [C A P SA C =1 [C A P 1 SA [1 1 =1 (1 P SA )] {1+ =1 [C A P SA 1 j=1 (1 P SA )] j 1 j=1 (1 P SA )] 1 j j=1 (1 P SA j )]} [1 =1 (1 P SA )] {1+ 1 =1 [C A P SA 1 j=1 (1 P SA j )]} 0 {1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]} { j =1 (1 P SA ) 1 =1 (1 P SA )} +[1 1 =1 (1 P SA )]P SA C A 1 =1 (1 P SA ) 0 {1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]} ( P j SA ) +[1 1 =1 (1 P SA )]P SA C A 0 1+ 1 =1 [C A P 1 SA j=1 (1 P SA )] [1 1 j =1 (1 P SA )]C A (10) And the second result s between C and C 2 and ths tme we drectly expand the dfference: C C 2 = 1+ =1 [C A P SA 1 1 j=1 (1 P SA j )] =1 (1 P SA ) 1 1 (1 P SAx ) =1 (1 P SA ) {1+ 1 =1 [C A P SA 1 j=1 (1 P SA j )]+C A x P SAx 1 =1 (1 P SA ) +C A P SA (1 P SAx ) 1 =1 (1 P SA )} = {1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]} j 1 { 1 =1 (1 P SA ) 1 1 (1 P SAx ) =1 (1 P SA )} + 1 =1 (1 P SA ) 1 {P SA C A [ 1 =1 (1 P SA ) 1 P SAx 1 (1 P SAx ) =1 (1 P SA )] 1 P SAx C Ax 1 (1 P SAx ) =1 (1 P SA )} (11) 13

Usng some smple technque, we further transform the rght-hand of Equaton 11 and have the followng result: C C 2 = {1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]} j = P SAx =1 (1 P SA ) [1 =1 (1 P SA )][1 (1 P SA x ) =1 (1 P SA )] P 1 SAx =1 + (1 P SA ) 1 (1 P SAx ) =1 (1 P SA ) [ P C SA A 1 =1 (1 P SA ) C A x ] P 1 SAx =1 (1 P SA ) [1 =1 (1 P SA )][1 (1 P SA x ) =1 (1 P SA )] {{1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]}(1 P j SA ) = = +P SA C A [1 =1 (1 P SA )]C A x } P 1 SAx =1 (1 P SA ) [1 =1 (1 P SA )][1 (1 P SA x ) =1 (1 P SA )] {{1+ 1 =1 [C A P 1 SA j=1 (1 P SA )]}(1 P j SA ) +P SA C A P SA C Ax [1 P SA =1 (1 P SA )]C A x P 1 SAx =1 (1 P SA ) [1 =1 (1 P SA )][1 (1 P SA x ) =1 (1 P SA )] {(1 P SA ){1+ 1 =1 [C A P 1 SA j=1 (1 P SA )] j [1 =1 (1 P SA )]C A x } +P SA C A P SA C Ax } (12) Usng the result of Inequalty 10 and the fact that C A > C Ax, we can fnd that the rght hand sde of Equaton 12 s greater than 0, whch means C > C 2 and shows the exstence of a contradcton. And we note that usng the above mathematcal deducton framewor, a contradcton can be found for any number of s where [1,] and C A > C Ax. Therefore, we proved that we can fnd the mnmal transmsson cost of S to the destnaton by addng forwarder canddates wth lower transmsson cost to the destnaton nto the forwarder set untl addng more canddates wll ncrease thec S. By now, we complete our proof on the optmalty of Algorthm 2 n computng the optmal NC-based routng topology. 14

3.3 A theoretcal comparson wth other routng protocols In the prevous secton, we proposed an optmal greedy algorthm that computes the mnmal transmsson cost of NC-based routng. Dfferent from the heurstc control of spatal dversty n other MORE-based networ codng opportunstc routng protocols, ths algorthm ntellgently explores the routng dversty n wreless transmsson and only adds routes that can reduce the transmsson cost nto the forwardng topology. Therefore, our algorthm has a lower transmsson cost than exstng NC-based protocols [4] [14] [19]. When mplementng a routng protocol, nonetheless, we stll need to face the choce between NC-based routng and sngle path routng. In ths secton, we study a few propertes of our soluton, whch demonstrates the advantage of our NC-based transmsson algorthm over tradtonal sngle path routng n terms of energy effcency,.e., transmsson cost. In tradtonal sngle path routng, t s the common sense that we always want to select the shortest path n the networ. The term shortest depends on dfferent metrcs or constrants we use, e.g., transmsson cost, hop count, capacty and latency. However, when we use ntra-flow networ codng to tacle the forwarder selecton problem n opportunstc routng to mnmze the transmsson cost, the frst property we fnd for our soluton s that the shortest (.e., lowest cost) sngle path s not necessarly chosen nto the transmsson topology. Ths property s formally presented n the followng theorem: Theorem 2 Gven a node S wth a canddate set FCS S of M forwarders, the optmal forwarder setfs S computed n Algorthm 2 does not always contan nodea wherea FCS S and 1 P SA +C A 1 P SA +C A for any FCS S /{A }. Proof The proof of ths theorem s not complex. As long as we gve an nstance of node S wth M forwarders that has the mnmal cost transmsson topology not ncludng the lowest cost sngle path, we have the proof we need. Thus we buld an nstance n Fgure 3. In ths nstance, the lowest cost sngle path s S A 3 T wth a cost 1 0.9 + 1 0.1 = 11.11. After we run Algorthm 2, however, the optmal forwarder set we have s FS S = {A 1,A 2 } because we have the followng results: 15

Fgure 3: Routng brad v.s. sngle path routng 1 0.1 C {A1,A 2 } = [1+ + 0.15(1 0.1) ] 1 (1 0.1)(1 0.15) 0.4 0.2 = 1 (1+ 1 + 0.135 ) 0.235 4 0.2 = 8.1915 1 0.1 C {A1,A 2,A 3 } = [1+ + 0.15(1 0.1) + 0.9(1 0.1)(1 0.15) ] 1 (1 0.1)(1 0.15)(1 0.9) 0.4 0.2 0.1 (13) = 1 0.9235 (1+ 1 4 + 0.135 0.2 + 0.6885 0.1 ) = 9.5398 > C {A1,A 2 } Usng ths nstance, we fnsh our proof for ths theorem. From ths example, t s also easy to see that the optmal transmsson cost of NC-based transmsson s lower than that of shortest sngle path routng. Ths further rases the queston: wll the mnmal cost of NC-based transmsson always be better than that of sngle path routng? To answer ths queston, we propose the followng theorem: Theorem 3 Gven a node S wth a canddate set FCS S of M forwarders, the optmal transmsson cost C S computed n Algorthm 2 s always lower than or equal to 1 P SA +C A where A FCS S and 1 +C P SA A 1 P SA +C A for any FCS S /{A }. 16

Proof Through Theorem 2 we showed that the forwarder on the lowest cost sngle path s not always n the forwarder set computed n Algorthm 2. Therefore, we prove the correctness of ths theorem under two dfferent cases: 1)A / FS S When the forwarder A on the lowest cost sngle path s not selected ntofs S, based on the greedy constructon order offs S, we have the followng nequty: C A C Aj for anya j FS S (14) The only reason the algorthm does not add A nto FS S s because ths operaton wll ncrease the total NC-based transmsson cost. We denote FS S = {A 1,A 2,...,A }. Ths argument can be mathematcally expressed as: C S C FS S {A } = 1+ =1 [C A P SA 1 j=1 (1 P SA j )] 1 =1 (1 P SA ) 1+ =1 [C A P SA 1 j=1 (1 P SA j )]+C A P SA =1 (1 P SA ) 1 (1 P SA ) =1 (1 P SA ) = {1+ =1 [C A P SA 1 j=1 (1 P SA j )]} { 1 1 1 =1 (1 P SA ) 1 (1 P SA ) } =1 (1 P SA ) C A P SA =1 (1 P SA ) 1 (1 P SA ) =1 (1 P SA ) = {1+ =1 [C A P 1 SA j=1 (1 P SA j )]}P SA =1 (1 P SA ) {1 =1 (1 P SA )}{1 (1 P SA ) =1 (1 P SA )} P SA =1 (1 P SA ) = < 0 C A 1 (1 P SA ) =1 (1 P SA ) P SA =1 (1 P SA ) 1 (1 P SA ) =1 (1 P SA ) {1+ =1 [C A P SA 1 j=1 (1 P SA j )] 1 =1 (1 P SA ) C A } (15) From ths nequty, we then conduct the followng transformaton: 1+ =1 [C A P 1 SA j=1 (1 P SA j )] 1 C =1 (1 P SA ) A } < 0 C S C A < 0 (16) C S < 1 P SA +C A 17

Therefore, when A s not selected nto FS S, the optmal NC-based transmsson cost C S s lower than the transmsson cost of shortest sngle path routng. 2)A FS S In ths case, we consder three scenaros: a) IfFS S = {A }, t s clear thatc S = 1 P SA +C A. b) If FS S {A } and A s the frst node selected nto FS S, C < 1 +C P SA A s mpled n the greedy forwarder selecton process of Algorthm 2. c) IfFS S {A } and A s not the frst node selected ntofs S, t s straghtforward that 1 1 (1 P SA ) FS S (1 P SA ) < 1 P SA (17) And t s mpled n the greedy forwarder selecton process that before addnga ntofs S, C A s greater than or equal to the forwardng cost from the old FS S to the destnaton. Therefore we stll havec < 1 +C P SA A under ths scenaro. Combnng all dfferent scenaros, we can reach the concluson that the mnmal cost of NC-based transmsson s always smaller than or equal to the shortest sngle path routng. Ths completes our proof. 4 Protocol desgn and mplementaton After we proposed a mnmal cost NC-based routng algorthm and proved ts advantage over tradtonal shortest sngle path routng through theoretcal analyss, we move on to deploy ths algorthm nto resource-constraned wreless platforms, e.g. wreless sensor networs. Not only do we need to mplement ths core algorthm, we also need other components to buld the whole routng protocol. When desgnng a NC-based routng protocol, there are three ey challenges, whch are: 1. For each node, whch neghbor of t should be selected nto the forwarder set? 18

2. For each node, how many tmes of broadcast t should conduct for a batch before t stops? 3. For each node, how fast t should broadcast a re-encoded pacet for a batch? To address these challenges, we propose the energy-effcent NC-based routng (EENCR) protocol to perform mnmal cost NC-based transmsson n wreless sensor networs. EENCR s a fully dstrbuted routng protocol that runs on every node n the networ. In ths secton, we present three ey components of EENCR, each of whch addresses one of the challenges lsted above. 4.1 Routng engne Run on each node, the routng engne component computes the optmal forwarder set for the current node, whch address the frst challenge. We desgn the routng engne n EENCR based on the 4-bt ln estmator component and routng engne component of the collecton tree protocol(ctp). Our routng engne s responsble for the followng assgnments: (a) Estmate the sngle ln relablty from the current node to each of ts 1-hop neghbor; (b) Compute and update the mnmal cost of NC-based transmsson from the current node to the desgnated destnaton based on the receved transmsson cost nformaton from ts neghbors; (c) Broadcast the computed mnmal cost and the forwarder set effectve load table to all ts 1-hop neghbor; (d) Provde the optmal effectve load nformaton to the ACK component and the rate control component. The ey dfference between the routng engne n EENCR and CTP s that nstead of selectng only the neghbor on the shortest sngle path as the next hop forwarder, EENCR selects a set of neghbors nto the forwarder set usng Algorthm 2 such that the total transmsson cost can be further reduced. In ths way, we mae use of the routng dversty of wreless communcaton to the max extent. 19

4.2 Modfed NSB coded feedbac The routng engne component decdes the forwarder set for the current node. In NC-based routng, each node needs to now when t can stop broadcastng to ts forwarders. The condton for a node to stop broadcast s that nodes n the forwarder set of have collectvely receve L lnear ndependent pacets, where L s the effectve load nformaton computed from the routng engne component. The usual way node gets nformaton to decde when to stop transmttng s va the ACK feedbac from nodes n FS. One nave approach s to mae nodes n FS transmt ACK on a per-pacet bass. However, ths per-pacet ACK cannot be used n EENCR due to two reasons. The total sze of per-pacet ACK for the whole effectve load s too large. In practcal networ codng protocols wth symbol szegf(2 8 ) and batch sze 8, each codng vector contans 8 bytes. If a forwarder j wants to convey the whole codng vector space t receved from, t wll needk j 8-byte vectors, whch s too large for energy-constraned sensor networs. Sendng bac per-pacet ACKs wll ntroduce hgh-contenton and communcaton overhead n the networ, whch reduces the energy-effcency of the whole protocol. One approach to avod ths hgh overhead s to use coded feedbac. Frst proposed n [21], the null-space-based (NSB) coded feedbac scheme s orgnally desgned to enhance relablty of an NC-based multcast protocol for multmeda applcatons n moble ad hoc networs. To apply coded feedbac nto NC-based opportunstc routng, a Coded Cumulatve ACK (CCACK) was proposed n [14]. CCACK desgns a more complex ACK generatng and testng scheme to solve the collectve-space problem and false-postve problem when drectly applyng NSB n NC-based opportunstc routng. However, CCACK s desgned to deploy n wreless mesh networs, where each node has a stronger computaton power and larger storage space. It s hard to transplant t nto sensor networs because: Compared to NSB, CCACK needs a much larger storage space to storem multple hash metrcs, wherem 1; 20

To decrease the probablty of false-postve, CCACK needs to run test algorthms M tmes, each of whch wth a dfferent hash metrcs; Although CCACK can reduce the false-postve probablty from 1 to ( 1 ) M, t ntroduces 2 8 2 8 both hgher memory overhead and computaton overhead. And when M = 1, the false-postve probablty of CCACK s the same as NSB whle havng a more complex computaton overhead. In fact, to overcome the collectve-space problem n NC-based transmsson, we only need a modfed NSB ACK scheme (M-NSB) nstead of the more complex CCACK. We frst elaborate how the orgnal NSB ACK wors. We denote the set of codng vectors receved by node to be B r. When node wants to broadcast about the feedbac nformaton of lnear ndependent pacets t currently has, t generates the feedbac nformaton as a vector z that satsfes: z v = 0, v B r (18) Let V r denote the lnear space spanned by vectors nb r. It s shown n [21] that: Lemma 1 Wth the above random constructon ofz, any vectorv V r must satsfyz v = 0. And for any vector v / V r, the probablty of z v = 0 s 1 2 8 when GF(2 8 ) s used. The reason why NSB coded feedbac may cause the collectve-space problem s because NSB s not desgned to convey the collectve space of all downstream nodes but only the space relatonshp between the ndvdual node pars. To overcome ths shortcomng whle eepng the mplementaton at a low complexty level, we desgn the M-NSB coded feedbac scheme. M-NSB has two dfferent features from the orgnal NSB: 1. Instead of generatng z for set B r, M-NSB generates z for set B w, whch s the codng vector set of all the re-encoded pacets nodebroadcasts. Then the condtonz needs to satsfy becomes: z v = 0, v B w (19) 21

2. Nodestops broadcastng when there are L vectors nb w are mared to be receved by nodes n FS. After a M-NSB ACK s generated, t s broadcast by the recevng node. M-NSB s dfferent from CCACK n that M-NSB does not tae nodes overhearng from dfferent upstream nodes nto account. Ths s for the objectve of precsely measurng and controllng the total transmsson cost for the whole networ. In EENCR, each node has ts own effectve load and pacets receved by the same node but from dfferent senders wll be vewed as dfferent traffc flows. By solvng the collectve-space problem for each sender separately, every coded pacet can be effectvely used for the decodng at the destnaton. Therefore, M-NSB addresses the second challenge n desgnng NC-based routng protocols. 4.3 Rate control In EENCR, the routng engne component provdes the effectve load nformaton, and the M- NSB component provdes the recept status of re-encoded pacets to the forwarder set. We then desgn a rate control component to help each node decde when to start the broadcast and how fast t should broadcast. We frst gve the followng defnton of traffc flow: Defnton 2 A traffc flow f s defned as a 5-tuple f = (S,T,x,j,) to represent a load of pacets orgnated at node S and destned at T wth batch ndex x, whch s forwarded from sender j to forwarder. At each non-destnaton node, EENCR mantans an array B v (f) to store lnear ndependent pacets receved for each flow. We also defne a bnary actve-flow ndcator I f for each flow (S,x,j,). I f s set to be false by default and s updated to true only when one of the followng two condtons s satsfed: 1. Nodes the frst member offs j for flow f; 22

2. Node receves more than K (f) L (f) lnear ndependent pacets from node j for flow f, where K (f) s the number of lnear ndependent pacets expected to receve fromj for flow and L (f) s the effectve load assgnment of nodefor flow f. Every tme there s a transmsson opportunty for node, one actve-flow s chosen n a round-robn fashon. A re-encoded pacet s generated by selectng non-zero elements n GF(2 8 ) as re-encodng vectors for pacets n B v (f). Node then broadcasts ths re-encoded pacet and addng the re-encodng vectors ntob w (f). Once the forwarder set ofhas receved L (f) lnear ndependent pacets,i f s set to false and the array for flow f wll be flushed. 5 Performance evaluaton To characterze the feasblty and effectveness of networ codng n mprovng the energy effcency, we expermentally evaluate the performance of EENCR n ths secton. We frst present the expermentaton methodology and then the measurement results. 5.1 Methodology Testbed. We use the NetEye wreless sensor networ testbed at Wayne State Unversty [1]. In ths testbed, 130 TelosB motes are deployed, where every two closest neghborng motes are separated by 2 feet n an ndoor envronment. Out of the 130 motes n NetEye, we randomly select 40 motes (wth each mote beng selected wth equal probablty) to form a random networ for our expermentaton. Each of these TelosB motes s equpped wth a 3dB sgnal attenuator and a 2.45GHz monopole antenna. In our measurement study, we set the rado transmsson power to be -7dBm (.e., power level15 n TnyOS) such that multhop networs can be created. And we use the default MAC protocol provded n TnyOS 2.x. Protocols studed. To understand the mpact of networ codng n mprovng the energy effcency of wreless sensor networs, we comparatvely study the followng protocols: 23

EENCR: the dstrbuted NC-based routng protocol we proposed, whch selects the optmal forwarder set for each node to mnmze the transmsson cost; CTP: a state-of-the-art collecton tree protocol desgned for data collecton n sensor networs [9]; MORE: the frst NC-based opportunstc routng protocol that fully explores the routng dversty n the networ by lettng each forwarder forward randomly coded pacets; CodeOR: a NC-based opportunstc routng protocol that ncreases the concurrency of data flow by addng hop-by-hop ACK to MORE. We mplement all four protocols n TnyOS 2.x. Due to the constrants of memory space of TelosB motes, whch s only 10 lobytes, and the short data payload length n sensor networ applcatons, we choose a batch sze of 8 for networ codng operaton nstead of the mostly used batch sze of32 n wreless mesh networs. Performance metrcs. For each protocol we study, we evaluate ther behavor based on the followng metrcs: Delvery relablty: percentage of nformaton elements correctly receved by the sn; Delvery cost: number of transmssons requred for delverng an nformaton element from ts source to the sn; Goodput: number of vald nformaton elements receved by the sn per second; Routng dversty: number of forwarders selected to transmt a pacet. Dfferent from the throughput metrc used to evaluate the performance of NC-based routng protocols n [4] [19], n ths study we use goodput nstead. An nformaton element s defned as vald f and only f t s lnear ndependent to all elements that are n the same batch and 24

receved by the sn. And we do not study the routng dversty of CTP because ts number of forwarders to transmt a pacet s always one. Traffc pattern. To experment wth both lght and heavy traffc scenaros, we use two perodc data collecton traffc patterns as follows: S10: out of all the 40 nodes n the networs, 10 are selected as source nodes; Each source node perodcally generates 40 nformaton elements wth an nter-element nterval, denoted by r, unformly dstrbuted between 500ms and 3s; for EENCR, MORE and CodeOR, every consecutve 8 nformaton elements compose a batch; ths s to represent lght traffc load scenaros. S20: same as S10 except that 20 nodes are selected as source nodes; ths s to represent heavy traffc load scenaros. 5.2 Measurement Results In what follows, we frst present the measurement results for lght traffc pattern S10, then we dscuss the case of heavy traffc patterns20. In the fgures of ths secton, we present the means and ther 95% confdence ntervals for the correspondng metrcs. 5.2.1 Lght data traffc For the lght traffc pattern S10, Fgures 4-6 show the delvery relablty, delvery cost and goodput of dfferent protocols. We found that EENCR and CTP provde hgh data delvery relablty (.e., close to 100%) whle MORE and CodeOR can only delvery 78% and 85% of the data to the sn on average. In the meantme, EENCR has a much lower delvery cost than CTP,.e. a 26% reducton, n terms of average number of transmssons to delver a pacet but the delvery costs of MORE and CodeOR are around 400% and 300% of CTP respectvely. Furthermore, EENCR enables a hgher data goodput very close to the theoretcal maxmal value than all other three protocols. The reasons for the nferor performance of MORE and CodeOR n our study are as follows: 25

Fgure 4: Delvery relablty: 10 sources Fgure 5: Delvery cost: 10 sources 26

Fgure 6: Goodput: 10 sources 1. The man desgn prncple of MORE and CodeOR s to have all the forwarders encode and broadcast the pacets they receved. Although ths prncple maes full use of the spatal routng dversty for wreless networs, havng all nodes n a networ would sgnfcantly ncrease the contenton of the networ and compromsng ts performance. On the other hand, EENCR adopts an optmal greedy approach that only allows forwarders that can contrbute n reducng the total transmsson cost to get nvolved n the forwardng process. Ths strategy also helps reduce the contenton n the networ, whch further mproves EENCR s performance. 2. Both MORE and CodeOR rely heavly on the assumpton of a relable end-to-end ACK scheme to mae source nodes and ntermedated nodes stop broadcastng after the destnaton receved enough coded pacets for a certan batch. However, end-to-end ACKs tend to be unrelable, and t taes non-neglgble tme for all the nodes n the networ to get an end-to-end ACK for a certan batch from the destnaton. To elaborate on the above observatons, we compare the number of forwarders selected n EENCR, MORE and CodeOR and summarze the results n Fgure 9. It s shown n ths fgure 27

Fgure 7: Routng dversty: 10 sources that the average forwarders selected for each non-sn node n EENCR s around 2, but ths number becomes 5 n MORE and CodeOR. 5.2.2 Heavy data traffc To study the performance of EENCR n a more saturated networ, we ncrease the number of sources to 20 to create a heavy traffc scenaro S20. Fgures 8-10 show the delvery relablty, delvery cost and goodput of dfferent protocols. Wth heaver traffc n the networ, EENCR s stll able to provde a 98% data delvery relablty. Addtonally, the reducton of EENCR compared to CTP has ncreased to 28%. Ths observaton agan s consstent wth the desgn phlosophy of EENCR. Wth heaver data traffc load n the networ, the transmsson cost of sngle path routng degrades. On the contrary, the transmsson cost of EENCR stll stays at a low level n that t fully explores and optmally leverages the wreless routng dversty n the networ. Meanwhle, the performance of MORE and CodeOR degrades even more severely than CTP due to smlar reasons n the lght traffc scenaro. It s worthwhle to note that the goodput of 28

Fgure 8: Delvery relablty: 20 sources Fgure 9: Delvery cost: 20 sources 29

Fgure 10: Goodput: 20 sources CodeOR s even lower than MORE under S20. Ths s because CodeOR tres to ncrease the concurrency of the networ by allowng multple flows for the same source to be njected n the networ. However, t stll has all the forwarders n the networ to encode and forward pacets towards the destnaton, whch would result n hgh contenton and poor delvery performance n the networ. Injectng too many flows n the networ wthout consderng the negatve effects brought by allowng every forwarder to perform forwardng operaton can be dsastrous n a networ wth heavy traffc, as shown n our experment results. We show the routng dversty n terms of average number of forwarders selected n these NC-based protocols n Fgure 11. Ths observaton demonstrates, from another perspectve, that t s of great mportance and necessty to choose forwarder sets n NC-based routng protocols carefully. 6 Related wor Networ codng was frst proposed for wred networs n the poneerng paper [2]. By mxng pacets at ntermedate nodes durng the transmsson, the bandwdth can be saved and 30

Fgure 11: Routng dversty: 20 sources therefore the throughput of the whole networ can be sgnfcantly mproved. Durng the past years, networ codng has been one of the most popular research topcs n computer networs. Dfferent codng schemes are desgned, categorzed nto lnear networ codng and non-lnear networ codng. Compared wth lnear networ codng, non-lnear networ codng has been reported to outperform lnear codng n several studes [17] [5] [16] [6]. Especally n [6], t s shown that there are mult-source networ codng problems for whch non-lnear codng has a general better performance on throughput. Nevertheless, accordng to the analyss from [18], lnear networ codng can provde a performance close to the best possble throughput whle only requre a relatve low complexty compared wth the hgh complexty of non-lnear codng. Due to the broadcast nature n wreless communcaton, each ntermedate node can receve redundant pacets durng the transmsson n wreless networs. Networ codng s one of the best choces to mae use of these redundances. By mxng redundant pacets together and forwardng the mxed pacet, the throughput of the wreless networs can be further mproved. It s shown that lnear codng functons can be desgned randomly and ndependently at each node [11] [12]. Authors n these papers proposed a codng technque called random lnear 31

codng (RLC). Snce RLC can be easly mplemented n a dstrbuted manner and t has a low complexty, t s wdely used n wreless networs, ncludng wreless sensor networs [10]. After networ codng has been proved to be able to effectvely use the overhearng redundancy n wreless envronment, research on networ codng n wreless networs has been followng two dfferent broad drectons. 6.1 Networ-codng-based multcast Multcast has been well studed n wreless networs n the past few decades. Introducng networ codng nto multcast protocol, researchers fnd that the randomness of coded pacets can effectvely reduce the latency of multcast, therefore ncrease the networ throughput. Erylmaz et al. [7] s the frst wor studyng the delay performance gans from networ codng. The authors study the problem on a wreless networ model wth one source and multple recevers. Fles are transferred from the source to recevers usng networ codng. The delay performance n ths paper s defned as the average complete tme of a fle transmsson. The authors study two dfferent cases: 1) a fle s broadcast to all recevers (broadcast case); 2) each recever demands a dfferent fle (multple uncast case). Accordng to the theoretcal analyss n ths paper,there s a sgnfcant delay performance gan n both broadcast case and multple uncast case va networ codng,.e., the average completon tme s reduced. Although networ codng s proved to be able to provde average latency guarantee n [7], there s stll a trade-off between the throughput and end-to-end latency for networ codng n dfferent wreless networs. Katab et al. [8] used a smple example as follows to demonstrate ths trade-off. Suppose there are pacets needed to be sent from node A to B, ln AB has a relablty of 50%. If node A sends these pacets separately, t would requre an expected number of transmsson 4 ncludng sendng bac ACK pacets. If all these pacets are generated by A at the same tme and therefore could be coded nto coded pacets. Successfully sendng these coded pacets would requre an ETX of only 2 + 1 ncludng sendng bac only 1 ACK pacet. If /2 pacets are generated frst and has to be sent to B before the other /2 pacets 32

are generated, these pacets could only be coded nto two groups wth /2 coded pacets each. The whole ETX for ths transmsson scheme s 2 + 2 ncludng sendng bac 2 ACK pacets. Zhang et al. [23] nvestgate the benefts of usng Random Lnear Codng (RLC) for uncast communcatons n a moble Dsrupton Tolerant Networ (DTN) under epdemc routng. In ths paper, the authors propose the followng codng and transmttng scheme: DTN nodes store and then forward random lnear combnatons of pacets as they encounter other DTN nodes. The smulaton results show that when there s one sngle fle composed of several pacets propagatng n the networ, when bandwdth s constraned, applyng ntra-flow RLC over pacets can mprove the delvery delay to delver the whole fle, and there s more mprovement when the buffer n each node s lmted. When there are multple fles propagatng n the networ, smulatons results show that ntra-flow RLC offers only slght mprovement over the non-coded scheme when only bandwdth s constraned, but more sgnfcant mprovement when both bandwdth and buffers are constraned. The wor n the above paragraph studes the benefts of networ codng n DTN by a smulaton based approach. Dfferent from [23], Ln et al. [20] study ths problem n a theoretcal analyss framewor. The theoretcal analyss acheves smlar conclusons as those n [23]. Based on the analyss, the authors also desgn a prorty codng protocol, n whch pacets n the same fle are dvded nto dfferent groups wth prortes and pacets wth hgher prorty would be coded and transmtted frst. When the destnaton receves all coded pacets for a certan level, t notfes the whole networ and the source so that the same pacets stored n the networ wll be dropped to further ncrease the performance of the networ. In both [23] and [20], the authors do not consder nterferences n the networ, whch s reasonable only for sparse networs. Zhang et al. [22] conduct an analyss on the throughput-delay tradeoffs n moble ad hoc networs (MANETs) wth networ codng, and compare results n the stuaton where only replcaton and forwardng are allowed n each node. The networ model s bult on both fast moblty model (..d. moblty model) and slow moblty model (random wal model). The authors propose a-hop relay scheme n an-node MANET usng RLC 33

n MANETs and prove the trade-off between throughput and delay of the proposed scheme under two moblty models. Under fast moblty model, where = Θ(log n), the throughput T(n) = Θ(1/n) and the average delay D(n) = Θ(log n), where T(n) represents throughput and D(n) represents average delay. Under the slow moblty mode, where = Θ( n), T(n) = Θ(1/n) and D(n) = Θ( n). Ths s the frst wor to study the trade-off between throughput and delay usng RLC n MANETs. However, ths study stll uses the average delay as the metrc nstead of puttng hard latency constrants on the analyss. Katt et al. [13] propose COPE, a new archtecture for wreless mesh networs. It s the frst networ codng that s mplemented wth the current networ stac seamlessly. In the desgn of COPE, only nter-flow networ codng s concerned. That means pacets headed to the same next hop or generated by the same source cannot be encoded together under COPE. And COPE adopts an opportunstc codng scheme, whch does not delay pacets transmssons for further codng opportunty. Accordng to the theoretcal analyss, not only can networ codng brng a sgnfcant mprovement on throughput, but also the MAC layer protocol can also mprove the networ throughput when t s combned wth codng technque. COPE s mplemented on a 20-node wreless networ testbed. The experment results show that COPE can ncrease the throughput of wreless mesh networs wthout modfyng routng or hgher layers. 6.2 Networ-codng-based opportunstc routng Other than networ codng, opportunstc routng s another technque that fully explores the dversty of the broadcast nature n wreless communcaton. ExOR s the frst opportunstc routng protocol and was proposed n [3]. Snce then, extensve wor has been conducted to further mprove the forwarder canddate selecton process n opportunstc routng. However, the essental component n opportunstc routng protocols ncurs heavy communcaton cost of node coordnaton and requres a delcately desgned MAC protocol. As a contnuous research of [3][13], Chachuls et al. [4] ntegrated ntra-flow RLC and the opportunstc routng protocol n [3] to develop a new routng protocol called MORE n wreless mesh networs. The contrbuton of MORE s mult-dmensonal. Frst, t maes 34

use of the broadcast property of wreless communcaton to mprove the networ throughput wthout modfyng the exstng MAC layer, e.g., 802.11. Secondly, t adopts RLC for ntra-flow networ codng. RLC has a low complexty and s s easy to mplement n a dstrbuted system. Therefore, the networ throughput s further mproved. Thrdly, both the memory overhead and the header overhead are bounded wthn a reasonable range. MORE s also evaluated n a 20-node testbed and t outperform ExOR n both uncast and multcast traffc flow wth a hgher throughput. Qute a few new protocols has been bult based on MORE to further mprove the throughput of NC-based opportunstc routng [19] [14] [10] [15] [24]. The basc dea of these studes s the natural combnaton of opportunstc routng and networ codng because they both made use of the broadcast nature of wreless transmsson. Koutsonolas et al. [15] propose another ntra-flow networ codng archtecture called Pacfer. Pacfer bulds an effcent multcast tree and extends t to opportunstc overhearng. Then t apples ntra-flow RLC technque to ensure the relablty. Both these two steps are smlar wth MORE. Besdes these two components, Pacfer also apples a source rate control module to avod the congeston n the networ. Most mportantly, Pacfer solves the cryng baby problem by havng the source send batches of pacets n a round-robn fashon. Not only large scale smulatons but also a seres of experments n a 22-node wreless testbed show that Pacfer have a large mprovement on average throughput compared wth MORE. Smlar to Pacfer, [10] proposed Rateless Deluge, the frst mplementaton of NC-based opportunstc routng protocol n wreless sensor networs. Zhu et al. [24] propose a hybrd codng scheme that does nter-flow codng frst and ntraflow codng later. In the proposed scheme, pacets are frst encoded followng the same codng scheme adopted by COPE. Then the encoded pacets are dvded nto dfferent batches. Encoded pacets n the same batch are further encoded followng the same codng scheme adopted by MORE. Durng the transmsson, the whole system uses a multple-path transmttng scheme to further mprove the networ throughput. The authors do a theoretcal analyss on ther proposed codng scheme n a smple wreless networ model. Compared wth COPE, the hybrd codng scheme has a sgnfcant mprovement on both throughput and relablty n ths networ 35