【问题标题】:Peer-to-Peer application using java使用 java 的点对点应用程序
【发布时间】:2015-11-28 14:15:22
【问题描述】:

我想使用 java 和 netbeans IDE 开发一个 p2p 应用程序。在我的应用程序中,我想做两件事

  • 用户之间的文件共享
  • 用户之间的聊天 我已经阅读了不同的资源

Introduction to the Peer-to-Peer Sockets Project

Peer-to-Peer File Sharing

问题是我如何能够将两台或多台电脑连接到不同的网络。显示所有连接的对等点,大小限制下的任何类型的文件共享。任何帮助将不胜感激。

【问题讨论】:

  • 你有代码要显示吗?如果有,请发布。
  • 其实我很困惑从哪里开始。我还没有任何代码。 @UNICYCLEZRDEBESTINDEHERE

标签: java sockets networking netbeans p2p


【解决方案1】:

这些问题处理的是最著名的 NAT 穿越问题,处理 NAT 穿越与您使用的语言无关,而是与基本问题域有关。首先,您需要使用某种信令方法(即 SIP、Jingle ..)宣传您两端的地址。现在,如果您尝试连接位于同一网络或 NAT 后面的两个端点,那么只需知道或通告本地主机候选者就可以完成这项工作,但如果您的任何端点位于网络之外或在两个端点之间有 NAT那么您需要使用 STUN/TURN/ICE 等协议遍历 NAT。根据您的用例,您可能有兴趣阅读 RFC,例如 RFC-5389、RFC-5245 和 RFC-5766。一旦你知道你需要什么,你可能会从谷歌获得任何开源解决方案,或者如果你足够好奇,你可以开始基于 RFC 实施你的解决方案。所以像 NAT traversal 或 STUN/TURN/ICE 这样的关键词可能会帮助你首先了解你的问题,一旦你知道了你的问题域,你就可以找到解决方案。

【讨论】:

  • 感谢您的指导。 @Palash Borhan Uddin。
【解决方案2】:

现在,如果您尝试连接位于同一网络或 NAT 后面的两个端点,那么只需知道或通告本地主机候选者就可以完成这项工作,但如果您的任何端点位于网络之外或具有 NAT在两个端点之间,那么您需要使用 STUN/TURN/ICE 等协议遍历 NAT。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    相关资源
    最近更新 更多