- 56 Views
- Uploaded on
- Presentation posted in: General

Optimal Allocation of Electronic Content in Networks

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

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

Users’ requirements

server

*

- 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.

users

users

users

users

users

users

users

users

server

level 1

server

level 2

server

level 3

server

level 4

- 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.

Assumed all servers connected at same level

- Tradeoffstorage cost communication cost:

- Then best storage level is near leaves of distribution tree. Otherwise- near root.

- 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.

- 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.

- -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.

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

*

ALGORITHM IDEA

*

v

i

k

i’s subtree

Dynamic programming: how to combine the solutions for i and k to get v?

ALGORITHM IDEA

*

v

i

k

i’s subtree

But to solve for i we need to know where is the server*

*

ALGORITHM IDEA

v

i

k

i’s subtree

But to solve for i we need to know where is the server*

ALGORITHM IDEA

*

v

i

k

i’s subtree

But to solve for i we need to know where is the server*

ALGORITHM IDEA

v

*

i

k

i’s subtree

But to solve for i we need to know where is the server*

Dynamic programming: solution

*

Distance j

i

i’s subtree

Dynamic programming: solution

*

Distance j

i

i’s subtree

j

i

i

*

Distance j

i

...

Data structure at node i

Computing the parent’s cost. Example: line 2

v

k

i

Computing the parent’s cost. Example: line -1

v

k

i

Computing the parent’s cost. For line 0 add cost of server (e.g. 10)

v

*

k

i

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)?

1*

5

1

3*

2

4

3

2

0

5

6

1

0

7

5

7*

6

8

9

10

11

12

*

Leaves tables

Leaves tables

1*

5

1

3*

2

4

3

2

0

5

6

1

0

7

5

7*

6

8

9

10

11

12

*

Leaves tables

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

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

- 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.