Question
I need help abput program for this project Project Description This project requires students to implement an iterative (single-threaded) server for use in a client-server
I need help abput program for this project
Project Description
This project requires students to implement an iterative (single-threaded) server for use in a client-server configuration to examine, analyze, and study the effects an iterative server has on the efficiency (average turn-around time) of processing client requests.
Instructions
Students may refer to this Java ServerSocket Tutorial (Links to an external site.) and Running System Commands Tutorial (Links to an external site.) to help them create the server and client programs. Students must demonstrate their client and server programs, as well as collect data, using the provided Course Servers. Students should refer to the Accessing the Course Servers page for instructions on connecting to and using the two (2) Course Servers.
Examples of how to implement multi-threading in C may be found here (Links to an external site.) and here (Links to an external site.).
Examples of how to implement multi-threading in Java may be found here (Links to an external site.).
- Create two (2) programs: 1) an iterative (single-threaded) server that accepts requests from clients, and 2) a multi-threaded client capable of spawning numerous client sessions that connect to the server
- The server and client programs must connect to the same network address and port
- The iterative (single-threaded) server should handle one client request at a time (serially)
- The Java ServerSocket object caches client requests automatically
- The iterative (single-threaded) server must support the following client requests:
- Date and Time - the date and time on the server
- Uptime - how long the server has been running since last boot-up
- Memory Use - the current memory usage on the server
- Netstat - lists network connections on the server
- Current Users - list of users currently connected to the server
- Running Processes - list of programs currently running on the server
- Create a multi-threaded client that transmits requests to the server on a specified network port
- The client program must be able to spawn multiple client sessions
- When the server program is launched, the server should
- Listen for client requests on the specified network address and port
- When a client request is received, the server should
- Determine which operation is being requested
- Perform the requested operation and collect the resulting output
- Reply to the client request with the output from the operation performed
- Perform any necessary clean up activities
- Go back to listening for client requests
- When the client program is launched, the client should
- Request the network address and port to which to connect
- Request the operation to request (refer to the list above)
- Request how many client requests to generate (1, 5, 10, 15, 20 and 25)
- Collect the following data
- Turn-around Time (elapsed time) for each client request
- The time required for the client request to travel to the server, be processed by the server, and return to the client
- Total Turn-around Time (sum of the turn-around times for all the client requests)
- Average Turn-around Time (Total Turn-around Time divided by the number client requests)
- Turn-around Time (elapsed time) for each client request
Deliverables
Program (75 points)
The source code, as well as any other software required, of the client and server programs.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
The question is complete containing specific requirements for the implementation of an iterative singlethreaded server and a multithreaded client Heres a stepbystep guide on how to approach this proje...Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started