Presentation is loading. Please wait.

Presentation is loading. Please wait.

Peer To Peer Applications

Similar presentations


Presentation on theme: "Peer To Peer Applications"— Presentation transcript:

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

2 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

3 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.

4 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.

5 P2P

6 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.

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

8 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

9 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.

10 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.

11 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.

12 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.

13 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.

14 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.

15 Peer Discovery By Cached Advertisement(No Discovery)

16 Examples: Napster and 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.

17 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.

18 JXTA Architecture

19 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.

20 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 .

21 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 .

22 Open Discussion


Download ppt "Peer To Peer Applications"

Similar presentations


Ads by Google