Download presentation
Presentation is loading. Please wait.
Published byCharla McLaughlin Modified over 9 years ago
1
SCRIBE A large-scale and decentralized application-level multicast infrastructure
2
Overview Pastry PAST distributed file system layered on top of Pastry SCRIBE decentralized publish/subscribe system
3
Pastry – Quick Review Chord like routing Consistent hashing Prefix routing Leaf set
4
Pastry – locality properties Short routes Total distance traveled Average dist 1.59 to 2.2 times actual dist Route convergence Dist Traveled by 2 messages sent to same key Equal to dist between to nodes before routes converge
5
Pastry API nodeID = pastryInit(Credentials) Causes node to join pastry network route(msg,key) send(msg,IP-addr) Applications must export: deliver(msg,key) forward(msg,key,nextID) newLeafs(leafSet)
6
SCRIBE Built on top of Pastry Support large number of groups Handle a high rate of membership turnover SCRIBE nodes can: Create groups Join groups Multicast messages to groups
7
SCRIBE API create(credentials, groupID) join(credentials, groupID) leave(credentials, groupID) multicast(credentials, groupID, message)
8
SCRIBE – Creating a Group Pastry route(msg, key) SCRIBE route(CREATE, groupID) groupID => hash textual name cat creator name Message delivered to closest key which become rendez-vous point for the group (root of multicast tree for group) Adds to local list of groups Stores credentials Alternative use itself as root good choice if creator sends to group often
9
SCRIBE – Joining a Group Pastry route(msg, key) SCRIBE route(JOIN, groupID) routed to rendez-vous point along the way multicast tree formed
10
SCRIBE – Leaving a Group Remove from local group children list If list becomes empty forward to parent Part of the multicast tree may be removed
11
SCRIBE – Sending a multicast message route(MULTICAST, groupID) ask for rendez-vous IP address If rendez-vous fails re-request rendez-vous point Pastry handles node duplication All messages are sent through the rendez-vous point
12
SCRIBE – Repairing the Multicast Tree Messages are delivered only in best-effort may be out of order delivery Periodic heartbeat message sent to all children Child rejoins the tree through sending a new JOIN message if suspects parent has failed Can repair rendez-vous point Pastry handles node duplication in leaf nodes Children nodes JOIN new root when missing heartbeat is detected
13
SCRIBE – Forming a Multicast Tree Rendez-vous point (root) Forwarders may or may not be members of the group maintain a children table (IP and nodeID) for group
14
SCRIBE - Strengths Pastry handles root duplication Rendez-vous point does not handle all join requests Locality properties of Pastry short routes delay from rendez-vous point to member is short route convergence load imposed on physical network is small
15
SCRIBE – Experimental Evalutation Simulation experimental results Focus on three metrics: delay to deliver events to group members stress on each node stress on each physical network link
16
SCRIBE – Simulator Evaluation 5050 routers and 100,000 end nodes 1,500 groups of different sizes 10 different runs using same parameters but different random seeds Averaged all results Compared results with IP multicast
17
SCRIBE – Delay Penalty RMD – ratio between max delay using SCRIBE & max delay using IP multicast RAD – ratio between average delay using SCRIBE & average delay using IP multicast
18
SCRIBE – Node Stress Average node is responsible for forwarding a small number of multicast messages
19
SCRIBE – Link Stress Total num links = 1,035,295 SCRIBE = 2,489,824 messages (mean 2.4) IP multicast = 758,853 messages (mean 0.7)
20
SCRIBE – Bottleneck remover Bottlenecks Low capacity nodes High capacity nodes with extremely high children entries Drop children if over capacity Select child to drop and send message with children table Child chooses new parent node and sends JOIN message Result Removes long tail in node stress graph Increases average link stress
21
SCRIBE – Scalability Small Groups 50,000 nodes 30,000 groups 11 members each group SCRIBE performs poorly for large number small groups SCRIBE collapse Removes long paths removing nodes that are not members of a group & have only one entry in their children table
22
SCRIBE – Scalability Small Groups Average link stress 6.1 to 3.3 Average number of children 21.2 to 8.5
23
SCRIBE - Conclusion Fully decentralized Support large number of groups Support large group size Multiple multicast sources per group QUESTIONS
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.