13

我已经阅读了很多关于 WebRTC 的内容,但仍然存在一个问题。我希望你能帮助我:

WebRTC 是否允许我创建一对多连接?我并不是说“能够与不同的计算机建立多个连接”,我真正谈论的是拥有一个将其数据多播到多个端点的连接,而无需为每个端点“上传”一次数据。是否有可能将一个包发送到网络,当它到达网络时,它会神奇地将自身拆分为具有不同目标的多个包?

我希望你能得到我正在寻找的东西:)

到目前为止,我只看到了一对一的连接,或者只有一个连接到为它们进行多播的中央服务器的解决方案(这通常会导致两次 ping)。

但对我来说,一对一连接似乎并没有真正有用(由于客户端的上传带宽低),并且在没有 WebRTC(使用 WebSockets)的情况下也可以使用中央服务器的解决方案,所以唯一真正的用途WebRTC 的情况是一对多的连接。

那么..这是将来可能发生的事情吗?或者今天已经有可能?

4

2 回答 2

9

三件事:

  1. 目前无法在 Internet 中进行 IP 多播(多播地址不是由 ISP 路由的)
  2. WebRTC 适用于一对多通信之外的许多用例,只需查看此文档:https ://datatracker.ietf.org/doc/html/draft-ietf-rtcweb-use-cases-and-requirements-06
  3. 浏览器之间的 WebRTC 连接始终是加密的(对 A/V 数据使用 SRTP,对通用数据使用 DTLS),并且为每个连接单独协商加密参数(会话密钥等)。您将如何在多播环境中执行此操作(将其视为分发树)?

所以不,WebRTC 不能与 IP 多播一起使用。

于 2013-06-16T18:13:46.343 回答
1

我会回答“暂时不会”,因为作为一名程序员,我可以告诉你,如果我们(用户)坚持它的重要性,浏览器开发人员可以通过多种方式使其工作。
但是如何?
由于存在加密,他们可以允许将会话的加密密钥共享给“注册”(多播)用户组。
但是如何?好吧,Web 是为共享而创建的。
最明显的方法是通过 Web 服务器中介和 JS WebRTC API 函数(加载用户密钥)。由于多播最常用于高效的视频分发,因此您拥有 RTP/SRTP 视频服务器。Web 服务器可以共存于同一台机器上。如果他们决定将其扩展到 Web 浏览器,那么创建多播流的 Web 浏览器(发送者)就可以完成“服务器”角色。客户需要知道是谁。

再说一遍:在 2013 年 12 月,这仍然是不可能的。并且仅在以下情况下允许在 Internet 上进行多播:

  • 一些实验性的广域网
  • 一些互联网+视频 ISP 网络
  • LAN(在交换机级别启用时,廉价交换机会将其传输到所有端口)。但是您可以是 ISP、研究人员或 LAN 用户,所以这是必要的。
于 2013-11-20T21:00:37.613 回答