1 / 28

Optimal Allocation of Electronic Content in Networks

Optimal Allocation of Electronic Content in Networks. Israel Cidon- Technion Shay Kutten- Technion Ran Soffer- Redux. Bandwidth requirements example. 1 *. 5. 1. 3 *. 2. 4. 3. 2. 0. 5. 6. 1. 0. 7. 5. 7 *. 6. 8. 9. 10. 11. 12 *. 3. 2. 12. 5. 7. 6. 1. 15.

Download Presentation

Optimal Allocation of Electronic Content in 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. Optimal Allocation of Electronic Content in Networks Israel Cidon- Technion Shay Kutten- Technion Ran Soffer- Redux

  2. Bandwidth requirements example 1* 5 1 3* 2 4 3 2 0 5 6 1 0 7 5 7* 6 8 9 10 11 12 * 3 2 12 5 7 6 1 15 Users’ requirements server *

  3. The Problem • A practical problem ([NS95] Schaffa F. and Nussbaumer J.P. “On Bandwidth and Storage Tradeoffs in Multimedia Distribution Networks”, IEEE 1995) • A multimedia delivery to home. • Users connected to a Community Access TV (CATV) tree (A directed tree oriented mesh). • Servers containing all types of information can be connected at every level of the tree.

  4. users users users users users users users users Model example server level 1 server level 2 server level 3 server level 4

  5. Why tree? • General graphs: high complexity • Trees are in common use for distribution, hierarchy, • Trees studied in the related papers • See also Vassilakis et al (2000), Buddhikot (1998), • Triantafillou and Faloutsos (to appear in Par. • Comp), Bisdikian and Patel (ICC95), etc.

  6. [NS95]’s Findings Assumed all servers connected at same level • Tradeoffstorage cost communication cost: • Then best storage level is near leaves of distribution tree. Otherwise- near root.

  7. Related problems • Related OR problems we mapped here:(see e.g. “Discrete Location Theory” book) • The p-Median problem. • The p-Center problem. • Uncapacitaed facility location problem.Algorithm for the undirected case:Billionnet A. and Costa M.C. “Solving the uncapacited problem on (undirected)trees”, DAM 49 pp. 51-59, 1994. • Tamir, 96, locating known# servers on undirected trees.

  8. Related problems (cont.) • Krishnan, Raz, and Shavitt • IEEE/ACM Transactions on Networking, to appear. • Li,Galin, Italiano, Deng, and K. SohrabyINFOCOM'99 • Optimized delivery time, when #server is known.

  9. Our contributions • -A more general model: • - Not all servers have to be in same level • - Cost(servers) on different machines may be different • - Cost(bandwidth) on different links may be different • Closed solution • Unknown number of servers • Better complexity • Observing: dynamic programming is better for distributed implementation, • connecting to OR problems.

  10. If cost(server)=10 & cost(BW)=1 then cost=40+1+5+1+6+7+5+2+3=70 1* 5 1 3* 2 4 3 2 0 5 6 1 0 7 5 7* 6 8 9 10 11 12 * 3 2 12 5 7 6 1 15 Users’ requirements server *

  11. ALGORITHM IDEA * v i k i’s subtree Dynamic programming: how to combine the solutions for i and k to get v?

  12. ALGORITHM IDEA * v i k i’s subtree But to solve for i we need to know where is the server*

  13. * ALGORITHM IDEA v i k i’s subtree But to solve for i we need to know where is the server*

  14. ALGORITHM IDEA * v i k i’s subtree But to solve for i we need to know where is the server*

  15. ALGORITHM IDEA v * i k i’s subtree But to solve for i we need to know where is the server*

  16. Dynamic programming: solution * Distance j i i’s subtree

  17. Dynamic programming: solution * Distance j i i’s subtree

  18. j i i * Distance j i ... Data structure at node i

  19. Computing the parent’s cost. Example: line 2 v k i

  20. Computing the parent’s cost. Example: line -1 v k i

  21. Computing the parent’s cost. For line 0 add cost of server (e.g. 10) v * k i

  22. Final allocation Root allocates itself iff cost(line 0) is min. A child i now knows the line j to use here * up i Is cost(line 2) <cost(line 0)? or <cost(line -1)?

  23. 1* 5 1 3* 2 4 3 2 0 5 6 1 0 7 5 7* 6 8 9 10 11 12 * Leaves tables

  24. Leaves tables 1* 5 1 3* 2 4 3 2 0 5 6 1 0 7 5 7* 6 8 9 10 11 12 *

  25. Leaves tables

  26. 1* 5 1 3* 2 4 3 2 0 5 6 1 0 7 5 7* 6 8 9 10 11 12 * Parents’ tables Root’s tables

  27. Complexity 2 • Computation: O(dN)=O(N )=(d Children ) d: tree depth N: nodes • Message: O(N) • Bit: d log cost per message • Time: O(d) i i

  28. Conclusions & Open problems • We found similarity between internet and Operational research problems. • Dynamic programming is a more convinient tool for distributed implementation. • Try to utilize methods for the application tree solutions in more general networks.

More Related