我想知道,WebRTC在通过数据通道发送数据时产生多少开销。 我知道Websockets每帧有2-14字节的开销。 WebRTC是否使用更多开销?我无法在网上找到一些有用的信息。对我来说很清楚,Datachannels现在不能使用。媒体流使用多少开销?WebRTC开销
感谢
我想知道,WebRTC在通过数据通道发送数据时产生多少开销。 我知道Websockets每帧有2-14字节的开销。 WebRTC是否使用更多开销?我无法在网上找到一些有用的信息。对我来说很清楚,Datachannels现在不能使用。媒体流使用多少开销?WebRTC开销
感谢
的WebRTC使用RTP发送它的媒体。 RTP通过UDP运行。
除了一般的IP和UDP报头,有两个附加标题:
RTP被设计为具有尽可能少的开销,尽可能在其有效载荷,由于要达到更好的媒体质量,这意味着许多位尽可能专为媒体本身的基本理由。
在应用程序层,您可以将DataChannel视为发送,并通过SCTP接收数据通道。在 SCTP头部的PPID(有效载荷协议标识符)字段中,数据通道设置值0x51,用于指示它正在发送UTF-8 数据,0x52用于二进制数据。
是的,你是对的。 RTCDataChannel通过DTLS和UDP使用SCTP。 DTLS用于安全性为 。但是,SCTP在遍历大多数NAT /防火墙设置时遇到了问题。因此,为了克服这个问题,SCTP通过UDP隧道传输。所以整体开销 发送数据将是开销:
SCTP + DTLS + UDP + IP
,那就是:
28 bytes + 20-40 bytes + 8 bytes + 20 - 40 bytes
所以,开销会rougly约120字节。 WebRTC客户端可以发送的SCTP 数据包的最大大小为1280字节。因此,在最大的情况下,您可以为每个SCTP数据包发送大约1160个字节的数据,即 。
谢谢你,怎么样Datachannels?我已经读过他们通过UDP上的DTLS使用SCTP,但在应用层上使用的协议是什么? – chaosbohne 2012-08-14 10:54:31
查看draft-jesup-rtcweb-data-protocol -http://tools.ietf.org/html/draft-jesup-rtcweb-data-protocol – jesup 2012-11-30 18:52:09
因此,WebRTC使用UDP上的SRTP语音和视频(一段时间结束TCP如果UDP不起作用)。但数据通道不会通过此发送。它通过DTLS上的SCTP发送。所以上面的答案有点偏离了这个问题的主题 – 2015-06-02 01:51:40