2013-05-16 59 views
0

我想问一下算法或方法。我有这样的情况:没有IP地址的通信

我有应用程序,我将它安装到2台PC(不同的网络),我想要PC“A”可以发送数据并从PC读取响应和“B”,但不知道PC“B “ IP地址。 PC“B”可以在不知道PC“A”IP地址的情况下将数据发送回PC“B”。

实施例:PC “A” 有独特的应用ID => “ABC” 和PC “B” 具有唯一的应用ID ==> “DDD”

我怎样才能进行通信/只发送使用 “ABC” 数据或“DDD”作为参数?例如:PC“A”输入PC“B”id(“DDD”)到文本框中,然后发送数据。数据如何通过PC“B”接收或由具有ID“DDD”的应用程序接收?

+0

1)请在句子开头添加大写字母。还要使用大写字母I和专有名称(如Java),以及缩写和首字母缩略词(如JEE或WAR)。这使人们更容易理解和帮助。 2)请为'you','your'和'please'等单词使用正确的拼写。这使人们更容易理解和帮助。 3)*“唯一想要的是使用我从应用程序生成的”唯一ID“*这对我来说没有意义。你能改述一下吗(用不同的词)? –

+0

您可以随时多播。 – vikingsteve

+0

@AndrewThompson:对不起,我的英语不好。我会尝试重述它。 – Yongli

回答

0

听起来你想创建一个点对点应用程序。

这个任务有JXTA框架。但是,如果2个对等设备位于2个不同的网络中,AFAIK将需要一些超级对等设备。

https://jxta.kenai.com/

的JXSE提供的Java实现JXTA的。

https://jxse.kenai.com/

注意,JXTA项目的当前状态是有点AFAIK不清楚。

+0

我不认为JXSE是我的解决方案,但我会尝试分析更多关于JXSE和JXTA – Yongli

0

另一个解决方案可能是使用一些Messaging系统,如JMS。但在这种情况下,您可能需要额外的机器作为消息代理,并且所有机器都必须知道此代理的IP地址和端口。

在早期还有JMS的实现,没有使用广播的中央代理,但我不知道它们是否仍然存在。