cdzlj 发表于 2014-4-25 14:00:42

广域网下文件传送失败的问题。

版本:anychat V4.9
bug现象:局域网下文件传输没有问题。但是在广域网下,服务端:文件超过300k左右,就发现在server的temp文件夹下有临时文件,而且临时文件比原文件大,业务服务程序收不到回调,过了一段时间(几十秒)后,临时文件消失。客户端:调用QueryTransTaskInfo查询传输状态时,进度不走,速度在变。服务器是公网IP地址,有端口映射,且可能有保护ping不通,但是传输小文件是可以的,是否是因为UDP的传输,不能保证可靠达到,有什么样的措施可以解决文件传送问题吗?

admin 发表于 2014-4-25 14:08:36

您好,是否有条件测试一下,不通过端口映射的服务器,是否正常?

cdzlj 发表于 2014-4-25 14:16:18

只有端口映射的公网IP条件,所以,与你们demo.anychat.cn的服务器测试过,也是一样的,你们也可以测试下。

cdzlj 发表于 2014-4-25 14:19:58

据我所知,你们的服务器好像不存在端口映射的情况,如果情况一样,那么可能你们的机制或许有点问题。

cdzlj 发表于 2014-4-25 14:22:05

即在udp的基础上完成tcp的功能,可能还有bug,特别是网络情况不是很好的情况,如果你们的服务器在你们局域网的话,可能测试不了。

admin 发表于 2014-4-28 09:16:26

您好,请参考帖子:http://www.anychat.cn/faq/index.php?action=artikel&cat=2&id=266&artlang=zh ,打开调试模式,然后将出现问题的log帖上来我们帮您分析一下原因。

cdzlj 发表于 2014-4-28 16:57:43

日志如下:    Trans Task Status: srcUserId:1, tarUserId:0, TaskId:28913, Status:7
具体日志文件见附件。

cdzlj 发表于 2014-4-28 16:58:30

状态为7的是什么,QueryTransTaskInfo这个接口里没有状态为7的说明。

admin 发表于 2014-4-28 18:37:39

您好,状态7为:用户已离线,是新版本增加的,可能负责文档的同事还没来得及更新上去。

请上传一下文件发起方、文件接收方两边的日志文件:BRAnyChatCore.log

cdzlj 发表于 2014-4-29 13:54:20

服务端的日志:
        Async deliver thread, list:0, pool:2, recv:767, send:0
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        UDP Send, send:31(0MByte, 0Mbps), discard:0, error:0, block:0, nicsize:0, func(2.184479, 32.036766), fetch(0.001770, 0.008329), send(0.094222, 0.210660)
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:7

        Stream Buffer, item:0, resend:0, delete:0, StreamItemPool(0, 0), SequencePool(0, 0), MediaPackPool(0, 0), packloss:0, ack:0, req:0, fill:0
        TCP, new user:0, RecvPackNum:12, RecvPackSize:0 kByte, map:0
        UDP Read, read:787(1MByte), error:0, functime(0.031954, 0.935233), dealtime(0.006199, 0.420031)
        Async deliver thread, list:0, pool:0, recv:786, send:0
        UDP Send, send:17(0MByte, 0Mbps), discard:0, error:0, block:0, nicsize:0, func(1.870947, 32.036766), fetch(0.002094, 0.008329), send(0.078459, 0.210660)
        Stream Buffer, item:0, resend:0, delete:0, StreamItemPool(0, 0), SequencePool(0, 0), MediaPackPool(0, 0), packloss:0, ack:0, req:0, fill:0
        TCP, new user:0, RecvPackNum:12, RecvPackSize:0 kByte, map:0
        UDP Read, read:781(1MByte), error:0, functime(0.045351, 0.935233), dealtime(0.009186, 0.420031)
        Async deliver thread, list:0, pool:0, recv:785, send:0
        UDP Send, send:23(0MByte, 0Mbps), discard:0, error:0, block:0, nicsize:0, func(1.931025, 32.036766), fetch(0.001959, 0.008329), send(0.179084, 0.210660)
        Stream Buffer, item:0, resend:0, delete:0, StreamItemPool(0, 0), SequencePool(0, 0), MediaPackPool(0, 0), packloss:0, ack:0, req:0, fill:0
        TCP, new user:0, RecvPackNum:12, RecvPackSize:0 kByte, map:0
        UDP Read, read:789(1MByte), error:0, functime(0.022292, 0.935233), dealtime(0.004990, 0.420031)
        Async deliver thread, list:0, pool:0, recv:787, send:0
        UDP Send, send:18(0MByte, 0Mbps), discard:0, error:0, block:0, nicsize:0, func(1.960875, 32.036766), fetch(0.001444, 0.008329), send(0.079673, 0.210660)
        Stream Buffer, item:0, resend:0, delete:0, StreamItemPool(0, 0), SequencePool(0, 0), MediaPackPool(0, 0), packloss:0, ack:0, req:0, fill:0
        TCP, new user:0, RecvPackNum:12, RecvPackSize:0 kByte, map:1
        UDP Read, read:786(1MByte), error:0, functime(0.026087, 0.935233), dealtime(0.005348, 0.420031)
        Async deliver thread, list:0, pool:0, recv:790, send:0
        UDP Send, send:20(0MByte, 0Mbps), discard:0, error:0, block:0, nicsize:0, func(2.021221, 32.036766), fetch(0.001241, 0.008329), send(0.094511, 0.210660)
        Stream Buffer, item:0, resend:0, delete:0, StreamItemPool(0, 0), SequencePool(0, 0), MediaPackPool(0, 0), packloss:0, ack:0, req:0, fill:0
        TCP, new user:0, RecvPackNum:12, RecvPackSize:0 kByte, map:0
        UDP Read, read:793(1MByte), error:0, functime(0.022155, 0.935233), dealtime(0.004904, 0.420031)
客户端的日志:
        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Thread SubRate, userid:1, taskid:19222, dwMaxDeliverNum:2
        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2

        Trans Task Status: srcUserId:1, tarUserId:0, TaskId:19222, Status:2
页: [1] 2
查看完整版本: 广域网下文件传送失败的问题。