2010-01-06 93 views
2

我有几部手机和另一对PC连接到Wifi接入点,需要在这两者之间发送和接收消息,我的意思是任何人都可以向任何人发送消息并接收任何人的消息。如何在连接到WiFi接入点的设备之间进行通信?

我愿意写在手机上(Symbian操作系统,S60平台)或PC(的Windows),但我不能理解的是,我怎么建立一个客户端或服务器,因为任何应用程序其中一个设备可能是客户端或服务器。

如果我使用套接字我有脚本ServerSockets对这些设备的套接字?我可以使用HTTP协议吗?

或者我可以用来实现这个的任何标准协议?

回答

2

您将广播UDP数据包,这些数据包将到达Wifi网络上的每个设备。您将不得不制定自己的协议来决定每个设备的身份,因为您无法轻松推断出您的网络设备的IP地址。如果不编写选举算法,您会发现很难使用客户端/服务器架构,因此只需使用点对点(P2P)。

Google for UDP广播并在ietf.org上阅读相关的RFC。

+0

啊,哎呀,没有注意到“任何对任何”的部分。是的,UDP听起来是对的。 – spieden 2010-01-07 00:05:47

2

看起来你正在寻找IP上非常典型的点对点通信。我想其他需求将决定你使用哪种传输方式(HTTP,原始套接字等),但是:每个节点都是客户端和服务器。您可以使用MDNS(http://www.multicastdns.org/)来帮助节点以特别的方式找到彼此。

+0

这个MDNS是做什么的?我还没有真正理解这个概念? – 2010-01-07 01:19:06

+0

我没有意识到你只是想做广播。 MDNS将允许节点(电话,电脑)按照名称以特别的方式发现彼此,但如果您只是想要广播,那并不重要。 – spieden 2010-01-08 00:43:52

相关问题