buongiorno a tutti
mi trovo a dover scrivere un server udp multithread, ed avendo a che fare con un paradigma connectionless mi trovo un po' in difficoltà a pensare ad una soluzione.
il protocollo da implementare, abbastanza semplice, prevede 4 messaggi
c --> s
s --> c
s --> c
c --> s
per ora ho implementato il tutto come macchina a stati, e lancio un nuovo thread ogni volta che la recvfrom sul server ha successo.
questo mi mette in difficoltà dopo, in quanto nessun nuovo thread può mettersi in ascolto sulla stessa porta occupata dal server principale!
una soluzione che mi è venuta in mente è cambiare leggermente il protocollo, facendo sì che il thread appena creato comunichi al client una NUOVA porta per le comunicazioni...
c'è qualche altra soluzione interessante?
grazie