Department of Electronic & Computer Engineering 
Intelligent Systems Laboratory                           Pdi2etP TECHNICAL UNIVERSITY OF CRETE 

border graphic Main Menu border graphic
border graphic border graphic border graphic border graphic border graphic
 
- Description
- People
- Courses
- Research
- Publications
- Dissertation Topics
- Events
- Funding
- Contact
 
border graphic   border graphic

 
 
border graphic P2P-DIET Menu border graphic
border graphic border graphic border graphic border graphic border graphic
 
- General
- Architecture                 - Routing                        - Security                       - Alert Features               -Super-peer Environment - Client-peer Environment
- Screenshots
- Setup instructions
- Download
- Related Work
 
 
 

Client-peer Environment

In P2P-DIET there are many worlds. Each super-peer and each client has a different world, which means that each different computer represents a different world. All the worlds together are the P2P-DIET universe. Each world has one environment.

The world in the client-peer nodes has a client-peer environment and in the following paragraphs we describe the
agents that inhabit it. A client-peer environment is shown in the following figure and in the following paragraphs we describe the agents that inhabit it.

 

 

The Client agent is the agent that connects the client-peer environment with the rest of the P2P-DIET universe. It communicates, through mobile agents, with the super-peer agent that is the access point or any other remote client agents for
downloading or just for chatting. The client agent sends the following data to the remote super-peer agent of the access point: the profile of the client, the metadata of the resources, the queries, the requests for rendezvous, the finger requests etc. The client agent can create Subscribers, Query-Answering agents and Messengers.


The Interface agent is responsible for forwarding the demands of the user to the client agent and messages from the client agent to the user. The interface agent is a listener to the GUI. For example, when a user chooses to publish a resource, or subscribe a profile the interface agent must forward the message to the client agent, who is responsible to handle such events. Additionally, when there is some message from the network, for example, a notification, the interface agent must be informed by the client agent and fire the appropriate changes to the GUI, so that the user will understand that a new notification has arrived.

The Subscriber is a mobile agent that is responsible for subscribing a profile of a client. The Subscriber starts from a client environment. It will migrate to the super-peer environment of the access point of the client to subscribe the profile. Then, it will travel to all super-peers of the network to subscribe the profile or to find answers on resources that preexisted which matched the profile (this depends on the profile hierarchy). It destroys itself when it returns to the client-peer environment or when there is no more super-peers to visit.

The Notification Carrier is a mobile agent that is responsible for delivering a notification to a client C or its access point AP in the case that the client is not online to receive the notification. The Notification Carrier starts from a super-peer environment SP and travels along the shortest path to the super-peer environment of AP and from there migrates to the client-peer environment of C if the client is online. Note that it is not possible for the Notification Carrier to travel directly to the client environment for two reasons. First, the super-peer SP does not know the IP address of C. Second, the notification must arrive to environment AP because more than one clients may have profiles that match the notification. A Notification Carrier destroys itself after it has delivered the notification to the client or when it arrives to the access point of the client and the client is not online.

The Query-Answering agent is a mobile agent that searches for answers to a specific query of a client. A Query-Answering agent will start from a client and then will travel to all super-peers of the network to find all possible answers to the query starting from the access point of the client. It dies when it returns to the client-peer environment or when there are no more super-peers to visit.

A Messenger is a mobile agent that implements remote communication between agents in different worlds. A Messenger is a very lightweight agent that will migrate to a remote environment and deliver a message to a target agent. We need Messengers to support simple jobs i.e, just send a message to a remote agent. In this way, we do not create a new type of agent for each simple job that is carried out by our system. Messengers can be used to support new simple features that require remote communication. Each environment has a messenger pool. When a Messenger arrives at an environment, it delivers the message and stays in the pool, if there is space. In this way, when an agent wants to send a remote message, it assigns the message to a Messenger from the pool unless the pool is empty, in which case a new Messenger will be created.

Subscribers, Notification Carriers, Query-Answering agents and Messengers use information from the local Router on each
super-peer environment that they arrive in order to find the address of their next destination. They use shortest paths and minimum weight spanning trees to travel in the pure peer-to-peer network of super-peers. In this way, they may ask two types of questions to a Router:

I want to migrate to all super-peers and I started from super-peer X. The answer of the local Router to this question are the IP addresses of remote the super-peers that are children in the minimum weight spanning tree of the local super-peer.

I want to migrate to super-peer X. The answer of the local Router to this question is the IP address of the remote super-peer that is its neighbor and is in the shortest path from the local super-peer to the destination super-peer X.

 

 

border graphic Services border graphic
border graphic border graphic border graphic border graphic border graphic
 
- Recent News
- Search
- Downloads
- Useful Links
- Web Mail (restricted)
- Users (restricted)
 
border graphic   border graphic
border graphic About border graphic
border graphic border graphic border graphic border graphic border graphic
 

- Technical Univ. of Crete
- ECE Department
 
border graphic   border graphic

2003 Intelligent Systems Laboratory, TUC