Je suis dans une situation où je dois gérer plusieurs flux UDP actifs dans le serveur.plusieurs ports UDP
J'ai deux options (comme je le pense)
seul socket: 1) Écouter au seul port sur le serveur et recevoir les données de tous les clients sur le même port et créer des threads pour chaque client pour traiter la données jusqu'à ce que le client cesse d'envoyer. Ici, un seul port est utilisé pour recevoir les données et le nombre de threads utilisés pour traiter les données. 2) Le client demandera le port ouvert du serveur pour envoyer les données et l'application enverra le port ouvert au client et ouvrira un nouveau thread écoutant au port pour recevoir et traiter les données. pour chaque client aura un port unique pour envoyer les données.
J'ai déjà implémenté un moyen de savoir quel paquet provient de quel client en UDP.
J'ai plus de 1000 clients et 60 Ko de données par seconde que je reçois.
Y at-il des problèmes de performance en utilisant les méthodes ci-dessus
ou est là une manière efficace de gérer ce type de tâche en C?
Merci,
Raghu