我遇到一个问题,即客户(通话中的参与者之一)可能会突然失去连接。客户端使用移动网络。
服务器配置:
所有呼叫都使用TURN服务器,该服务器侦听端口443并且仅接受TLS连接。使用TLS协议是一种必要措施,否则来自客户端的传出UDP流量不会到达服务器(我怀疑它已被Internet提供商阻止)。 为了诊断问题,我对客户端和服务器端的流量进行了tcpdump。在断开连接时-Wireshark在来自客户端的传出流量中检测到TCP Dup Ack,在服务器端的传入流量中观察到相同的情况。但是,从TURN到Janus的RTP数据包都没有丢失。
根据服务器端TLS流量的转储,测量了客户端网络的抖动。我根据算法自己进行了测量:
我怀疑问题不在于客户端的移动网络,因为在失去连接时抖动仅增加到35ms,而在一切正常的时候抖动仅为17ms。 因此对我来说,是的,网络受到了一定的影响,但是并没有达到断开呼叫的目的(但仍然中断了呼叫)。因此,该技术仅会对网络的轻微延迟波动做出不适当的反应。
传出流量的客户端TCP快照:
来自服务器端的传入流量的TCP快照:
从TURN到Janus服务器的RTP流量摘要:
请告诉我,可能是什么问题?我想彻底理解问题。也许您可以建议其他找到原因的方法。 我不想随意更改某些Janus / RTC设置,而无需深入了解它是否会有所帮助-因为这是一场赌博,可能看起来很有帮助,但是问题又会再次出现。 >