答案 1
不要过多地吹嘘我自己的喇叭,但我是否可以推荐尝试IcedJava。(这是SipTools项目的一部分)它正在积极开发中,具有稳定的0.9版本,并支持开箱即用的RTP流等用例。
就TCP支持而言,这将在以后的版本中发布,但由于三路握手被阻止,您将很难支持TCP而不是对称nat。甚至对ICE规范的TCP扩展也指出,TCP连接比 nated 对等体之间的UDP连接成功的可能性要小得多。
也就是说,您可以通过 UDP 网桥路由 TCP 数据包来解决此问题,包括所有纠错和流控制功能。(我忘记了RFC,但它是最终规范)尽管如此,所有这些都是相对较新的规范,ICE-TCP规范尚未最终确定。即使在积极开发中,这些也需要时间来实施。
答案 2
还有ice4j,它符合开发人员的要求:
STUN、TURN 和 ICE 协议的 Java 实现。该项目是Stun4J计划的延续。该项目的目标是为VoIP Java开发人员提供一种处理NAT和防火墙的方法。
它是由sipcommunicator开发人员开发的。
推荐
-
如何使用Java中的RESTful Web服务获取远程/客户端IP地址? 我已经在我的项目中编写了Rest Web服务。Web服务调用可能来自不同 machine.so 我需要通过REST Web服务找出IP地址。 从这个请求.getRemoteAddr()使用这个。 但是我不能使用getRemoteAddr()。因为我的请
-
从包含大量文件的zip文件中提取1文件的最快方法是什么? 我尝试了但它们也缺少一些东西。 LZMA SDK不提供一种如何使用的文档/教程,这非常令人沮丧。没有 javadoc。 虽然7z jbinding没有提供一种简单的方法来只提取1个文件,但是,它只提供了提取zip文件
-
输入/输出流在销毁时是否关闭? Java 中的 InputStreams 和 OutputStreams 是否在销毁时关闭()?我完全理解这可能是不好的形式(特别是在C和C++世界中),但我很好奇。 另外,假设我有以下代码: 无名的FileInputStream是否在p.load
-
Java 程序中的字符串大小是否有任何限制? 我有一个字符串定义为 字符串 xx 我可以分配的字符数是否有任何限制? 2) 我正在将用户输入分配给此字符串 xx。70%的人只说一个字。有时他们给出一个大句子,所以想知道可
-
标签
推荐