Peer To Peer Applications

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

Computer networks Fundamentals of Information Technology Session 6.
COM vs. CORBA.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
Multicast Fundamentals n The communication ways of the hosts n IP multicast n Application level multicast.
Network Layer and Transport Layer.
28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities.
An Overview of Peer-to-Peer Networking CPSC 441 (with thanks to Sami Rollins, UCSB)
 Introduction Originally developed by Open Software Foundation (OSF), which is now called The Open Group ( Provides a set of tools and.
Peer-to-Peer Networks as a Distribution and Publishing Model Jorn De Boever (june 14, 2007)
Technical Architectures
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.
JXTA Selo TE Introduction What is JXTA ( pronounced Juxta ) What is JXTA ( pronounced Juxta ) Jxta – an open, network computing platform designed.
Peer-to-Peer Computing
A. Frank 1 Internet Resources Discovery (IRD) Peer-to-Peer (P2P) Technology (1) Thanks to Carmit Valit and Olga Gamayunov.
1 Client-Server versus P2P  Client-server Computing  Purpose, definition, characteristics  Relationship to the GRID  Research issues  P2P Computing.
Peer-to-Peer Networks & JXTA by Madhurasmitha Chakravarthy & Priti Sabadra.
The Architecture of Transaction Processing Systems
1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.
Lesson 1: Configuring Network Load Balancing
7DS Seven Degrees of Separation Suman Srinivasan IRT Lab Columbia University.
JXTA Lecture 1.JXTA Overview a) Background to Project JXTA b) Design Constraints c) Terminology d) Overview and Architecture e) Introducing the Concepts.
Client/Server Architecture
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
CLIENT A client is an application or system that accesses a service made available by a server. applicationserver.
Freenet. Anonymity  Napster, Gnutella, Kazaa do not provide anonymity  Users know who they are downloading from  Others know who sent a query  Freenet.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Addressing the Network – IPv4 Network Fundamentals – Chapter 6.
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
Cli/Serv.: JXTA/151 Client/Server Distributed Systems v Objective –explain JXTA, a support environment for P2P services and applications ,
Cmpe 494 Peer-to-Peer Computing Anıl Gürsel Didem Unat.
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.
Sun’s Project JXTA Technical Overview Presented by Sergei Kovalenko Red Team: Janhavi James A. Davis Fernando D. Diaz.
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.
1 A P2P Collaborative System Using JXTA Hosei Graduation School ITPC 02R3315 Katsuhiro CHIBA.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
Jonathan Walpole CSE515 - Distributed Computing Systems 1 Teaching Assistant for CSE515 Rahul Dubey.
Peer-to-Pee Computing HP Technical Report Chin-Yi Tsai.
Architectures of distributed systems Fundamental Models
Lect3..ppt - 09/13/04 CIS 4100 Systems Performance and Evaluation Lecture 4 by Zornitza Genova Prodanoff.
Peer-to-Peer (P2P) Computing Yi Zhang. Agenda History What is P2P Client/Server and P2P Why P2P Problems and possible solution P2P middleware services.
Peer-to-Peer Network Tzu-Wei Kuo. Outline What is Peer-to-Peer(P2P)? P2P Architecture Applications Advantages and Weaknesses Security Controversy.
Peer-to-Peer Computing Mrs. Tugba Taskaya-Temizel 13/February/2006.
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.
Introduction to Grids By: Fetahi Z. Wuhib [CSD2004-Team19]
Kemal Baykal Rasim Ismayilov
ICS362 – Distributed Systems Dr. Ken Cosh Week 2.
ADVANCED COMPUTER NETWORKS Peer-Peer (P2P) Networks 1.
Peer to Peer Network Design Discovery and Routing algorithms
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,
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
Peer-to-Peer Systems: An Overview Hongyu Li. Outline  Introduction  Characteristics of P2P  Algorithms  P2P Applications  Conclusion.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
Project JXTA Kaarthik Sivashanmugam. JXTA..? JXTA is a set of open, generalized peer-to-peer (P2P) protocols that allow any connected device on the network.
Chapter 1 Characterization of Distributed Systems
Building Distributed Educational Applications using P2P
File System Implementation
CHAPTER 3 Architectures for Distributed Systems
Chapter 3: Windows7 Part 4.
Presentation transcript:

Peer To Peer Applications Presented By :Sirisha Panchagnula Date :10/0703

Table Of Contents Abstract P2P VS Client Server P2P Structural Characteristics Operational Features P2P System Layers Why is P2P Important? P2P Approaches P2P Components Types Of Peers Peer Communication Peer Discovery By Cached Advertisment Examples Future Case Study JXTA Open Discussion

Abstract "A type of network in which each workstation has equivalent capabilities and responsibilities”. Sharing of computer resources & services by direct exchange between system. P2P nodes must operate outside DNS system & have significant or total autonomy from central servers.

P2P VS Client –Server The client in the client/server architecture acts in a passive role, capable of demanding services from servers but incapable of providing services to other clients. Although it requires less computational power on client side,this architecture has a major drawback. As the number of clients increases, the load and bandwidth demands on the server also increase, eventually preventing the server from handling additional clients. P2P networks shun the centralized organization of the client/server architecture and instead employ a flat, highly interconnected architecture. P2P enables these machines to act as both clients and servers that can determine the services available on the P2P network and engage those services in some application-specific manner.

P2P

Structural Characteristics A peer is a node on a P2P network that forms the fundamental processing unit of any P2P solution. One of the major concepts of peer-to-peer computing is decentralization. In this kind of dynamic system it is difficult to get or maintain a global view of the system state. Peer-to-peer systems are self-organizing in a sense that the different system components work together without any central management instance assigning roles and tasks. In this context the degree of organisation in a system increases without an increase of any external governance or system control. Because of their structure and organization peer-to-peer systems are inherently fault-tolerant. Since there is no central point of failure they can easily compensate the loss of a peer or even a number of peers. With the loss of peers the system performance might decrease but system is still operational.

Operational Features Adhoc in Nature Unpredictable & Unreliable Transparency Improved Scalability & Reliability Protection & Security Anonymity/Privacy Resource Aggregation & Interoperability Ownership

Where is P2P System Layers Users - Commerce and society is P2P Application layer - E-commerce systems can be P2P or Centralized Information management - Directories and databases can be P2P or centralized Networks are P2P -Internet

Why is P2P Important? Device independent. P2P is not at all limited to communications among desktop computers, although most P2P focus on fully utilizing the power of PCs. P2P networks have demonstrated that you can organize resources across heterogeneous devices. Web services will take this further. Real time. P2P applications have proven to be interesting experiments in exploiting new capabilities of real-time communications. Instant messaging and distributed computation can both be considered real-time communications platforms. Parity. In a peer-to-peer network, the peers are considered equals, even though they may not share the same capabilities.

P2P Approaches One is based on“replicated objects”, which is almost the opposite extreme of client server. It also revolves around the idea that the peers will be performing similar tasks to one another, but instead of just having each communicate an answer back to a server when they are done, virtually all peers inform virtually all other peers of much of what they each do. Another approach is “distributed objects”, in which the programmer explicitly breaks down the program into individual components (objects) while it is being written. In fact, the programmer must decide a lot of things when it is being written, like which parts will probably end up on different peers and which parts will end up on the same peers, as well as what kinds of security each object should have, etc.

P2P Communication Our main question is… How can you connect a set of devices in such a way that they can share information, resources, and services? The majority of current P2P solutions assumes the use of TCP as a network transport mechanism and cannot operate in any other network environment. Network topologies where the nodes are connected directly (i.e. meshed topologies and one-to-one connections) are a part of communication infrastructures . Network multicast is another peer-to-peer communication mechanism where the user group is known. Group communication and multipeer communication models apply peer-to-peer principles at the transport layer Flooding or Network Broadcast are used in anonymous peer group communication.

Types of Peers Three possible types of peers exist in any P2P network based on the amount of responsibility each have Simple peers Rendezvous peers Router peers Simple Peer: A simple peer is designed to serve a single end user, allowing that user to provide services from his device and consuming to other peers on the network. A simple peer on a network will be located behind a firewall, separated from the network peers outside the firewall will probably not be capable of directly communicating with this peer .It thus has least responsibility.

Types of Peers (Cont) Rendezvous peer provides peers with a network location to use to discover other peers and peer resources. A rendezvous peer can increase its capabilities by caching information on peers for future use or by forwarding discovery requests to other rendezvous peers. Router peer provides a mechanism for peers to communicate with other peers separated from the network by firewall or Network Address Translation (NAT) equipment. To send a message to a peer via a router, the peer sending the message must first determine which router peer to use to communicate with the destination peer.This routing information provides a mechanism in P2P to replace traditional DNS, enabling an intermittently connected device with a dynamic IP.

P2P Components Most items on a P2P network need some piece of information that uniquely identifies them on the network: Peers—A peer needs an identifier that other peers can use to locate or specify it on the network. Identifying a particular peer could be necessary to allow a message to be routed through a third party to the correct peer. Peer groups—A peer needs some way to identify which peer group it would like to use to perform some action. Actions could include joining, querying, or leaving a peer group. Pipes—To permit communication, a peer needs some way of identifying a pipe that connects endpoints on the network. Contents—A piece of content needs to be uniquely identifiable to enable peers to mirror content across the network, thereby providing redundant access. Peers can then use this unique identifier to find the content on any peer.

Peer Discovery By Cached Advertisement(No Discovery)

Examples: Napster and Seti@home, which are centralised, and in the other Freenet and GNUtella, which are decentralised. Napster incorporates a centralised indexing server, which takes care of what files are on what clients, and which clients in turn send searches to for locating resources. Freenet and GNUtella on the other hand distribute the database of shared resources across the clients on the network removing any need for the central server.

Future Of P2P Primarily the problem with all current implementations of P2P applications are they lack scalability. The second major issue to be addressed is trust in the network. If P2P is to become a viable application for the commons it must be possible to trust transactions occurring. Finally, peer-to-peer network application must be robust. Currently on networks such as Napster and GNUtella downloads of files can quite commonly be interrupted or cancelled entirely by clients becoming unresponsive or logging off the network and dropping all their open connections.

JXTA Architecture

Case Study :JXTA The vision of the JXTA project is to provide an open, innovative collaboration platform that supports a wide range of distributed computing applications and enables them to run on any device with a digital heartbeat.. History. The JXTA project was unveiled by Sun on April 25, 2001 defines a set of protocols designed to address the common functionality required to allow peers on a network to form robust pervasive networks, independent of the operating system, development language,. Despite its recent introduction,JXTA has been quite popular . Design. It is important to note that the JXTA project is approaching the P2P space from the lower level as they are proposing an entirely new infrastructure with no direct relation to other, existing P2P systems (e.g., Gnutella and Napster). For example, they have built their own distributed search service, called JXTA search.

Case Study Part II Peer groups are the core of JXTA's infrastructure. A peer group is essentially a partitioning of the world of peers for communication, security, performance, “logical locality” and other reasons. A single participant can be in multiple groups at one time. JXTA provides core protocols for peer discovery, peer group memberships, and peer monitoring. JXTA uses pipes, for sending and receiving messages. All data interchange in JXTA is in the form of XML formatted documents. Services The JXTA project has defined core and optional services that run on the JXTA platform. Examples of core services include authentication, discovery, and management. To address the need for security, they have implemented a cryptography toolkit that enables message privacy, ensures authentication and integrity, and permits transactions between peers that cannot be repudiated .

Case Study Part III Another core service is the Content Manager Service (CMS) that allows JXTA applications to share, retrieve, and transfer content. Applications The JXTA Shell was the first application developed that gives a command-line interface to the core JXTA services, such as peer and group discovery and messaging . Another application is Juxta Prose, which is a discussion application that allows creating, viewing, and replying to HTML documents over JXTA’s content management system. Other applications that the JXTA community is currently designing include event notification and P2P email.

Open Discussion