Peer-to-Peer and Grid Computing Exercise Session 1 (TUD Student Use Only) ‏

Slides:



Advertisements
Similar presentations
P2P data retrieval DHT (Distributed Hash Tables) Partially based on Hellerstein’s presentation at VLDB2004.
Advertisements

Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Peer to Peer and Distributed Hash Tables
CHORD – peer to peer lookup protocol Shankar Karthik Vaithianathan & Aravind Sivaraman University of Central Florida.
Chord A Scalable Peer-to-peer Lookup Service for Internet Applications Prepared by Ali Yildiz (with minor modifications by Dennis Shasha)
Technische Universität Yimei Liao Chemnitz Kurt Tutschku Vertretung - Professur Rechner- netze und verteilte Systeme Chord - A Distributed Hash Table Yimei.
Node Lookup in Peer-to-Peer Network P2P: Large connection of computers, without central control where typically each node has some information of interest.
Technische Universität Chemnitz Kurt Tutschku Vertretung - Professur Rechner- netze und verteilte Systeme Chord - A Distributed Hash Table Yimei Liao.
The Chord P2P Network Some slides have been borowed from the original presentation by the authors.
CHORD: A Peer-to-Peer Lookup Service CHORD: A Peer-to-Peer Lookup Service Ion StoicaRobert Morris David R. Karger M. Frans Kaashoek Hari Balakrishnan Presented.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Speaker: Cathrin Weiß 11/23/2004 Proseminar Peer-to-Peer Information Systems.
Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M
Chord: A scalable peer-to- peer lookup service for Internet applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashock, Hari Balakrishnan.
1 1 Chord: A scalable Peer-to-peer Lookup Service for Internet Applications Dariotaki Roula
Chord A Scalable Peer-to-peer Lookup Service for Internet Applications
Robert Morris, M. Frans Kaashoek, David Karger, Hari Balakrishnan, Ion Stoica, David Liben-Nowell, Frank Dabek Chord: A scalable peer-to-peer look-up.
Robert Morris, M. Frans Kaashoek, David Karger, Hari Balakrishnan, Ion Stoica, David Liben-Nowell, Frank Dabek Chord: A scalable peer-to-peer look-up protocol.
Peer-to-Peer Distributed Search. Peer-to-Peer Networks A pure peer-to-peer network is a collection of nodes or peers that: 1.Are autonomous: participants.
Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
Introduction to Peer-to-Peer (P2P) Systems Gabi Kliot - Computer Science Department, Technion Concurrent and Distributed Computing Course 28/06/2006 The.
Scalable Resource Information Service for Computational Grids Nian-Feng Tzeng Center for Advanced Computer Studies University of Louisiana at Lafayette.
Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications Stoica et al. Presented by Tam Chantem March 30, 2007.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek and Hari alakrishnan.
Secure Overlay Services Adam Hathcock Information Assurance Lab Auburn University.
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.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications 吳俊興 國立高雄大學 資訊工程學系 Spring 2006 EEF582 – Internet Applications and Services 網路應用與服務.
Wide-area cooperative storage with CFS
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.
Effizientes Routing in P2P Netzwerken Chord: A Scalable Peer-to- peer Lookup Protocol for Internet Applications Dennis Schade.
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment Dewan Tanvir Ahmed and Shervin Shirmohammadi Distributed & Collaborative Virtual.
Content Overlays (Nick Feamster). 2 Content Overlays Distributed content storage and retrieval Two primary approaches: –Structured overlay –Unstructured.
Chord & CFS Presenter: Gang ZhouNov. 11th, University of Virginia.
1 Reading Report 5 Yin Chen 2 Mar 2004 Reference: Chord: A Scalable Peer-To-Peer Lookup Service for Internet Applications, Ion Stoica, Robert Morris, david.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Presentation 1 By: Hitesh Chheda 2/2/2010. Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT Laboratory for Computer Science.
Node Lookup in P2P Networks. Node lookup in p2p networks In a p2p network, each node may provide some kind of service for other nodes and also will ask.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
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.
Chord Advanced issues. Analysis Theorem. Search takes O (log N) time (Note that in general, 2 m may be much larger than N) Proof. After log N forwarding.
Chord Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, Robert E. Gruber Google,
Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 2: Distributed Hash.
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.
Two Peer-to-Peer Networking Approaches Ken Calvert Net Seminar, 23 October 2001 Note: Many slides “borrowed” from S. Ratnasamy’s Qualifying Exam talk.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
CS 347Notes081 CS 347: Parallel and Distributed Data Management Notes 08: P2P Systems.
CS694 - DHT1 Distributed Hash Table Systems Hui Zhang University of Southern California.
Incrementally Improving Lookup Latency in Distributed Hash Table Systems Hui Zhang 1, Ashish Goel 2, Ramesh Govindan 1 1 University of Southern California.
CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) Peer-to-peer Systems All slides © IG.
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.
1 Distributed Hash tables. 2 Overview r Objective  A distributed lookup service  Data items are distributed among n parties  Anyone in the network.
The Chord P2P Network Some slides taken from the original presentation by the authors.
Peer-to-Peer Information Systems Week 12: Naming
The Chord P2P Network Some slides have been borrowed from the original presentation by the authors.
A Scalable Peer-to-peer Lookup Service for Internet Applications
(slides by Nick Feamster)
EE 122: Peer-to-Peer (P2P) Networks
DHT Routing Geometries and Chord
Chord Advanced issues.
Chord Advanced issues.
A Scalable Peer-to-peer Lookup Service for Internet Applications
Peer-to-Peer Information Systems Week 12: Naming
Presentation transcript:

Peer-to-Peer and Grid Computing Exercise Session 1 (TUD Student Use Only) ‏

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Agenda Spieltheorie Chord Byzantinische Generäle

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 3 Dominant Strategy Eine Alternative dominiert eine andere, wenn sie nie schlechter ist, aber manchmal besser.

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Decision Tree Gesamtanzahl an Strategien: S=P1XP2 S={P1-B P2-S, P1-B P2-A, P1-B P2-B, P1-W P2-S, P1-W P2- A, P1-W P2-B} P1-B P2-S 2 P2-AP2-B 02 Beispiel

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Nash Gleichgewicht Nash Player B ABC Player A 118,1815,1910,21 219,1516,1611,15 321,1015,119,9 Im Nash-Gleichgewicht hat keiner der Spieler einen Anreiz, als Einziger von der Gleichgewichtskombination abzuweichen; die Spieler spielen wechselweise beste Erwiderungen.

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord Chord was developed at MIT Originally published in 2001 at Sigcomm conference Chord’s overlay routing principle quite easy to understand –Paper has mathematical proofs of correctness and performance Many projects at MIT around Chord –CFS storage system –Ivy storage system –Plus many others…

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Basics Chord uses SHA-1 hash function –Results in a 160-bit object/node identifier –Same hash function for objects and nodes Node ID hashed from IP address Object ID hashed from object name –Object names somehow assumed to be known by everyone SHA-1 gives a 160-bit identifier space Organized in a ring which wraps around –Nodes keep track of predecessor and successor –Node responsible for objects between its predecessor and itself –Overlay is often called “Chord ring” or “Chord circle”

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Examples Below examples for: –How to join the Chord ring –How to store and retrieve values

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example Setup: Existing network with nodes on 0, 1 and 4 Note: Protocol messages simply examples Many different ways to implement Chord –Here only conceptual example –Covers all important aspects

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Start New node wants to join Hash of the new node: 6 Known node in network: Node1 Contact Node1 –Include own hash

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Situation Before Join Data for ]4;0] Data for ]0;1] Data for ]1;4] No data succ0 succ1 succ4 pred1 pred0 pred4

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Contact known node JOIN 6 Arrows indicate open connections Example assumes connections are kept open, i.e., messages processed recursively Iterative processing is also possible

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Join gets routed along the network JOIN 6

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Successor of New Node Found JOIN 6

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: Joining Successful + Transfer TRANSFER Data in range ]4;6] Joining is successful Old responsible node transfers data that should be in new node New node informs Node4 about new successor (not shown ) Note: Transferring can happen also later

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Joining: Step-By-Step Example: All Is Done succ0 succ1 succ4 pred1 pred0 pred4 pred6 succ6 Data for ]6;0] Data for ]0;1] Data for ]1;4] Data for ]4;6]

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Storing a Value Node 6 wants to store object with name “Foo” and value 5 hash(Foo) =

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Storing a Value STORE 2 5

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Storing a Value STORE 2 5

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Storing a Value STORE 2 5 Value is now stored in node 4.

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Retrieving a Value Node 1 wants to get object with name “Foo” hash(Foo) = 2  Foo is stored on node

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Retrieving a Value RETRIEVE 2

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Retrieving a Value RESULT 5

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Scalable Routing Routing happens by passing message to successor What happens when there are 1 million nodes? –On average, need to route 1/2-way across the ring –In other words, 0.5 million hops! Complexity O(n) How to make routing scalable? Answer: Finger tables Basic Chord keeps track of predecessor and successor Finger tables keep track of more nodes –Allow for faster routing by jumping long way across the ring –Routing scales well, but need more state information Finger tables not needed for correctness, only performance improvement

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Finger Tables In m-bit identifier space, node has up to m fingers Fingers are stored in the finger table Row i in finger table at node n contains first node s that succeeds n by at least 2 i-1 on the ring In other words: finger[i] = successor(n + 2 i-1 ) First finger is the successor Distance to finger[i] is at least 2 i-1

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Scalable Routing Finger intervals increase with distance from node n –If close, short hops –If far, long hops Two key properties: Each node only stores information about a small number of nodes Cannot in general determine the successor of an arbitrary ID Example has three nodes at 0, 1, and 4 3-bit ID space --> 3 rows of fingers StartInt.Succ. 1[1,2)1 2[2,4)4 4[4,0) StartInt.Succ. 2[2,3)4 3[3,5)4 5[5,1)0 StartInt.Succ. 5[5,6)0 6[6,0)0 0[0,4)0

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 Chord: Performance Search performance of “pure” Chord O(n) –Number of nodes is n With finger tables, need O(log n) hops to find the correct node –Fingers separated by at least 2 i-1 –With high probability, distance to target halves at each step –In beginning, distance is at most 2 m –Hence, we need at most m hops For state information, “pure” Chord has only successor and predecessor, O(1) state For finger tables, need m entries –Actually, only O(log n) are distinct –Proof is in the paper

Ubiquitous Peer-to-Peer Infrastructures Group Department of Computer Science Dr. Michael Welzl P2P and Grid Computing WS 07/08 29 Questions?