<分区>
有没有办法在没有服务器的情况下通过互联网建立点对点连接? 这个想法是将文件从一台 PC 发送到另一台 PC。
标签 java networking
<分区>
有没有办法在没有服务器的情况下通过互联网建立点对点连接? 这个想法是将文件从一台 PC 发送到另一台 PC。
最佳答案
为了在 Internet 上进行 P2P 联网,您必须处理几个问题。主要是NAT穿越和防火墙。如果不处理这些问题,您的连接将很容易出错。为此,最好使用现有的 P2P 框架。在 Java 中,主要框架之一是 JXSE,它是 JXTA 协议(protocol)的开源实现。该项目现已停止,但有大量文档可用。看,https://jxse.kenai.com .
如果 JXSE 对于您的目的而言过于重量级/复杂,我会使用一个更小/更简单的 P2P 库来实现一些基本形式的 NAT 穿越或防火墙打洞。这可能无法解释所有情况,但它可能适用于手头的特定情况。这些开源实现中有一些可用;用谷歌搜索或查看 GitHub。
关于java - 互联网上的点对点连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18941107/