Por ejemplo, gran parte de las comunicaciones que tienen lugar en Internet emplean TCP.Muchas veces las aplicaciones necesitan que la comunicación a través de la red sea confiable.Es común referirse a esto como apertura pasiva, y determina el lado servidor de una conexión.En el lado del servidor (este receptor también puede ser una PC o alguna estación terminal) se comprueba si el puerto está abierto, es decir, si existe algún proceso escuchando en ese puerto, pues se debe verificar que el dispositivo de destino tenga este servicio activo y esté aceptando peticiones en el número de puerto que el cliente intenta usar para la sesión.En caso de que sí se encuentre abierto el puerto, el lado servidor respondería a la petición SYN válida con un paquete SYN/ACK.Para mantener la fiabilidad, un receptor asiente los segmentos TCP indicando que ha recibido una parte del flujo continuo de bytes.El complemento es usado para que el receptor no tenga que poner a cero el campo del checksum de la cabecera antes de hacer los cálculos, salvando en algún lugar el valor del checksum recibido; en vez de eso, el receptor simplemente calcula la suma en complemento a uno con el checksum incluido, y el resultado debe ser igual a 0.Si es así, se asume que el segmento ha llegado intacto y sin errores.Unido a los temporizadores, los emisores y receptores TCP pueden alterar el comportamiento del movimiento de datos.En cada segmento TCP, el receptor especifica en el campo receive window la cantidad de bytes que puede almacenar en el búfer para esa conexión.Los siguientes paquetes recibidos seguirán restando tamaño a la ventana de recepción.Esta situación seguirá así hasta que la aplicación receptora recoja los datos del búfer de recepción.Sin embargo, es posible realizar la finalización de la conexión en 3 fases; enviando el segmento FIN y el ACK en uno solo.El lado que ha dado por finalizada la conexión no puede enviar más datos pero la otra parte si podrá.Cuando PSH está activado indica que los datos de ese segmento y los datos que hayan sido almacenados anteriormente en el buffer del receptor deben ser transferidos a la aplicación receptora lo antes posible.A veces llegan varios segmentos que transportan datos y no tienen activado el bit PSH.Un ejemplo práctico de utilización es el que realiza un servidor cuando le llega un paquete a un puerto no válido: este responde con el RST activado.Los puertos dinámicos/privados también pueden ser usados por las aplicaciones de usuario, pero este caso es menos común.En los comienzos del siglo XXI, TCP es usado en el 95% de todos los paquetes que circulan por Internet.[cita requerida] Entre las aplicaciones más comunes que usan TCP están HTTP/HTTPS (World Wide Web), SMTP/POP3/IMAP (correo electrónico) y FTP (transferencia de ficheros).Su amplia extensión ha sido la prueba para los desarrolladores originales de que su creación estaba excepcionalmente bien hecha.Todavía hay un debate abierto sobre si este es un síntoma apropiado para el control de la congestión.