Question 5 - TCP Congestion Control (18 points): Assume that a client has opened a TCP connection with a server to download a file. The congestion control algorithm for this connection is set to TCP Tahoe with ssthresh set to 16. Assume that the following events took place in order: (a) (2 points) Assuming no packets are lost, at which round TCP will enter the Congestion-Avoidance mode? (b) (2 points) Assume that at round 11, the server received three duplicate ACKs. What is the new cwnd value will be? (c) (2 points) What is the new ssthresh value will be after event (b) happens? (d) (2 points) Assume that from round 12 to round 19, no errors occurred. Then at round 20, a timeout occurred. What is the new cwnd value will be? (e) (2 points) What is the new ssthresh value will be after event (d) happens? Now let's assume that the client has closed the TCP connection and opened another TCP connection with the server. This time, the congestion control algorithm for this connection is set to TCP Reno with ssthresh set to 16. (f) (2 points) Assume that the server received three duplicate ACKs at round 11. What is the new cwnd value will be? (g) (2 points) What is the new ssthresh value will be after event (f) happens? (h) (2 points) Assume that from round 12 to round 16, no errors occurred. Then round 17 , a timeout occurred. What is the new cwnd value will be? (i) ( 2 points) What is the new ssthresh value will be after event (h) happens? Hint 1: assume that the first transmission round start at round 1 . In other words, at round 1, cwnd =1. Hint 2: if cwnd is an odd number, half of cwnd should be rounded down. Ex: if cwnd =17ssthresh= 17/2=8 Hint 3: you reach Congestion-Avoidance mode once you reach the ssthresh value, not the next round after the ssthresh. Hint 4: if doubling cwnd for the next round would exceed ssthresh, then cwnd set to ssthresh in the next round