1 Distributed Hash Tables (DHTs) Lars Jørgen Lillehovde Jo Grimstad Bang Distributed Hash Tables (DHTs)

Slides:



Advertisements
Similar presentations
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Advertisements

Peer to Peer and Distributed Hash Tables
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Scalable Content-Addressable Network Lintao Liu
Peer-to-Peer Systems Chapter 25. What is Peer-to-Peer (P2P)? Napster? Gnutella? Most people think of P2P as music sharing.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
Kademlia: A Peer-to-peer Information System Based on the XOR Metric Petar Mayamounkov David Mazières A few slides are taken from the authors’ original.
P2P Systems and Distributed Hash Tables Section COS 461: Computer Networks Spring 2011 Mike Freedman
CHORD – peer to peer lookup protocol Shankar Karthik Vaithianathan & Aravind Sivaraman University of Central Florida.
Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 22: Overlay Networks Xiaowei Yang
Outline for today Structured overlay as infrastructures Survey of design solutions Analysis of designs.
Application Layer Overlays IS250 Spring 2010 John Chuang.
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
FRIENDS: File Retrieval In a dEcentralized Network Distribution System Steven Huang, Kevin Li Computer Science and Engineering University of California,
P2P: Advanced Topics Filesystems over DHTs and P2P research Vyas Sekar.
Spring 2003CS 4611 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek and Hari alakrishnan.
Object Naming & Content based Object Search 2/3/2003.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.
Wide-area cooperative storage with CFS
1 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
File Sharing : Hash/Lookup Yossi Shasho (HW in last slide) Based on Chord: A Scalable Peer-to-peer Lookup Service for Internet ApplicationsChord: A Scalable.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
CSE 461 University of Washington1 Topic Peer-to-peer content delivery – Runs without dedicated infrastructure – BitTorrent as an example Peer.
Introduction to Peer-to-Peer Networks. What is a P2P network Uses the vast resource of the machines at the edge of the Internet to build a network that.
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
Application Layer – Peer-to-peer UIUC CS438: Communication Networks Summer 2014 Fred Douglas Slides: Fred, Kurose&Ross (sometimes edited)
Security Considerations for Structured p2p Peng Wang 6/04/2003.
Distributed Systems Concepts and Design Chapter 10: Peer-to-Peer Systems Bruce Hammer, Steve Wallis, Raymond Ho.
Introduction to Peer-to-Peer Networks. What is a P2P network A P2P network is a large distributed system. It uses the vast resource of PCs distributed.
Thesis Proposal Data Consistency in DHTs. Background Peer-to-peer systems have become increasingly popular Lots of P2P applications around us –File sharing,
Content Overlays (Nick Feamster). 2 Content Overlays Distributed content storage and retrieval Two primary approaches: –Structured overlay –Unstructured.
Introduction of P2P systems
Peer to Peer Research survey TingYang Chang. Intro. Of P2P Computers of the system was known as peers which sharing data files with each other. Build.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
An Introduction to Peer-to-Peer Networks Presentation for MIE456 - Information Systems Infrastructure II Vinod Muthusamy October 30, 2003.
Security Michael Foukarakis – 13/12/2004 A Survey of Peer-to-Peer Security Issues Dan S. Wallach Rice University,
Hongil Kim E. Chan-Tin, P. Wang, J. Tyra, T. Malchow, D. Foo Kune, N. Hopper, Y. Kim, "Attacking the Kad Network - Real World Evaluation and High.
1 Slides from Richard Yang with minor modification Peer-to-Peer Systems: DHT and Swarming.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
Paper Survey of DHT Distributed Hash Table. Usages Directory service  Very little amount of information, such as URI, metadata, … Storage  Data, such.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
BY: REBECCA NAVARRE & MICHAEL BAKER II Persea: Making Networks More Secure Since Early 2013.
1. Efficient Peer-to-Peer Lookup Based on a Distributed Trie 2. Complex Queries in DHT-based Peer-to-Peer Networks Lintao Liu 5/21/2002.
Protocol Requirements draft-bryan-p2psip-requirements-00.txt D. Bryan/SIPeerior-editor S. Baset/Columbia University M. Matuszewski/Nokia H. Sinnreich/Adobe.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan M. Frans Kaashoek David Karger Robert Morris Ion Stoica MIT LCS.
Bruce Hammer, Steve Wallis, Raymond Ho
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
CS 347Notes081 CS 347: Parallel and Distributed Data Management Notes 08: P2P Systems.
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
Distributed Hash Tables (DHT) Jukka K. Nurminen *Adapted from slides provided by Stefan Götz and Klaus Wehrle (University of Tübingen)
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
Chapter 29 Peer-to-Peer Paradigm Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 24 – Introduction to Peer-to-Peer (P2P) Systems Klara Nahrstedt (presented by Long Vu)
Peer-to-Peer Information Systems Week 12: Naming
Distributed Hash Tables
Building Peer-to-Peer Systems with Chord, a Distributed Lookup Service
P2P Systems and Distributed Hash Tables
MIT LCS Proceedings of the 2001 ACM SIGCOMM Conference
Consistent Hashing and Distributed Hash Table
Peer-to-Peer Information Systems Week 12: Naming
#02 Peer to Peer Networking
Presentation transcript:

1 Distributed Hash Tables (DHTs) Lars Jørgen Lillehovde Jo Grimstad Bang Distributed Hash Tables (DHTs)

2 Background –Distributed Data Structures –Chord, CAN, Pastery, Tapestry –File Sharing Networks –1 st, 2 nd, 3 rd Generation Distributed Hash Tables (DHTs)

3 Overlay networks –Network on top of another network –Provide extra functionality –E.g. Dial-up Internet, VPN, TOR –Bootstrapping node Distributed Hash Tables (DHTs)

4 Hash table –Key-value pair Distributed Hash Tables (DHTs) KeyValue Key1Value1 Key2Value2 Key3Value3

5 Node 2 Node 1 Hash table –Hash table divided on several nodes Distributed Hash Tables (DHTs) KeyValue Key 1-1Value 1-1 Key 1-2Value 1-2 Key 1-3Value 1-3 KeyValue Key 2-1Value 1-1 Key 2-2Value 1-2 Key 2-3Value 1-3 Node 3 KeyValue Key 3-1Value 3-1 Key 3-2Value 3-2 Key 3-3Value 3-3

6 Structure –Key space partitioning –Consistent hashing –Overlay network structure Distributed Hash Tables (DHTs)

7 Chord –The chord ring: modulo 2^m Distributed Hash Tables (DHTs)

8 Chord –Each node has a determined place within the ring –A node has a successor and a predecessor –A node stores the keys between its predecessor and itself –A routing/finger table is used to keep track of the other nodes Distributed Hash Tables (DHTs)

9 Chord Example: Node 8 Key space Distributed Hash Tables (DHTs)

10 Chord –Each node contains a routing table with at most m entries –For j = 1,m -> entry: p+2^(j-1) to closest successor node –Checks if k is found between n and successor of n. If not forward the request to the closest node preceding n –Each node knows a lot of nearby nodes, and a little about far away nodes –The target node will eventually be found after at most (log n) steps Distributed Hash Tables (DHTs)

11 Node 8 Chord Distributed Hash Tables (DHTs) jMaps toReal Node 1x+1N14 2x+2N14 3x+4N14 4x+8N21 5x+16N32 6x+32N42

12 Chord Distributed Hash Tables (DHTs)

13 Functionality –DHT Optimalization –Degrees –Hops –Churn –Replication Distributed Hash Tables (DHTs)

14 Overlay networks in practice –Overlay network definition: Network built on top of another network. –Overlay network examples: – IntServ (Integrated services) – DiffServ (Differentiated services) – IP Multicast – + Improved quality of service – - Require modification Distributed Hash Tables (DHTs)

15 Overlay networks in practice –DHT –Peer-to-peer protocols: – Freenet – I2P – Gnutella – A file sharing network An open protocol used by several clients The most popular file sharing network on the Internet (as of 2007, 40% share) Example client: LimeWire Distributed Hash Tables (DHTs)

16 Overlay networks in practice Gnutella –“Pong” packets – Responses to Ping packets – Pong-caching –Floodsearching – Older Gnutella versions only – Bad scalability – Newer versions: No query flooding Distributed Hash Tables (DHTs)

17 Overlay networks in practice LimeWire –A Gnutella client (became free and opensource in 2001) –LimeWire uses the BitTorrent protocol and the Gnutella network Distributed Hash Tables (DHTs)

18 Example application: DHT in LimeWire –... Distributed Hash Tables (DHTs)

19 Protocols and their implementations –DHTs facilitate complex services and systems: – Distributed file systems – P2P file sharing – Content distribution services – Cooperative web caching – Multicast and anycast – Domain name services – Instant messaging Distributed Hash Tables (DHTs)

20 Protocols and their implementations Some overlay network implementations: – CAN (Content Addressable Network) – Chord – Kademlia (most used DHT, used by BitTorrent and Gnutella) – Pastry – P-Grid – Tapestry The figure illustrates Chord network topology: Bold - The first four implementations (2001) Distributed Hash Tables (DHTs)

21 DHT example application BitTorrent –BitTorrent is the most videly used P2P protocol that supports DHT –One user needs to act as the file-provider – Providing a “seed” –.torrent file with metadata –Peers receives different piece of the file – Initial user is relieved – Peer-to-seed shifts – “Swarm” – BitTorrent tracker assists –Hash has to be known Distributed Hash Tables (DHTs)

22 –... Distributed Hash Tables (DHTs) DHT example application BitTorrent

23 DHT Benefits and Limitations Some wanted properties: Fault-tolerance Locating objects (and quick retrieval) Scalability Incremental deployment Availability and performance (efficiency) Load balancing Data integrity (and quick data storage) Redundancy (replication) Distributed Hash Tables (DHTs)

24 DHT Benefits and Limitations –DHTs work well when executed as intended –Security limitations Distributed Hash Tables (DHTs)

25 DHT Security Considerations –Assumption of trusted nodes! – Behaviour inconsistencies –Peer-to-peer systems must operate even with malicious participants –Anonymity less important in DHTs –Malicious participants – Nodes with malicious intends –Several known DHT attacks – Missing DHT security considerations Distributed Hash Tables (DHTs)

26 DHT Security Considerations The «Sybil» attack... Distributed Hash Tables (DHTs)

27 DHT Security Considerations –«Eclipse» attack – Isolation from benign nodes – “Eclipsed” node –Sybil and Eclipse attacks facilitate other attacks: – Routing attacks Incorrect lookup routing Incorrect routing updates Partitioning - “bootstrapping node” – Storage and retrieval attacks Usage of replicas Distributed Hash Tables (DHTs)

28 DHT Security Considerations Other types of attacks –Inconsistent behaviour – Malicious nodes behaving like benign ones –Overload of targeted nodes (DoS) –Rapid joins and leaves –Rebalancing requires traffic –Joins and leaves in file sharing systems –Unsolicited messages – Use digital signatures or MACs – Use random nonce (preferably) Distributed Hash Tables (DHTs)

29 Questions? –Distributed –Hash –Tables Distributed Hash Tables (DHTs)