C programming

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 six recent website.

Instructions: Compile the C programs in one of the CSE (cse01 – cse06) servers and make sure it’s working. Comment your code. Create a Makefile to compile the source code and to clean the binaries. Create a readme file that describes how to compile, execute, and test the code. Create an assignment folder with folder name as euid_PA2 (example: xyz0202_PA2) and add all the source files, Makefile, and the readme file to the folder. Please create a zip archive of your assignment folder and upload the zip file to Canvas.  Not following the above instructions could result in not accepting your programming assignment. Late submissions are not allowed.

Don't use plagiarized sources. Get Your Custom Essay on
C programming
Just from $13/Page
Order Essay

Objective:

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 six recent websites.

Requirements:

1. Create a C-based proxy server and a client using TCP sockets

2. The proxy server should be able to accept and service single client’s http requests

3. The proxy server should be able to process the client’s request and forward the response to the client

4. The proxy server should run on cse02.cse.unt.edu machine and the client should run on cse03.cse.unt.edu machine

5. The proxy server should be able to cache at least six (6) recent requested webpages, if available

6. When a http request is made to a website that is cached, the proxy server should return the cached page.

Procedure:

1. Create a C-based server that can accept single client’s request using TCP sockets

2. The created proxy server should also be able to process the client HTTP request

3. Make sure the proxy server runs on cse02.cse.unt.edu and the format to start the proxy server as follows

./pyserver

where pyserver is the proxy server executable and port_number is the port number on which the proxy server listens

4. Create a C-based client that can connect to the proxy server using TCP sockets

5. Make sure the client runs on cse03.cse.unt.edu and connects to the proxy server. The user can request the desired web page using the below format

./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 starting with www

6. Once the proxy server gets a request from the client, it checks the cache for the requested page. If the page is not found in the cache, then it forwards the request to the web server. Figure 1 shows the overall architecture

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 time of visit. The filename format is YYYYMMDDhhmmss. Where YYYY is the year, MM is the month, DD is the day, hh is the hour in 24-hour format, mm is the minutes, and ss is the seconds when the website was visited

9. A list file (list.txt) is created which stores the URL of the webpage and the associated cached web page filename

10. The list file stores six (6) recent URLs. The cached websites that are not listed in the list file should be deleted from the list file and the cache

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. When the client requests a webpage that is in the list.txt file (cached) the stored page is returned

14. Test web caching by accessing multiple websites. Most websites are not http websites so only select http websites. Some http websites are given

here (Links to an external site.)

15. A sample list.txt is shown below.

www.google.com 20210210090000

www.example.com 20210210090200

www.weevil.info 20210210090300

Deliverables:

1. Commented server and client C code

2. A Makefile to compile (make) the source code and to clean (make clean) the binaries

3. A readme file that describes how to compile, execute, and test the code.

4. Create an assignment folder with folder name as euid_PA2 (example: xyz0202_PA2) and add all the source files, Makefile, and the readme file to the folder. Please create a zip archive of your assignment folder and upload the zip file to Canvas.

What Will You Get?

We provide professional writing services to help you score straight A’s by submitting custom written assignments that mirror your guidelines.

Premium Quality

Get result-oriented writing and never worry about grades anymore. We follow the highest quality standards to make sure that you get perfect assignments.

Experienced Writers

Our writers have experience in dealing with papers of every educational level. You can surely rely on the expertise of our qualified professionals.

On-Time Delivery

Your deadline is our threshold for success and we take it very seriously. We make sure you receive your papers before your predefined time.

24/7 Customer Support

Someone from our customer support team is always here to respond to your questions. So, hit us up if you have got any ambiguity or concern.

Complete Confidentiality

Sit back and relax while we help you out with writing your papers. We have an ultimate policy for keeping your personal and order-related details a secret.

Authentic Sources

We assure you that your document will be thoroughly checked for plagiarism and grammatical errors as we use highly authentic and licit sources.

Moneyback Guarantee

Still reluctant about placing an order? Our 100% Moneyback Guarantee backs you up on rare occasions where you aren’t satisfied with the writing.

Order Tracking

You don’t have to wait for an update for hours; you can track the progress of your order any time you want. We share the status after each step.

image

Areas of Expertise

Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.

Areas of Expertise

Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.

image

Trusted Partner of 9650+ Students for Writing

From brainstorming your paper's outline to perfecting its grammar, we perform every step carefully to make your paper worthy of A grade.

Preferred Writer

Hire your preferred writer anytime. Simply specify if you want your preferred expert to write your paper and we’ll make that happen.

Grammar Check Report

Get an elaborate and authentic grammar check report with your work to have the grammar goodness sealed in your document.

One Page Summary

You can purchase this feature if you want our writers to sum up your paper in the form of a concise and well-articulated summary.

Plagiarism Report

You don’t have to worry about plagiarism anymore. Get a plagiarism report to certify the uniqueness of your work.

Free Features $66FREE

  • Most Qualified Writer $10FREE
  • Plagiarism Scan Report $10FREE
  • Unlimited Revisions $08FREE
  • Paper Formatting $05FREE
  • Cover Page $05FREE
  • Referencing & Bibliography $10FREE
  • Dedicated User Area $08FREE
  • 24/7 Order Tracking $05FREE
  • Periodic Email Alerts $05FREE
image

Our Services

Join us for the best experience while seeking writing assistance in your college life. A good grade is all you need to boost up your academic excellence and we are all about it.

  • On-time Delivery
  • 24/7 Order Tracking
  • Access to Authentic Sources
Academic Writing

We create perfect papers according to the guidelines.

Professional Editing

We seamlessly edit out errors from your papers.

Thorough Proofreading

We thoroughly read your final draft to identify errors.

image

Delegate Your Challenging Writing Tasks to Experienced Professionals

Work with ultimate peace of mind because we ensure that your academic work is our responsibility and your grades are a top concern for us!

Check Out Our Sample Work

Dedication. Quality. Commitment. Punctuality

Categories
All samples
Essay (any type)
Essay (any type)
The Value of a Nursing Degree
Undergrad. (yrs 3-4)
Nursing
2
View this sample

It May Not Be Much, but It’s Honest Work!

Here is what we have achieved so far. These numbers are evidence that we go the extra mile to make your college journey successful.

0+

Happy Clients

0+

Words Written This Week

0+

Ongoing Orders

0%

Customer Satisfaction Rate
image

Process as Fine as Brewed Coffee

We have the most intuitive and minimalistic process so that you can easily place an order. Just follow a few steps to unlock success.

See How We Helped 9000+ Students Achieve Success

image

We Analyze Your Problem and Offer Customized Writing

We understand your guidelines first before delivering any writing service. You can discuss your writing needs and we will have them evaluated by our dedicated team.

  • Clear elicitation of your requirements.
  • Customized writing as per your needs.

We Mirror Your Guidelines to Deliver Quality Services

We write your papers in a standardized way. We complete your work in such a way that it turns out to be a perfect description of your guidelines.

  • Proactive analysis of your writing.
  • Active communication to understand requirements.
image
image

We Handle Your Writing Tasks to Ensure Excellent Grades

We promise you excellent grades and academic excellence that you always longed for. Our writers stay in touch with you via email.

  • Thorough research and analysis for every order.
  • Deliverance of reliable writing service to improve your grades.
Place an Order Start Chat Now
image

Order your essay today and save 30% with the discount code Happy