问题
We are developing wireless ad hoc communication applications on windows mobile 6 devices using 802.11 in ad hoc mode. We are using HP iPAQ 910 devices and OpenNETCF smart device framework 2.3 for development.
As a design constraint, each device is represented as an SSID. If two devices want to communicate with each other, initiator switches to other device's SSID and broadcasts UDP messages. However this switching takes 4-5 seconds to complete and spending this much time might be undesirable in some cases. We were wondering whether there is a better and faster way in which two devices can communicate, something for which we can avoid switching SSIDs?
Please let us know if any more information is required. Thanks in advance for your help!
回答1:
You should run them all on the same SSID. Each one will need to be configured with a unique static IP address. You can then send your messages to whichever one you want based on the IP, no switching required (i.e. it's instant). This approach will also allow you to communicate with multiple devices at the same time. You might even be able to use the UDP broadcast feature to talk to all of them at once, though I'm not sure how that works when you're on an ad hoc network.
I once built a system that used an iPAQ and a laptop both in ad hoc mode to do exactly what I just described. A joystick attached to the laptop was used to remotely control a robot which was directed by the iPAQ.
来源:https://stackoverflow.com/questions/1280322/better-way-to-communicate-between-ad-hoc-wifi-windows-mobile-devices