No TCP no lo hace. Y UDP tampoco pasa la dirección IP a IP más tarde. Tanto TCP como UDP son protocolos de transporte .
La aplicación le dice a la capa de transporte la identidad del punto final para comunicarse. Los puntos finales para TCP y UDP se identifican mediante una dirección IP de 32 bits y un número de PUERTO de 16 bits. La aplicación se identifica con un número de puerto único en la dirección IP del host y utiliza la capa de transporte para entregar sus datos al punto final remoto.
La diferencia entre TCP y UDP es que, en UDP, la aplicación especifica el punto final con cada datagrama que envía, mientras que para TCP utiliza una conexión de configuración previa entre sí y el punto final remoto. Por lo tanto, no necesita enviar la información del punto final (IP y puerto) en cada segmento que transmite.
- ¿Cómo el algoritmo de reenvío y poda de ruta inversa crea un árbol de multidifusión basado en la fuente?
- ¿Qué es UDP, ICMP e IGMP Flood?
- ¿Por qué era necesario crear una capa de adaptación separada en la pila de protocolos IoT?
- ¿Qué es el protocolo de puerta de enlace interior?
- ¿Por qué no se pueden rediseñar los protocolos orientados a la conexión para evitar vulnerabilidades?
Es posible que este comportamiento de la aplicación lo haya llevado a creer que UDP envía IP y puerto para cada datagrama y que TCP no. Pero tenga en cuenta que esa es la aplicación que hace esto, no TCP o UDP en sí.
Más específicamente, en el caso de TCP, la conexión se identifica mediante una tupla de 5: {Src-IP, Src-Port, Dst-IP, Dst-Port, Protocol = TCP}, que es único para una aplicación dada a la conexión de la aplicación. TCP tiene máquinas de estado para iniciar, mantener y ajustar la conexión en sí misma para que la aplicación no tenga que molestarse con estas cosas y centrarse en su lógica central.