Securing Chord for ShadowWalker. Nandit Tiku Department of Computer Science University of Illinois at Urbana-Champaign
|
|
- Gloria Tucker
- 6 years ago
- Views:
Transcription
1 Securing Chord for ShadowWalker Nandit Tiku Department of Computer Science University of Illinois at Urbana-Champaign
2 ABSTRACT Peer to Peer anonymous communication promises to eliminate issues of scalability and single points of failure. ShadowWalker[1] proposed by Prateek Mittal and Prof. Nikita Borisov tackles this problem. However, the underlying DHT being used, Chord[2], can be made more secure and stable for use with ShadowWalker[1]. In this paper, we demonstrate ways to make Chord[2] more secure. We calculate the benefits of maintaining successor and predecessor lists and not just the immediate successor and predecessor. We provide an efficient algorithm to deal with stabilizing these lists and ensuring that the node values are as close to the current network. We use redundancy to validate the shadows of a given node using our secure application level lookups. We use Chord[2], to perform secure DHT level lookups and demonstrate how redundancy can be used to reduce the threat of application level attacks. We also show that NISAN[3] protocol can be used to efficiently and successfully secure Chord[2] preventing DHT level attacks. Finally we provide ways to authenticate the identity of the nodes and ensure secure communication between nodes. performing secure application level lookups. We also show how NISAN[3] can be used to secure the DHT. Having both secure application level and DHT level lookups address the issues with ShadowWalker[1] as pointed out in Balancing the Shadows[4]. Finally, we provide suggestions for authenticating nodes and performing secure communications between nodes. 1.1 Terms rlookup : Redundancy parameter for secure lookups. rsucc : Redundancy parameter for successor list and predecessor list stabilization. 2. Secure Stabilize Successor and Predecessor Lists ShadowWalker[1] utilizes a single successor and a single predecessor. This can easily be exploited by a malicious party. 2.1 Current ShadowWalker Implementation 1. INTRODUCTION The paper is broken down into four parts. The first part addresses the inherent issue with having only a single successor and a single predecessor. We suggest a simple algorithm for securely stabilizing a successor list and predecessor list. Next, we address Figure 1: Identifying new predecessor A sends stabilize request to B; i.e, A contacts B to check if A is still its predecessor. 1. B replies with its successor list which contains its immediate predecessor. 2 of 9
3 2. Two scenarios: A is still the predecessor of B. If a new node C is now the predecessor of B, A needs to contact C to notify it that A is its predecessor. 3. A notifies its immediate successor that A is its predecessor. The immediate successor (B or C) updates its successor list, and predecessor accordingly. 4. A updates its successor list accordingly. 2.2 Weakness of Current Implementation If node B is malicious, then it can return incorrect successor list data to A. We need to verify that the information sent by B is correct. Moreover, all communication between the nodes are in plain-text. This issue is addressed in Section 5. Messages can easily be intercepted and altered. We need to encrypt all traffic between nodes during stabilization. 2.3 Proposal for Secure Stabilization 1. Each node keeps track of its m successors and m predecessors. 2. On receiving the stabilize_reply from B, we use the information returned and redundantly verify its correctness. We check every node in the successor list of B and make a request to obtain their respective predecessor list and successor list. 3. We then perform a smart merge on these lists. We use the algorithm described in Section 2.4 to securely stabilize both the successor and predecessor lists. 2.4 Algorithm 1. Send request to first rsucc successors of the node where 1 <= rsucc <= m. 2. Reducing rsucc is a speed vs security tradeoff. 3. Find union of the successor list and predecessor list. 4. Only consider nodes with ID > ID of A. 5. Sort the list by id and authenticate nodes. Authenticate pings(tcp) as well as verifies ID to IP address mapping. See Section 3 for more information. 2.5 Pseudo Code /* Global variables */ node* possiblesuccessors = {} int m int rsucc = m /* Send stabilize request to nodes */ stabilizesuccessorlistrequest(): // reset possiblesuccessors possiblesuccessors = {} // Obtain the successorlist and // predecessorlist of first rsucc nodes in the // current successor list for first rsucc nodes in stabilize_list as node: // send get succ & pred list getsuccandpredrequest(node) // call stabilizesuccessorlist after timeout set_timeout (stabilizesuccessorlist, timeout) /* Called after timeout or after obtaining response from nodes */ stabilizesuccessorlist (): // let us sort possiblesuccessors by node ids sort(possiblesuccessors) Remove(possibleSuccessors, greaterthan(myid)) 3 of 9
4 node * succlist = {} // m is the number of nodes we want in our successor // list for node in possiblesuccessors while succlist.size() < m : if (authenticate(node)) : succlist.insert(node) updatepublickeymap(node) // create another stabilize request after some time delay_cb (stabilizesuccessorlistrequest(), time) /* Create get succ and pred request request */ getsuccandpredrequest(node): sendgetsuccandpredrequest (node) 3. Secure Application level lookup ShadowWalker[1] relies heavily on the underlying DHT to perform lookups. When looking for a particular ID, it simply queries its finger table for that ID. 3.1 Weakness of Current Implementation A malicious node in our path could give us incorrect node information or even drop our requests. A network with sufficient number of malicious nodes can perform DoS attacks and greatly compromise privacy and security. /* On receiving request, return requested data. */ getsuccandpredreceive(node): SendSuccAndPredList(node, succlist, predlist) /* On receiving succ and pred lists */ receivesuccandpredlist(listinfo): possiblesuccessors = set_union(possiblesuccessors, listinfo) 3.2 Proposal for Secure Lookup We use a redundancy parameter rlookup to create multiple lookup paths. We then use the information returned and pick the nodeid closest to the ID we were looking for(after authentication). 1 < rlookup < m 2.6 Node Behavior Non malicious nodes return their successor and predecessor lists correctly. Malicious nodes perform a selective DoS attack on nodes by not returning nonmalicious nodes in their successor and predecessor lists. They can include other malicious nodes in their successor and predecessor lists or return non existent node IDs. The redundancy deals with the selective DoS attack and the authentication step described in Section 3 deals with non-existent node IDs. 3.3 Algorithm 1. Send lookup requests to rlookup random nodes in finger table. 2. Wait for a given time period for responses. 3. Combine all the information and pick the node ID closest to the requested ID (after authentication). 4 of 9
5 3.3 Pseudo-Code securelookup(): // Send lookup request to rlookup random nodes in my current finger table. securelookuprequest(): // if looking for myself, i can just set up a lookup reply // with my data. if(lookupid == me): secure_lookupreply(mydata, lookuprequester) // check if node is in my successor list else if(lookupid = in successor list): secure_lookupreply(nodedata, lookuprequester) // propagate message down the finger table else: securelookuprequest( closestnodeinfingertable ) Fig3: Successful lookups vs malicious nodes in network Using successor list size = 2m securelookupreply(): // check if new nodeid returned is more accurate than // current nodeid in fingertable. 3.4 Node Behavior Non malicious nodes return the node ID closest to the requested node or propagate the request down their finger table. Malicious nodes either perform a DoS attack and not respond or return an ID to a malicious node closest to the requested ID in an attempt to attack the node. Fig2: Lookup Failure vs malicious nodes in network. Bigger successor list sizes result in secure lookups. Due to the secure stabilize of our successor and predecessor lists, we can obtain ~10% increase in successful lookups. 5 of 9
6 4. Secure DHT level lookups ShadowWalker[1] uses Chord[2] to create random walks to ensure anonymous communication. We need to ensure that the fingers maintained by the nodes are accurate and do not contain malicious nodes. We use redundancy to try to secure our DHT. We will discuss two methods: partial NISAN[3] (without bounds check), and NISAN[3] (with bounds check). We will also outline the benefits of having a successor list over a single successor. 5. Once we notice that the α closest nodes to X have not changed through an iteration we choose the closest node to X. This is the node we are looking for. 4.1 Partial NISAN (without bounds check) Using simple redundancy to stabilize the finger table is ineffective. Eventually all the fingers in the finger table get poisoned. We can use an aggregated greedy search as suggested in NISAN[3]. We first demonstrate the benefits of having a successor list for stabilizing our DHT by using only the aggregated greedy search part of the NISAN[3] protocol, i.e, we do not perform bounds check. Fig4. DHT level attack on partial NISAN protocol. Using a successor list of size 2m Demonstrates benefits of a successor list Algorithm 1. We use redundancy parameter α. 2. We choose α closest nodes to our query id X from our finger table. 3. We send a request to these α nodes for their finger tables and successor lists. 4. We combine the finger table information returned from these α nodes and then repeat the process from step 2 (but this time using this new set of finger information and not our original finger table). Fig5. DHT level attack on partial NISAN protocol. Successor list not used. 6 of 9
7 4.1.2 Node Behavior Non malicious nodes return their finger table and successor list. Malicious nodes return a malicious finger table and malicious successor list. The list returned contains the closest malicious node ID in the network to the expected ID in the list. The finger table and successor list returned contain only malicious nodes. 4.2 NISAN (with bounds check) NISAN[3] without bounds check does not do a very good job protecting against DHT level attacks. By adding the bounds check and using the complete NISAN[3] protocol, we can efficiently and effectively secure DHT level lookups. 5. Node Authentication and additional security measures 5.1 Node Authentication Malicious nodes can return invalid node IDs in an attempt to poison our successor list, predecessor list and/or finger table. We need to verify that a node ID corresponds to a valid node in the network. 5.2 Algorithm: 1. Make sure that the id to IP address mapping is correct using a hashing function like SHA or MD5. 2. Ping node to check if node is alive or exists. This is also coupled with requesting the fingerprint of the ssh key. 3. Obtain public key of the node. 5.3 Pseudo-Code: authenticate (node): // confirm that nodes IP address maps to nodes id if ( node.id!= hash(node.ipaddress) ): return false // application level 3-way handshake pingrequestfingerprint(node.ipaddress) Fig 6. NISAN protocol used to secure stabilize DHT. Simulated on a network of 10,000 nodes. Node behavior and set up are the same as described in Section 4.1. FT (α) is the fault tolerance factor for bounds check as described in NISAN[3]. updatenodestatus(node, authenticating) wait(time) if ( getstatus ( node ) == alive ): if (authentication_t.getfingerprint(node)!= obtainedfingerprint ): updatepublickeymap(node) return true else: return false 7 of 9
8 5.4 Public Keys We can simply request the public key from the node and trust the information returned. However, this can lead to a number of attacks. This is an open issue for now. We assume that the bootstrap server has returned accurate and valid public key information during initialization of the node. Section describes how we can securely obtain a new public key. We use the public key encryption to securely communicate between nodes in the network. This adds additional security to ShadowWalker[1]. Nodes in the finger table, successor list and predecessor list are periodically pinged to check their status. If nodes are alive, they also return the fingerprint of their ssh key. Fingerprint information can be used in two ways. Since ssh keys do not change very often, this information can be used to verify the authenticity of the information returned. A simple sequence number or authentication code encrypted with the nodes public key can be used. The fingerprint returned can also be used to verify that we have the latest ssh keys for the nodes we are aware of. including their public keys. Using simple redundancy, and secure communication using public key encryption we can verify the authenticity of the change of a nodes public key. 6. Concluding Remarks ShadowWalker[1] can be made more secure by securing the underlying DHT (Chord[2]). The use of successor and predecessor lists can be used to both securely find shadows and to securely stabilize the finger tables. Using simple redundancy, we can efficiently and effectively protect against application level attacks. NISAN[3] protocol can be used to prevent against both application and DHT level attacks Change in Public Keys A node will broadcast its new public key to nodes in the network, especially nodes in its predecessor and successor list (the shadows in ShadowWalker[1]). We can then verify a change in ssh key by communicating with a nodes shadow and requesting the new ssh key or fingerprint. The shadows now also have to maintain public key information. By Property 1 of ShadowWalker[1], a node already has information about the shadows 8 of 9
9 REFERENCES [1] Prateek Mittal and Nikita Borisov. ShadowWalker: Peer-to-peer Anonymous Communication Using Redundant Structures Topologies. CCS'09, November 9-13, 2009 [2] I. Stoica, R. Morris, D. Liben-Nowell, D. R. Karger, M. F. Kaashoek, F. Dabek, and H. Balakrishnan. Chord: a scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw., 11(1):17 32, [3] Andriy Panchenko, Stefan Richter, and Arne Rache NISAN: network information service for anonymization networks. In Proceedings of the 16th ACM conference on Computer and communications security (CCS '09). [4] Max Schuchard, Alexander W. Dean, Victor Heorhiadi, Nicholas Hopper, and Yongdae Kim Balancing the shadows. In Proceedings of the 9th annual ACM workshop on Privacy in the electronic society (WPES '10). 9 of 9
08 Distributed Hash Tables
08 Distributed Hash Tables 2/59 Chord Lookup Algorithm Properties Interface: lookup(key) IP address Efficient: O(log N) messages per lookup N is the total number of servers Scalable: O(log N) state per
More information: Scalable Lookup
6.824 2006: Scalable Lookup Prior focus has been on traditional distributed systems e.g. NFS, DSM/Hypervisor, Harp Machine room: well maintained, centrally located. Relatively stable population: can be
More informationDISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS
DISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS Mr. M. Raghu (Asst.professor) Dr.Pauls Engineering College Ms. M. Ananthi (PG Scholar) Dr. Pauls Engineering College Abstract- Wireless
More informationChord : A Scalable Peer-to-Peer Lookup Protocol for Internet Applications
: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M. Frans Kaashock, Frank Dabek, Hari Balakrishnan March 4, 2013 One slide
More informationChord: A Scalable Peer-to-peer Lookup Service For Internet Applications
Chord: A Scalable Peer-to-peer Lookup Service For Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan Presented by Jibin Yuan ION STOICA Professor of CS
More informationScalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou
Scalability In Peer-to-Peer Systems Presented by Stavros Nikolaou Background on Peer-to-Peer Systems Definition: Distributed systems/applications featuring: No centralized control, no hierarchical organization
More informationChord. Advanced issues
Chord Advanced issues Analysis Theorem. Search takes O (log N) 5me (Note that in general, when there are m fingers, 2 m may be much larger than N) Proof. A(er log N forwarding steps, distance to key is
More informationBuilding a low-latency, proximity-aware DHT-based P2P network
Building a low-latency, proximity-aware DHT-based P2P network Ngoc Ben DANG, Son Tung VU, Hoai Son NGUYEN Department of Computer network College of Technology, Vietnam National University, Hanoi 144 Xuan
More informationNodeId Verification Method against Routing Table Poisoning Attack in Chord DHT
NodeId Verification Method against Routing Table Poisoning Attack in Chord DHT 1 Avinash Chaudhari, 2 Pradeep Gamit 1 L.D. College of Engineering, Information Technology, Ahmedabad India 1 Chaudhari.avi4u@gmail.com,
More informationDistributed Hash Tables
Distributed Hash Tables Chord Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi Chord 1/29 Outline Overview 1 Overview 2 3 Smruti R. Sarangi
More informationFinding Data in the Cloud using Distributed Hash Tables (Chord) IBM Haifa Research Storage Systems
Finding Data in the Cloud using Distributed Hash Tables (Chord) IBM Haifa Research Storage Systems 1 Motivation from the File Systems World The App needs to know the path /home/user/my pictures/ The Filesystem
More informationA Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables
A Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables Takehiro Miyao, Hiroya Nagao, Kazuyuki Shudo Tokyo Institute of Technology 2-12-1 Ookayama, Meguro-ku,
More informationBack-Up Chord: Chord Ring Recovery Protocol for P2P File Sharing over MANETs
Back-Up Chord: Chord Ring Recovery Protocol for P2P File Sharing over MANETs Hong-Jong Jeong, Dongkyun Kim, Jeomki Song, Byung-yeub Kim, and Jeong-Su Park Department of Computer Engineering, Kyungpook
More informationProviding File Services using a Distributed Hash Table
Providing File Services using a Distributed Hash Table Lars Seipel, Alois Schuette University of Applied Sciences Darmstadt, Department of Computer Science, Schoefferstr. 8a, 64295 Darmstadt, Germany lars.seipel@stud.h-da.de
More informationFinding Data in the Cloud using Distributed Hash Tables (Chord) IBM Haifa Research Storage Systems
Finding Data in the Cloud using Distributed Hash Tables (Chord) IBM Haifa Research Storage Systems 1 In File Systems The App needs to know the path /home/user/my pictures/ The Filesystem looks up the directory
More informationSimulations of Chord and Freenet Peer-to-Peer Networking Protocols Mid-Term Report
Simulations of Chord and Freenet Peer-to-Peer Networking Protocols Mid-Term Report Computer Communications and Networking (SC 546) Professor D. Starobinksi Brian Mitchell U09-62-9095 James Nunan U38-03-0277
More informationOctopus: A Secure and Anonymous DHT Lookup
Octopus A Secure and Anonymous DHT Lookup Qiyan Wang Department of Computer Science University of Illinois at Urbana-Champaign IL, U.S.A qwang26@illinois.edu Nikita Borisov Department of Electrical and
More informationRouting Table Construction Method Solely Based on Query Flows for Structured Overlays
Routing Table Construction Method Solely Based on Query Flows for Structured Overlays Yasuhiro Ando, Hiroya Nagao, Takehiro Miyao and Kazuyuki Shudo Tokyo Institute of Technology Abstract In structured
More informationTinyTorrent: Implementing a Kademlia Based DHT for File Sharing
1 TinyTorrent: Implementing a Kademlia Based DHT for File Sharing A CS244B Project Report By Sierra Kaplan-Nelson, Jestin Ma, Jake Rachleff {sierrakn, jestinm, jakerach}@cs.stanford.edu Abstract We implemented
More informationCS 347 Parallel and Distributed Data Processing
CS 347 Parallel and Distributed Data Processing Spring 2016 Notes 9: Peer-to-Peer Systems Previous Topics Data Database design Queries Query processing Localization Operators Optimization Transactions
More informationEarly Measurements of a Cluster-based Architecture for P2P Systems
Early Measurements of a Cluster-based Architecture for P2P Systems Balachander Krishnamurthy, Jia Wang, Yinglian Xie I. INTRODUCTION Peer-to-peer applications such as Napster [4], Freenet [1], and Gnutella
More informationLecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011
Lecture 6: Overlay Networks CS 598: Advanced Internetworking Matthew Caesar February 15, 2011 1 Overlay networks: Motivations Protocol changes in the network happen very slowly Why? Internet is shared
More informationLECT-05, S-1 FP2P, Javed I.
A Course on Foundations of Peer-to-Peer Systems & Applications LECT-, S- FPP, javed@kent.edu Javed I. Khan@8 CS /99 Foundation of Peer-to-Peer Applications & Systems Kent State University Dept. of Computer
More informationDistributed K-Ary System
A seminar presentation Arne Vater and Prof. Schindelhauer Professorship for Computer Networks and Telematik Department of Computer Science University of Freiburg 2007-03-01 Outline 1 2 3 4 5 Outline 1
More informationPage 1. How Did it Start?" Model" Main Challenge" CS162 Operating Systems and Systems Programming Lecture 24. Peer-to-Peer Networks"
How Did it Start?" CS162 Operating Systems and Systems Programming Lecture 24 Peer-to-Peer Networks" A killer application: Napster (1999) Free music over the Internet Key idea: share the storage and bandwidth
More informationArchitectures for Distributed Systems
Distributed Systems and Middleware 2013 2: Architectures Architectures for Distributed Systems Components A distributed system consists of components Each component has well-defined interface, can be replaced
More informationTelematics Chapter 9: Peer-to-Peer Networks
Telematics Chapter 9: Peer-to-Peer Networks Beispielbild User watching video clip Server with video clips Application Layer Presentation Layer Application Layer Presentation Layer Session Layer Session
More informationIntroduction to P2P Computing
Introduction to P2P Computing Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Introduction A. Peer-to-Peer vs. Client/Server B. Overlay Networks 2. Common Topologies 3. Data Location 4. Gnutella
More informationP2P Network Structured Networks: Distributed Hash Tables. Pedro García López Universitat Rovira I Virgili
P2P Network Structured Networks: Distributed Hash Tables Pedro García López Universitat Rovira I Virgili Pedro.garcia@urv.net Index Description of CHORD s Location and routing mechanisms Symphony: Distributed
More informationL3S Research Center, University of Hannover
, University of Hannover Dynamics of Wolf-Tilo Balke and Wolf Siberski 21.11.2007 *Original slides provided by S. Rieche, H. Niedermayer, S. Götz, K. Wehrle (University of Tübingen) and A. Datta, K. Aberer
More informationEffect of Links on DHT Routing Algorithms 1
Effect of Links on DHT Routing Algorithms 1 Futai Zou, Liang Zhang, Yin Li, Fanyuan Ma Department of Computer Science and Engineering Shanghai Jiao Tong University, 200030 Shanghai, China zoufutai@cs.sjtu.edu.cn
More informationPeer-to-Peer Systems and Distributed Hash Tables
Peer-to-Peer Systems and Distributed Hash Tables CS 240: Computing Systems and Concurrency Lecture 8 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Selected
More informationPeer-to-Peer Systems and Security
Peer-to-Peer Systems and Security Attacks! Christian Grothoff Technische Universität München April 13, 2013 Salsa & AP3 Goal: eliminate trusted blender server Idea: Use DHT (AP3: Pastry, Salsa: custom
More informationScalable Anonymous Communication with Provable Security
Scalable Anonymous Communication with Provable Security Prateek Mittal, Nikita Borisov Dept. of Electrical and Computer Engineering, U. of Illinois at Urbana-Champaign, {mittal2,nikita}@illinois.edu Carmela
More informationDRing: A Layered Scheme for Range Queries over DHTs
DRing: A Layered Scheme for Range Queries over DHTs Nicolas Hidalgo, Erika Rosas, Luciana Arantes, Olivier Marin, Pierre Sens and Xavier Bonnaire Université Pierre et Marie Curie, CNRS INRIA - REGAL, Paris,
More informationPeer-to-peer systems and overlay networks
Complex Adaptive Systems C.d.L. Informatica Università di Bologna Peer-to-peer systems and overlay networks Fabio Picconi Dipartimento di Scienze dell Informazione 1 Outline Introduction to P2P systems
More informationSemester Thesis on Chord/CFS: Towards Compatibility with Firewalls and a Keyword Search
Semester Thesis on Chord/CFS: Towards Compatibility with Firewalls and a Keyword Search David Baer Student of Computer Science Dept. of Computer Science Swiss Federal Institute of Technology (ETH) ETH-Zentrum,
More informationCS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [P2P SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Byzantine failures vs malicious nodes
More informationShadowWalker: Peer-to-peer Anonymous Communication Using Redundant Structured Topologies
ShadowWalker: Peer-to-peer Anonymous Communication Using Redundant Structured Topologies ABSTRACT Prateek Mittal Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign
More informationChord: A Scalable Peer-to-peer Lookup Service for Internet Applications
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan Presented by Veranika Liaukevich Jacobs University
More informationSaarland University Faculty of Natural Sciences and Technology I Department of Computer Science. Masters Thesis
Saarland University Faculty of Natural Sciences and Technology I Department of Computer Science Masters Thesis Experimental Comparison of Byzantine Fault Tolerant Distributed Hash Tables submitted by Supriti
More informationP2P: Distributed Hash Tables
P2P: Distributed Hash Tables Chord + Routing Geometries Nirvan Tyagi CS 6410 Fall16 Peer-to-peer (P2P) Peer-to-peer (P2P) Decentralized! Hard to coordinate with peers joining and leaving Peer-to-peer (P2P)
More informationMarch 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE
for for March 10, 2006 Agenda for Peer-to-Peer Sytems Initial approaches to Their Limitations CAN - Applications of CAN Design Details Benefits for Distributed and a decentralized architecture No centralized
More informationDetecting and Recovering from Overlay Routing. Distributed Hash Tables. MS Thesis Defense Keith Needels March 20, 2009
Detecting and Recovering from Overlay Routing Attacks in Peer-to-Peer Distributed Hash Tables MS Thesis Defense Keith Needels March 20, 2009 Thesis Information Committee: Chair: Professor Minseok Kwon
More informationSecure Routing in Peer-to-Peer Distributed Hash Tables
Secure Routing in Peer-to-Peer Distributed Hash Tables Keith Needels Department of Computer Science Rochester Institute of Technology Rochester, NY 14623 keithn@csh.rit.edu Minseok Kwon Department of Computer
More informationDistributed Systems. 17. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2016
Distributed Systems 17. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2016 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can
More informationL3S Research Center, University of Hannover
, University of Hannover Structured Peer-to to-peer Networks Wolf-Tilo Balke and Wolf Siberski 3..6 *Original slides provided by K. Wehrle, S. Götz, S. Rieche (University of Tübingen) Peer-to-Peer Systems
More informationAthens University of Economics and Business. Dept. of Informatics
Athens University of Economics and Business Athens University of Economics and Business Dept. of Informatics B.Sc. Thesis Project report: Implementation of the PASTRY Distributed Hash Table lookup service
More informationToday. Why might P2P be a win? What is a Peer-to-Peer (P2P) system? Peer-to-Peer Systems and Distributed Hash Tables
Peer-to-Peer Systems and Distributed Hash Tables COS 418: Distributed Systems Lecture 7 Today 1. Peer-to-Peer Systems Napster, Gnutella, BitTorrent, challenges 2. Distributed Hash Tables 3. The Chord Lookup
More informationEECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Overlay Networks: Motivations
EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley
More informationContent Overlays. Nick Feamster CS 7260 March 12, 2007
Content Overlays Nick Feamster CS 7260 March 12, 2007 Content Overlays Distributed content storage and retrieval Two primary approaches: Structured overlay Unstructured overlay Today s paper: Chord Not
More informationIn Search of an Anonymous and Secure Lookup
In Search of an Anonymous and Secure Lookup Attacks on Structured Peer-to-Peer Anonymous Communication Systems Qiyan Wang UIUC qwang26@illinois.edu Prateek Mittal UIUC mittal2@illinois.edu Nikita Borisov
More informationDistributed Hash Table
Distributed Hash Table P2P Routing and Searching Algorithms Ruixuan Li College of Computer Science, HUST rxli@public.wh.hb.cn http://idc.hust.edu.cn/~rxli/ In Courtesy of Xiaodong Zhang, Ohio State Univ
More informationDistributed Hash Tables
Distributed Hash Tables CS6450: Distributed Systems Lecture 11 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University.
More informationEE 122: Peer-to-Peer Networks
EE 122: Peer-to-Peer Networks Ion Stoica (and Brighten Godfrey) TAs: Lucian Popa, David Zats and Ganesh Ananthanarayanan http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer
More informationSubway : Peer-To-Peer Clustering of Clients for Web Proxy
Subway : Peer-To-Peer Clustering of Clients for Web Proxy Kyungbaek Kim and Daeyeon Park Department of Electrical Engineering & Computer Science, Division of Electrical Engineering, Korea Advanced Institute
More informationDynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others
Dynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others Sabina Serbu, Silvia Bianchi, Peter Kropf and Pascal Felber Computer Science Department, University of Neuchâtel
More informationEffects of Churn on Structured P2P Overlay Networks
International Conference on Automation, Control, Engineering and Computer Science (ACECS'14) Proceedings - Copyright IPCO-214, pp.164-17 ISSN 2356-568 Effects of Churn on Structured P2P Overlay Networks
More informationEFFICIENT ROUTING OF LOAD BALANCING IN GRID COMPUTING
EFFICIENT ROUTING OF LOAD BALANCING IN GRID COMPUTING MOHAMMAD H. NADIMI-SHAHRAKI*, FARAMARZ SAFI, ELNAZ SHAFIGH FARD Department of Computer Engineering, Najafabad branch, Islamic Azad University, Najafabad,
More informationSecurity for Structured Peer-to-peer Overlay Networks. Acknowledgement. Outline. By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818
Security for Structured Peer-to-peer Overlay Networks By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818 1 Acknowledgement Some of the following slides are borrowed from talks by Yun Mao
More informationTopics in P2P Networked Systems
600.413 Topics in P2P Networked Systems Week 3 Applications Andreas Terzis Slides from Ion Stoica, Robert Morris 600.413 Spring 2003 1 Outline What we have covered so far First generation file-sharing
More informationA Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery
A Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery Shawn Chen 1, Steve Liang 2 1 Geomatics, University of Calgary, hschen@ucalgary.ca 2 Geomatics, University of Calgary, steve.liang@ucalgary.ca
More informationCSE 486/586 Distributed Systems
CSE 486/586 Distributed Systems Distributed Hash Tables Slides by Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586 Last Time Evolution of peer-to-peer Central directory (Napster)
More informationPEER-TO-PEER NETWORKS, DHTS, AND CHORD
PEER-TO-PEER NETWORKS, DHTS, AND CHORD George Porter May 25, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license
More informationFault Resilience of Structured P2P Systems
Fault Resilience of Structured P2P Systems Zhiyu Liu 1, Guihai Chen 1, Chunfeng Yuan 1, Sanglu Lu 1, and Chengzhong Xu 2 1 National Laboratory of Novel Software Technology, Nanjing University, China 2
More informationSmall-World Overlay P2P Networks: Construction and Handling Dynamic Flash Crowd
Small-World Overlay P2P Networks: Construction and Handling Dynamic Flash Crowd Ken Y.K. Hui John C. S. Lui David K.Y. Yau Dept. of Computer Science & Engineering Computer Science Department The Chinese
More informationThree Layer Hierarchical Model for Chord
Three Layer Hierarchical Model for Chord Waqas A. Imtiaz, Shimul Shil, A.K.M Mahfuzur Rahman Abstract Increasing popularity of decentralized Peer-to-Peer (P2P) architecture emphasizes on the need to come
More informationChord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 11, NO. 1, FEBRUARY 2003 17 Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger,
More informationCompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang
CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4 Xiaowei Yang xwy@cs.duke.edu Overview Problem Evolving solutions IP multicast Proxy caching Content distribution networks
More informationGoals. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Solution. Overlay Networks: Motivations.
Goals CS : Introduction to Computer Networks Overlay Networks and PP Networks Ion Stoica Computer Science Division Department of lectrical ngineering and Computer Sciences University of California, Berkeley
More informationDistributed Systems. 16. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2017
Distributed Systems 16. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2017 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can
More informationIntroduction to Peer-to-Peer Systems
Introduction Introduction to Peer-to-Peer Systems Peer-to-peer (PP) systems have become extremely popular and contribute to vast amounts of Internet traffic PP basic definition: A PP system is a distributed
More informationSearching for Shared Resources: DHT in General
1 ELT-53206 Peer-to-Peer Networks Searching for Shared Resources: DHT in General Mathieu Devos Tampere University of Technology Department of Electronics and Communications Engineering Based on the original
More informationOverlay Networks: Motivations. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Motivations (cont d) Goals.
Overlay Networks: Motivations CS : Introduction to Computer Networks Overlay Networks and PP Networks Ion Stoica Computer Science Division Department of lectrical ngineering and Computer Sciences University
More informationSearching for Shared Resources: DHT in General
1 ELT-53207 P2P & IoT Systems Searching for Shared Resources: DHT in General Mathieu Devos Tampere University of Technology Department of Electronics and Communications Engineering Based on the original
More informationAPSALAR: Ad hoc Protocol for Service-Aligned Location Aware Routing
APSALAR: Ad hoc Protocol for Service-Aligned Location Aware Routing ABSTRACT Warren Kenny Distributed Systems Group Department of Computer Science Trinity College, Dublin, Ireland kennyw@cs.tcd.ie Current
More informationPage 1. Key Value Storage"
Key Value Storage CS162 Operating Systems and Systems Programming Lecture 14 Key Value Storage Systems March 12, 2012 Anthony D. Joseph and Ion Stoica http://inst.eecs.berkeley.edu/~cs162 Handle huge volumes
More informationCS 640 Introduction to Computer Networks. Today s lecture. What is P2P? Lecture30. Peer to peer applications
Introduction to Computer Networks Lecture30 Today s lecture Peer to peer applications Napster Gnutella KaZaA Chord What is P2P? Significant autonomy from central servers Exploits resources at the edges
More informationLecture 15 October 31
CS559: ALGORITHMIC ASPECTS OF COMPUTER NETWORKSFall 2007 Lecture 15 October 31 Lecturer: John Byers BOSTON UNIVERSITY Scribe: Georgios Smaragdakis In today s lecture, we elaborate more on structured eer-to-eer
More informationPeer-to-Peer (P2P) Systems
Peer-to-Peer (P2P) Systems What Does Peer-to-Peer Mean? A generic name for systems in which peers communicate directly and not through a server Characteristics: decentralized self-organizing distributed
More informationChord-based Key Establishment Schemes for Sensor Networks
Chord-based Key Establishment Schemes for Sensor Networks Fan Zhang, Zhijie Jerry Shi, Bing Wang Department of Computer Science and Engineering, University of Connecticut, Storrs, CT 06269 Abstract Because
More informationA Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol
A Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol Min Li 1, Enhong Chen 1, and Phillip C-y Sheu 2 1 Department of Computer Science and Technology, University of Science and Technology of China,
More informationDistributed Hash Tables: Chord
Distributed Hash Tables: Chord Brad Karp (with many slides contributed by Robert Morris) UCL Computer Science CS M038 / GZ06 12 th February 2016 Today: DHTs, P2P Distributed Hash Tables: a building block
More informationInformation Leak in the Chord Lookup Protocol
Information Leak in the Chord Lookup Protocol Charles W. O Donnell Vinod Vaikuntanathan Massachusetts Institute of Technology August 25, 2004 4 th IEEE International Conference on Peer-to-Peer Computing
More informationMULTI-DOMAIN VoIP PEERING USING OVERLAY NETWORK
116 MULTI-DOMAIN VoIP PEERING USING OVERLAY NETWORK Herry Imanta Sitepu, Carmadi Machbub, Armein Z. R. Langi, Suhono Harso Supangkat School of Electrical Engineering and Informatics, Institut Teknologi
More informationSecurity Considerations for Peer-to-Peer Distributed Hash Tables
Security Considerations for Peer-to-Peer Distributed Hash Tables Emil Sit and Robert Morris Laboratory for Computer Science, MIT 200 Technology Square, Cambridge, MA 02139, USA {sit,rtm}@lcs.mit.edu Abstract.
More informationPeer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today
Network Science: Peer-to-Peer Systems Ozalp Babaoglu Dipartimento di Informatica Scienza e Ingegneria Università di Bologna www.cs.unibo.it/babaoglu/ Introduction Peer-to-peer (PP) systems have become
More informationDegree Optimal Deterministic Routing for P2P Systems
Degree Optimal Deterministic Routing for P2P Systems Gennaro Cordasco Luisa Gargano Mikael Hammar Vittorio Scarano Abstract We propose routing schemes that optimize the average number of hops for lookup
More informationUnderstanding Chord Performance
CS68 Course Project Understanding Chord Performance and Topology-aware Overlay Construction for Chord Li Zhuang(zl@cs), Feng Zhou(zf@cs) Abstract We studied performance of the Chord scalable lookup system
More informationComparing the performance of distributed hash tables under churn
Comparing the performance of distributed hash tables under churn Jinyang Li, Jeremy Stribling, Thomer M. Gil, Robert Morris, M. Frans Kaashoek MIT Computer Science and Artificial Intelligence Laboratory
More informationMalugo: A peer-to-peer storage system
Int. J. Ad Hoc and Ubiquitous Computing, Vol. 5, No. 4, 2010 209 Malugo: A peer-to-peer storage system Yu-Wei Chan, Tsung-Hsuan Ho, Po-Chi Shih and Yeh-Ching Chung* Department of Computer Science, National
More informationR/Kademlia: Recursive and Topology-aware Overlay Routing
R/Kademlia: Recursive and Topology-aware Overlay Routing Bernhard Heep ATNAC 2010, Auckland, New Zealand, 11/02/2010, KIT University of the State of Baden-Wuerttemberg and National Research Center of the
More informationDYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS
DYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS Herwig Unger Markus Wulff Department of Computer Science University of Rostock D-1851 Rostock, Germany {hunger,mwulff}@informatik.uni-rostock.de KEYWORDS P2P,
More informationProblems in Reputation based Methods in P2P Networks
WDS'08 Proceedings of Contributed Papers, Part I, 235 239, 2008. ISBN 978-80-7378-065-4 MATFYZPRESS Problems in Reputation based Methods in P2P Networks M. Novotný Charles University, Faculty of Mathematics
More informationDistributed Information Processing
Distributed Information Processing 14 th Lecture Eom, Hyeonsang ( 엄현상 ) Department of Computer Science & Engineering Seoul National University Copyrights 2016 Eom, Hyeonsang All Rights Reserved Outline
More informationCS535 Big Data Fall 2017 Colorado State University 11/7/2017 Sangmi Lee Pallickara Week 12- A.
CS Big Data Fall Colorado State University http://www.cs.colostate.edu/~cs // Week - A // CS Big Data - Fall Week -A- CS BIG DATA FAQs PA deadline has been extended (/) PART. SCALABLE FRAMEWORKS FOR REAL-TIME
More informationTime-related replication for p2p storage system
Seventh International Conference on Networking Time-related replication for p2p storage system Kyungbaek Kim E-mail: University of California, Irvine Computer Science-Systems 3204 Donald Bren Hall, Irvine,
More informationNaming. Distributed Systems IT332
Naming Distributed Systems IT332 2 Outline Names, Identifier, and Addresses Flat Naming Structured Naming 3 Names, Addresses and Identifiers A name is used to refer to an entity An address is a name that
More informationDISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES
DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline System Architectural Design Issues Centralized Architectures Application
More informationPeer Clustering and Firework Query Model
Peer Clustering and Firework Query Model Cheuk Hang Ng, Ka Cheung Sia Department of Computer Science and Engineering The Chinese University of Hong Kong Shatin, N.T., Hong Kong SAR {chng,kcsia}@cse.cuhk.edu.hk
More information