.

WebRTC是否使用TCP或UDP?

q1111 1年前 ⋅ 510 阅读

WebRTC是否使用TCP或UDP?

这听起来像是一个非常基本的问题,但我需要确认

WebRTC是否使用TCP或UDP作为其对等传输?我怎么知道 ? 我读到有可靠性模式和DTLS协议,它们如何影响? Media和DataChannel的传输方式是否相同? 如何在TCP和UDP之间切换? 我之所以这样问,是因为我知道浏览器对并行连接的数量有限制(我认为他们谈论的是TCP),也许UDP连接不受限制。

它可以使用。默认情况下,优先级为UDP,但取决于连接它的对等方之间的防火墙可能只能与TCP连接。您可以使用Wireshark捕获数据包并验证是否正在使用TCP或UDP。在Chrome浏览器中,您还可以googActiveConnection转到来查看有关所选候选者()的详细信息chrome://webrtc-internals。

“可靠性模式”可能是指DataChannel的可靠性模式,可以将其配置为以可靠或不可靠模式运行。DTLS是当前可选的,但很快将成为交换加密密钥的默认方法(另一种不建议使用的模式是SDES)。Firefox仅支持DTLS,因此对于浏览器互操作,您当前需要在Chrome中启用它。

RTCPeerConnection(媒体)将使用TCP或UDP,而DataChannel使用SCTP。Firefox使用的SCTP实现是在UDP之上实现的:https : //code.google.com/p/sctp-refimpl/。

在添加之前,可以过滤掉TCP或UDP ICE候选者addIceCandidate。通常,您不应尝试强制使用所使用的传输方式,因为WebRTC只会“做正确的事”。浏览器不会限制WebRTC使用的TCP连接的数量超过RTCPeerConnection或DataChannel的任何限制(即,如果您有10个PeerConnections,则它们每个都可以使用TCP而没有任何问题)。

产品4.png


全部评论: 0

    我有话说: