El tamaño máximo de datos que la capa de aplicación puede pasar a TCP depende del sistema operativo, la arquitectura de hardware de la computadora host y la congestión de la red. En general, el tamaño máximo de datos que se pueden pasar a TCP está limitado por el tamaño máximo de segmento (MSS). El MSS es un parámetro que se negocia entre el remitente y el receptor de una conexión TCP y representa la cantidad máxima de datos que se pueden enviar en un único segmento TCP. El MSS normalmente se establece en un valor ligeramente menor que la unidad de transmisión máxima (MTU) de la interfaz de red, que es el tamaño de paquete más grande que se puede transmitir en la red sin fragmentarse. El MSS suele tener entre 536 y 1460 bytes, según la interfaz de red.
Por ejemplo, en una red Ethernet típica con una MTU de 1500 bytes, el tamaño máximo de datos que la capa de aplicación puede pasar a TCP a continuación sería de 1460 bytes, que es el MSS para redes Ethernet. En una interfaz de red diferente con una MTU diferente, el tamaño máximo de datos que la capa de aplicación puede pasar a TCP a continuación sería diferente.
El tamaño máximo de datos que se pueden pasar a TCP a continuación también puede estar limitado por el espacio de búfer disponible en la computadora host. Si el espacio de búfer disponible es menor que el MSS, entonces la capa de aplicación necesitará dividir sus datos en fragmentos más pequeños antes de pasarlos a TCP.