Computer Networks

Back to Computer Networks

Module 4: Transport Layer & Congestion Control

  1. Q1c. Which one of the following statements is FALSE? (i) TCP guarantees a minimum communication rate (ii) TCP ensures in-order delivery (iii) TCP reacts to congestion by reducing sender window size (iv) TCP employs retransmission to compensate for packet loss20162m

    Module 4: Transport Layer & Congestion Control

    Which one of the following statements is FALSE?
    (i) TCP guarantees a minimum communication rate
    (ii) TCP ensures in-order delivery
    (iii) TCP reacts to congestion by reducing sender window size
    (iv) TCP employs retransmission to compensate for packet loss

    View this question on its own page →
    Worked Solution

    Answer

    (i) TCP guarantees a minimum communication rate is FALSE.

    Explanation

    TCP provides reliable, ordered byte-stream delivery and uses congestion control, but it does not guarantee a minimum data rate. Actual throughput depends on network capacity, congestion, receiver conditions, RTT, and other factors.

    The remaining statements are true:

    • TCP provides in-order delivery using sequence numbers.
    • TCP reacts to congestion by reducing its congestion window.
    • TCP uses retransmission when data is considered lost.

    Final answer: (i).

  2. Q1d. Which one of the following functionalities do TCP and UDP have in common? (i) In-order delivery (ii) Reliable transfer (iii) Checksum (iv) Connection establishment20232m

    Module 4: Transport Layer & Congestion Control

    Which one of the following functionalities do TCP and UDP have in common?
    (i) In-order delivery
    (ii) Reliable transfer
    (iii) Checksum
    (iv) Connection establishment

    View this question on its own page →
    Worked Solution

    Answer

    (iii) Checksum

    Explanation

    TCP and UDP both use a checksum to detect errors in the transmitted segment/datagram.

    • In-order delivery: TCP provides it; UDP does not guarantee it.
    • Reliable transfer: TCP provides reliability through acknowledgements, retransmissions, etc.; UDP does not.
    • Checksum: Both TCP and UDP include a checksum field for error detection.
    • Connection establishment: TCP is connection-oriented and establishes a connection; UDP is connectionless.

    Therefore, the correct answer is (iii) Checksum.

  3. Q1e. Consider an instance of TCP's Additive Increase Multiplicative Decrease (AIMD) algorithm where the window size at the start of the slow start phase is 2 MSS and the threshold at the start of the first transmission is 8 MSS. Assume that a time-out occurs during the fifth transmission. Find the congestion window size at the end of the tenth transmission. (i) 8 MSS (ii) 14 MSS (iii) 7 MSS (iv) 12 MSS20212m

    Module 4: Transport Layer & Congestion Control

    Consider an instance of TCP's Additive Increase Multiplicative Decrease (AIMD) algorithm where the window size at the start of the slow start phase is 2 MSS and the threshold at the start of the first transmission is 8 MSS. Assume that a time-out occurs during the fifth transmission. Find the congestion window size at the end of the tenth transmission.

    (i) 8 MSS
    (ii) 14 MSS
    (iii) 7 MSS
    (iv) 12 MSS

    View this question on its own page →
    Worked Solution

    Answer

    (iii) 7 MSS

    Step-by-step solution

    Initial values:

    • cwnd=2cwnd=2 MSS
    • ssthresh=8ssthresh=8 MSS

    During slow start, the window grows rapidly until the threshold:

    Transmission cwnd (MSS) Phase
    1 2 → 4 Slow start
    2 4 → 8 Slow start; reaches threshold
    3 9 Congestion avoidance
    4 10 Congestion avoidance
    5 11 Congestion avoidance; timeout occurs

    On a timeout, TCP sets the new threshold approximately to half of the current congestion window:

    ssthresh=11/25ssthresh=11/2\approx5 MSS

    and resets cwndcwnd to 1 MSS.

    The next transmissions then grow as:

    Transmission cwnd (MSS)
    6 2
    7 4
    8 5
    9 6
    10 7

    Therefore, the congestion window at the end of the tenth transmission is 7 MSS.

    Final answer: (iii) 7 MSS.

  4. Q1e. The address which is used to identify a process on a host is (i) physical address (ii) port address (iii) logical address (iv) specific address20222m

    Module 4: Transport Layer & Congestion Control

    The address which is used to identify a process on a host is

    (i) physical address
    (ii) port address
    (iii) logical address
    (iv) specific address

    View this question on its own page →
    Worked Solution

    Answer

    (ii) Port address

    Explanation

    A port number identifies a particular process or service on a host at the Transport layer.

    For example, a host may have one IP address but many active processes. The destination IP address identifies the host, while the destination port identifies the intended application/process.

    • Physical address: MAC address; identifies a network interface on a local network.
    • Logical address: IP address; identifies a host/interface at the Network layer.
    • Port address: identifies a process/service at the Transport layer.

    Final answer: (ii) Port address.

  5. Q1f. What is TCP?20152m

    Module 4: Transport Layer & Congestion Control

    What is TCP?

    View this question on its own page →
  6. Q1g. Transport layer protocol deals with (i) application-to-application communication (ii) node-to-node communication (iii) the process-to-process communication (iv) Both (i) and (ii)20222m

    Module 4: Transport Layer & Congestion Control

    Transport layer protocol deals with

    (i) application-to-application communication
    (ii) node-to-node communication
    (iii) the process-to-process communication
    (iv) Both (i) and (ii)

    View this question on its own page →
  7. Q1g. In TCP, sending and receiving data is done as: (i) stream of bytes (ii) sequence of characters (iii) lines of data (iv) packets20192m

    Module 4: Transport Layer & Congestion Control

    In TCP, sending and receiving data is done as:
    (i) stream of bytes
    (ii) sequence of characters
    (iii) lines of data
    (iv) packets

    View this question on its own page →
  8. Q1h. Which one of the following statements is true about TCP's Slow Start algorithm? (i) TCP's congestion window size increases linearly (ii) TCP's congestion window size decreases linearly (iii) TCP's congestion window size increases exponentially (iv) TCP's congestion window size decreases exponentially20232m

    Module 4: Transport Layer & Congestion Control

    Which one of the following statements is true about TCP's Slow Start algorithm?
    (i) TCP's congestion window size increases linearly
    (ii) TCP's congestion window size decreases linearly
    (iii) TCP's congestion window size increases exponentially
    (iv) TCP's congestion window size decreases exponentially

    View this question on its own page →
  9. Q1h. Suppose a TCP connection is transferring a file of 1000 bytes. The first byte is numbered 10001. What is the sequence number of the segment if all data is sent in only one segment? (i) 10000 (ii) 10001 (iii) 12001 (iv) 1100120192m

    Module 4: Transport Layer & Congestion Control

    Suppose a TCP connection is transferring a file of 1000 bytes. The first byte is numbered 10001. What is the sequence number of the segment if all data is sent in only one segment?
    (i) 10000
    (ii) 10001
    (iii) 12001
    (iv) 11001

    View this question on its own page →
  10. Q1j. TCP (i) operates at the data link layer (ii) is connection-oriented and unreliable (iii) is connection-oriented and reliable (iv) is connectionless and unreliable20202m

    Module 4: Transport Layer & Congestion Control

    TCP

    (i) operates at the data link layer
    (ii) is connection-oriented and unreliable
    (iii) is connection-oriented and reliable
    (iv) is connectionless and unreliable

    View this question on its own page →
  11. Q1j. In the slow start phase of the TCP congestion control algorithm, the size of the congestion window: (i) does not increase (ii) increases linearly (iii) increases quadratically (iv) increases exponentially20162m

    Module 4: Transport Layer & Congestion Control

    In the slow start phase of the TCP congestion control algorithm, the size of the congestion window:
    (i) does not increase
    (ii) increases linearly
    (iii) increases quadratically
    (iv) increases exponentially

    View this question on its own page →
  12. Q2a. Suppose that the stop-and-wait protocol is used on a link with a bit rate of 64 kilobits per second and 20 milliseconds propagation delay. Assume that the transmission time for the acknowledgment and the processing time at nodes are negligible. What is the minimum frame size in bytes to achieve a link utilization of at least 50%.20167m

    Module 4: Transport Layer & Congestion Control

    Suppose that the stop-and-wait protocol is used on a link with a bit rate of 64 kilobits per second and 20 milliseconds propagation delay. Assume that the transmission time for the acknowledgment and the processing time at nodes are negligible. What is the minimum frame size in bytes to achieve a link utilization of at least 50%.

    View this question on its own page →
  13. Q2b. Explain how sliding window protocol works at transport layer.20217m

    Module 4: Transport Layer & Congestion Control

    Explain how sliding window protocol works at transport layer.

    View this question on its own page →
  14. Q2b. Consider an instance of TCP's Additive Increase Multiplicative Decrease (AIMD) algorithm where the window size at the start of the slow start phase is 2 MSS and the threshold at the start of the first transmission is 8 MSS. Assume that a timeout occurs during the fifth transmission. Find the congestion window size at the end of the tenth transmission.20167m

    Module 4: Transport Layer & Congestion Control

    Consider an instance of TCP's Additive Increase Multiplicative Decrease (AIMD) algorithm where the window size at the start of the slow start phase is 2 MSS and the threshold at the start of the first transmission is 8 MSS. Assume that a timeout occurs during the fifth transmission. Find the congestion window size at the end of the tenth transmission.

    View this question on its own page →
  15. Q4a. A client uses TCP to send data to a server. The data are 16 bytes. Calculate the efficiency of this transmission at the TCP level (ratio of useful bytes to total bytes). Calculate the efficiency of transmission at the IP level. Assume no options for the IP header. Calculate the efficiency of transmission at the data link layer. Assume no options for the IP header and use Ethernet at the data link layer.20217m

    Module 4: Transport Layer & Congestion Control

    A client uses TCP to send data to a server. The data are 16 bytes. Calculate the efficiency of this transmission at the TCP level (ratio of useful bytes to total bytes). Calculate the efficiency of transmission at the IP level. Assume no options for the IP header. Calculate the efficiency of transmission at the data link layer. Assume no options for the IP header and use Ethernet at the data link layer.

    View this question on its own page →
  16. Q4b. Why does the transport layer take measures to control congestion when it is primarily handled at the network layer? TCP is provided with techniques to control congestion, but not UDP. Why?20207m

    Module 4: Transport Layer & Congestion Control

    Why does the transport layer take measures to control congestion when it is primarily handled at the network layer? TCP is provided with techniques to control congestion, but not UDP. Why?

    View this question on its own page →
  17. Q5a. In the context of Transmission Control Protocol (TCP), explain the statement, "TCP help us to establish a reliable connection over an unreliable network".20197m

    Module 4: Transport Layer & Congestion Control

    In the context of Transmission Control Protocol (TCP), explain the statement, "TCP help us to establish a reliable connection over an unreliable network".

    View this question on its own page →
  18. Q5b. Outline the difference between TCP and UDP.20197m

    Module 4: Transport Layer & Congestion Control

    Outline the difference between TCP and UDP.

    View this question on its own page →
  19. Q6b. An IP datagram is carrying a TCP segment destined for address 130.14.16.17/16. The destination port address is corrupted, and it arrives at destination 130.14.16.19/16. How does the receiving TCP react to this error? Show the entries for the header of a TCP segment that carries a message from an FTP client to an FTP server. Fill the checksum field with Os. Choose an appropriate ephemeral port number and the correct well-known port number. The length of the data is 40 bytes.20207m

    Module 4: Transport Layer & Congestion Control

    An IP datagram is carrying a TCP segment destined for address 130.14.16.17/16. The destination port address is corrupted, and it arrives at destination 130.14.16.19/16. How does the receiving TCP react to this error? Show the entries for the header of a TCP segment that carries a message from an FTP client to an FTP server. Fill the checksum field with Os. Choose an appropriate ephemeral port number and the correct well-known port number. The length of the data is 40 bytes.

    View this question on its own page →
  20. Q6b. Compare any two of the following: (i) TCP and UDP, (ii) Packet switching and Circuit switching, (iii) Bit-stuffing and Byte-stuffing20237m

    Module 4: Transport Layer & Congestion Control

    Compare any two of the following: (i) TCP and UDP, (ii) Packet switching and Circuit switching, (iii) Bit-stuffing and Byte-stuffing

    View this question on its own page →
  21. Q6b. A computer on a 6-Mbps network is regulated by a token bucket. The token bucket is filled at a rate of 1 Mbps. It is initially filled to capacity with 8 megabits. How long can the computer transmit at the full 6 Mbps?20167m

    Module 4: Transport Layer & Congestion Control

    A computer on a 6-Mbps network is regulated by a token bucket. The token bucket is filled at a rate of 1 Mbps. It is initially filled to capacity with 8 megabits. How long can the computer transmit at the full 6 Mbps?

    View this question on its own page →
  22. Q7a. Compare and contrast the protocol field at the network layer with the port numbers at the transport layer. What is their common purpose? Why do we need two port-number fields but only one protocol field? Why is the size of the protocol field only half the size of each port number?20217m

    Module 4: Transport Layer & Congestion Control

    Compare and contrast the protocol field at the network layer with the port numbers at the transport layer. What is their common purpose? Why do we need two port-number fields but only one protocol field? Why is the size of the protocol field only half the size of each port number?

    View this question on its own page →
  23. Q7b. What are the differences between leaky bucket algorithm and token bucket algorithm?20237m

    Module 4: Transport Layer & Congestion Control

    What are the differences between leaky bucket algorithm and token bucket algorithm?

    View this question on its own page →
  24. Q8. Draw and describe the TCP header. Assume that a host receives a UDP segment with 01011101 11110010 (we separated the values of each byte with a space for clarity) as the checksum. The host adds the 16-bit words over all necessary fields excluding the checksum and obtains the value 00110010 00001101. Is the segment considered correctly received or not? What does the receiver do?202114m

    Module 4: Transport Layer & Congestion Control

    Draw and describe the TCP header. Assume that a host receives a UDP segment with 01011101 11110010 (we separated the values of each byte with a space for clarity) as the checksum. The host adds the 16-bit words over all necessary fields excluding the checksum and obtains the value 00110010 00001101. Is the segment considered correctly received or not? What does the receiver do?

    View this question on its own page →
  25. Q8. How transport layer provides congestion control? Differentiate between leaky bucket and token bucket algorithms.202214m

    Module 4: Transport Layer & Congestion Control

    How transport layer provides congestion control? Differentiate between leaky bucket and token bucket algorithms.

    View this question on its own page →
  26. Q8a. A TCP connection is using a window size of 10,000 bytes, and the previous acknowledgment number was 22,001. It receives a segment with acknowledgment number 24,001 and window size advertisement of 12,000. Draw a diagram to show the situation of the window before and after.20207m

    Module 4: Transport Layer & Congestion Control

    A TCP connection is using a window size of 10,000 bytes, and the previous acknowledgment number was 22,001. It receives a segment with acknowledgment number 24,001 and window size advertisement of 12,000. Draw a diagram to show the situation of the window before and after.

    View this question on its own page →
  27. Q8a. Write down the handshaking steps required to setup a TCP connection between two applications running on two end hosts A and B. Also, write down the purpose of each data unit of TCP that is sent and received for establishing TCP connection.20237m

    Module 4: Transport Layer & Congestion Control

    Write down the handshaking steps required to setup a TCP connection between two applications running on two end hosts A and B. Also, write down the purpose of each data unit of TCP that is sent and received for establishing TCP connection.

    View this question on its own page →
  28. Q8b. Show the entries for the header of a TCP segment that carries a message from an FTP client to an FTP server. Fill the checksum field with Os. Choose an appropriate ephemeral port number and the correct well-known port number. The length of the data is 40 bytes.20207m

    Module 4: Transport Layer & Congestion Control

    Show the entries for the header of a TCP segment that carries a message from an FTP client to an FTP server. Fill the checksum field with Os. Choose an appropriate ephemeral port number and the correct well-known port number. The length of the data is 40 bytes.

    View this question on its own page →
  29. Q9. Explain the difference between TCP and UDP. A client residing on a host with IP address 122.45.12.7 sends a message to the corresponding server residing on a host with IP address 200.112.45.90. If the well-known port is 161 and the ephemeral port is 51000, what are the pair of socket addresses used in this communication?202214m

    Module 4: Transport Layer & Congestion Control

    Explain the difference between TCP and UDP. A client residing on a host with IP address 122.45.12.7 sends a message to the corresponding server residing on a host with IP address 200.112.45.90. If the well-known port is 161 and the ephemeral port is 51000, what are the pair of socket addresses used in this communication?

    View this question on its own page →
  30. Q9a. Compare the TCP header and the UDP header. List the fields in the TCP header that are missing from UDP header. Give the reason for their absence.20167m

    Module 4: Transport Layer & Congestion Control

    Compare the TCP header and the UDP header. List the fields in the TCP header that are missing from UDP header. Give the reason for their absence.

    View this question on its own page →
  31. Q9a. TCP is sending data at 2 Mbytes/sec. If the sequence number starts with 7000, how long does it take before the sequence number goes back to zero?20157m

    Module 4: Transport Layer & Congestion Control

    TCP is sending data at 2 Mbytes/sec. If the sequence number starts with 7000, how long does it take before the sequence number goes back to zero?

    View this question on its own page →
  32. Q9b. Explain the following terms: (b) User Datagram Protocol20177m

    Module 4: Transport Layer & Congestion Control

    Explain the following terms: (b) User Datagram Protocol

    View this question on its own page →
  33. Q9b. What is the difference between open-loop congestion control and closed-loop congestion control?20167m

    Module 4: Transport Layer & Congestion Control

    What is the difference between open-loop congestion control and closed-loop congestion control?

    View this question on its own page →
  34. Q9b. Explain connection establishment in TCP using three-way handshaking.20157m

    Module 4: Transport Layer & Congestion Control

    Explain connection establishment in TCP using three-way handshaking.

    View this question on its own page →