1 / 22

Multicast with Network Coding in Application-Layer Overlay Networks

Multicast with Network Coding in Application-Layer Overlay Networks. Y. Zhu, B. Li, and J. Guo University of Toronto Present by Cheng Huang 10.30.2003. S. S. S. a. b. a. b. a. b. T. U. T. U. a. b. T. U. a. b. a. b. W. W. W. a. b. a. b. a. b. a+b. b. a. X. X.

yachi
Download Presentation

Multicast with Network Coding in Application-Layer Overlay Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multicast with Network Coding in Application-Layer Overlay Networks Y. Zhu, B. Li, and J. Guo University of Toronto Present by Cheng Huang 10.30.2003

  2. S S S a b a b a b T U T U a b T U a b a b W W W a b a b a b a+b b a X X a+b a+b Y Z Y Z Y Z Network Coding a or b? How to send 2 pieces of data a and b to nodes Y and Z simultaneously?

  3. Basics of Network Coding • Conventional network nodes • Route or duplicate traffic • Network nodes with coding capability • Perform operations on incoming traffics • Basic operations  encoding/decoding • Linear operations  Linear Network Coding • Network coding can increase multicast capacity • “Network Information Flow,” IEEE Trans. Information Theory, 46(4), 2000.

  4. S Network R1 R2 R3 R4 R5 Main Resultsof Network Coding • If the capacity of any sink Ri≥ C, then multicast rate of C is achievable, generally with network coding.

  5. Linear Network Coding • Network nodes only perform LINEAR operations on incoming traffics • Any node can retrieve information at a rate equal to its capacity • Example: • Source multicasts 12 pieces of data • Node of capacity 4 retrieves all data in 3 seconds • Node of capacity 3 in 4 seconds and of capacity 1 in 12 seconds • Sufficient condition: network is acyclic. • “Linear Network Coding,” IEEE Trans. Information Theory, 49(2), 2003.

  6. S R1 R2 R3 R4 Preliminaries • k-redundant multicast graph (DAG) • Intermediate nodes have indegree ≤ k • Receiver nodes have indegree = k • Nodes of indegree k have maxflow = k

  7. Algorithm • Rudimentary graph • Relatively densely connected • Rudimentary tree • Multicast graph

  8. Build Rudimentary Graph/Tree • Node maintains a list of neighbors and exchanges with other nodes • Edge e has a weight w(e) = (β,λ) • Path p consists of edges • Preferable path: large bandwidth or low delay • Add/remove edges dynamically • Δ-constraint • Rudimentary tree • Z. Wang and J. Crowcroft (1996) • Distributed algorithm to find shortest widest paths

  9. S R1 R2 R3 R4 Construct Multicast Graph • Basics • Leaf intermediate node • All children are receiver nodes • Saturation • Intermediate node degree(v) = Δ • Leaf intermediate node degree(v) = Δ-1 Δ = 4

  10. S R1 R2 R3 R4 Construct Multicast Graph • Basics • Leaf intermediate node • All children are receiver nodes • Saturation • Intermediate node degree(v) = Δ • Leaf intermediate node degree(v) = Δ-1 Δ = 4

  11. Construct Multicast Graph • First path pf • Unsaturated neighbors exist • Selects the best path among these neighbors • All neighbors saturated • Find (breath-first) k unsaturated nodes from source node s • Select the best path

  12. Construct Multicast Graph • Second path ps S

  13. Construct Multicast Graph • Second path ps S

  14. Construct Multicast Graph • Second path ps S

  15. Construct Multicast Graph • Second path ps S

  16. Construct Multicast Graph • Second path ps S

  17. Linear Coding Multicast (LCM) • Node with 1 input • Simple forwarding • Node with 2 inputs • Receive X, Y from left, right inputs, respectively • Compute C = [X Y][v1 v2]T • Send C out along all outputs • How to assign (v1, v2) to each node so as to guarantee reception?

  18. Linear Coding Multicast (LCM) • Output of any node • C = [X Y][v1 v2]T = [a b][p q]T, because X, Y are linear combinations of a and b. • X = [a b][px qx]T and Y = [a b][py qy]T (same logic) X Y [v1, v2] [a b][p q]T C = [X Y][v1 v2]T

  19. Performance Evaluation • INET topology generator (University of Michigan) • Comparison • DVMRP • IP layer multicast protocol • Narada • Application layer multicast protocol

  20. Performance Evaluation

  21. Performance Evaluation

  22. Conclusions • Propose a practical network coding scheme to exploit existing theoretical bounds • Demonstrate throughput advantage of network coding, compared to existing application layer multicast

More Related