C(i,j,p)

Maximum Reliability K-Hop
Multicast Strategy in Tree
Networks
Mugurel Ionut Andreica, Nicolae Tapus
Polytechnic University of Bucharest
Computer Science Department
Summary
 Maximum
Reliability K-Hop Multicast
in Directed Tree Networks
 2 Dynamic Programming Solutions

O(k·n2) and O(k·n3)
 Extensions
to General Directed
Graphs
 A Max-Min Reliability Metric

2 situations
 Conclusions
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
2
Maximum Reliability K-Hop
Multicast in Directed Trees (1/2)







directed tree – n vertices, n-1 edges
edge u->v: ru,v => cost(u,v)=-log(ru,v)
root of the tree -> distributes content to all
the leaves
minimum total cost
any number of simultaneous connections
to nodes in the subtree
at most k time units
intermediate nodes



S0={root}
during time unit i: Si-1 -> Si
Sk={ x | x is a leaf }
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
3
Maximum Reliability K-Hop
Multicast in Directed Trees (2/2)

n=14, k=2, 11 messages sent
 cost=10+12+3+11+17+1+3+5+3+12+1=75
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
4
Existing Solutions
 Galdi,
Kaklamanis, Montangero,
Persiano (2001): O(k·n·M(n))
 M(n)=the time complexity of a mincut algorithm (in graphs with n
vertices and O(n) edges)
 recently (Borradaile, Klein, 2006):
M(n)=O(n·log(n))
 O(k·n2·log(n))
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
5
O(k·n3) Dynamic Programming
Algorithm (1/3)

turn tree into binary tree (standard)
 C(i,j,p) = the minimum cost of distributing
the content to all the leaves in node i’s
subtree (starting from i)


at most j (0≤j≤k) time units
if 1<p≤n: i is on the paths between an
intermediate node x above i and p (in1, ..., inp)
• x sends messages to in1, ..., inp

if p=1
• i is an intermediate node
• i is not an intermediate node (set p=1 in the case
above)
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
6
O(k·n3) Dynamic Programming
Algorithm (2/3)
 C(i,-1,p)=+∞
i
is a leaf


i
C(i,j,1)=0
C(i,j,p)=+∞
has one son s


Maximum Reliability K-Hop Multicast Strategy in Tree Networks
7
O(k·n3) Dynamic Programming
Algorithm (3/3)
i
has two sons: s1, s2


 root:
special case for p=1 and only
one son (must be an intermediate
node)
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
8
O(k·n2) Dynamic Programming
Algorithm (1/2)
 DFS
traversal => assign a label to
each leaf (starting from 1)
 [lmin(i),lmax(i)]=the interval of labels
of the leaves in node i’s subtree (STi)
 C(i,j,p)=the minimum cost of
distributing the content to the first p
leaves in STi


at most j time units
i is an intermediate node
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
9
O(k·n2) Dynamic Programming
Algorithm (2/2)


L(i,p)=a list with all the nodes x in STi with
lmax(x)=lmin(i)+p-1
 for a pair(i,j): O(n) for all the values of p
 can get to O(1) amortized time for each
tuple (i,j,p)
 O(k·n2) overall
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
10
Extensions to General Directed
Graphs (1/2)

directed graph: n vertices, n·(n-1) directed
edges
 src=source of the content
 D=set of destinations
 C(i,j,S)=the minimum cost of distributing
the content to all the nodes in S, starting
from node i


at most j time units
S is a subset of nodes from D.
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
11
Extensions to General Directed
Graphs (2/2)


O(k·n2·3|D|)
 can also extend the O(k·n3) algorithm =>
O(k·n3·3|D|)

Maximum Reliability K-Hop Multicast Strategy in Tree Networks
12
A Max-Min Reliability Metric (1/3)
graph – n vertices
 edge u->v:
 directed



reliability: ru,v
duration: duu,v
transmission processing time (lag): tpu,v
 src=source
of the content
 D=set of destinations – {d1,d2,...,dC}
 maximize the minimum reliability of
the traversed edges
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
13
A Max-Min Reliability Metric (2/3)

binary search R (the minimum reliability) =>
feasibility test


minimum time multicast strategy
the general case:



Tmin(i,S)=the minimum duration of distributing
the content to all the destinations in S, starting
from the node i
S is the set of nodes in node i’s subtree
O(n2·3n) – similar to the directed graph optimal
k-hop multicast strategy
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
14
A Max-Min Reliability Metric (3/3)

A particular case: du,v=tpu,v=1




Os,u, Or,u, Os+r,u operations per time unit for node u (send,
receive, send+receive) => Os,u=Or,u=Os+r,u=1 in this case
C=|D| - bounded by a constant
Tmin[(v1,v2,…,vC)]=the minimum time after which the
message destined to each node di reaches the node vi.
transitions from a state S1 to another state S2 (1 time unit)
• every node ui in S1 sends the message to the receiving node
vi in S2 (if vi≠ui) or does not send anything (vi=ui)
• for every node u: count the number of send and receive
operations => invalidate transition if the numbers are too
large


a queue of states Q
O(C·n2·C) algorithm
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
15
Conclusions



O(k·n2) and O(k·n3) DP solutions for the
maximum reliability k-hop multicast strategy in
directed trees
O(k·n2·3|D|) extension to general directed graphs
max-min reliability metric => minimum time
multicast


general and particular case
applications to:


design of multicast strategies in distributed systems
(e.g. peer-to-peer systems)
performance evaluation of other multicast strategies (by
comparison)
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
16
Thank You !
Maximum Reliability K-Hop Multicast Strategy in Tree Networks
17