Luc*_*eis 5 networking p2p webrtc
我知道需要一个STUN / ICE / TURN服务器来查找WebRTC通信中涉及的对等方的IP地址。但是,即使在找到IP之后,对等端又如何在不打开任何端口的情况下彼此独立地实际对话呢?
如果您建立一个网站,通常必须打开服务器上的端口以使其他人访问您的网站。我不了解的WebRTC发生了什么魔术?
有几种策略可以做到这一点:一种可能性是客户端通过UPnP显式打开端口。我不确定当前是否有任何WebRTC客户端这样做,但是在一般网络中这是有可能的。
失败的话,STUN服务器就会启动。它可以尝试多种打孔技术。请阅读上述文章以获取更多详细信息。简而言之,防火墙通常会为出站流量打开一个端口(因为它需要接收响应),因此通过建立到已知目标的出站连接,然后记下已打开的端口,可以打开一个端口。
即使失败,TURN服务器也是必需的。该服务器可以从两个对等方公开访问,即使两个对等方都无法看到对方。然后,TURN服务器将充当两者之间的中继。这在某种程度上抵消了P2P协议的意义,但是在一定比例的情况下是必需的(估计范围在10%-20%左右)。
最初的问题是“是什么/谁创建了套接字?”
下一个问题是“远程对等方如何知道哪些端口是开放的”。
最后一个问题是:“它真的可以在没有 STUN 服务器的情况下工作吗”
| 归档时间: |
|
| 查看次数: |
2111 次 |
| 最近记录: |