Cuando un cliente se conecta a un servidor que usa TCP, se crea un nuevo socket para la transmisión TCP. ¿La conexión permanece en el mismo puerto donde se realizó la conexión o cambia a otro puerto?¿El puerto cambia cuando el servidor acepta una conexión TCP?
Respuesta
El nuevo socket es un concepto de nivel de aplicación introducido porque cada conexión establecida necesita un descriptor de archivo único (también distinto del descriptor de archivo de escucha), que se asigna a una sesión TCP, pero no es lo mismo. La sesión en sí se identifica por la combinación de la dirección y el puerto de origen y destino. El puerto de origen (cliente) generalmente se elige al azar, mientras que el puerto de destino (servidor) es el puerto de escucha. No se asigna ningún puerto adicional.
El socket asociado con el nuevo descriptor devuelto por accept
en el servidor utilizará el mismo puerto en el lado del servidor de la conexión que el socket original (asumiendo las definiciones "normales" donde el cliente inicia la conexión). El nuevo socket tendrá un número de puerto de cliente diferente (el puerto remoto desde el punto de vista del servidor).
- 1. ¿Cómo cerrar una conexión TCP por puerto?
- 2. Redirigir una conexión TCP
- 3. Determinación de la dirección IP y el puerto de una conexión TCP/IP entrante en Erlang
- 4. para TCP y UDP solicitudes en el mismo puerto
- 5. Delphi proxy transparente para una conexión TCP
- 6. ¿Cómo puede tener una conexión TCP de regreso al mismo puerto?
- 7. Vida de conexión TCP
- 8. Enlazar una interfaz en java Conexión TCP
- 9. El servicio web ASP.NET cambia el puerto en Invoke
- 10. que usa un puerto TCP?
- 11. ¿Conecta() el bloque para el zócalo TCP?
- 12. ¿Cómo rompo una conexión TCP/IP arbitraria en Linux?
- 13. Es el puerto utilizado por un cliente TCP para conectarse a un servidor no disponible para otros servidores TCP
- 14. ¿Las conexiones TCP se mueven a otro puerto después de que se abren?
- 15. Secuestro de conexión TCP
- 16. Cómo crear una conexión de socket TCP usando C a un puerto predefinido
- 17. ¿Liberar un puerto TCP/IP?
- 18. ¿Cómo cerrar correctamente el servidor asio tcp?
- 19. Conexión TCP, solo bash
- 20. Sobrecarga general de crear una conexión TCP
- 21. El zócalo no se desconecta cuando cambia la conectividad
- 22. Ayuda con el servidor TCP controlado por evento
- 23. ¿Cómo alojar el servicio WCF y el servidor TCP en el mismo socket?
- 24. Simular una conexión tcp en Go
- 25. Buscar puerto disponible para el servidor PHP
- 26. ¿Qué sucede cuando el servidor tcp/udp publica más rápido de lo que consume el cliente?
- 27. Burlarse de una conexión TCP/IP con C#
- 28. Número máximo de conexión de cliente TCP en Windows 7 Pro para un software de servidor C# TCP
- 29. Cuál es la forma correcta de cerrar una conexión TCP
- 30. HTTP conexión persistente vs conexión de socket TCP
La sesión se identifica por la combinación de la dirección IP y el puerto de origen y destino, Y el protocolo. Por lo tanto, es un 5-tuplo que identifica de forma única la conexión, no 4-tupla. – treecoder
@treecoder ¿Qué nivel de protocolo? Nivel de transporte? O nivel de aplicación? P.ej. '' o ''? –
smwikipedia
nivel de aplicación – KawaiKx