2011-01-25 2 views
1

J'ai un DP (processeur de données, code java) fonctionnant sur mon réseau et quelques clients C. Le client doit communiquer avec le PDD pour l'échange de données. Le client doit découvrir le DP en utilisant la découverte de diffusion. Le client diffusera un message sur lequel DP écoutera et répondra de la disponibilité. Je ne sais pas comment ajouter l'écouteur en Java pour les messages de diffusion, j'ai essayé d'utiliser DatagramSocket mais il demande le numéro de port? DP devrait écouter le message de diffusion reçu sur n'importe quel port.Écouteur de diffusion utilisant Java?

+0

Cochez cette case http://download.oracle.com/javase/tutorial/networking/datagrams/broadcasting.html – Cratylus

Répondre

1

À moins que les clients utilisent quelque chose comme ICMP, ils ont également besoin d'un port. Dans une diffusion de pile TCP/IP normale et la multidiffusion est faite avec UDP (oui, c'est DatagramSocket en langage Java), donc un besoin pour le numéro de port. Il suffit de choisir un port que vous aimez, de le rendre flexible et de fournir une option de configuration pour le serveur et les clients.

Il existe d'autres options bien sûr comme DNS SRV records, multicast DNS/Bonjour, protocoles IP personnalisés, etc., mais ceux-ci sont beaucoup plus difficiles à gérer.