前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WebRTC 如何发展至今?

WebRTC 如何发展至今?

作者头像
用户1324186
发布2022-03-15 14:38:19
1.1K0
发布2022-03-15 14:38:19
举报
文章被收录于专栏:媒矿工厂

来源:FOSDEM2021 主讲人:Tim Panton(Voxeo) 内容整理:彭峰 疫情期间,WebRTC 发挥了至关重要的作用,让所有人都保持联系,许多人对它的工作原理和所做的技术决定感到惊讶和困惑。这次演讲旨在为这些决定提供一些历史背景,希望能减少关于这些决定的困惑。

目录

  • 为什么 WebRTC 的发展历程如此之长
  • 谁参与了 WebRTC 的发展历程
  • 为什么没有标准的信号形式
  • 为什么 WebRTC 是 P2P
  • 为什么选择端到端(DTLS/SRTP)
  • 为什么选择 RTP
  • 关于数据通道
  • 为什么如此多的选择模式
  • 关于编解码器
  • WebRTC 的巨大成功

关于 WebRTC API 和协议的发展历程中有许多小故事,正如所有的 web 开发人员在第一次遇到 WebRTC 时都会问很多的为什么。许多答案实际上与历史有关,并且不同人的看法是存在偏差的,所以本次演讲只是一些关于本人对 WebRTC 标准化过程中所做出的选择的看法。

为什么 WebRTC 的发展历程如此之长

libwebRTC 是在 2011 年开源的,人们困惑其发展历程所经历的时间之久,困惑的一方的原因是,WebRTC 的构建基础早就具备,例如 google 早就拥有了许多相关的知识产权,Cisco 也拥有许多 SIP 相关的产品,表面上来说所有要使用的协议的 RFC 都已经存在了,所以这就像一个组装工作,把这些组件放在一起,18 个月内就能完成。

但实际上,这种想法实质上等同于把电话放进浏览器。只要扔一个进去,网络开发者就会使用它,这或许可以行得通,但是其和 800 电话模式(拨打电话的人不会被收费)或者 skype 相似,而本质上,这并没有将其考虑为一个 RTC 问题。

谁参与了 WebRTC 的发展历程

谷歌、思科、爱立信、微软、Mozilla 和 Voxeo 都参与了 WebRTC 的发展历程,W3C 和 IETF 组织也提供了一定的支持。

为什么没有标准的信号形式

当时有几个原因,其中一个非常简单的原因是,SIP、XMPP 和 H323 之间的激烈竞争并没有产生赢家;另一个更大的问题是网络授权认证方面,网络认证并不是一个简单的事,其并不像 SIP 的认证,如果尝试在浏览器中使用它,需要把一个 SIP 标识绑定到一个网络会话上,并保持这种表,其结果会相当复杂。此外,管理这些绑定关系数据是困难的。将呼叫状态绑定到 Web 应用状态要容易得多,如果 Web 应用正在执行调用控制,那么我们就到了希望 Web 应用参与核心控制的地步。

Why no standardised signalling?

为什么 WebRTC 是 P2P

开始之初 Skype 是主要的竞争对手,在那个时间点,这是一个 PTP 协议,它被视为一个巨大的成功,并且是一个 mesh framework 框架,就像网格覆盖一样;此外,参与这个过程标准化过程的大多数人都受到了 SIP 的影响,而 SIP 灵感源于 P2P。所以 WebRTC 是 P2P 在当时来说似乎是一个自然的选择。

为什么选择端到端(DTLS/SRTP)

在当时,著名的斯诺登事件所揭示的网络信息安全问题是主要原因。常规的 SRTP/SDES 授权被认为是实现过于困难而无法实际使用,所以选择了使用 Java 实现 DTLS/SRTP。

为什么选择 RTP

实际上这基本上是标准规则,由于许多原因,Adobe 发展过程中的选择太慢了,当他们展示的时候就有点落时了。并且 IAX2 只是一个信息性 RFC,因此不适合 RTC。

关于数据通道

  • 通话数据是有用的;
  • 没有 DTMF 是不够的;
  • RTP 数据通道超级笨重(被弃用 8 年后,在 chrome 中仍然支持);
  • SCTP 适用于 RFC(如果过度使用)。

为什么如此多的选择模式

  • 早期媒体、捆绑、SDES、PRANSWER 等;
  • 现有的电信中间箱支持 webRTC 的想法没有改变;
  • P2P 和端到端网络确保了这永远不可能实现,但是我们仍然有 api;
  • 复杂的学习和测试噩梦。

关于编解码器

部分原因与当时其他应用的成功有关,由于 Skype 取得了巨大的成功,并且它已被开源,结合 Opus,产生了一个开源代码。视频编解码器的东西要复杂得多,没有明显的开源编解码器可以被使用。许可证的原因推动了 VP8 的使用,而硬件性能问题则使得 H.264 被使用。

Why those codecs?

WebRTC 的巨大成功

  • 数十亿的用户;
  • 数十亿的分钟的使用时间;
  • 几乎存在于每一部智能手机上;
  • W3C 上周实现的推荐状态;
  • IETF 有 238 个 cluster 是关于 RTC。

附上演讲视频:

http://mpvideo.qpic.cn/0b2edaaaaaaawmab6iqofzrfaggdaamaaaaa.f10002.mp4?dis_k=00308a7dfb1b6f5549bf97865a6d9476&dis_t=1647326254&vid=wxv_2273321300591067138&format_id=10002&support_redirect=0&mmversion=false

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-02-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 媒矿工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么 WebRTC 的发展历程如此之长
  • 谁参与了 WebRTC 的发展历程
  • 为什么没有标准的信号形式
  • 为什么 WebRTC 是 P2P
  • 为什么选择端到端(DTLS/SRTP)
  • 为什么选择 RTP
  • 关于数据通道
  • 为什么如此多的选择模式
  • 关于编解码器
  • WebRTC 的巨大成功
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档