1 Gnutella and JXTA Based on Ivkovic’s paper “Improving Gnutella Protocol”. Also based on Docs and Tutorials at

Slides:



Advertisements
Similar presentations
INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 12 Prof. Crista Lopes.
Advertisements

1 An Overview of Gnutella. 2 History The Gnutella network is a fully distributed alternative to the centralized Napster. Initial popularity of the network.
Denial-of-Service Resilience in Peer-to-Peer Systems D. Dumitriu, E. Knightly, A. Kuzmanovic, I. Stoica and W. Zwaenepoel Presenter: Yan Gao.
Gnutella 2 GNUTELLA A Summary Of The Protocol and it’s Purpose By
Company Confidential 1 © 2005 Nokia V1-Filename.ppt / yyyy-mm-dd / Initials Towards a mobile content delivery network with a P2P architecture Carlos Quiroz.
Peer-to-Peer Networks João Guerreiro Truong Cong Thanh Department of Information Technology Uppsala University.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
JXTA P2P Platform Denny Chen Dai CMPT 771, Spring 08.
JXTA Protocol Introduction Student : Jia-Hui Huang Adviser : Kai-Wei Ke Date : 2005/11/22.
Peer to Peer Discovery Nate Thrasher. Peer to Peer Discovery ● 2 Basic Categories – Hardware Discovery – Information Discovery ● JXTA (
Spotlighting Decentralized P2P File Sharing Archie Kuo and Ethan Le Department of Computer Science San Jose State University.
Basic Computer Networks Configurations (cont.) School of Business Eastern Illinois University © Abdou Illia, Spring 2006 Week 2, Thursday 1/19/2006)
Responder Anonymity and Anonymous Peer-to-Peer File Sharing. by Vincent Scarlata, Brian Levine and Clay Shields Presentation by Saravanan.
1 Unstructured Routing : Gnutella and Freenet Presented By Matthew, Nicolai, Paul.
CS 525 Advanced Distributed Systems Spring 09 Indranil Gupta Lecture 2 Introduction to Peer to Peer Systems January 22, 2009.
Peer-to-Peer Intro Jani & Sami Peltotalo.
Gnutella, Freenet and Peer to Peer Networks By Norman Eng Steven Hnatko George Papadopoulos.
1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.
Indranil Gupta (Indy) September 21, 2010 Lecture 9 Peer-to-peer Systems I Reading: Gnutella paper on website  2010, I. Gupta Computer Science 425 Distributed.
Security in P2P Networks A study of the gnutella protocol and it’s weaknesses By: Imran Qureshi Date: December 9, 2004.
Improving Data Access in P2P Systems Karl Aberer and Magdalena Punceva Swiss Federal Institute of Technology Manfred Hauswirth and Roman Schmidt Technical.
Peer-to-peer: an overview Selo TE P2P is not a new concept P2P is not a new technology P2P is not a new technology Oct : first transmission.
JXTA Lecture 1.JXTA Overview a) Background to Project JXTA b) Design Constraints c) Terminology d) Overview and Architecture e) Introducing the Concepts.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
P2P File Sharing Systems
Peer-to-Peer Computing CS587x Lecture Department of Computer Science Iowa State University.
1 Napster & Gnutella An Overview. 2 About Napster Distributed application allowing users to search and exchange MP3 files. Written by Shawn Fanning in.
Introduction Widespread unstructured P2P network
1 Security Aspects of Napster and Gnutella Steven M. Bellovin
Unstructured P2P networks by example:Gnutella 0.4,Gnutella 0.6 张旭彤 杨蕊鸿 马骕 林晔.
Lecture 12 Peer-to-Peer systems (Search Capabilities in Distributed Systems) Sections 10.1, 10.2, plus Paper “The Gnutella Protocol Specification v0.4”
Cli/Serv.: JXTA/151 Client/Server Distributed Systems v Objective –explain JXTA, a support environment for P2P services and applications ,
1 Reading Report 4 Yin Chen 26 Feb 2004 Reference: Peer-to-Peer Architecture Case Study: Gnutella Network, Matei Ruoeanu, In Int. Conf. on Peer-to-Peer.
Gnutella2: A Better Gnutella?
Indranil Gupta (Indy) September 26, 2013 Lecture 10 Peer-to-peer Systems I Reading: Gnutella paper on website  2013, I. Gupta Computer Science 425 Distributed.
Cmpe 494 Peer-to-Peer Computing Anıl Gürsel Didem Unat.
Survey of Peer to Peer Technologies Authors: Bratislav Milić, Jelena Krunić, Veljko Milutinović,
1 Telematica di Base Applicazioni P2P. 2 The Peer-to-Peer System Architecture  peer-to-peer is a network architecture where computer resources and services.
1 A P2P Collaborative System Using JXTA Hosei Graduation School ITPC 02R3315 Katsuhiro CHIBA.
Vulnerabilities in peer to peer communications Web Security Sravan Kunnuri.
PSI Peer Search Infrastructure. Introduction What are P2P Networks? The term "peer-to-peer" refers to a class of systems and applications that employ.
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP r.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
P2P Computing MIRA YUN September 16, Outline What is P2P P2P taxonomies Characteristics Different P2P systems Conclusion.
PEER TO PEER (P2P) NETWORK By: Linda Rockson 11/28/06.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
1 Indranil Gupta (Indy) Lecture 4 Peer to Peer Systems January 30, 2014 All Slides © IG CS 525 Advanced Distributed Systems Spring 2014.
1 A connection management protocol for promoting cooperation in Peer-to-Peer networks Authors: Murat Karakaya, Ibrahim Korpeoglu, and Ozgur Ulusoy Source:
15-744: Computer Networking L-22: P2P. Lecture 22: Peer-to-Peer Networks Typically each member stores/provides access to content Has quickly.
Peer-to-Peer By Rui Zhang, Chen Teng, Li Dong, Quanshuan He & Yongzheng Zhang.
ADVANCED COMPUTER NETWORKS Peer-Peer (P2P) Networks 1.
Peer-to-peer systems (part I) Slides by Indranil Gupta (modified by N. Vaidya)
Peer to Peer Computing. What is Peer-to-Peer? A model of communication where every node in the network acts alike. As opposed to the Client-Server model,
A Reputation-Based Approach for Choosing Reliable Resources in Peer-to-Peer Networks E. Damiani S. De Capitani di Vimercati S. Paraboschi P. Samarati F.
CS Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt.
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.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt.
1 Indranil Gupta (Indy) Lecture 4 Peer to Peer Systems January 28, 2010 All Slides © IG CS 525 Advanced Distributed Systems Spring 2010.
1 Indranil Gupta (Indy) Lecture 4 Peer to Peer Systems January 27, 2011 All Slides © IG CS 525 Advanced Distributed Systems Spring 2011.
Distributed Systems Lecture 10 P2P systems 1. Previous lecture Leader election – Problem – Algorithms 2.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 24 – Introduction to Peer-to-Peer (P2P) Systems Klara Nahrstedt (presented by Long Vu)
1 Gnutella. 2 Overview r P2P search mechanism r Simple and straightforward r Completely decentralized r Creates overlay network r Different applications.
An example of peer-to-peer application
BitTorrent Vs Gnutella.
An overview of Gnutella
Peer-to-Peer and Social Networks
Gnutella [The routing protocol for sharing data among peers]
Unstructured Routing : Gnutella and Freenet
Presentation transcript:

1 Gnutella and JXTA Based on Ivkovic’s paper “Improving Gnutella Protocol”. Also based on Docs and Tutorials at

2 Netprog HTTP Gnutella Peer-to-peer indexing and searching service.Peer-to-peer indexing and searching service. Peer-to-peer point-to-point file downloading using HTTP.Peer-to-peer point-to-point file downloading using HTTP. A gnutella node needs a server (or a set of servers) to “start-up”… gnutellahosts.com provides a service with reliable initial connection pointsA gnutella node needs a server (or a set of servers) to “start-up”… gnutellahosts.com provides a service with reliable initial connection points But introduces a new single point of failure!

3 Netprog HTTP The Gnutella protocol (v0.4) PING – Notify a peer of your existencePING – Notify a peer of your existence PONG – Reply to a PING requestPONG – Reply to a PING request QUERY – Find a file in the networkQUERY – Find a file in the network RESPONSE – Give the location of a fileRESPONSE – Give the location of a file PUSHREQUEST – Request a server behind a firewall to push a file out to a client.PUSHREQUEST – Request a server behind a firewall to push a file out to a client.

4 Netprog HTTP Gnutella Decentralized Model

5 Netprog HTTP Gnutella Descriptor Header Descriptor ID uniquely identifies descriptor on the networkDescriptor ID uniquely identifies descriptor on the network Payload Descriptor is 0x00 = Ping, 0x01 = Pong, 0x40 = Push, 0x80 = Query, 0x81 = ResponsePayload Descriptor is 0x00 = Ping, 0x01 = Pong, 0x40 = Push, 0x80 = Query, 0x81 = Response TTL(0) = TTL(i)+Hops(i)TTL(0) = TTL(i)+Hops(i)

6 Netprog HTTP Gnutella Ping No payload (i.e., payload length = 0)No payload (i.e., payload length = 0) Used for probing the network and establishing connections after reception of “Pong”.Used for probing the network and establishing connections after reception of “Pong”.

7 Netprog HTTP Gnutella Pong Descriptor Payload Responding to “Ping” descriptors.Responding to “Ping” descriptors. Enough information to establish connection.Enough information to establish connection. File sharing meta-data.File sharing meta-data.

8 Netprog HTTP Gnutella Query Descriptor Payload For querying the network for a particular file or files (usually substring of file name).For querying the network for a particular file or files (usually substring of file name). Quality of Service parameter (minimum speed).Quality of Service parameter (minimum speed).

9 Netprog HTTP Gnutella Response Descriptor Payload For positive “File Found” replies to a query.For positive “File Found” replies to a query. Result Set field includes file index, size and name.

10 Netprog HTTP Gnutella Push Descriptor Payload For getting files from firewall-protected servents.For getting files from firewall-protected servents. Request pushing a file from an internal node to an outside servent.Request pushing a file from an internal node to an outside servent.

11 Netprog HTTP Gnutella Research Directions Download failuresDownload failures ScalabilityScalability Fragmented developmentFragmented development Encouragement of content sharingEncouragement of content sharing Reducing browsing downtimeReducing browsing downtime Reducing unnecessary network trafficReducing unnecessary network traffic Creating and maintaining a healthy network structure –rebalancing, different TTL strategies, prioritiesCreating and maintaining a healthy network structure –rebalancing, different TTL strategies, priorities Addressing security concerns.Addressing security concerns.

12 Netprog HTTP JXTA For “juxtapose”, from Bill Joy at Sun.For “juxtapose”, from Bill Joy at Sun. Connecting devices and applications by providing common P2P services to heterogeneous devices, operating systems, programming languages, and applications.Connecting devices and applications by providing common P2P services to heterogeneous devices, operating systems, programming languages, and applications.

13 Netprog HTTP JXTA Overview Material from “Web Services Edge” XML Conference, San Jose, CA, October 2002, by Juan Carlos Soto, Sun Microsystems:Material from “Web Services Edge” XML Conference, San Jose, CA, October 2002, by Juan Carlos Soto, Sun Microsystems: