Web Proxy Cache: DESIGN.txt

 

Group Member 1:  <Name and NetId>

Group Member 2: <Name and NetId>

 

·        Introduction: <Is the proxy implementation complete? How, if any, was the work split between group members? >

 

·        Algorithm and Design: <A high level algorithm.  It should illustrate the execution of your code, although at a high level.  Give the complete algorithm even if your implementation was not complete.  This section should be described in 3 paragraphs, one for each phase.  You should answer the following questions in the corresponding paragraphs: 1. How are sockets used for the basic implementation of the proxy? 2. What could be the possible problems in receiving images correctly from a web server? 3. How is synchronization handled in a multithreaded web proxy? 4. How was thread pooling implemented, if it was? 5. What data structure was used for the cache? 6. How was the cache replacement policy implemented, along with the use of the Expires header? 7. What would happen if the Expires header was not present in the response? These are the basic questions that need to be answered.  Other high-level design decisions should also be mentioned in these 3 paragraphs.  >

 

·        Optional Features Implemented (if any): <The design used to implement any optional features in the proxy, i.e. those listed  in the README.txt >

 

·        Error Analysis: <A listing of the errors encountered, and your own diagnosis! >

 

·        Conclusion: <How efficient is the proxy implementation and how, if possible, could you improve it? >