¿Cómo funciona exactamente un socket de servidor? Cuando creo un socket de servidor java y acepto la conexión en el puerto 1234. ¿El servidor realmente usa el puerto 1234 para todos los clientes? He leído que cuando escribes un servidor de red, el socket realmente abre otro puerto una vez que se acepta la conexión.¿Cómo funciona exactamente un socket de servidor?
¿Es esto cierto? Si es así, ¿por qué no lo veo en netstat? Veo muchas conexiones como esta
tcp 0 0 ::ffff:MY_IP:1234 ::ffff:97.37.134.95:39236 ESTABLISHED
tcp 0 0 ::ffff:MY_IP:1234 ::ffff:89.204.153.101:26117 ESTABLISHED
tcp 0 0 ::ffff:MY_IP:1234 ::ffff:195.240.16.70:26193 ESTABLISHED
tcp 0 0 ::ffff:MY_IP:1234 ::ffff:80.187.98.116:15012 ESTABLISHED
tcp 0 0 ::ffff:MY_IP:1234 ::ffff:218.78.248.190:30794 ESTABLISHED
¿De verdad están todas conectadas a mi servidor en 1234? Si es así, ¿no significa eso que el servidor podrá aceptar infinitas conexiones?
Entonces, según la lógica, ¿un servidor nunca se quedará sin clientes de servicio al puerto? – erotsppa
@erotsppa nada es infinito en el trabajo de las máquinas. No estoy seguro de poder decir el número exacto, pero es muy grande. (entero (~ 2e9) probablemente) – Andrey
2e9 es aproximadamente 512, vamos a subir a 2^16 (65536) menos algún valor reservado, y se acercará a la verdad. – kriss