WebRTC对等连接Ice连接状态失败

时间:2019-12-24 07:44:06

标签: webrtc turn coturn janus-gateway

我遇到一个问题,即客户(通话中的参与者之一)可能会突然失去连接。客户端使用移动网络。

服务器配置:

  • Coturn服务器v4.5.0.3
  • Janus webrtc服务器v0.7.6

所有呼叫都使用TURN服务器,该服务器侦听端口443并且仅接受TLS连接。使用TLS协议是一种必要措施,否则来自客户端的传出UDP流量不会到达服务器(我怀疑它已被Internet提供商阻止)。 为了诊断问题,我对客户端和服务器端的流量进行了tcpdump。在断开连接时-Wireshark在来自客户端的传出流量中检测到TCP Dup Ack,在服务器端的传入流量中观察到相同的情况。但是,从TURN到Janus的RTP数据包都没有丢失。

根据服务器端TLS流量的转储,测量了客户端网络的抖动。我根据算法自己进行了测量:

  1. 计算连续数据包之间的时间差:2号数据包.time_epoch-1号数据包.time_epoch
  2. 总结差异
  3. 金额除以包裹数

我怀疑问题不在于客户端的移动网络,因为在失去连接时抖动仅增加到35ms,而在一切正常的时候抖动仅为17ms。 因此对我来说,是的,网络受到了一定的影响,但是并没有达到断开呼叫的目的(但仍然中断了呼叫)。因此,该技术仅会对网络的轻微延迟波动做出不适当的反应。

传出流量的客户端TCP快照:

来自服务器端的传入流量的TCP快照:

从TURN到Janus服务器的RTP流量摘要:

请告诉我,可能是什么问题?我想彻底理解问题。也许您可以建议其他找到原因的方法。 我不想随意更改某些Janus / RTC设置,而无需深入了解它是否会有所帮助-因为这是一场赌博,可能看起来很有帮助,但是问题又会再次出现。 >

0 个答案:

没有答案