1. Implement a programming solution using network programming concepts
2. Design and evaluate client/server network programming based on TCP and IP protocol suite under Linux OS using the Sockets Network Programming Interface.
Implement a concurrent HTTP Web Server.
In this assignment you are asked to implement an HTTP client and concurrent HTTP web server
running any HTTP version of your choice, handling multiple HHTP requests at a time. This project
must be completed in C language. Your web server will accept and parse an HTTP request
message, get the requested file from the server’s file system (you must create this file as well),
create an HTTP response message consisting of the requested file preceded by appropriate message
header lines, and send the response directly to the client.
If the requested file is not present in the server, your server will send an HTTP “404 Not Found”
message back to the client.
The basic server actions;
1. Initialize the server.
2. Wait for a client connection on the port number specified by command line argument.
3. When a client connection is accepted, read the HTTP request.
4. Construct a valid HTTP response including status line, any headers you feel are
appropriate, and, of course, the requested file in the response body.