通过互联网进行点对点连接

时间:2013-09-22 06:38:37

标签: java networking

有没有办法在没有服务器的情况下通过互联网建立点对点连接? 我们的想法是将文件从一台PC发送到另一台PC。

2 个答案:

答案 0 :(得分:2)

要通过Internet进行P2P网络连接,您必须处理好几个问题。主要是NAT Traversal和防火墙。如果您不处理这些问题,您的连接将容易出错。为此目的最好使用现有的P2P框架。在Java中,主要框架之一是JXSE,它是JXTA协议的开源实现。该项目现已停止,但有大量文件可供使用。请参阅https://jxse.kenai.com

如果JXSE对于您的目的来说太重量级/复杂,那么我会使用更小/更简单的P2P库来实现NAT Traversal或防火墙打孔的一些基本形式。这可能不适用于所有情况,但它可能适用于手头的特定情况。这些开源实现中有一些是可用的;谷歌它或在GitHub上看。

答案 1 :(得分:0)

编写一个打开套接字的应用程序(服务器)来侦听某个任意端口。编写另一个应用程序(客户端),将请求发送到运行服务器的主机的IP地址和端口。