EECS 425: Computer Networks (Graduate Level) Score 100%. A simplified web proxy.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Ergo Proxy

EECS 425 Computer Networks Project



Bryan Marty


Enterprise networks often employ a Web proxy as an intermediary between the employee browsers and the rest of the Internet. The proxy can serve multiple roles: block inappropriate websites, monitor employee web surfing, screen incoming pages for malware, and (as mentioned in class) provide a shared cache for Web objects. In this project, you will develop a simplified Web proxy that accepts HTTP requests from browsers, generates the corresponding HTTP requests for the same objects to the origin servers and forwards the responses to the browsers.

Special Features

To save on DNS resolutions, implement internal DNS caching within the proxy: save your DNS resolutions for future use and before you need one, check if you have the required resolution in the cache. For simplicity, please ignore TTL – just reuse each resolution for the default of up to 30 seconds.