Data Communications I, Spring 2002

Exercise 4 (12th February 2002)

NOTE! The English Exercise Group in on Tuesdays 12-14 in C476. Your instructor will be Krishnan Narayanan.

  1. Answer shortly the following questions. The answers are usually almost directly found from the course book or from the lectures.
    1. What is meant by two-army problem?
    2. What is three-way handshake? Why is it necessary to use three-way handshake in TCP instead of two-way handshake?
    3. What is meant by slow start and fast recovery?
    4. How is flow control handled in TCP protocol?
    5. What are Tahoe, Reno and Vegas? How do they differ from each other?

  2. Stop and wait protocol
    1. Why is it enough to have one bit sequence number (only using numbers 0 and 1) in stop and wait protocol? Simulate the protocol and based on that reach conglusion that no more numbers are needed to distinquish the messages sent.
    2. Is it also necessary to add numbers to ACK and NAK acknowledgements? Simulate the protocol again to find out situations where unnumbered ACK or NAK can cause problems.
    3. Show that when using Go-back N the window size should not be more than k-1 when there are k sequence numbers in use for the packets.

  3. The operation of sliding window protocols
    Suppose an error burst destroys frame D(n+1), the acknowledgement of the previous frame and the following acknowlegdement. Simulate, in the situation, the operation of
    1. the Go-Back -N protocol,
    2. the selective repeat protocol.
    3. Would, in this situation, the negative acknowledgement NAK be useful for either of these protocols? Could there be any disadvantages when using NAK?
    4. Is it necessary to have a timer in both these protocols?

  4. Restrictions to the TCP performance
    1. In a network that has a maximum TPDU size of 128 bytes, a maximum TPDU lifetime of 30 sec, and an 8 bit sequence number, what is the maximum data rate per connection? Hint: Numbers can be reused first when it is sure that the previous segments with the same numbers aren't anymore in the network.
    2. A TCP machine is sending windows of 65 535 bytes over 1-Gbps channel that has a 10-msec one-way delay. What is the maximum throughput achievable? What is the line's efficiency? Hint: The size of the field reserved for informing the window size restricts sending on links with long round trip times. The high capasity of the link cannot be used.

  5. Slow start
    1. Why is slow start used? What are the advantages? Can it have disadvantages? If yes, then in what situations?
    2. Consider the effect of using slow start on a line with 100-msec round-trip time and no congestion, so the acknowledgements arrive in time. The receive window is 18 KB and the maximum segment size is 2 KB. The threshold value at first is 30 KB. How long does it take before the first full window can be sent?
    3. After having sent the full reveiver window of segments, the sender does not receive the acknowledgement in time, and the retransmission timer times out. How does the sender now continue to send after that?

  6. An email application is sending a rather large email message containing pictures into the email application of the receiver using TCP protocol. Suppose that there are no errors or other problems in the transmission. Explain what happens in the TCP layer, what TCP segments are sent, in which order and when between the sender and receiver mail systems.