Create a client and a server that communicate message queues

Assignment Help Computer Networking
Reference no: EM131108678

Lab 2 will require you to create a client and a server that communicate over either message queues, sockets, or a well known fifo. The data passed will be a simple request/response in string format.

Each of the 3 methods will need to answer the problem of rendezvous in their own way.

Suggested algorithms:

Message Queues -

Server will listen specifically to a single key and respond to clients based on a key that was passed in the message to the server.

Well Known FIFOs -

Since Well Known FIFOs are "file" based and will require a name (hence the "well known" part), you should create a common header that defines the server read/ client write FIFO as a const string for both. The server will respond to the client based on data passed through the Well Known FIFO to the server.

Sockets -Every socket requires a tuple on both sides. Tuple being the IP address / Port

/ Protocol. Since sockets require "root" access for ports less than 1024, choose a port greater than 1024 for the server. Just like the well known fifo, you should create a common header file with a const integer for the server port number. Unlike the other IPC methods, the client and server in a socket dynamically exchange the path back to the client, so there is no need to "pass" that data to the server.Once you have chosen your method of communication, then define a simple dataset that can be used in a request / response loop. Examples could be that you have an array of phone numbers, and when the phone number is sent to the server it will respond with the person's name associated with that phone number. Any simple dataset with at least a name=value pair will work as long as you can look up the value based on the name. Simple structures with a simple searching algorithm up tousing hash maps or search tree libraries are all ok. This assignment is more about the IPC and the semaphore than the dataset. So even something as simple as the process environment is fine (doesn’t get any easier than that…)

Your server will listen to incoming requests and then respond according to the client connection algorithm. You will also be required to add 3 server threads that will all block and wait to receive the client request based on a semaphore. Although the 3 methods of IPC all are based on queues, we will be adding a semaphore to only allow 1 thread to pull/pop a request from the queue, and once the request is taken by one of the 3 server threads, then it will release the semaphore allowing the other threads to take the next request from the queue.

Here is an example of how the semaphore will work…

You see 3 server threads T1, T2, and T3. Only one can be receiving from the Server FIFO Queue at a time, so the semaphore will lock out the other 2. When the T2 thread takes the request off the Server queue, it will immediately unlock the semaphore so the other threads can block for the next request on the queue. Right after the T2 thread unlocks the semaphore it will then process the request and send the response back to the client via the Client FIFO queue and then go back to request the semaphore and block until it gets the unlock from the semaphore and then blocks for the next request from the Server FIFO QUEUE.

Reference no: EM131108678

Questions Cloud

High unemployment and excess industrial capactiy : By using clearly labeled AS and AS curves to illustrate your points, discuss the impacts of the following events on the equilibrium price level and equilibrium level of output in the short run. An expansionary fiscal policy with the economy operating..
Which school of philosophy survived unscathed : During the Qin dynasty, books were burned. These books particularly included philosophical treatises and other related literature. Which school of philosophy survived unscathed
Who was this 4th century qin prime minister : Of all the men who built up the state of Qin during the period one man's fame was rivaled only by that of the First Emperor himself. Who was this 4th Century Qin prime minister
Growth of the labor force helping to prevent inflation : How is the growth of the labor force helping to prevent inflation? support the answer with a graph. What would happen if aggregate demand continued to expand but the growth of the labor force slowed? how would this situation be depicted graphically?
Create a client and a server that communicate message queues : Lab 2 will require you to create a client and a server that communicate over either message queues, sockets, or a well known fifo. The data passed will be a simple request/response in string format.
Prepare the journal entry to record income tax expense : Assuming there were no temporary differences prior to 2010, indicate how deferred taxes will be reported on the 2012 balance sheet. Gordon's product warranty is for 12 months.
Find the scattering parameters for the four-port bagley : Find the scattering parameters for the four-port Bagley polygon power divider shown below.
Promising for keeping up with the advances : What handheld forensic software is the most promising for keeping up with the advances in technology?
Practice of project risk and procurement management : This is an individual assignment worth 50% of the module mark. Word length 3000 words (do notexceed word limit). Do not include the abstract, table of contents, or References in the word count.

Reviews

Write a Review

Computer Networking Questions & Answers

  Networking and types of networking

This assignment explains the networking features, different kinds of networks and also how they are arranged.

  National and Global economic environment and ICICI Bank

While working in an economy, it has a separate identity but cannot operate insolently.

  Ssh or openssh server services

Write about SSH or OpenSSH server services discussion questions

  Network simulation

Network simulation on Hierarchical Network Rerouting against wormhole attacks

  Small internet works

Prepare a network simulation

  Solidify the concepts of client/server computing

One-way to solidify the concepts of client/server computing and interprocess communication is to develop the requirements for a computer game which plays "Rock, Paper, Scissors" using these techniques.

  Identify the various costs associated with the deployment

Identify the various costs associated with the deployment, operation and maintenance of a mobile-access system. Identify the benefits to the various categories of user, arising from the addition of a mobile-access facility.

  Describe how the modern view of customer service

Describe how the greater reach of telecommunication networks today affects the security of resources which an organisation provides for its employees and customers.

  Technology in improving the relationship building process

Discuss the role of Technology in improving the relationship building process Do you think that the setting of a PR department may be helpful for the ISP provider? Why?

  Remote access networks and vpns

safekeeping posture of enterprise (venture) wired and wireless LANs (WLANs), steps listed in OWASP, Securing User Services, IPV4 ip address, IPV6 address format, V4 address, VPN, Deploying Voice over IP, Remote Management of Applications and Ser..

  Dns

problems of IPV, DNS server software, TCP SYN attack, Ping of Death, Land attack, Teardrop attack, Smurf attack, Fraggle attack

  Outline the difference between an intranet and an extranet

Outline the difference between an intranet and an extranet A programmer is trying to produce an applet with the display shown in Figure 1 below such that whenever one of the checkboxes is selected the label changes to indicate correctly what has..

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