Data Communications II Spring 2001

Problem set 1. (Tuesday 23.1.2001)

    1. Suppose that the sending TCP follows the Nagle algorithm. An application sends data byte by byte. How is it possible to force the TCP to send send the data, even one byte, immediately after it has arrived? Are there situations, when this kind of fast but unefficient data transfer is needed and necessary?
    2. How does Nagle algorithm help to prevent the silly window syndrome?

  1. In which way does the flow control mechanism used by TCP differ from the traditional sliding window mechanism? What are the advantages and disadvantages compared to the traditional sliding window mechanism?

  2. Suppose transferring very large files from a machine A to another machine B.
    1. How large a file is it possible to transfer before running out of TCP sequence numbers?
    2. How long does it take to transfer a file of this maximum size (calculated in a)), when each TCP segment has besides data also 66 bytes of header information for transport, network and link protocols?
      Assume that the maximum size of the segment is 1462 bytes and segments are transmitted over a 10 Mbps link. Suppose also that the sender can send the segments one after another without any waiting caused by flow control or congestion control.
      (If, for some reasons, you are not able to calculate the maximun size in a), then you can use here a 10 Gbyte file, and do the same in problems 4 and 5.)

    1. How long does it take to transmit the file from the previous problem, if the size of the receiver window is 8 and the one-way link delay is 10 ms?
    2. Suppose using a 10 Mbps satellite link where the one-way link delay is 250 ms. What is the maximum throughput achievable? What is the line efficiency?

  3. Assume using a 1 Gpbs satellite link to send the maximum file and starting with the slow start algorithm by sending first one segment. Assume also that the treshold value is so high that it is not reached in this file transfer. How does the file transfer proceed? How long does the file transfer now take?

  4. When a browser asks for web pages it can use either persistant or non-persistent TCP connections. In a non-persistant connection the server closes the TCP connection after having sent the required file to the client. What are the advantages and disadvantages when using a persistent or a non-persistent TCP connection? Assume a situation, where the web page has 10 different pictures,applets etc. as separate files of 10 Mbytes each. Show how the whole page, including its pictures, is transferred by using a) persistent connection and b) non-persistent connection. What different things do matter when considering which type of connection is best?