1、介绍
WebRTC 是一个目前正在开发的开源项目,旨在提供 Web 应用程序之间实时的、点对点通信。
WebRTC 提供了简单的 JavaScript API,可以帮助开发人员轻松构建具有实时音视频传输功能的 Web 应用程序。 WebRTC 也计划支持手机的原生应用。在 WebRTC 提供的 API 之下,其实隐藏了 WebRTC 底层的实现原理,所以除了使用 API 之外,很有必要了解一下 WebRTC 的底层实现。
本篇文章非常适合初入门 WebRTC 的人,尤其那些对 WebRTC 的工作原理还不了解的人,为了让大家尽可能读懂,因此会尽可能使用简单的术语和类比来详细解释 WebRTC 的底层工作原理。
2、开始
为了在甲和乙之间建立 WebRTC 连接,需要执行以下两个步骤:
找到对方的位置。
通知对方设置 WebRTC 连接。
2.1 第1步:找到对方
WebRTC 里找对方的过程,可以想象成拨打电话一样,当你需要通过电话与某人通话时,需要输入对方的电话号码,然后才能与该人联系。当有人想给你打电话时,也需要同样的过程。在打电话时,我们使用电话号码作为用户的标识,然后在电信系统进一步使用该标识来定位用户。
但是,Web 应用程序无法相互拨打和呼叫。因为世界上有很多个浏览器,而且一个系统里可以同时存在好多个浏览器,浏览器也没有像电话号码一样的唯一 ID,虽然没有唯一的 ID,但是,浏览器所在的系统有一个唯一的 ID,就是 IP 地址,这个 IP 地址可以用来定位。