7

我正在尝试使用 webRTC,似乎对每条消息中可以发送的字节数有任意限制。我使用的这个人的例子选择了 100(加上一些)字节的限制。在我的测试中,它似乎接近 200 字节。然而,从 TCP 和UDP上读取这些协议支持高达约 65kb 的包,即使考虑到不同类型网络的MTU,它仍然应该比约 200 字节多得多的可用空间。

我发现唯一提到硬限制的来源是这个 WebRTC 数据通道协议草案,但它只说 TBD。

所以我的问题是:

  1. 如果有任何来源指定任何浏览器中的当前消息大小限制?
  2. 如果我可以假设限制总是相同的,如果不能,是否有任何方法可以让我的应用程序知道限制?
4

2 回答 2

5

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

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

根据我自己的经验,每条消息仍然限制为 ~800 字节。

于 2013-04-23T11:53:31.533 回答
2

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

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

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

于 2017-03-23T10:58:12.990 回答