webrtc - ICE vs STUN vs TURN

标签 webrtc stun turn

我读过 ICE 是WebRTC服务器上的一个代理,将用户的SDP信息发送到STUN或TURN服务器。
STUN 和 TURN 服务器提供此 SDP 信息并为用户建立 P2P 连接。

真的吗?
那么,STUN 和 TURN 服务器之间的确切区别是什么?
如果ICE代理配置了TURN服务器,数据流会发生什么?在这种情况下,TURN 只是充当数据报转发器?

最佳答案

TURN 是一个中继——两个客户端都将数据发送到 TURN 服务器,后者将其转发给另一个客户端。

STUN 不是中继——STUN 服务器帮助客户端之间“建立连接”(通过发现和交换它们的外部主机:端口对),之后它们直接相互发送数据。但是,STUN 不适用于所有 NAT/防火墙设置,因此当 STUN 失败时使用 TURN。

关于webrtc - ICE vs STUN vs TURN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59484802/

相关文章:

webrtc 和 peerjs : how to choose H264 instead of vp8?

linux - 眩晕客户端是否启动 UDP 服务器以获取传入流量

c# - C# 中的 WebRTC STUN 和 TURN 服务器

ssl - rfc5766-turn-server - 如何启用 TLS 和 HTTP CONNECT 方法?

java - 用于 Java 的 STUN、TURN、ICE 库

ios - WebRTC 远程视频在 ios Safari 上保持卡住

javascript - Phonegap 是否支持 WebRTC?

node.js - 简单对等。 ("signal") 事件重复多次

nat - SERVER REFLEXIVE 和 PEER REFLEXIVE 地址/候选人在什么情况下彼此不同?

webrtc - FreeSWITCH:无法从企业防火墙后面的浏览器(WebRTC)进行连接