10- Distributed Hash Table

10- Distributed Hash Table - CSE 486/586 Distributed...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Distributed Hash Table Steve Ko Computer Sciences and Engineering University at Buffalo
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Last Time Evolution of peer-to-peer Central directory (Napster) Query flooding (Gnutella) Hierarchical overlay (Kazaa, modern Gnutella) BitTorrent Focuses on parallel download Prevents free-riding 2
Background image of page 2
CSE 486/586, Spring 2012 This Week’s Question How do we organize the nodes in a distributed system? Up to the 90’s Prevalent architecture: client-server (or master-slave) Unequal responsibilities Now Emerged architecture: peer-to-peer Equal responsibilities Studying an example of client-server: DNS Today: studying peer-to-peer as a paradigm 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 What We Want Functionality: lookup-response 4 P P P P P P P E.g., Gnutella
Background image of page 4
CSE 486/586, Spring 2012 What We Don’t Want Cost (scalability) & no guarantee for lookup Napster: cost not balanced, too much for the server- side Gnutella: cost still not balanced, just too much, no guarantee for lookup 5 Memory Lookup Latency #Messages for a lookup Napster O(1) ( O(N) @server) O(1) O(1) Gnutella O(N) O(N) O(N)
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 What We Want What data structure provides lookup-response? Hash table: data structure that associates keys with values Name-value pairs (or key-value pairs) E.g., “http://www.cnn.com/foo.html” and the Web page E.g., “BritneyHitMe.mp3” and “12.78.183.2” 6 Table Index Values
Background image of page 6
CSE 486/586, Spring 2012 Hashing Basics Hash function Function that maps a large, possibly variable-sized datum into a small datum, often a single integer that serves to index an associative array In short: maps n-bit datum into k buckets (k << 2n) Provides
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

This document was uploaded on 02/27/2012.

Page1 / 24

10- Distributed Hash Table - CSE 486/586 Distributed...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online