Date post: | 01-Jan-2016 |
Category: |
Documents |
Upload: | louisa-sherman |
View: | 221 times |
Download: | 0 times |
Maximum Reliability K-Hop Maximum Reliability K-Hop Multicast Strategy in Tree Multicast Strategy in Tree
NetworksNetworks
Mugurel Ionut AndreicaMugurel Ionut Andreica, Nicolae Tapus, Nicolae TapusPolytechnic University of BucharestPolytechnic University of Bucharest
Computer Science DepartmentComputer Science Department
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 22
SummarySummary
Maximum Reliability K-Hop Multicast Maximum Reliability K-Hop Multicast in Directed Tree Networksin Directed Tree Networks
2 Dynamic Programming Solutions2 Dynamic Programming Solutions O(kO(k··nn22) and O(k) and O(k··nn33))
Extensions to General Directed Extensions to General Directed GraphsGraphs
A Max-Min Reliability MetricA Max-Min Reliability Metric 2 situations2 situations
ConclusionsConclusions
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 33
Maximum Reliability K-Hop Maximum Reliability K-Hop Multicast in Directed Trees (1/2)Multicast in Directed Trees (1/2)
directed tree – n vertices, n-1 edgesdirected tree – n vertices, n-1 edges edge u->v: redge u->v: ru,vu,v => cost(u,v)=-log(r => cost(u,v)=-log(ru,vu,v)) root of the tree -> distributes content to all root of the tree -> distributes content to all
the leavesthe leaves minimum total costminimum total cost any number of simultaneous connections any number of simultaneous connections
to nodes in the subtreeto nodes in the subtree at most k time unitsat most k time units intermediate nodesintermediate nodes
SS00={root}={root} during time unit i: Sduring time unit i: Si-1 i-1 -> S-> Sii SSkk={ x | x is a leaf }={ x | x is a leaf }
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 44
n=14, k=2, 11 messages sentn=14, k=2, 11 messages sent cost=10+12+3+11+17+1+3+5+3+12+1=75cost=10+12+3+11+17+1+3+5+3+12+1=75
Maximum Reliability K-Hop Maximum Reliability K-Hop Multicast in Directed Trees (2/2)Multicast in Directed Trees (2/2)
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 55
Existing SolutionsExisting Solutions
Galdi, Kaklamanis, Montangero, Galdi, Kaklamanis, Montangero, Persiano (2001): O(kPersiano (2001): O(k··nn··M(n))M(n))
M(n)=the time complexity of a min-M(n)=the time complexity of a min-cut algorithm (in graphs with n cut algorithm (in graphs with n vertices and O(n) edges)vertices and O(n) edges)
recently (Borradaile, Klein, 2006): recently (Borradaile, Klein, 2006): M(n)=O(nM(n)=O(n··log(n))log(n))
O(kO(k··nn22··log(n))log(n))
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 66
O(kO(k··nn33) Dynamic Programming ) Dynamic Programming Algorithm (1/3)Algorithm (1/3)
turn tree into binary tree (standard)turn tree into binary tree (standard) C(i,j,p)C(i,j,p) = the minimum cost of distributing = the minimum cost of distributing
the content to all the leavesthe content to all the leaves in in node i’s node i’s subtree (starting from i)subtree (starting from i) at most j (0≤j≤k) time unitsat most j (0≤j≤k) time units if 1<p≤nif 1<p≤n: : i is on the paths between an i is on the paths between an
intermediate node x above i and p intermediate node x above i and p (in(in11, ..., in, ..., inpp))• x sends messages to inx sends messages to in11, ..., in, ..., inpp
if p=1if p=1• i is an intermediate nodei is an intermediate node• i is not an intermediate node (set p=1 in the case i is not an intermediate node (set p=1 in the case
above)above)
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 77
O(kO(k··nn33) Dynamic Programming ) Dynamic Programming Algorithm (2/3)Algorithm (2/3)
C(i,C(i,-1-1,p)=+∞,p)=+∞ i is a leafi is a leaf
C(i,j,1)=0C(i,j,1)=0 C(i,j,p)=+∞C(i,j,p)=+∞
i has one son si has one son s
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 88
O(kO(k··nn33) Dynamic Programming ) Dynamic Programming Algorithm (3/3)Algorithm (3/3)
i has two sons: s1, s2i has two sons: s1, s2
root: special case for p=1 and only root: special case for p=1 and only one son (must be an intermediate one son (must be an intermediate node)node)
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 99
O(kO(k··nn22) Dynamic Programming ) Dynamic Programming Algorithm (1/2)Algorithm (1/2)
DFS traversal => assign a label to DFS traversal => assign a label to each leaf (starting from 1)each leaf (starting from 1)
[lmin(i),lmax(i)]=the interval of labels [lmin(i),lmax(i)]=the interval of labels of the leaves in node i’s subtree (STof the leaves in node i’s subtree (STii))
C(i,j,p)C(i,j,p)=the minimum cost =the minimum cost of of distributing the content to the first p distributing the content to the first p leaves in leaves in STSTii
at most j time unitsat most j time units i is an intermediate nodei is an intermediate node
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1010
O(kO(k··nn22) Dynamic Programming ) Dynamic Programming Algorithm (2/2)Algorithm (2/2)
L(i,p)=L(i,p)=a list a list withwith all the nodes x in ST all the nodes x in ST ii with with
lmax(x)=lmin(i)+p-1lmax(x)=lmin(i)+p-1 for a pair(i,j): O(n) for all the values of pfor a pair(i,j): O(n) for all the values of p can get to O(1) amortized time for each can get to O(1) amortized time for each
tuple (i,j,p)tuple (i,j,p) O(kO(k··nn22) overall) overall
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1111
Extensions to General Directed Extensions to General Directed Graphs (1/2)Graphs (1/2)
directed graph: n vertices, ndirected graph: n vertices, n··(n-1) directed (n-1) directed edgesedges
src=source of the contentsrc=source of the content D=set of destinationsD=set of destinations C(i,j,S)C(i,j,S)=the minimum cost of distributing =the minimum cost of distributing
the content to all the nodes in S, starting the content to all the nodes in S, starting from node from node ii at most j time unitsat most j time units S is a subset of nodes from D.S is a subset of nodes from D.
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1212
Extensions to General Directed Extensions to General Directed Graphs (2/2)Graphs (2/2)
O(kO(k··nn22··33|D||D|) ) can also extend the O(kcan also extend the O(k··nn33) algorithm => ) algorithm =>
O(kO(k··nn33··33|D||D|) )
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1313
A Max-Min Reliability Metric (1/3)A Max-Min Reliability Metric (1/3)
directed graph – n verticesdirected graph – n vertices edge u->v:edge u->v:
reliability: rreliability: ru,vu,v
duration: duduration: duu,vu,v
transmission processing time (lag): tptransmission processing time (lag): tpu,vu,v
src=source of the contentsrc=source of the content D=set of destinations – {dD=set of destinations – {d11,d,d22,...,d,...,dCC}} maximize the minimum reliability of maximize the minimum reliability of
the traversed edgesthe traversed edges
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1414
A Max-Min Reliability Metric (2/3)A Max-Min Reliability Metric (2/3)
binary search R (the minimum reliability) => binary search R (the minimum reliability) => feasibility testfeasibility test minimum time multicast strategyminimum time multicast strategy
the general case:the general case: Tmin(i,S)=the minimum duration of distributing Tmin(i,S)=the minimum duration of distributing
the content to all the the content to all the destinationsdestinations in in SS, starting , starting from the node from the node ii
S is the set of nodes in node i’s subtreeS is the set of nodes in node i’s subtree O(nO(n22·3·3nn)) – similar to the directed graph optimal – similar to the directed graph optimal
k-hop multicast strategyk-hop multicast strategy
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1515
A Max-Min Reliability Metric (3/3)A Max-Min Reliability Metric (3/3)
A particular case: dA particular case: du,vu,v=tp=tpu,vu,v=1=1 OOs,us,u, O, Or,ur,u, O, Os+r,us+r,u operations per time unit for node u (send, operations per time unit for node u (send,
receive, send+receive) => Oreceive, send+receive) => Os,us,u=O=Or,ur,u=O=Os+r,us+r,u=1 in this case=1 in this case C=|D| - bounded by a constantC=|D| - bounded by a constant Tmin[(vTmin[(v11,v,v22,…,v,…,vCC)])]==the minimum time after which the the minimum time after which the
message destined to each node dmessage destined to each node d ii reache reachess the node v the node vii.. transitions from a state Stransitions from a state S11 to another state S to another state S22 (1 time unit)(1 time unit)
• every node uevery node uii in S in S11 sends the message to the receiving node sends the message to the receiving node vvii in S in S22 (if v (if vii≠u≠uii) or does not send anything (v) or does not send anything (vii=u=uii))
• for every node u: count the number of send and receive for every node u: count the number of send and receive operations => invalidate transition if the numbers are too operations => invalidate transition if the numbers are too large large
a queue of states Qa queue of states Q O(CO(C··nn22··CC) algorithm) algorithm
Maximum Reliability K-Hop Multicast Strategy in Tree NetworksMaximum Reliability K-Hop Multicast Strategy in Tree Networks 1616
ConclusionsConclusions
O(kO(k··nn22) and O(k) and O(k··nn33) DP solutions for the ) DP solutions for the maximum reliability k-hop multicast strategy in maximum reliability k-hop multicast strategy in directed treesdirected trees
O(kO(k··nn22··33|D||D|) extension to general directed graphs) extension to general directed graphs max-min reliability metric => minimum time max-min reliability metric => minimum time
multicastmulticast general and particular casegeneral and particular case
applications to:applications to: design of multicast strategies in distributed systems design of multicast strategies in distributed systems
(e.g. peer-to-peer systems)(e.g. peer-to-peer systems) performance evaluation of other multicast strategies (by performance evaluation of other multicast strategies (by
comparison)comparison)