Una vez que TCP establece una sesión, puede hacer un seguimiento de la conversación dentro de esa sesión. Debido a la capacidad de TCP de hacer un seguimiento de conversaciones reales, se lo considera un protocolo con estado. Un protocolo con estado es un protocolo que realiza el seguimiento del estado de la sesión de comunicación. Por ejemplo, cuando se transmiten datos mediante TCP, el emisor espera que el destino acuse recibo de los datos. TCP hace un seguimiento de la información que se envió y de la que se acusó de recibo. Si no se acusa recibo de los datos, el emisor supone que no llegaron y los vuelve a enviar. La sesión con estado comienza con el establecimiento de sesión y finaliza cuando se cierra la sesión con terminación de sesión.
Nota: el mantenimiento de esta información de estado requiere recursos que no son necesarios para un protocolo sin estado, como UDP.
TCP genera sobrecarga adicional para obtener estas funciones. Como se muestra en la ilustración, cada segmento TCP tiene 20 bytes de sobrecarga en el encabezado que encapsula los datos de la capa de aplicación. Este tipo de segmento es mucho más largo que un segmento UDP, que solo tiene 8 bytes de sobrecarga. La sobrecarga adicional incluye lo siguiente:
- Número de secuencia (32 bits): se utiliza para rearmar datos.
- Número de acuse de recibo (32 bits): indica los datos que se recibieron.
- Longitud del encabezado (4 bits): conocido como “desplazamiento de datos”. Indica la longitud del encabezado del segmento TCP.
- Reservado (6 bits): este campo está reservado para el futuro.
- Bits de control (6 bits): incluye códigos de bit, o indicadores, que indican el propósito y la función del segmento TCP.
- Tamaño de la ventana (16 bits): indica la cantidad de segmentos que se puedan aceptar por vez.
- Checksum (16 bits): se utiliza para la verificación de errores en el encabezado y los datos del segmento.
- Urgente (16 bits): indica si la información es urgente.
Algunos ejemplos de aplicaciones que utilizan TCP son los exploradores Web, el correo electrónico y las transferencias de archivos.