How Many Packets Can We Encode? - An Analysis of Practical Wireless Network Coding Jerry Le, John C.S. Lui, Dah Ming Chiu Chinese University of Hong Kong 1 Outline • Introduction and Problem Formulation • The Physical Upper Bound on how many we can encode • How many can we encode under Random-Access • Bounding the throughput gain • Conclusion 2 Introduction and Problem Formulation • Quick review of the Practical Coding System (COPE [1]) 1 P1 3 P2 decode P2 P1 4 decode P2 P2 5 1 P1 3 P2 Encoded broadcast: Encoded broadcast: P1⊕P2 P1⊕P2 2 decode P1 2 decode P1 Two flows: 1→5→2 3→5→4 Two flows: 1→3→2 2→3→1 One transmission (slot) saved! [1] S. Katti, et al. XORs in the Air: Practical Wireless Network Coding. Sigcomm 2006. 3 Introduction and Problem Formulation • Quick review of the Practical Coding System (COPE [1]) - more complicated scenario... - 4 bi-directional flows decode P3 1 P1 decode P4 2 PP1⊕P2 ⊕P3 ⊕P P44 5 2 4 decode P2 P3 Three transmissions saved! 3 decode P1 [1] S. Katti, et al. XORs in the Air: Practical Wireless Network Coding. Sigcomm 2006. 4 Introduction and Problem Formulation • Question 1 on COPE: encode 2 at once encode 4 at once Q1. Is there a limit on how many we can encode? (Assuming everything else is optimal) encode 6 at once 5 Introduction and Problem Formulation • Question 2 on COPE: decode P2 1 P1 3 P2 decode P1 2 Encoded broadcast: P1⊕P2 Wait a minute...what if... 1 P1 ? 3 P2 2 P1 Nothing to encode with...? The order is important! Q2. How many can we encode under random access? 6 Introduction and Problem Formulation • Question 3 on COPE: decode P2 1 P1 3 P2 decode P1 2 Encoded broadcast: P1⊕P2 - “Non-coding” uses 4 slots - “Coding” uses 3 slots - Throughput gain? Of course, 4/3! But how about this...? Q3. What is the limit of throughput gain in general topology? 7 Outline • Introduction and Problem Formulation • The Physical Upper Bound on how many we can encode • How many can we encode under Random Access • Bounding the throughput gain • Conclusion 8 The “Physical” Upper Bound • Coding Structure - 1 coding node - n coding flows coding structure with 2 coding flows encode at most 2 at once coding structure with 4 coding flows encode at most 4 at once Assuming scheduling (ordering), routing is optimal 9 The “Physical” Upper Bound • Coding Structure - 1 coding node - n coding flows, need to find out the upper bound of n • Two main constraints for coding to happen - opportunistic overhearing 1 P1 - two-hop relaying P2 Main result: n is indeed upper bounded, due to the geometrical constraints. P1 5 3 P2 Encoded broadcast: 4 decode P2 P1⊕P2 2 decode P1 10 The “Physical” Upper Bound • Main results - in 2D networks, n ≤ O[(r/δ)2] - in 3D networks, n ≤ O[(r/δ)3] - r: successful transmission range -δ: “distance gap” between successful transmission and unsuccessful transmission Numerical example r r/(r+δ) 0.6 0.7 0.8 0.9 n* 3.39 3.95 4.88 6.97 δ 11 Outline • Introduction and Problem Formulation • The Physical Upper Bound on how many we can encode • How many can we encode under Random Access • Bounding the throughput gain • Conclusion 12 Upper Bound under Random Access The order is important... Node 1 sends Node 3 sends 1 P1 P1 Node 5 sends 3 P2 5 P2 P1 P2 Node 5’s buffer Encoded broadcast: 4 P1⊕P2 2 P1⊕P2 We are lucky...this works just fine 13 Upper Bound under Random Access The order is important... Node 1 sends Node 5 sends 1 P1 P1 Node 3 sends Node 5 sends 4 P2 Node 5’s buffer P2 5 P2 3 P1 P21 2 P1 P2 No coding happens... 14 Upper Bound under Random Access A more complex example - a randomly generated transmission sequence: 1,1,3,5,1,3,5,5,3,5 1 3 Node 5’s buffer 5 4 2 - 10 slots used to send 3 packets for each flow - optimum case is 9 - worst case is 12 15 Upper Bound under Random Access Key intuition - higher packet diversity (in coding node’s buffer) results in higher encoding number What can affect packet diversity? - traffic intensity - buffer size “Equal Access” - random access “K-Priority” (bottleneck gets higher priority) “Wait-for-X” (hold transmission until having something to encode) 16 Upper Bound under Random Access Main results 1) “Equal Access” is particularly suitable for coding - In saturation, symmetric case, the average encoding number at each transmission is: n*M/(M+1) Example: n=4 Avg. encoding number vs. buffer size 17 Upper Bound under Random Access Main results 2) Enough buffer size is essential for coding Example: n=4 Avg. encoding number vs. buffer size 18 Upper Bound under Random Access Main results 2) Enough buffer size is essential for coding Example: n=4 Throughput vs. buffer size 19 Upper Bound under Random Access Main results 3) Surprisingly, Wait-for-X is not suitable - Equal Access + Enough buffer is already near optimal - Too much waiting can only bring more packet loss The simple X=1, K=1 pair has the lowest loss... 20 Outline • Introduction and Problem Formulation • The Physical Upper Bound on how many we can encode • How many can we encode under Random Access • Bounding the throughput gain • Conclusion 21 Bounding the Throughput Gain Remember this?... - Throughput gain = T* of coding / T* or non-coding - What affect throughput? (Routing, Scheduling) - The best routing for coding may not be optimal for non-coding! - The same is true for scheduling! 22 Bounding the Throughput Gain Lemma 1. Only considering the “same routing” case can guarantee that we get an upper bound of throughput gain for the general case. optimal routing for coding * c * nc T R T R * c * nc T Tc R G T Tnc R * c nc * c * c optimal routing for non-coding 23 Bounding the Throughput Gain Lemma 2. For a general network, the throughput gain is bounded by the throughput gain in one of its coding structures. 24 Bounding the Throughput Gain Theorem. 1) For a general network, the throughput gain is bounded by 2n/(n+1), where n is the number of coding flows in one of its coding structures. 2) The bound can be approximated as 2n/(n+M(M+1)) when using equal access. (M is buffer size) 25 Outline • Introduction and Problem Formulation • The Physical Upper Bound on how many we can encode • How many can we encode under Random Access • Bounding the throughput gain • Conclusion 26 Conclusion • • • • • A performance analysis of COPE Focus: the “encoding number” Physical upper bound on encoding number Performance under Random Access Bound in general network 27
© Copyright 2026 Paperzz