Necesitamos tu ayuda para extender nuestras reseñas referente a las ciencias de la computación.
Solución:
Sí, puede usar el mismo número de puerto para TCP y UDP. Muchos protocolos ya hacen esto, por ejemplo, DNS funciona en udp/53 y tcp/53.
Técnicamente, los grupos de puertos para cada protocolo son completamente independientes, pero para los protocolos de nivel superior que pueden usar TCP o UDP, la convención es que usen el mismo puerto de manera predeterminada. número.
Al escribir su servidor, tenga en cuenta que la secuencia de eventos para un socket TCP es mucho más difícil que para un socket UDP, ya que además de lo normal socket
y bind
llamadas también tienes que listen
y accept
.
Además que accept
la llamada devolverá un nuevo socket y es que socket que también tendrá que sondear para recibir eventos. Su servidor debe estar preparado para continuar accept
conectar conexiones en el socket original mientras atiende simultáneamente a varios clientes, cada uno de los cuales activará eventos de recepción en sus propios sockets.
En primer lugar, no hay problema al usar tcp y udp en el servidor.
En segundo lugar, podemos tener solicitudes UDP y TCP en el mismo puerto, porque cada solicitud se identifica por un quíntuple contenido por IP de origen, IP de destino, puerto de origen, puerto de destino, PROTOCOLO (ya que el protocolo puede ser TCP o UDP).