RTCPeerConnection管理NAT遍历的完整ICE工作流程。因此,如果我们假设我们有两台计算机驻留在两个不同的专用网络上,RTCPeerConnection API将为每个对等方收集可能的IP和端口候选,遍历NAT,然后运行连接检查以找到有效的。 / p>
假设一切顺利,我们在两个部分之间建立了开放的点对点连接。在视频会议应用程序中,这意味着第一个对等体的视频和音频流通过其网络网关并一直传播到另一部分的NAT。它进入NAT然后被引导到接收方对等体。
但是如果这两个对等体位于同一个专用网络上呢?在那种情况下会发生什么?数据是仅在本地专用网络内传播还是通过首先退出NAT然后重新进入后传输到另一个对等网络?换句话说,这种数据传输是否会消耗互联网带宽?
答案 0 :(得分:0)
ICE
服务器通常足够智能,包括STUN
和TURN
,以确认双方都在同一NAT后面。
如果各方在同一个NAT中,流量将不会离开该网络。它将直接在双方之间进行。我特别知道谷歌的开放式眩晕服务器(stun.l.google.com:19302 || 23.21.150.121)和rfc5766-turn-server就是这种情况。
您也可以没有任何ICE服务器,它只会为候选人使用本地IP和端口,它会正常工作。
答案 1 :(得分:0)
是的,当他们在同一个网络中时,他们会直接连接。您可以阅读一些概念here。