What is the maximum size of data that the application layer can pass on to the…

20082025

What is the maximum size of data that the application layer can pass on to the TCP layer below?

  1. A.

    Any Size

  2. B.

    216 bytes - Size of TCP Header

  3. C.

    216 bytes

  4. D.

    1500 bytes

Attempted by 246 students.

Show answer & explanation

Correct answer: A

Answer: Any Size

Explanation:

  • TCP is a stream-oriented protocol. The application layer can provide arbitrarily large amounts of data; TCP will divide that stream into multiple segments and transmit them.

  • There is no fixed maximum size on the total data an application can hand to TCP in one call or over a connection; practical limits depend on system resources (buffers, memory) and implementation.

  • Limits for a single TCP segment are imposed by lower layers:

    • IP total-length field is 16 bits, so a single IP packet (including IP and TCP headers) cannot exceed 65535 bytes. That yields a theoretical maximum TCP payload in one IP packet of 65535 − (minimum IP header 20) − (minimum TCP header 20) = 65495 bytes.

    • On typical Ethernet networks with MTU 1500 bytes, an unfragmented IP packet carries up to 1500 bytes of IP payload, so a common TCP payload per packet is about 1500 − 20 − 20 = 1460 bytes.

  • Common incorrect interpretations:

    • Statements that the maximum is 2^16 bytes confuse the IP/UDP 16-bit length field (per-packet limit) with a limit on application data.

    • Statements that the maximum is 1500 bytes confuse the Ethernet MTU (a per-packet link-size) with the total amount an application may send; TCP will split larger data across multiple packets.

A video solution is available for this question — log in and enroll to watch it.

Explore the full course: Gate Guidance By Sanchit Sir