Question
Problem: Create a web proxy server that can be connected by a single client and would only allow http requests. The proxy server should be
Problem: Create a web proxy server that can be connected by a single client and would only allow http requests. The proxy server should be able to cache up to five recent websites. Requirements:
1. Create a C/ Java based client-server architecture using sockets
2. The proxy server should be able to accept and service single clients http requests
3. The server should be run on cse01.cse.unt.edu machine and the clients should be run on any machine between cse02.cse.unt.edu and cse06.cse.unt.edu. The IP address of cse01.cse.unt.edu is 129.120.151.94 4. The proxy server should be able to cache at least five recent requested webpages, if available
Procedure:
1. Create a C/ Java based server that can accept single clients request using socket
2. The created proxy server should also be able to connect to the client requested website through port 80
3. Make sure the proxy server runs on cse01.cse.unt.edu and the format to start the proxy server is: pserver where pserver is the proxy server executable and port_number is the port number on which the proxy server listens
4. Create a C/ Java based client that can connect to the proxy server using socket
5. Make sure the client runs on any of the CSE machines between cse02.cse.unt.edu and cse06.cse.unt.edu, and connects the proxy server. The user can request the desired web page using the format given below: client url: where client is the client executable, port_number is the port number on which the client connects the server and url is the requested URL
6. Once the proxy server gets a request from the client, it then forwards the request to the web server.
7. The proxy server checks for the response from the web server
8. If the HTTP response is 200, the returned web page from the web server is cached in the proxy server. The proxy server stores the webpage in a file and assigns a filename based on the URL (eg. www.google.com).
9. A list file (list.txt) will store the URL of the webpage
10.The list file stores five recent URLs. The cached websites that are not listed in the list file should be deleted
11.Once the returned web page is cached, the web page is forwarded to the client. Verify to see if the returned page is same as the browser returned page
12.If the HTTP response is not 200, do not cache the web page instead forward the HTTP response to the client
13.Test web caching by accessing multiple websites
14.A sample list.txt file is available on Blackboard for reference Instructions: Compile your programs (both client and server) and make sure they are working.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
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