Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 The Encoding Complexity of Network Coding Michael Langberg California Institute of Technology Joint work with Jehoshua Bruck and Alex Sprintson.

Similar presentations


Presentation on theme: "1 The Encoding Complexity of Network Coding Michael Langberg California Institute of Technology Joint work with Jehoshua Bruck and Alex Sprintson."— Presentation transcript:

1 1 The Encoding Complexity of Network Coding Michael Langberg California Institute of Technology Joint work with Jehoshua Bruck and Alex Sprintson

2 2 Multicast Networks Directed graph G=(V,E). Directed graph G=(V,E). Source node s. Source node s. Terminal nodes T={t 1,t 2,…}. Terminal nodes T={t 1,t 2,…}. Requirement: transfer information from s to T. Requirement: transfer information from s to T. s t2t2 t1t1 t3t3 G=(V,E)

3 3 Naive approach Steiner tree that connects s and T. Transmit each message on a disjoint Steiner tree that connects s and T.. Can transmit m 1 and m 2 to t 1, t 2 and t 3.. Nodes forward messages. s t2t2 t1t1 t3t3

4 4 Network coding Introduce nodes that perform encoding: Network coding helps! m1m1m1m1 m2m2m2m2 m3m3m3m3 F 1 (m 1,m 2,m 3 ) F 2 (m 1,m 2,m 3 ) s t2t2 t1t1 m1m1 m2m2 m1m2m1m2

5 5 Network coding [AhlswedeCaiLiYeung00, LiYeungCai03] : Network coding [AhlswedeCaiLiYeung00, LiYeungCai03] : Multicast Min-Cut condition: Can transmit at capacity using random linear combinations on each edge [HoKoetterMedardKargerEffros03]. Can transmit at capacity using random linear combinations on each edge [HoKoetterMedardKargerEffros03]. Multicast of h messages from s to T iff Min-Cut between s and each t i is at least h. h will be called the multicast capacity of G. “History” s t2t2 t1t1 m1m1 m2m2 m1m2m1m2

6 6 Forwarding vs. Encoding Steiner tree packing: all nodes forward packets. Steiner tree packing: all nodes forward packets. Network coding: allow encoding at specific nodes. Network coding: allow encoding at specific nodes. Expensive to implement, increase delay. Expensive to implement, increase delay. How many encoding nodes are needed to achieve capacity? m1m1m1m1 m2m2m2m2 m2m2m2m2 m1m1m1m1 m2m2m2m2 F(m 1,m 2 ) forwarding encoding

7 7 Our Goal Input: Multicast network problem: Input: Multicast network problem: Single source, k terminals. Single source, k terminals. Capacity = h (Min-Cut condition). Capacity = h (Min-Cut condition). Goal: find a “coding scheme” that achieves capacity with minimum number of encoding nodes. Goal: find a “coding scheme” that achieves capacity with minimum number of encoding nodes. Coding scheme: assigns a function F to each edge tying incoming information to outgoing information. m1m1m1m1 m2m2m2m2 F(m 1,m 2 )

8 8 First Result ‘Simple’ question: Do we need encoding nodes at all? ‘Simple’ question: Do we need encoding nodes at all? Observation: ‘Simple’ question is NP–Hard  Comp. minimum number of encoding nodes is NP-hard. Observation: ‘Simple’ question is NP–Hard  Comp. minimum number of encoding nodes is NP-hard. Reduction from the 2-Edge Disjoint Paths problem. Reduction from the 2-Edge Disjoint Paths problem. Even finding crude (|V| 1-  ) approximation is NP-hard! Even finding crude (|V| 1-  ) approximation is NP-hard! s t2t2 t1t1 G Disjoint paths between s 1 to t 1 and s 2 to t 2 ? Iff No encoding nodes are needed to send 2 messages from s to t 1 and t 2. s2s2 s1s1

9 9 Our Results Turn to study absolute bounds. Input: Multicast network problem with Input: Multicast network problem with Single source, k terminals. Capacity = h (Min-Cut condition). Can we bound the number of encoding nodes? G is acyclic: G is acyclic: Upper bound = O(h 3 k 2 ) Independent of |G|! Upper bound = O(h 3 k 2 ) Independent of |G|! Lower bound =  (h 2 k) Depends on h and k. Lower bound =  (h 2 k) Depends on h and k. s t2t2 t1t1 m1m1 m2m2 m1m2m1m2 G contains cycles: FESMin. feedback edge set G contains cycles: FES Min. feedback edge set  Upper bound = O(FES  h 3 k 2+ h 3 k 2 )  Upper bound = O(FES  h 3 k 2+ h 3 k 2 )  Lower bound =  (FES  h)  Lower bound =  (FES  h) may depend on |V|!

10 10 Related work Bounds on number of encoding nodes have been considered: [FragouliSoljanin04]: [FragouliSoljanin04]: Special case in which h=2. Special case in which h=2. Acyclic: number of encoding nodes ≤ k. Acyclic: number of encoding nodes ≤ k. Techniques do not seem to extend to general h. [TavoryFederRon04]: [TavoryFederRon04]: Partial results: for h=2, other special cases. Partial results: for h=2, other special cases. Conjecture: universal bound depends on k and h. Conjecture: universal bound depends on k and h. t2t2 t1t1 s

11 11 Upper bound (acyclic networks) Theorem: Theorem: Multicast of h packets to k destinations requires at most O(h 3 k 2 ) encoding nodes. Multicast of h packets to k destinations requires at most O(h 3 k 2 ) encoding nodes. Proof Techniques: Proof Techniques: Constructive: we construct a network coding scheme. Constructive: we construct a network coding scheme. Combinatorial: we build upon Min-Cut condition. Combinatorial: we build upon Min-Cut condition. Analysis: we use tools from theory of network flows. Analysis: we use tools from theory of network flows.

12 12 Proof overview: k=2 Input: Multicast network problem with single source, k=2 terminals, and capacity = h (Min-Cut condition). Input: Multicast network problem with single source, k=2 terminals, and capacity = h (Min-Cut condition). Objective: Coding scheme with O(h 3 ) encoding nodes. Objective: Coding scheme with O(h 3 ) encoding nodes. Three steps: Three steps: Step 1: Reduce maximal degree of input instance. Construct new instance with max. degree 3. Construct new instance with max. degree 3. Step 2: Discard unnecessary edges. Step 3: Remaining graph has at most O(h 3 ) nodes of in-degree > 1  Any coding scheme will suffice. encoding forwarding

13 13 Step 1: degree 3 Input: Multicast network problem with single source, k=2 terminals, and capacity = h (Min-Cut condition). Input: Multicast network problem with single source, k=2 terminals, and capacity = h (Min-Cut condition). Step 1: Reduce maximal degree to 3. Step 1: Reduce maximal degree to 3. Encoding nodes have in-degree >1. encoding

14 14 Step 2: minimality Multicast network problem with single source, k=2 terminals, and capacity = h, max degree = 3. Multicast network problem with single source, k=2 terminals, and capacity = h, max degree = 3. Step 2: Remove edges greedily preserving capacity. Step 2: Remove edges greedily preserving capacity. Menger’s Theorem: Left with h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2. Menger’s Theorem: Left with h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2. s t1t1 t2t2

15 15 Step 3: Graph: Max degree 3; h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2 ; minimal w.r.t. edge removal. Graph: Max degree 3; h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2 ; minimal w.r.t. edge removal. Seen: Encoding node has in-degree > 1. Seen: Encoding node has in-degree > 1. Step3: Prove that number of nodes with in-degree > 1 is small = O(h 3 ). Step3: Prove that number of nodes with in-degree > 1 is small = O(h 3 ). s t1t1 t2t2 encoding

16 16 Step 3 Graph: Max degree 3; h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2 ; minimal w.r.t. edge removal. Graph: Max degree 3; h edge disjoint paths between s and t 1 and h disjoint paths between s and t 2 ; minimal w.r.t. edge removal. Step3: Prove that number of nodes with in-degree > 1 is O(h 3 ). Step3: Prove that number of nodes with in-degree > 1 is O(h 3 ). We show: every pair of paths intersect in at most h places. We show: every pair of paths intersect in at most h places. Implies bound of h 3. Proof technique: Proof technique: Define h special paths between t 1 and t 2. No three different paths intersect more than once. s t1t1 t2t2 encoding

17 17 Future research Seen: bounds on # encoding nodes needed at capacity. Seen: bounds on # encoding nodes needed at capacity. Close gap between upper and lower bound. Other aspects of optimization may be considered: Other aspects of optimization may be considered: Cost on edges for reservation of capacity.

18 18 Lower bound (acyclic networks) N  h(h-1)/2=  (h 2 ) N  h(h-1)/2=  (h 2 )

19 19 Lower bound (acyclic networks) LB=  (kh2) LB=  (kh2)

20 20 Lower Bound (networks with cycles) Number of coding nodes is  (hB), where B is the minimum size of a feedback set. Number of coding nodes is  (hB), where B is the minimum size of a feedback set.


Download ppt "1 The Encoding Complexity of Network Coding Michael Langberg California Institute of Technology Joint work with Jehoshua Bruck and Alex Sprintson."

Similar presentations


Ads by Google