Sale!

Assignment 1 Client-Server communication

$30.00 $18.00

Category: You will Instantly receive a download link for .zip solution file upon Payment || To Order Original Work Click Custom Order?

Description

5/5 - (5 votes)

Goal: Client-Server communication

There are two parts (A & B) in this assignment. You can implement the assignment in Java, C, C++, C#, or Go. Do not use any HTTP libraries and limit yourself to the TCP and standard IO libraries.

Part A (50%) Crawler

Write a program called crawler that accepts two command line arguments. The first argument is a URL and the second a number.

If the number is zero or smaller, the crawler will fetch the HTML page associated with the URL and print each URL found in the web page.

If the number is 1 or higher, the crawler will fetch the HTML page associated with the URL and call execute crawler (number – 1) for each URL found in the web page.

Part B (50 %) Server

Write a program called server that accepts one command line argument. The argument specifies the absolute path to a directory which contains one or more HTML web-pages.

If a HTTP client connects to your server and requests a web-page, your server will search the provided directory for the requested web-page. If the pages can be found send it together with the appropriate response to the client. If the page cannot be found send the appropriate response to the client.

Marking:

Please present your assignment at the tutorials for marking to the TA. You can also present the assignments to the class instructor.