220 likes | 337 Views
LessLog A Logless File Replication Algorithm for Peer-to-Peer Distributed Systems. Kuang-Li Huang Tai-Yi Huang Jerry C. Y. Chou Embedded Operating Systems (EOS) Lab http://eos.cs.nthu.edu.tw/ Department of Computer Science National Tsing Hua University, Taiwan. Outlines. Introduction
E N D
LessLogA Logless File Replication Algorithm for Peer-to-Peer Distributed Systems Kuang-Li Huang Tai-Yi Huang Jerry C. Y. Chou Embedded Operating Systems (EOS) Lab http://eos.cs.nthu.edu.tw/ Department of Computer Science National Tsing Hua University, Taiwan
Outlines • Introduction • System model • Basic model • Advanced model • Fault-tolerant model • Experimental results • Conclusions and future work EOS Lab, National Tsing Hua University
Related Work • Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications.IEEE/ACM Transactions on Networking, 2003 • Pastry: Scalable, Distributed Object Location and Routing for Large-Scale Peer-to-Peer Systems. IFIP/ACM International Conference on Distributed Systems Platforms (Middleware), 2001 • Tapestry: A Resilient Global-Scale Overlay for Service Deployment.IEEE Journal on Selected Areas in Communications, January 2004 • SCAN: A Dynamic, Scalable, and Efficient Content Distribution Network.International Conference on Pervasive Computing, 2002 EOS Lab, National Tsing Hua University
LessLog Contributions • An efficient bitwise replication algorithm • Independent with underlying lookup protocols • Make no use of client-access logs • A complete set of file-access API • Fault-tolerant features • Self-organized for dynamic system change EOS Lab, National Tsing Hua University
Basic System Model • There are totally Nlive nodes, N = 2m. • Each node is assigned a unique ID in [0, N-1] • Randomly assigned or any user-specified way • Such ID is called the PID of the node • Denoted by P(i) • A complete N-node binomial tree is built for each node • Totally N different physical trees EOS Lab, National Tsing Hua University
111 110 101 011 010 001 100 000 Virtual Tree • We use one unique virtual tree to construct each of N different physical trees VID EOS Lab, National Tsing Hua University
complement Physical Tree for Node 3 3 3=011 key=100 111 110⊕100=010 2 1 7 101⊕100=001 110 101 011 0 6 010 001 100 4 000 5 EOS Lab, National Tsing Hua University
7 4 2 5 3 0 1 Physical Tree for Node 6 6 111 110 101 011 010 001 100 000 EOS Lab, National Tsing Hua University
Properties of Virtual Tree • A node has i children nodes if its leftmost i bits in VID are all 1’s • The node of VID i has more or the same offspring nodes than the node of VID j if i > j • Given the PID of the root node in a lookup tree, we can do PID VID mapping for each node in the lookup tree EOS Lab, National Tsing Hua University
2 1 7 0 6 5 4 LessLog Tree Traversal 3 111 110 101 011 010 001 100 000 EOS Lab, National Tsing Hua University
2 1 7 0 6 5 4 connect toP(6) LessLog INSERT / GET API 3 111 110 101 011 010 001 100 000 askHashing(file)=3 EOS Lab, National Tsing Hua University
LessLog REPLICATE API 3 111 110 101 011 010 001 100 000 Each replication reduces 50% load! EOS Lab, National Tsing Hua University
Advanced System Model • There are totally N live nodes, N ≦ 2m. • Each node is assigned a unique ID in [0, 2m-1] • Randomly assigned or any user-specified way • Denoted by P(i) • Live nodes and dead nodes • A complete 2m-node binomial tree is built for each node • Totally 2m different physical trees EOS Lab, National Tsing Hua University
AdvancedLessLog INSERT / GET API The 1st live node with largest VID 3 111 2 1 7 110 101 011 0 6 5 010 001 100 4 000 askHashing(file)=3 EOS Lab, National Tsing Hua University
7 0 6 5 4 Overloaded Node with Largest VID 3 111 2 1 110 101 011 100 010 001 100 011 010 000 Sorted by VID 001 EOS Lab, National Tsing Hua University
6 7 111 111 7 4 6 2 5 3 110 101 011 110 101 011 5 3 2 0 1 4 001 100 010 001 100 010 0 100 000 Self-organized LessLog • Joining (Leaving) a node • Check whether it is the largest VID • Ex.P(6) join, P(1), P(4) are dead nodes 1 EOS Lab, National Tsing Hua University
1 1 0 1 0 0 1 0 Fault-Tolerant LessLog • Files can always be accessed • LessLog stores each file in 2bnodes,b≦m • 2b identical subtrees 3 111 2 1 7 110 101 011 0 6 5 100 010 001 4 000 EOS Lab, National Tsing Hua University
22 identical subtrees 3 1111 1 7 11 2 1101 1011 0111 1110 15 0 6 10 5 9 0101 1001 0011 1100 1010 0110 14 4 8 13 0100 1000 0010 0001 12 0000 EOS Lab, National Tsing Hua University
Experimental Results • Compared with log-based and random algorithms at an evenly-distributed model replicas incoming requests/1000 EOS Lab, National Tsing Hua University
Experimental Results • Compared with log-based and random algorithms at an locality model replicas incoming requests/1000 EOS Lab, National Tsing Hua University
Conclusions and Future Work • An efficient bitwise replication algorithm • Built on top of any existing lookup protocol • Make no use of client-access logs • Significant performance improvement • Fault-tolerant & self-organized futures • Concurrent joins / leaves / failures • Under implementation at PlanetNet systems • Real performance numbers EOS Lab, National Tsing Hua University
Thank You EOS Lab, National Tsing Hua University