CS107 assignment, due Monday, 10/14

Answer the following questions in a Notepad document called gopher.txt, that you store on your K drive. When you are finished, submit it to your S:\Students\homework\cs107 folder.

For some of the gopher-related questions, you will need to refer to RFC 1436. For some of the others, you might try using a search engine such as Google to find relevant information.

  1. What is ISOC? What is the URL of its web site? Where are its offices? What services does it provide?

  2. What does the IETF do? If you wanted to attend one of its meetings, what would you have to do?

  3. What does the IANA do?

  4. Who is/was Jon Postel?

  5. IP addresses are allocated to organizations in various sized blocks known as Class A, Class B, and Class C addresses. Many years ago, Carleton was granted control over all the IP addresses that begin with 137.22.

    1. Which class of IP address does Carleton have?
    2. How many different IP addresses does Carleton control?
    3. What is the IP address of blum.mathcs.carleton.edu (the computer in CMC 206)?

  6. Unicode characters are stored as 16-bit integers. What 16-bit integer is used to represent the lowercase omega from the Greek alphabet? (Try looking at www.unicode.org.) What is the base-ten value of this integer?

  7. Where and when was the gopher protocol developed?

  8. The Gopher Manifesto argues in favor of abandoning HTTP for most purposes and returning to widespread use of gopher. List three arguments made by the manifesto's author in favor of gopher.

  9. Section 2 of RFC 1436, The Internet Gopher Protocol gives some examples of the interaction between a gopher client and a gopher server.

    1. What happens if a gopher client opens a TCP connection to a gopher server on port 70, and then sends a blank line (that is, a carriage return character followed by a linefeed character, better known as CRLF)?
    2. Using Putty, connect to prism.mathcs.carleton.edu, port 70, raw. Remember to select the option to never close the window on exit. This will open a connection to the gopher server running on prism. Maximize the window, then hit Enter. What are the first four lines of text the server sends back to you?
    3. Look at the first line of text you received from prism's gopher server. Somewhere inside this line is the information that you need to obtain the top gopher listing from the main gopher server at the University of Minnesota. Using Putty, obtain the U of M's main gopher page. What are the steps you needed to follow to use Putty to obtain the U of M's main gopher page? What text did it send back to you?
    4. Look again at the original information you received from prism in step 2. This text tells you how to retrieve the file named "rfc2100.txt". Describe exactly how you would retrieve this file using only Putty.
    5. Use Mozilla to go to gopher://prism.mathcs.carleton.edu/. Note that some of the entries on this page are displayed using folder icons, and some are displayed with piece-of-paper icons. Mozilla constructs the display of this page out of the same text you retrieved by sending CRLF to prism's gopher server. How is Mozilla able to decide which lines get a folder icon, and which lines get a piece-of-paper?