# MCS-394 Homework (Spring 2002)

When turning in a homework problem, if it is one from the book, you should indicate not only the exercise number, but also which kind of exercise it is: review question, problem, or discussion question. The code I will use for this is as follows: 1.r2 is review question 2 of chapter 1; 1.p7 is problem 7 of chapter 1; 1.d1 is discussion problem 1 of chapter 1. Please use this code when you turn in the problems, and I will use them in reporting back your standing on the homework. For any problems that are not from the book, I will specify the problem number to use, which will have an x in it (e.g., 1.x2).

Note that I will add problems to this list from time to time, but unless I warn you otherwise, only by adding entire new chapters at the end. So if you check back, tell your browser to reload the page (in case it has an old version cached) and then look and see if there are any new chapters after what used to be the last chapter with problems

## Chapter 1

• Problem 1.r2, p. 64.
• Problem 1.p7, pp. 67-68.
• Problem 1.d1, p. 68.

## Chapter 2

• Problem 2.r12, p. 160. Assume Bob's mail server is different from Alice's.
• Problem 2.r18, p. 160. Assume the organization's web and mail servers are different. For example, they might be www.foo.com and mail.foo.com, each with a type A record with a different IP address. Web access to foo.com should be just like to www.foo.com, whereas mail addressed to foo.com should go to mail.foo.com. What RR type is used to provide the translation of foo.com in each context? (The book just asks about the mail context; I want both.) There may be more than one correct answer.
• Problem 2.p6, p. 162.
• Problem 2.p8, p. 162. Don't just repeat the RFC's technical description of what UIDL does. Summarize it, but also give some thought to what that function might be useful for.

## Chapter 3

• Problem 3.r6, p. 261.
• Problem 3.p9, p. 263.
• Problem 3.x1: Normally if a TCP host receives a segment with sequence number 1000 and length 1460 (for example), it will respond with an ACK of 2460, since that is the sequence number of the next byte anticipated. Suppose instead that it sent two ACKs, one with the ACK number field being 2000 and the second with it being 2460. In terms of the simplified TCP sender of Figure 3.31 (p. 217), is there any harm in this "divided ACK"? Next, consider the TCP congestion control algorithm as described on page 242. What would the impact of the divided ACK be on this algorithm? Is this a good or a bad thing?

## Chapter 4

• Problems 4.r23 and 4.r25, p. 370. (I will mark these as a single problem, which I will label 4.r2325.)
• Problem 4.p3, pp. 370-371.
• Problem 4.p4, p. 371.

## Chapter 5

• Problem 5.p4, p. 474.
• Problem 5.p14, p. 476.
• Problem 5.p15, p. 476.

## Chapter 6

• Problem 6.p11, p. 560.
• Problem 6.p15, p. 561.
• Problem 6.p17, p. 561.

## Chapter 8

• Problem 8.x1: Do any of the problems at the end of chapter 8 (in any category) that looks interesting to you. Label the problem as 8.x1 and also the problem's actual number.
• Problem 8.x2: Do any of the problems at the end of chapter 8 (in any category) that looks interesting to you, other than the one you did for 8.x1. Label the problem as 8.x2 and the problem's actual number.

Instructor: Max Hailperin