Michael J. O'Donnell (Mike)

The Teacher

Courses

Strategic Choices in Designing the Internet

Exercises


Exercises and grading

Please write all of your exercises in English.

To achieve a good grade (80-89), you must do good work on all of the required exercises. You may work on the exercises during and after lunch each day, from 12:00 to 14:00. When we resume class at 14:00, you should ask questions to resolve any remaining confusion about the exercises. Then you may finish them after class, and send in your work the next morning before 9:00 AM by email to xiangsen@ustc.edu.

You should discuss the required exercises as much as you like with your classmates, but write up the results by yourself.

The required exercises demand a small amount of thought and analysis, but they are not supposed to be tricky or long. A typical answer should take 2 lines or 1/2 page. If you write more than 1 page for a required exercise you are probably wasting words.

To achieve a top grade (90-100), you must do good work on all of the required exercises, and also turn in some very good work on at least 1 of the optional advanced exercises. You may send in advanced work by email to xiangsen@ustc.edu any time before midnight on Monday 20 July.

You must work on the advanced exercises by yourself, and turn in your own individual ideas.

To qualify for a top grade your advanced work must provide some interesting insight. It is not sufficient to just understand the class discussion, and to write work without major errors. The work should still be short: typically 1-2 pages per exercise. Presenting insight briefly is better than writing a lot of small observations.

Required exercises
Saturday 10 July
  1. Exercise 1, p. 355 in P&D. You may find information on the second part of the question in RFC1812. It is exercise 1,p.233 in the Chinese Edition (CE).

  2. Exercise 11, p. 357 in P&D (very simple answers). It is excercise 9 ,p.234 in CE.

  3. Exercise 14, p. 357 in P&D. It is exercise 11,p.234 in CE.

  4. First question in exercise 35, p. 365 in P&D. I don't think there are any very good answers to second question, so skip it.It is exercise 28,p237 in CE.

  5. Exercise 49, p. 369 in P&D. It is exercise 41,p240 in CE.

Sunday 11 July
  1. Exercise 49 from yesterday illustrates a conflict in the IP address hierarchy. Efficient forwarding tables in routers require a hierarchy based on network topology, which is roughly equivalent to "geography" as mentioned in exercise 49. Efficient administration of IP numbers requires a hierarchy based on organizational structure, so that different (sub)organizations may assign IP numbers independently.

    Suppose that a small internet has a simple topological/geographical structure: 25 closely connected collections of subnets, each of which is very far from the others. Suppose that there are 100 independent organizations, each one controlling a large number of hosts and subnets within this internet. What arrangement of each organization's hosts requires the smallest number of subnets? What is that number? What arrangement of each organization's hosts requires the largest number of subnets? What is that number?

  2. Suppose you have implemented intermediate acknowledgment and retransmission for a particular segment of the Internet. You must choose a length of time W to wait for acknowledgment before retransmitting, and also a number of times N to retransmit before giving up. What are the bad effects of setting each of these numbers too low, or too high? Extra credit if you can give some approximate formulas to describe the consequences of setting W and N.

  3. Exercise 6, p. 522 in P&D.It is exercise 6,p.338 in CE. Consider the arrangement of hosts H and routes R and R1 in the Figure.All links are full-duplex,and all routers are faster than their links.Show that R1 cannot become congested,and for other router R we can find a traffic pattern that congests that router alone.

Saturday 17 July
  1. Exercise 46b, p. 531 in P&D. It is exercise 42b,p.343 in CE. Consider the taxonomy of Figure 6.23. (b) Explain why you might expect a loss-tolerant application to be at least somewhat rate adaptive.

  2. The name server for a zone is not required to be in a subnet associated with that zone. It may be anywhere on the Internet. Remote name servers are often used by zone owners who lack the staff to administer a name server, or lack sufficiently reliable systems.

    Suppose that adminstrative staff and reliable systems are not a question, and that you are locating a name server purely for good network performance in DNS query resolution. Describe a situation in which it is more efficient to keep the name server within its own zone. Describe another situation in which it is more efficient to have a remote name server.

  3. Suppose that you have reliable knowledge that example.com is a domain name belonging to a company you wish to contact. You send a DNS query for example.com to a nearby name server, and soon after you receive a reply mapping it to the IP address a.b.c.d. Suppose that all DNS software works correctly. Describe briefly how an attacker might give you his own IP address instead of the one really belonging to example.com, if he can insert his own data into any one of the name servers involved in answering your query. (If he can insert into the .com server, he can insert his address directly, but mention how he may do it through any other server that processes the query.)

    Suppose that you do a reverse DNS lookup of a.b.c.d, and it resolves to example.com. Why doesn't that make you more secure against misdirection?

Sunday 18 July
  1. Suppose that a small set of DNS zones are all using remote name servers outside of their own zones, and are not storing A (address) records for the name servers as glue. Describe a simple sequence of operations that could lead to a cycle in the graph that connects each zone to the zone containing its name server. Which domain names become unreachable as a result?

  2. For a chain of trust to provide strong reliability each agent in the chain must verify the identity of the next agent in the change. But this is not enough. He must also verify that the next agent is competent to participate in the chain. There are at least two important competences to verify: one of them is a kind of technical competence in network security, and the other is not so technical. Describe each one in a short sentence.

  3. Sometimes the same message should be signed by more than one secret key. There are at least two natural ways to do this:

    1. Encode a single certificate with all of the secret keys in some chosen order.

    2. Encode a separate certificate with each secret key.

    Each method has a different technical advantage. Describe each advantage briefly.

Optional advanced exercises
  1. Any of the following from the study questions: 2, 4, 5, 9, 10, 11.

  2. Any of the following from P&D: 23 or 33 in chapter 4; 3 in chapter 6 (with formulae).

    Excercise 23 in Chapter 4:Consider the simple network in Figure 4.50,in which A and B exchange distance-vector routing information.All links have cost 1.Suppose the A-E link fails.(a)Give a sequence of routing table updates that leads to a routing loop between A and B.Estimate the probability of the scenarioin (a),assuming A and B send out routing updates at random times,each at the same average rate.(c)Estimate the probability of a loop forming if A broadcasts an updated report within 1 second of discovering the A-E failure,and B broadcasts every 60 seconds uniformly. The figure is just like this: E-----A------B

    Excercise 33 in chapter 4 is equivalent to excercise 26,p.237 in CE.Let A be the number of autonomous systems on the Internet, and let D (for diameter) be the maximum AS path length. (a) Give a connectivity model for which D is of order log A and another for which D is of order (root of A). (b)Assuming each AS number is 2 bytes and each network number is 4 bytes, give an estimate for the amount of data a BGP speaker must receive to keep track of the AS path to every network.Express your answer in terms of A,D, and the number of networks N.

    Excercise 3 in chapter 6 is equivalent to excercise 3,p.338 in CE.Sketch curves for throughput,delay,and power,each as a function of load,for the following networks.Throughput is to be measured as a percentage of the maximum. Load is to be measured(somewhat unnaturally) as the number of station(N) ready to send at any one time;note this implies there is always(unless N=0,which you may ignore) a station ready to send.Assume each station has only one packet to send at a time. (a) Ethernet.Assume,as in Exercise 52 of Chapter 2,that the average packet size is 5 slot times,and that when N stations are trying to transmit,the average delay until one station succeeds is N/2 slot times. (b) Token ring,with TRT=0.

Valid HTML 4.0!


Last modified: Mon Dec 5 19:14:51 CST 2005