【发布时间】:2016-05-05 21:34:46
【问题描述】:
是否可以强制与 WebRTC 建立 TCP 隧道 (TLS) 连接?
我们正在为我们的业务开发 WebRTC 应用程序,但我们遇到了一些由内部网络引起的传入 UDP 流的主要问题。我们已经在使用 TURN 服务器,并且我们正在获得一堆 ICE 候选者(甚至是中继 UDP 者)。
问题是,正如我上面所说,我们传入的 UDP 流量在这里工作不可靠(卡顿、非常糟糕的图像质量、非常低的 fps)。给浏览器一个印象就足够了,WebRTC 可以将它用于它的 PeerConnection(s),但实际结果在 UDP 上非常糟糕。
如果我阻止所有传出和传入的 UDP 流,我可以看到(在 Wireshark 中)WebRTC 通过使用我们的转向服务器回退到 TCP 流量。
通过 TCP 连接,我们获得了非常好的结果(帧速率高,图像质量非常好)。
我已经尝试了几种强制 TCP 的方法:
-
我删除了 m=video 行中的 UDP 部分
m=视频 TLS/RTP/SAVPF 100 116 117 96
我已从候选列表中排除了每个 UDP 候选
在每种情况下,我什至都无法建立连接。
我可以做些什么来强制 WebRTC 中的 TCP 还是我们真的完全依赖浏览器?
【问题讨论】:
标签: google-chrome webrtc sdp stun turn