200 likes | 318 Views
Scribe An application level multicast infrastructure. Kasper Egdø and Morten Bjerre. Motivating Scribe: Tracking stock prices. Users wish to track the price of stocks Prices need to be broadcast Many stocks, many users Dynamic set of users and stocks Faulttolerant and decentralized.
E N D
ScribeAn application level multicast infrastructure Kasper Egdø and Morten Bjerre
Motivating Scribe:Tracking stock prices • Users wish to track the price of stocks • Prices need to be broadcast • Many stocks, many users • Dynamic set of users and stocks • Faulttolerant and decentralized
Overview • Pastry: Object location and routing scheme used by Scribe • Scribe: An application level multicast infrastructure • Anycast: An application layer built using Scribe • Conclusion
Quick Pastry • 128-bit node/object space • Prefix routing • Good locality • ”Short routes” property • Non-FIFO • deliver, forward, newLeafs
What is Scribe? • Application level multicast infrastructure • Built ontop of Pastry • Scales well • Best effort delivery
Group management • Rendezvous Point (RP) • Access control done at RP
Creating a group (1100) 1111 0100 1100 1101 1001 Rendezvous Point (Pastry root) Group Creator creates Group 1100 0111
Member management • Joining a group • Children table • Leaving a group • A multicast tree is created
Joining a group 1111 0100 1100 1101 Join request 1001 Rendezvous Point (Pastry root) 0111 Joining member
Leaving a group 1111 0100 Leave request 1100 1101 Leave request 1001 Rendezvous Point Member (Pastry root) 0111 Leaving member
Multicasting 1111 0100 Message 1100 1101 Multicast down tree 1001 Rendezvous Point (Pastry root) 0111
Maintaining the tree • Parent heartbeats check if nodes are alive • Children rejoin group if parent dies • RP state information replicated to leaf nodes
Repairing the tree 1111 0100 Join request Join request 1100 1101 Rendezvous Point 1001 Failed Node (Pastry root) 0111
Problems with Scribe • Best-effort delivery • No built-in protection of information • Possible concurrency problems
More reliability • Number and buffer messages • Applications can choose to improve reliability • Encryption of messages
Comparing Scribe and IP multicast • Scribe scales better and supports dynamic groups • Scribe nearly as efficient as IP multicast
Application of Scribe • Anycast offers anycast and manycast
Anycast Client B Scribe group Client A Resource offered
Conclusion • Scribe is very good for large scale multicast • Easy to implement applications which use Scribe