Internetworking Protocols and Software (COMP416) Assignment Three (due on 2 Dec. 2013) Rocky K. C. Chang 1) [10 MARKS] (TCP congestion control I) In this question, we revisit the congestion control problem in assignment 3. Referring to Figure 1 for TCP packet transmissions in a TCP Reno connection, a number of full-sized TCP data segments were sent from a sender to a receiver, and the segments are numbered starting from 0. Each ACK acknowledges only one TCP data segment. The square symbol refers to a TCP data segment transmission, whereas a small dot refers to an ACK transmission. The TCP data segment and its ACK are drawn on the same line for easy reference (an example is shown for segment 10). TCP Reno implements the fast retransmission and fast recovery algorithms that we discussed in class. The figure shows that only segment 14 was lost, and it was fast retransmitted after receiving a third duplicate ACK. Note that there were a number of duplicate ACKs received. The send window was always given by the cwnd, and the sender always had data to send. Answer the following questions about the trace in Figure 1. a) [3 MARKS] Upon receiving the third duplicate ACK (dupack), the sender entered into the fast recovery phase. How many more dupacks were received in order for the sender to send the new segment 29? b) [3 MARKS] Why were only six new segments sent during the fast recovery phase? c) [4 MARKS] After the fast recovery phase was ended, each of the first six ACKs elicited a new data segment, but the seventh ACK elicited two. What is the reason for that?
Segment loss Retransmission 14 Duplicate ACKs ACK for segment 10 Fig. 1. Packet transmission sequence of a TCP Reno connection. 2) [10 MARKS] (TCP congestion control II) In Figure 2, we show a TCP data-ack plot. You may ignore the receiver-side traces (i.e., Rcv Data and Rcv Ack). The two sender-side traces are defined as: Snd Data: TCP data segments sent by the TCP sender Snd Ack: TCP ACKs received by the TCP sender To simulate a packet reordering event, the packet that was supposed to be sent at around 38s (marked as + in the figure) is queued while the succeeding six packets were let through. Then the delayed packet was sent out (indicated by the arrow) with the next packet. There are no packet loss events in this set of traces. a) [3 MARKS] Around what time was the reordered packet recovered (from the sender point-of-view)? b) [3 MARKS] How was the reordered packet recovered? c) [4 MARKS] What happened to the sender s cwnd when the reordered packet was recovered? 2
Fig. 2. A TCP packet reordering scenario. 3) [12 MARKS] Consider the IP network below. A new network segment, to which SUNBETA was attached, was added to improve the network resilience in terms of Internet access. Unfortunately, the network administrator simply duplicated the IP addresses 192.168.3.0 for SUNBETA; as a result, two segments identified themselves with the same network address. All the networks used the same subnet mask of 255.255.255.0, and RIP-1 was used for routing. a) [3 MARKS] If SUNALPHA s forwarding table contained a route to its directly attached segment and a default route to router D, how can it reach SUNGAMA? b) [3 MARKS] If router D fails, can SUNALPHA connect to the Internet? c) [2 MARKS] Can SUNALPHA and SUNBETA reach each other? d) [4 MARKS] Can SUNGAMA, SUNDELTA, and SUNTHETA reach SUNALPHA and SUNBETA? 3
SUNGAMA - 192.168.1.5 router A 192.168.1.1.--------I------------192.168.1.2 router B - 192.168.3.2 192.168.2.1 --SUNDELTA 192.168.3.5 192.168.2.4 --SUNALPHA 192.168.2.2 192.168.3.1 router C - router D 192.168.4.2-202.45.86.1 --SUNTHETRA To Internet 192.168.4.5 192.168.4.1 router E 192.168.3.2 Originally, --SUNBETA this segment 192.168.3.5 did not exist. 192.168.3.1 router F 202.45.86.2 To Internet 4) [8 MARKS] (RIP with split horizon) Consider Figure 3 in which the three routers exchange their routes to an IP network denoted by Dest using RIP-1. Split horizon with poisonous reverse is used and a distance of 16 is interpreted as destination unreachable. H s default router is set to R 1. How does H send a packet to Dest for the following cases: a) [2 MARKS] The distances announced by R 1, R 2, and R 3 are 5, 16, and 16, respectively. b) [2 MARKS] The distances announced by R 1, R 2, and R 3 are 16, 16, and 5, respectively. c) [2 MARKS] The distances announced by R 1, R 2, and R 3 are 16, 5, and 5, respectively. d) [2 MARKS] The distances announced by R 1, R 2, and R 3 are 5, 5, and 16, respectively. 5) [10 MARKS] (Link-state routing) The topology of an OSPF network is given below. There are three routers RT 1, RT 2, and RT 3, and three networks N1, N2, and N3. **FROM** RT RT RT 1 2 3 N1 N2 N3 ----- --- * RT1 2 0 0 * RT2 1 0 0 T RT3 0 0 O N1 1 * N2 1 2 3 * N3 2 3 4
Dest R1 R2 R3 H Fig. 3. Three RIP-1 routers exchange routes for Dest on the LAN. a) [4 MARKS] Draw the topology of the network. b) [3 MARKS] Who is (are) the neighboring router(s) of RT 1? c) [3 MARKS] What is RT 3 s next-hop router for reaching the hosts on N1? 5