P2P成功率问题

websocket

#1

我这边使用设备到手机,不管使用什么网络,现在P2P都无法成功,全部走的代理,我看candidate发了十多组数据,host和srflx,relay都有,


#2

没明白全部走的代理是什么意思
candidate多是正常的。
建立连接比较重要的步骤是打通NAT和sdp的交换。
你可以把你建立连接的方式描述详细点~


#3


这是我开发过程中发的流程图,流程没有问题的,去年上半年P2P成功率还是很高的,大概下半年开始,好像打洞一直就不成功了,走的就是turn的代理服务器了


#4

看图是没有什么问题。

我信息不多,提一点想法:
1、从stun的方式转为turn的方式,peerConnection的配置要改一改,比如iceTransportPolicy 设为"relay"之类的,具体的可以看看webRTC 1.0的协议。
2、turn走不通是哪里出的问题,是收不到还是转不出去,有没有报错什么的。
3、检查一下防火墙以及端口有没有限制之类的。

顺便问一下stun打洞不成功是在哪里出问题了,stun server是自己写的还是用第三方的


#6

tuen是gethub上下下来的源码,服务器没有问题,能够正常获取三类地址,
你说的第一点,已经设置过了,它里面ICE的具体打洞访问我不是很了解,没有去修改过
我能看到的打印是,我获取了备选地址,最后穿透全部都失败,默认走了relay
同一个局域网下,不同子网,我这边打洞百分之百成功


#7

有没有什么截图之类的,这样说还是不太明白


#8

device.zip (4.0 KB)
这是设备端的打印


#9

我大概知道原因了,可能不同区域网络安全等级不同导致的
昨天我到另一个区域测试电信网络百分之百打洞成功
可能我公司这边网络安全等级变高了,所以才会一直不成功


#10

有点好奇,有没有调查过公司网络做了什么安全处理导致打洞失败


#11

公司没做什么,可能是这个区域的通讯公司升级了,
因为我住公司附近,用的是华数也是去年开始一直不成功
可能是我们这块区域,网络安全处理升级了,大量测试下来,我们区域只有电信打洞成功过
具体原因现在条件下,好像没办法去验证,只能等后续多研究研究ICE尝试打洞的流程,多看看打印看了