Download presentation
Presentation is loading. Please wait.
Published byClifford Oswin Long Modified over 9 years ago
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 m1m2m1m2
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 m1m2m1m2
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 m1m2m1m2 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.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.