[SOLVED] C++ C math socket network CSE 325

$25

File Name: C++_C_math_socket_network_CSE_325.zip
File Size: 310.86 KB

5/5 - (1 vote)

CSE 325
Assignment Overview
Fall 2019
Computer Project #11
This assignment focuses on network programming with sockets. You will design and implement the two programs described below.
It is worth 40 points (4% of course grade) and must be completed no later than 11:59 PM on Thursday, 12/5.
Assignment Deliverables
The deliverables for this assignment are the following files:
proj11.server.makefile the makefile which produces proj11.server proj11.client.makefile the makefile which produces proj11.client proj11.server.c the source code file for your server
proj11.client.c the source code file for your client
Be sure to use the specified file names and to submit your files for grading via the CSE Handin system before the project deadline.
Assignment Specifications
The two programs will form a rudimentary package for copying a text file from one system to another.
1. The server process will create a socket, bind it to a port, and listen for connection requests on that port. It will display the full domain name and port number on the standard output stream. For example:
arctic.cse.msu.edu 55000
The server process will then repeatedly accept a connection request and a command from the client process.
2. The client process will accept two command-line arguments: the full domain name and port number being used by the server process. For example:
proj11.client arctic.cse.msu.edu 55000
The client process will repeatedly prompt the user to enter a command, accept one line of input from the standard input stream, and display that line on the standard output stream.
If the user enters a quit command (or end-of-file), the client process and the server process will both halt.
If the user enters a get command, the client process will request a connection to the server process; the server process and the client process will cooperate to copy the requested file from the servers system to the clients system. After the file has been copied, the connection will be closed.
3. Both processes will perform appropriate error-handling.

4. The format of a get command is show below:
get remote-file local-file
where remote-file is the relative or absolute pathname of a file on the servers system and local-file is
the relative or absolute pathname of a file on the clients system. For example:
get socket.c mycopy.c
get /user/include/math.h math.h get socket.c /tmp/socket.c
There will be one or more white space characters (blanks and tabs) between tokens; there may be any number of white space characters before the first token or after the last token.
In response to a get command, the server process will use a socket to send the contents of remote-file to the client process; the client process will store the contents in local-file.
Assignment Notes
1. As stated above, your source code files will be named proj11.server.c and proj11.client.c; those source code files may contain C or C++ statements.
2. You must use g++ to translate your source code files in the CSE Linux environment.
3. Be sure to echo print each line of input entered by the user in your client program. Your project solution will be tested with input redirection, so the lines of input will not automatically be displayed as they would be when entered at the keyboard. For example, the following command might be used to execute your client:
proj11.client arctic.cse.msu.edu 55000 < test14. Be sure to test you solution in several different ways. For example, execute your server program and your client program on the same CSE server, then execute the two programs on two different CSE servers.5. If you display any debugging information during the development process, you would be wise to execute your server program and client program in different terminal windows.

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] C++ C math socket network CSE 325
$25