【问题标题】:STUN, TURN, ICE library for Java用于 Java 的 STUN、TURN、ICE 库
【发布时间】:2011-01-03 14:14:18
【问题描述】:

我需要在两个用户之间建立 P2P UDP 和 TCP 连接。它们都在 NAT 后面。

一点研究让我找到了STUNTURNICE

除了jSTUN 之外,是否有任何 Java 解决方案(库),它似乎只适用于 UDP。 反过来,ICE 对于对称 NAT 问题要好得多。

【问题讨论】:

    标签: java nat stun turn


    【解决方案1】:

    不要过分吹嘘自己的号角,但我建议您尝试IcedJava。 (它是 SipTools 项目的一部分)它正在积极开发中,有一个稳定的 0.9 版本,并支持开箱即用的 RTP 流等用例。

    就 TCP 支持而言,这将在以后的版本中发布,但由于三向握手被阻止,您将很难通过对称 nat 支持 TCP。甚至 ICE 规范的 TCP 扩展也指出,与 natted 对等点之间的 UDP 连接相比,TCP 连接成功的可能性要小得多。

    也就是说,您可以通过在 UDP 网桥上路由 TCP 数据包来解决此问题,包括所有纠错和流量控制功能。 (我忘记了 RFC,但它是一个最终规范)不过,所有这些都是相对较新的规范,ICE-TCP 规范还不是最终的。即使在积极开发中,这些也需要时间来实施。

    【讨论】:

    • 这个项目还在维护吗?还是已经停产了?
    • 最后一次提交是over 4 years ago
    • 链接又失效了。
    • 我需要真正开始并为这个项目投入一些工作。链接已修复(再次)
    • 有文档吗?
    【解决方案2】:

    还有ice4j,据开发者介绍:

    STUN 和 TURN 以及 ICE 协议的 Java 实现。该项目是 Stun4J 计划的延续。该项目的目标是为 VoIP Java 开发人员提供一种处理 NAT 和防火墙的方法。

    它是由 sipcommunicator 开发者开发的。

    【讨论】:

    【解决方案3】:

    您可以尝试jstunt - 不再维护,但源似乎可用。 他们提供了一个带有 STUNT 库和示例 java 服务器/客户端应用程序的 jar。 根据我的阅读,它不是原生 java,所以这可能只适用于某些架构。

    【讨论】:

      猜你喜欢
      • 2011-07-12
      • 2020-04-16
      • 2017-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多