What is the maximum size of data that the application layer can pass on to the TCP layer below?
View worked solution
Answer: A
The correct option is A.
Explanation:
Transmission Control Protocol (TCP) is a stream-oriented protocol. Unlike message-oriented protocols (like UDP), TCP does not preserve application-defined message boundaries. Instead, it treats the data received from the application layer as a continuous, unstructured stream of bytes.
- No Protocol Limit: The application layer can write data of any size (conceptually arbitrary or unlimited) to the TCP socket.
- Segmentation: TCP buffers this incoming byte stream and automatically divides it into smaller chunks called segments. The size of these segments is determined by the Maximum Segment Size (MSS), which is typically chosen to avoid IP fragmentation (often based on the MTU of bytes).
- Comparison with UDP: UDP is message-oriented and has a strict maximum limit of bytes () because the UDP header contains a -bit length field. TCP has no such length field in its header; it uses sequence numbers to track bytes in an ongoing stream.
Therefore, there is no maximum limit imposed by the TCP protocol on the size of data the application layer can pass to it at once.
Free practice · Your answers on this page are not saved.
