Distributed system, Computer Networking

Assignment Help:

You should develop a system consisting of an application acting as a broker and several agents that need to communicate between them. The agents can only communicate in pairs (i.e. each agent can only communicate with one agent at the time). At any given time, several agents should be able to communicate in pairs. Each agent is controlled by a user. Each agent takes a message from the user and sends it to another agent or displays the message it receives to the user. The broker will keep an updated list of agents who have registered themselves as available for connection. The broker will also keep a list of agents that are connected and their status (i.e. are they available for communication? are they already busy communicating and then temporary unavailable for communication?, etc). If requested, the broker should make this information available to the agents. In this way, an agent can specify another agent it wishes to communicate with. Each agent can run on a different machine. Once two agents have agreed to communicate, messages should be routed directly from one agent to the other without using the broker as intermediary. Each agent should allow the user to:

  1. Get a list of every user connected and waiting to start a communication session from the broker.
  2. Decide with whom the user can start a communication session (among the other available users).
  3. Decide when to end the connection.
  4. Send and receive messages from the other user.

In your report you should outline the major issues involved in this application pertaining to distributed systems (such as possible communication protocols that will be used in the system, concurrency control a justified selection of the architecture on which a prototype system may be based, the application you have built (design, implementation, evaluation etc).

Your program must be based on the case study scenario listed above and any assumptions you had to make. Please clearly state your assumptions.


Related Discussions:- Distributed system

Compute the number of lost packets of the down-stream, A mobile host (MH) i...

A mobile host (MH) is connected to a WLAN access network that uses MIP for mobility support. Consider that the RTTs between MH and HA are 0.3s while RTTs within a L2 subnet are 80

What is the purpose of configuration files for servers, Question 1: a) ...

Question 1: a) Give three examples of Shells in Linux. b) Differentiate between the Join command and the Paste command in Linux, use an example to support your answer.

Metrics for performance evaluation, Metrics For Performance Evaluation ...

Metrics For Performance Evaluation In this section, we would highlight different kinds of metrics involved for analyzing the performance of parallel algorithms for parallel co

Explain sonet frame transaction, Sonet Frame Transaction Transmitted ...

Sonet Frame Transaction Transmitted one subsequent to another without any gap in between. First 2 bytes - alignment bytes. F628 in Hex. - define the beginning of every

Differentiate lan and wan, Question 1 Differentiate LAN and WAN Questi...

Question 1 Differentiate LAN and WAN Question 2 Explain the TCP/IP Reference Model with diagram Question 3 Describe Circuit switching and message switching Question

State about the international standardization, State about the internationa...

State about the international standardization There are many examples, certainly. Some systems for which there is international standardization include compressed disc players

Show the application layer responsibilities, Q. Show the Application Layer ...

Q. Show the Application Layer Responsibilities? - Make possible user access to the network - User interfaces as well as support for services such as E-Mail File

Programming based on data parallelism, Programming Based on Data Parallelis...

Programming Based on Data Parallelism In a data parallel programming model, the focus is on data distribution. Every processor works with a portion of data. We shall discuss on

State the steps to provide more computing power, State the Steps to provide...

State the Steps to provide more computing power In order to provide more computing power, the following steps may be taken: Add more processing power by addition of more

Line layer - sonet sdh , Line Layer The line layer provides the synchr...

Line Layer The line layer provides the synchronization multiplexer, multiplexing and automatic  protection switching for the layer . primary  concerned with the  reliable trans

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd