Advanced Peer to Peer Discovery and Interaction Framework



Similar documents
PEER-TO-PEER NETWORK

Peer-to-Peer Systems: "A Shared Social Network"

Executive Brief for Sharing Sites & Digital Content Providers. Leveraging Hybrid P2P Technology to Enhance the Customer Experience and Grow Profits

Interoperability of Peer-To-Peer File Sharing Protocols

Best Practices for Controlling Skype within the Enterprise. Whitepaper

Biznet GIO Cloud Connecting VM via Windows Remote Desktop

INSIDE. Malicious Threats of Peer-to-Peer Networking

Peer to Peer Search Engine and Collaboration Platform Based on JXTA Protocol

System Requirement Specification for A Distributed Desktop Search and Document Sharing Tool for Local Area Networks

Solution Requirements and Process Flow

SAN Conceptual and Design Basics

Best Practices for Controlling Skype within the Enterprise > White Paper

CSIS CSIS 3230 Spring Networking, its all about the apps! Apps on the Edge. Application Architectures. Pure P2P Architecture

Collaborative & Integrated Network & Systems Management: Management Using Grid Technologies

SyncLockStatus Evaluator s Guide

Pearl Echo Installation Checklist

Table of Contents. Introduction...9. Installation Program Tour The Program Components...10 Main Program Features...11

Napster and Gnutella: a Comparison of two Popular Peer-to-Peer Protocols. Anthony J. Howe Supervisor: Dr. Mantis Cheng University of Victoria

The Role and uses of Peer-to-Peer in file-sharing. Computer Communication & Distributed Systems EDA 390

IBM Security QRadar Vulnerability Manager Version User Guide

Interwise Connect. Working with Reverse Proxy Version 7.x

Panorama High Availability

Optimistic way of Accessing Open Storage using Collaborative Approach

Network Applications

User Manual. Onsight Management Suite Version 5.1. Another Innovation by Librestream

Uptime Infrastructure Monitor. Installation Guide

IBM Security Access Manager for Enterprise Single Sign-On V8.2 Implementation Exam.

Multicast vs. P2P for content distribution

Classic Grid Architecture

Peer-to-peer framework of Distributed Environment for Cooperative and Collaborative Work Service Composition

Backup with synchronization/ replication

Configuring a Softphone for Windows for Virtual Contact Center

ReadyNAS Remote White Paper. NETGEAR May 2010

Detecting peer-to-peer botnets

An Introduction to Peer-to-Peer Networks

Unicenter Remote Control r11

Host Installation on a Terminal Server

Implementing, Managing, and Maintaining a Microsoft Windows Server 2003 Network Infrastructure

AN APPLICATION OF INFORMATION RETRIEVAL IN P2P NETWORKS USING SOCKETS AND METADATA

Comparison: RHUB, WebEx, Citrix and LogMeIn

Upgrading Client Security and Policy Manager in 4 easy steps

Software License Monitoring

HIGH AVAILABILITY DISASTER RECOVERY SOLUTION

Radvision Video Conferencing Policies and Procedures10/25/2012 2:02:00 PM

Citrix MetaFrame Presentation Server 3.0 and Microsoft Windows Server 2003 Value Add Feature Guide

'Namgis First Nation. 1.0 Overview. 2.0 Purpose. 3.0 Scope. 4.0 Policy

System Models for Distributed and Cloud Computing

Installation and Setup: Setup Wizard Account Information

1110 Cool Things Your Firewall Should Do. Extending beyond blocking network threats to protect, manage and control application traffic

Netop Remote Control Security Server

WhatsUp Gold v16.3 Installation and Configuration Guide

ForeScout CounterACT. Device Host and Detection Methods. Technology Brief

MOBILITY FOR iphone USER GUIDE

Upgrading Small Business Client and Server Infrastructure E-LEET Solutions. E-LEET Solutions is an information technology consulting firm

Cloud Video. Data Sheet

How To Control Your Network With A Firewall On A Network With An Internet Security Policy On A Pc Or Ipad (For A Web Browser)

LEARNING SOLUTIONS website milner.com/learning phone

SVN5800 Secure Access Gateway

Client/server and peer-to-peer models: basic concepts

WHITE PAPER. Understanding How File Size Affects Malware Detection

PeopleSoft Application Designer Installation Documentation

Lync for Mac 2011 Deployment Guide

Cisco EXAM Implementing Cisco IP Telephony and Video, Part 2 (CIPTV2) Buy Full Product.

Analysis on Leveraging social networks for p2p content-based file sharing in disconnected manets

Common Issues For Blackboard Collaborate Web Conferencing V. 11

ilinc Web Conferencing

Virtual machine interface. Operating system. Physical machine interface

STREAM FRBC

SmartTV User Interface Development for SmartTV using Web technology and CEA2014. George Sarosi

Drobo How-To Guide. Topics. What You Will Need. Configure Windows iscsi Multipath I/O (MPIO) with Drobo iscsi SAN

Application Notes for Microsoft Office Communicator Clients with Avaya Communication Manager Phones - Issue 1.1

Secure Data Transfer and Replication Mechanisms in Grid Environments p. 1

Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation.

Copyright 2014 GE Multilin Inc. All rights reserved. EnerVista Viewpoint Monitoring Quickstart Guide for version 7.1x. EnerVista, Viewpoint

Serial Deployment Quick Start Guide

Cloud Storage. Parallels. Performance Benchmark Results. White Paper.

Freshservice Discovery Probe User Guide

VidyoConferencing Network Administrators Guide

MCSE SYLLABUS. Exam : Managing and Maintaining a Microsoft Windows Server 2003:

KERIO TECHNOLOGIES KERIO WINROUTE FIREWALL 6.4 REVIEWER S GUIDE. (Updated April 14, 2008)

A distributed system is defined as

A Measurement Study of Peer-to-Peer File Sharing Systems

Quick Start Guide FLIR Firmware Update Tool

Drobo How-To Guide. Topics. What You Will Need. Prerequisites. Deploy Drobo B1200i with Microsoft Hyper-V Clustering

1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; SMTP.

Metalogix Replicator. Quick Start Guide. Publication Date: May 14, 2015

LifeSize Video Center Administrator Guide March 2011

Web Conferencing Version 8.3 Troubleshooting Guide

VMware vrealize Operations for Horizon Administration

A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems

Common P2P Examples. Peer to Peer Networks. Client-Server Architecture. Uses of P2P. Napster Morpheus Gnutella Freenet BitTorrent Skype

Configuring Security Features of Session Recording

Local Caching Servers (LCS) February 2015

Don t skip these expert tips for making your firewall airtight, bulletproof and fail-safe. 10 Tips to Make Sure Your Firewall is Really Secure

Bandwidth consumption: Adaptive Defense and Adaptive Defense 360

User Guide. Version R91. English

Network Usage Guidelines Contents

Distributed Data Management

Remote Deposit Capture Installation Guide

Transcription:

Advanced Peer to Peer Discovery and Interaction Framework Peeyush Tugnawat J.D. Edwards and Company One, Technology Way, Denver, CO 80237 peeyush_tugnawat@jdedwards.com Mohamed E. Fayad Computer Engineering Department College of Engineering, San Jos State University San Jose, CA 95192 m.fayad@sjsu.edu ABSTRACT Peer-to-peer (P2P) architecture is a new paradigm in distributed computing technologies. Peer-to-peer computing is the sharing of computer resources and services by direct exchange between systems [1]. The desired framework based on peer-to-peer network should provide peer discovery and interaction mechanisms. The framework also allows the peer computers to share files and exchange instant messages. It can serve as a base framework for new distributed file sharing and messaging systems based on P2P. The framework should be generalized enough to cater to needs of any specific P2P application. Keywords P2P, Distributed Computing. 1. INTRODUCTION A peer-to-peer network is simply a number of peer machines communicating and sharing resources with each other (as shown in Figure 1). Traditional client-server networks have the concept of a central server connected to several client machines. Communication between connected clients takes place through server. In P2P, the participating peers in the network communicate directly with each other unlike the traditional client-server network or multi-tiered server network. Figure 1 Peer to Peer Network formed by directly connected systems The peers share computer resources and services by directly exchanging information among them. Exchange of computer resources and services means the exchange of information, processing cycles, and disk storage for files. All of these are done generally without depending on any centralized servers or resources. Thus, the P2P architecture enables true distributed computing. It creates networks of computing resources which exhibit fault tolerance and very high availability. There are many interesting and useful applications that can be accomplished by using P2P computing besides the popular applications as Napster, Kazaa, and Gnutella etc. To be successful, peer-to-peer computing requires availability of numerous interconnected peers and bandwidth. Existing desktop computing power and networking connectivity are encouraging for P2P networks. Page 1

A simple framework for peer discovery and communication is desired which can be extended to build any interesting P2P application on top of it. 2. MOTIVATION The availability of inexpensive bandwidth and powerful networking technologies are encouraging for P2P computing. Apart from music and file sharing applications, P2P has a great potential for collaborative work effort applications. One such example may be enterprise application integration (EAI). Present P2P applications do not provide complete solutions relating to security, seamless sharing of peer computing resources, and true collaborative real time interaction between peers. To succeed in arenas of enterprise or business applications, P2P networks need to focus primarily on enhancing and securing its capabilities. Section 3 talks about the innovative features and security measures desired for this system which makes it stand out from the existing P2P applications. 3. DESIRED P2P FRAMEWORK A framework based on Peer-to-Peer networking that can serve as a mechanism for peer discovery and interaction between them is desired. The desired framework should have enhanced features and properties relating to P2P interaction and security. It should provide seamless integration and sharing of computer resources, including processing power, cache, and memory. The framework should have the ability to find available peers. The framework should provide peer connection status tracking mechanisms. Thus all available peers are constantly queried for their online status. It should also keep track of the resources shared by each peer. In addition to the peer discovery mechanisms, the desired framework should provide resource sharing, file transfer capabilities and messaging capabilities for connected peers. Peers should be able to broadcast or publish their connection status and their available shared resources. File transfer between peers should be synchronized. If there is more than one request for a file transfer, the later request should be queued until the former transfer is complete. Peers should be able to propagate text messages in one-to-one and one-tomany scenarios. Besides the above common features for P2P interaction, the desired framework should enable users to have true collaborative interaction between peers in the form of video and audio conferencing, message transfer, and application sharing. Enhanced features such as defining and using a search agent to perform a P2P resource search should be available. Search agents should provide users with the capability of defining their search criteria and letting the agent perform the job of searching, configuring and using resources. This framework will also perform security analysis and forecast for the connected peers in a P2P network. Security checks and measures will be provided for the existing connection and the network as a whole using predefined security policies. 4. USE CASES The following are the main identified use cases for the P2P framework. 4.1 Instantiate P2P Application Join the P2P network A user launches the P2P application, provides a unique id and the peer group to join. The P2P application residing on a user s machine connects to the peer group specified using the unique id provided by the user. A connection conformation message is displayed to the user after successfully connecting to the specified peer group. 4.2 Discover Peers Find online peers connected to network Page 2

Based on the peer group specified, the application checks for all the peer machines that are online. The user ids or computer names of all online peers are listed. 4.3 Track Peers Dynamically track peer status, as shown in Figure 2 Peer IV Peer II Peer V Track Peers Peer III Peer I Peer VI Figure 2 Dynamic Tracking of connected Peers The application tracks the status of all peers in a peer group. The application should detect and display information about a peer arriving online or going offline. Thus the dynamic tracking of peers in a peer group is performed using a form of polling mechanisms. A user message is generated when a peer joins the group and arrives online. A similar message is generated when a user logs off or gets disconnected from the group. Figure 2 shows the tracking process for a particular peer that tracks all the connected peers dynamically. 4.4 P2P File Transfer Enable peers to transfer shared files, as shown in Figure 3. Figure 3 Peer File Listing and Transfer A user selects the peer machine to initiate a transfer from. A list of all the shared files residing on the specified peer is displayed. After selecting the file to transfer, the application opens a file transfer operation. After the completion of the file transfer, the user is informed about the success of the file transfer operation. Any corresponding error messages are displayed for all connection or file transfer errors. 4.5 P2P Messaging Enable peers to send one-to-one and one-to-many messages Page 3

Hello! Hi there.. User Figure 2 Instant real time messaging User A user selects the peer machine(s) to send the message to as shown in Figure 4. The connection status of the selected peer(s) is checked. The user is informed if the peer is not connected or logged in. If the peer(s) is detected online on the peer group, a message by the sender is delivered in the real time to the recipient peer(s). 4.6 Configuring Search Agents Configuration of search agents to perform a P2P search A user can configure an agent to search for specified resources in a P2P network. Agents have the ability to remember search criteria and perform an independent extensive search of the P2P network. Example of Search criteria could be file by name and contents, processor availability, user name etc. Agents can deliver search results to the user as specified. Agents can also be configured to perform user defined operations on the search items. 4.7 Resource Searching Using Search Agents Use search agents to perform an intelligent P2P search A user specifies the criteria for the intelligent P2P search. The search agent traverses the network, performs calculations, and searches for the desired resources. After identifying the desired resources, the P2P agent performs operations as specified by the user. Operations on the search items may vary from downloading the resource to performing complex calculations on an available computing resource. 4.8 Determine Security Hazards To determine the security hazards for a peer or a network Security hazards for a P2P application may exist in form of lack of encryption, open ports on the firewall, viruses in file transfers and unauthorized access to file system. A user provides the id of the peer or P2P network for security checks. All the connections and shared resources for the specified peer or P2P network are checked for security measurements and potential hazards that might exist. Based on the predefined security policy, the user is given a summary of the level of the hazards and suggested measures for it. 4.9 Define Security Policies Enable personal security policies for P2P network Page 4

A user can set a security policy for the connected P2P network. Security policies can be defined through a user interface by setting user preferences. The user can specify the connection quality, peer resource scanning, security certificate, and other prerequisites required for accessing any resource on their computer. Security policies can also be set for the whole network by the administrator. 4.10 Create a Personal P2P Network Define and create a personal P2P network A user can define and create a personal network. A personal P2P network will only include the peers specified by the user while defining the personal network. Properties and security measures for a personal P2P network can be defined for the whole network and also for an individual peer for the resources to share. Other properties may include the computer processor availability and other resource availability criteria in addition to other user defined settings as number of file transfers, connection limit per peer, etc. 4.11 Using Remote Computing Resources Enable peers to use peer computing resources Users can specify the computing job to be performed and the preferred peers for performing it. Computing resources such as processor, memory, and cache are used to perform the task in parallel or in serial mode, as preferred by the user. Once the task is performed, results are gathered and provided to the requesting peer. 4.12 Collaborative Interaction Enable peers interact in real time using audio and video Users can interact with other peers by instant messaging, or by real time video and audio conferencing. A user can select to interact on a one-on-one basis or interact with a selected group of peers. Peers have the ability to send and receive audio and video in real time for interaction. The broadcasting of a message to the whole P2P network is also possible. 5. REQUIREMENTS R01: Users should be able to define and create a personal P2P network. Desired properties and security measures can be specified while creating a network. R02: Users must be able to instantiate and log in to existing or newly defined peer-to-peer networks or groups. R03: Users must have the ability to define and implement security policies and measures relating to their own machine. R04: Users can also receive a security analysis report of the network which lists the possible security hazards. R05: Online peers should be dynamically discovered. A List of available shared resources of the peers should be displayed upon request. R06: A list of all online peers must be displayed dynamically on the user interface upon request. R07: A user should be able to send text messages to the connected peers. Instant messaging capability should support one-to-one and one-to-many modes. Page 5

R08: A user must be able to transfer files to a selected connected peer. R09: A user must be able to utilize the computing resources such as processing power, memory, and cache of the connected peers to perform computing resource consuming tasks. The user can specify either serial or parallel execution of the sub-tasks on peer machines. R010: Users should be able to use the intelligent search agents for performing a variety of tasks over the P2P network. These agents should be configurable to specify the search criteria and also the actions that the user wants the agent to perform on their behalf. R11: Users must be informed of any errors that might have occurred during file transfer or messaging. R12: Proper logs should be generated for any resource use by the peers. Possible security hazards must be forecasted in the logs as well as user prompts. 6. INTERFACES An interface should be provided for the existing tools to allow collaborative interaction which includes video and audio conferencing. There should also be interfaces for external tools to allow the synchronization of computing resource sharing such as processing power and memory. 7. REFERENCES [1] Peer-to-Peer Working Group http://www.peer-to-peerwg.org/ [2] Giovanni Flammia, Peer-to-Peer Is Not for Everyone, IEEE Intelligent Systems, 2001 [3] Peer-to-Peer Introduction on Sun s website. http://developer.java.sun.com/developer/technicalarticles/peer/ Page 6