webRTC数据通道消息的最大大小是多少?

时间:2013-03-15 14:36:53

标签: webrtc

我正在尝试使用webRTC,似乎对每条消息中可以发送的字节数有任意限制。 This guy我使用的示例选择了100(加上一些)字节的限制。在我的测试中,它似乎接近200字节。然而,通过阅读TCP和UDP,这些协议支持最高约65kb的包,甚至在考虑不同类型网络的MTU时,它仍然可以提供比200字节更多的可用空间

我发现提到硬限制的唯一来源是this WebRTC Data Channel Protocol draft,但它只是说TBD。

所以我的问题是:

  1. 是否有任何来源在任何浏览器中指定当前邮件大小限制?
  2. 如果我可以假设限制总是相同的,如果没有,是否有任何方式我的应用程序可以知道限制?

2 个答案:

答案 0 :(得分:5)

sharefest项目找到了解决速率限制的方法 - 您可以修改传出提议以更改带宽设置(每http://www.ietf.org/rfc/rfc2327.txt

详细信息:https://github.com/Peer5/ShareFest/blob/master/public/js/peerConnectionImplChrome.js#L201

根据我自己的经验,你仍然只能使用每条消息约800字节。

答案 1 :(得分:0)

我一直在测试通过数据通道将jpeg发送到chrome 57,而现在高达64k的消息似乎是可靠的。

webRTC数据通道确实具有可靠性机制,它使用SCTP over DTLS(通过UDP) - SCTP允许您设置可靠性和排序行为,但默认情况下WebRTC使用有序+可靠 - 意味着您获得与TCP类似的语义 - 除了保留消息边界 - 至少在理论上是这样。

实际上,如果空格不足,Chrome可能会将部分消息发送到javascript,因此最好在处理之前检查您是否有完整的消息。

相关问题