Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Netty UDT集合不工作_Java_Netty_Nat_Udp Data Transfer_Fritzbox - Fatal编程技术网

Java Netty UDT集合不工作

Java Netty UDT集合不工作,java,netty,nat,udp-data-transfer,fritzbox,Java,Netty,Nat,Udp Data Transfer,Fritzbox,我正在使用netty+udt+rendezvous测试此示例的修改版本: 我已经在我的服务器和本地机器上启动了一个实例,其中“self”主机是两侧的localhost,“peer”主机是另一侧的主机名。所以A绑定到本地主机并连接到B,B绑定到本地主机并连接到A 在局域网中,一切正常,但当我连接位于防火墙(fritzbox路由器)后面的计算机和我的服务器(服务器不阻塞端口)时就不行了。在这种情况下,会发生超时: 在双方我都看到: java -jar out/artifacts/Learning

我正在使用netty+udt+rendezvous测试此示例的修改版本:

我已经在我的服务器和本地机器上启动了一个实例,其中“self”主机是两侧的localhost,“peer”主机是另一侧的主机名。所以A绑定到本地主机并连接到B,B绑定到本地主机并连接到A

在局域网中,一切正常,但当我连接位于防火墙(fritzbox路由器)后面的计算机和我的服务器(服务器不阻塞端口)时就不行了。在这种情况下,会发生超时:

在双方我都看到:

 java -jar out/artifacts/LearningJavaAgain_jar/LearningJavaAgain.jar <host_name>                                               
Jul 31, 2014 3:23:34 PM io.netty.handler.logging.LoggingHandler channelRegistered
INFORMATION: [id: 0xdd7790d7] REGISTERED
Jul 31, 2014 3:23:34 PM io.netty.handler.logging.LoggingHandler connect
INFORMATION: [id: 0xdd7790d7] CONNECT(xx.xxx.xxx.xxx:5555, localhost/127.0.0.1:5555)
Jul 31, 2014 3:24:04 PM io.netty.handler.logging.LoggingHandler close
INFORMATION: [id: 0xdd7790d7] CLOSE()
Exception in thread "main" io.netty.channel.ConnectTimeoutException: connection timed out: xx.xxx.xxx.xxx:5555
        at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1.run(AbstractNioChannel.java:214)
        at io.netty.util.concurrent.PromiseTask$RunnableAdapter.call(PromiseTask.java:38)
        at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:123)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:370)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
        at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
        at java.lang.Thread.run(Thread.java:745)
Jul 31, 2014 3:24:04 PM io.netty.handler.logging.LoggingHandler channelUnregistered
INFORMATION: [id: 0xdd7790d7] UNREGISTERED
java-jarout/artifacts/learningjavareach\u jar/learningjavareach.jar
2014年7月31日下午3:23:34 io.netty.handler.logging.LoggingHandler
信息:[id:0xdd7790d7]已注册
2014年7月31日下午3:23:34 io.netty.handler.logging.LoggingHandler连接
信息:[id:0xdd7790d7]连接(xx.xxx.xxx.xxx:5555,localhost/127.0.0.1:5555)
2014年7月31日下午3:24:04 io.netty.handler.logging.LoggingHandler关闭
信息:[id:0xdd7790d7]关闭()
线程“main”io.netty.channel.ConnectTimeoutException中的异常:连接超时:xx.xxx.xxx.xxx:5555
在io.netty.channel.nio.AbstractNioChannel$AbstractNioChannel$1.run(AbstractNioChannel.java:214)
位于io.netty.util.concurrent.PromiseTask$RunnableAdapter.call(PromiseTask.java:38)
在io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:123)上
位于io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:370)
位于io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)
位于io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
位于io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
运行(Thread.java:745)
2014年7月31日下午3:24:04 io.netty.handler.logging.LoggingHandler通道未注册
信息:[id:0xdd7790d7]未注册

我以为netty+udt会打udp打孔,不是吗?

没关系。当然,当从不同的计算机连接时,必须使用0.0.0.0而不是localhost。我希望这也能帮助其他人。现在一切都很好