Upload
jescie-moore
View
28
Download
0
Embed Size (px)
DESCRIPTION
ZIGZAG: An Efficient Peer-to-Peer Scheme for Media Streaming. Duc A. Tran, Kien A. Hua, Tai Do University of Central Florida INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies. Chu Yi-Cheng. Outline. Issues of Peer-to-Peer Streaming - PowerPoint PPT Presentation
Citation preview
ZIGZAG: An Efficient Peer-to-Peer Scheme for Media Streaming
Duc A. Tran, Kien A. Hua, Tai Do
University of Central FloridaINFOCOM 2003. Twenty-Second Annual Joint Conference
of the IEEE Computer and Communications Societies.
Chu Yi-Cheng
Outline
Issues of Peer-to-Peer Streaming Application-layered Structure
Administrative Organization Multicast Tree
Apply the Mechanism Control Protocol Join and Departure of a Client Split and Merge of Clusters
Experiment Results Conclusion
Issues of Peer-to-Peer Streaming
Bound the end-to-end delay
Deal with unpredictable users’ behavior
Efficient use of network resources
Administrative Organization
Cluster size: for any positive constant k in the bound [ k, 3k ]
LH-1
LH-2
LH-3
L0
S
Head
Multicast Tree -- Terms used
Subordinate: Non-head peers of cluster headed by X
Foreign head: Clustermates of X, X is the head of the peer at
layer j-1 Foreign subordinate:
Subordinates of clustermates Foreign cluster:
Clusters of clustermates
Multicast Tree -- Definition
Concept: Receive content from foreign heads instead of
its head. Rules:
If a peer isn’t at its highest layer, it cannot has a link.
A peer at its highest layer can only link to its foreign head.
The server links to each of its subordinates.
Example of Multicast Tree
Bound node degree to O((3k-1)*(3k-1)+(3k-1)) = O(k2)
Bound tree height to O(H) = (logkN)
k = 4, H (number of layers) = 3
Control Protocol
Maintain the positions and connections in the multicast tree and the administrative organization.
Periodically communicate with: Clustermates
- Subordinates: (position, degree) set of X- Head: (foreign cluster head, degree to foreign cluster) list of X
Parent- Reachable(X): exist a path from X to a layer-0 peer- Addable(X): X is reachable, and the cluster size of the layer-0 peer
is in [k, 3k-1] Children Y
- Receive Reachable(Yi), Addable(Yi) from children.
For a peer which highest layer is j,
Worst case: need O((j+1)*(3k-1)) + O(k2) = O(k*logkN)
Amortized worst-cast: )())19)13((/1(1
0
2 kOkkjkH
j
j
Control Protocol (cont.)
Node 2: send (2, 6) to 1, 3, 4
send {(1, 3), (3, 3)} list to head 4
send Reachable(2)=1, Addable(2)=1 to parent S
receive Reachable(), Addable() from children
k = 4, H (number of layers) = 3, size bound in [4,12]
Client Join
Client Join (cont.)
join request
Join overhead:
O(max degree × height of multicast tree) = O(k*logkN)
Client Departure
1. Peer X fail
2. Aware of failure of X
(i). Parent of X delete link of X.
(ii). Head of children of X select new parent with minimum degree for them.
(iii). Subordinates of X at layer 0~j-1 adapt new head
X’ selected from layer 0.
Failure recovery overhead:O(children number) + O(1) + O(1) = O(degree) = O(k2)
Should be O(k*logkN) considering control overhead of X’
XX’
X
X
X”Lj+1
Lj
Lj-1
L0
Z
Split overhead:
step 2:
step 4: O(degree of Y) = O(k2)
=> O(k2)
1. Split into U, V, where X U with
2. Delete links of layer j-1 whose parent and head are in different clusters in layer j.
3. Choose new parents other than X for 2.
4. Select head Y of cluster V with minimum degree.
(i). Choose new parent for children of Y.
(ii). Place Y into layer j+1 and link to X”.
Split Operation
))(min(,
VXUX liil
lixx
6kn ,))13((most at 1
knOx
n
i i
U
X
X”Lj+2
Lj+1
Lj
Lj-1
X’
V
Merge Operation
Merge overhead: step 2: O(2*(3k-1))
step 3: O(degree) = O(k2)
=> O(k2)
1. Choose new head between X, Y which are heads of two sets being merged.
(may use larger degree one)
2. Delete link from parent of lost head at layer j+1, and remove the node.
3. Select new parent of non-head members in U+V.
4. Delete links point to the same cluster at layer j+1.
5. Select new parent different from the new head with minimum degree.
Experiment Results -- Failure free
3240 node-transit-stub
2000 clients
K=5
Experiment Results -- Failure free (2)
Experiment Results -- Failure free (3)
Experiment Result -- Failure recovery
Experiment Result -- NICE comparison
NICE:
Adapt hierarchical peer clusters, but always receive content from head.
Conclusion
With O(logN) tree height, O(k2) nodes degree, the scheme maintains relative short end-to-end delay.
Obtain control overhead to O(k2) on average. Join a client can be accomplished within O(lo
gN) downward relay. Departure a client cost O(k2). Use merge, split to maintain efficient use of th
e network need O(k2) periodically invoked.