Streaming in Peer-to-peer Networks 2002/1/2. Outline The problem Assumption Network model / Node...
-
date post
21-Dec-2015 -
Category
Documents
-
view
224 -
download
1
Transcript of Streaming in Peer-to-peer Networks 2002/1/2. Outline The problem Assumption Network model / Node...
Outline
• The problem• Assumption• Network model / Node• Construction
– Flood-broadcast– Tail-broadcast– Leave-broadcast
• Simulation• Future work
The Problem
• Given a graph G = (V,E) with order-vertexes and a distinguished source vertex s, we find a way to connect all the vertexes without violating the order, which means we have to connect the smaller order vertexes before the larger ones.
• Constraints:– Minimize the maximum of order-difference– Minimize the sum of order-difference– Minimize the construction cost
An Example
1
64
5
2
3
1
64
5
2
3
1
64
5
2
3
1
64
5
2
3
Step 1 Step 2 Step 3 Step 4
MAX : 2SUM :1+2+2
1
2
1
2
Order-difference: ID – Max(Children’s ID)
Assumption
• Without messages, all nodes knows nothing about other nodes’ condition except the paths to connect to its neighbor nodes.
• Only in-stream nodes can actively tell other nodes to join the stream.
• If a node receives a message, it can directly response the message or forward the message to its neighbors according to the message’s TTL attribute.
Network Model
• Distributing n nodes across a Cartesian coordinate grid.
• The edge probability function is
,where d(u,v) is the Euclidean distance, L is the maximum possible distance between two nodes.
L
vudvuP
),(
exp),(
Node
• A node has following attributes:– (x,y)– Neighbor nodes’ ID– ID (also used as joined order)– Stream parent ID– Stream child IDs (order-difference)– Message parent ID– Message TTL– The sent messages number
Flood-broadcast
• Every node in the stream can broadcast messages to all its neighbor nodes.
1
64
5
2
3
1
64
5
2
3
Tail-broadcast
• Only the lastly in-stream nodes can broadcast messages.
1
64
5
2
3
Tail-1 case
1
64
5
2
3
Tail-2 case
1
64
5
2
3
Leaves-broadcast Vs. Tail-broadcast (1)
• Tail-broadcast has local problem and does not spread well.
• Leaves-broadcast has a trend to result in a tree graph but at the same time occurs larger maximum and sum of order-difference.
Leaves-broadcast Vs. Tail-broadcast (2)
1 n-1 n…
i
j
n+1
Tail-broadcast
1 n-1 n…
i
j
n+1
Leave-broadcast
How to Simulation (1)
• Main loop :for i = 1 to NUM_OF_NODES do
ResetMessageParent()SetBroadcastNodes(BROADCASTWAY)
SetInStream()
How to Simulation (2)
• ResetMessageParent() :– Reset every node’s message server to
null (clear history)– To avoid broadcasting messages back
How to Simulation (3)
• SetBroadcastNodes(BROADCASTWAY) :– To setup which nodes to broadcast
messages to others.– BROADCASTWAY:
• Flood-broadcast• Leaves-broadcast• Tail-broadcast
How to Simulation (4)
• SetInStream() :– To set the node which wants to join
the movie into the chaining stream– Select a parent node to join
How to Simulation (6)
• BroadcastMessage() :– If the node is set to broadcast
message, the node call this function to broadcast messages to all its neighbor nodes.
How to Simulation (7)
• ReceiveMessage() :– If a node receive a message, it first
store the message server’s ID, and see if it want to join the movie.
– If a node want to join the movie, it stores the stream parent ID.
– If not, it looks the TTL field and compare the value received last time to determine if it need to broadcast messages forward.
How to Simulation (8)
• ResponseMessage() :– A node can determine which movie
server to connect with if it had received messages before.
Simulation Result (4)In-stream node number (total 100 nodes)
TTL 1 2 3 4
Flood 52 81 99 100
Leaves 10 25 49 95
Tail-3 19 45 74 89
Messages cost
TTL 1 2 3 4
Flood 19,478 273,941 3,094,249 27,166,605
Leaves 956 7,801 27,260 148,592
Tail-3 2,634 20,518 58,193 108,506
Max/Sum of order-difference
TTL 1 2 3 4
Flood 19/256 19/283 19/287 9/171
Leaves 1/9 1/24 9/64 19/262
Tail-3 3/24 3/65 14/130 12/139