Assignment 1

Due Wednesday, September 21, 2011 5:15pm in class
(at the start of recitation)

Introduction

Please answer the questions precisely and concisely. You may need to do a bit of web surfing for many of these questions. Every question can be answered in one or at most a few sentences. I will not have the patience to read long paragraphs or essays and you may lose credit for possibly correct answers.

Write neatly (or type). If I have to struggle to figure out what you wrote, you will lose credit. Type your answers if your penmanship is poor.

In the "I shouldn't have to tell you this" department... Should you feel the need to use multiple pages, please fasten the sheets securely. Use a stapler or other permanent fastener. Avoid paper clips since sheets can slide out.

Reading

The Design Philosophy of the DARPA Internet Protocols, by David D. Clark
For questions 1 through 4. This is dated material but covers the thinking behind today's IP networks.
Computer Networks And Internets, PART III: Packet Switching and Network Technologies, by Douglas E. Comer
Question 5
Computer Networks And Internets, Part V: Other Aspects of Computer Networking, by Douglas E. Comer
Questions 6 through 8. See also here for DiffServ.

Questions

  1. What was the primary goal in the design of the Internet Architecture?
  2. What was discovered to be the greatest source of jitter (variation in delay) on an IP network?
  3. This observation led to the development of what protocol?
  4. Why was it decided that IP protocols should not take advantage of capabilities of underlying physical networks, such as reliable delivery?
  5. What are the three properties of packet switched networking?
  6. What is jitter?
  7. What is an isochronous network?
  8. What is the purpose of differentiated services (DiffServ) on IP?
    1. The connect system call would seem to make no sense for datagram sockets since they have no concept of a connection. What does connect do for datagram sockets?
    2. Why would the read and write calls be unusable on datagram sockets without a connect?
    All the answers you need are in the on-line man pages - use the man 2 connect command on most Unix/Linux/OS X systems (or look here). Also, look at the UDP man page.