JMU
Homework Assignment 3


  1. Computers in faculty offices at JMU do not have static IP addresses. WWW browsers in faculty offices are configured in such a way that they do no caching/storing of any kind. Given these two facts, what application-layer protocols are used when a faculty member turns on her/his computer, starts a WWW browser, and requests the WWW page slashdot.org/index.html?
  2. Blackboard and e-campus both use HTTP 1.0.
    1. Why is HTTP 1.0 not a good protocol for these applications?
    2. How do they get around the problem(s) with HTTP 1.0?
  3. The "home" page of my personal WWW site contains a randomly selected picture of me (along with some text) each time it is requested. If there are 4 different possible pictures (of size 200000 bytes, 250000 bytes, 300000 bytes and 500000 bytes), the pictures are served up with different probabilities (0.30, 0.30, 0.25, and 0.15 respectively)and the HTML file is 20000 bytes, what is the expected amount of data that will be transmitted by the server. (Note: You may ignore the size of the HTTP header.)
  4. Suppose you want to develop (in the programming language of your choice) a WWW browser that will use client-side caching.
    1. Suppose, in addition, that your browser needs to be used in a general-purpose environment (i.e., one in which it might be used to retrieve/display any page on the WWW). Is it sufficient to check only the date(s) of the HTML file being retrieved?
    2. Suppose, instead, that your browser is only going to be used to retrieve/display my personal page (as described above). Which image should your browser cache (after the first time it is received)?
  5. HTTP proxy servers can be used in a variety of ways to reduce network traffic.
    1. Explain, in general, how an HTTP proxy server works.
    2. Many members of the JMU community read the NY Times online. Explain how JMU might use an HTTP proxy server to reduce the amount of traffic between JMU and the NY Times server(s).
    3. Does your answer above infringe on NY Times copyrights?
  6. Assuming that a "locate" message requires a single packet, that the network has X nodes, and that the network is completely connected, how many packets must be transmitted to locate a file:
    1. In a peer-to-peer system with a central directory.
    2. In a peer-to-peer system that uses flooding.
  7. Suppose you need to distribute a 10 gigabit file to \(N\) peers when the server has an upload rate of 30 megabits per second, each other machine has an upload rate of 0.5 megabits per second, and each other machine has a download rate of 2 megabits per second. Create a plot (e.g., using a spreadsheet) that illustrates the total time to distribute the file using a peer-to-peer system and a client-server system. Your plot must have \(N\) on the horizontal axis (for values between 1 and 30) and the time required to distribute the file on the vertical axis.
  8. Suppose that your apartment complex uses a single Internet Service Provider (ISP), and that ISP has a single, local, caching DNS server for your apartment complex. Can you (as a resident) determine if a specific WWW site (i.e., host) was accessed recently (by a resident of your complex)? Explain.

Copyright 2013