Host cache agents, Computer Engineering

Your task is to program software agents able to send and receive messages according to the two Gnutella protocols above.

Your solution should have two types of agents: 

  •  Agents to simulate host caches - host caches supply information about which servent(s) are available. 
  •  Agents to simulate servents - servents come and go; when they go, they must let the host caches know about it. The fist time a servent connects to the network, they interact with the host cache agents as below, then they interact with other servents.

Host Cache Agents

You should program a host cache agent to behave as follows: 

1.  The first time a servent enters the network, it interacts with the host cache to "introduce" itself. The host cache should keep a record of all servents, and their status (online or offline). The host cache should be able to detect when a servent is returning or if it is its first time connecting to the network 

2.  After the registration is finished (if it is the first time the servent joins the network) or after updating the status of the servent (if a returning servent), the host cache supplies the servent with another servent id; these two servents interact as explained below.  The number of host caches is fixed; you are free to choose how many, but it should be more than one. Notice that the host caches are exactly the same, that is, they behave in the same and they only differ in their ids and the servents they have in their records. 

Servent Agents

You should program a servent agent to behave as follows:

1.  The servent initially interacts with the host cache agents to obtain one (1) servent it can "ping". If this is its first time joining the network, the host cache "registers" the new servent. 

2.  In possession of one servent id, the servent agent uses the "ping-pong" protocol to find out at most 4 (four) other servents (this number includes the servent whose if the host cache provided). This step should ensure each servent ends up with 4 neighbours

3.  When a servent agent receives a ping from another agent, it replies with a pong, but also forwards the "ping" message to one of its neighbours, as explained in our lectures. This forwarding of "ping" messages should go on for 3 "hops", guaranteeing that the servent that initiates the protocol ends up with 4 neighbours. 

4.  After the servent agent gets to "know" other servents, then it should search for a number of files. 

5.  The search should have a "TTL" (time-to-live) of n hops, where n is a parameter of the system (that is, it should not be hardcoded). The search should follow the peer-to-peer "flooded request" search algorithm, studied in our lectures.

Posted Date: 2/25/2013 12:17:55 AM | Location : United States







Related Discussions:- Host cache agents, Assignment Help, Ask Question on Host cache agents, Get Answer, Expert's Help, Host cache agents Discussions

Write discussion on Host cache agents
Your posts are moderated
Related Questions
TRP is the number of clock cycles required to terminate access to an open row of memory, and open access to the next row. It stand for row precharge time.

Explain the action of an interrupt processing routine? Action of an interrupt processing routine is as follows : 1. Save contents of registers of CPU. This action is not e

What is domain analysis? Domain analysis is concerned with devising a precise, concise, understandable and correct model of the real world. Analysis starts with problem statem

What criteria should be adopted for choosing type of file organization. Selecting a file organization is a design decision; therefore it must be done having in mind the achieve

Question (a) A 500 MHz Pentium III processor takes 2 ms to run a program with 200,000 instructions. A 300 MHz UltraSparc processor takes 1.8 ms to run the same program with 23

Advntages of parallel processing oversequential computation Parallel computing has the following benefits over sequential computing: i)    Accumulate time ii)   Solves b

E xplain the working of thousand line exchanges by u sing a combination of uniselectors and two motion selectors. The schematic diagram for such an exchange is demonstrated i

write a program insert and remove value in queue.

These will be independent of each other and will not affect to each other, and so they can be fed into two different implementations units and run in parallel. The ability to remov

Q. System Development and Data Administration? System Development: In traditional business systems analysts and programmers are organized into permanent teams which support i