天天看点

初识WebRTC

1. 什么是WebRTC?

        WebRTC,Web Real_time  Communication网页实时通信的缩写,一个支持网页浏览器进行实时语音通话或视频聊天的技术。

        WebRTC提供了实时音视频的核心技术,包括音视频的采集,编解码,网络传输,显示等功能,还支持跨平台,windows,linux,mac,android。

2. 概述

        通过WebRTC端到端的通信通常被人误解,WebRTC并不是真正意味着不需要服务器来协商和链接通话。只意味着在多数情况下,直接在浏览器之间进行通信。

3.WebRTC正常工作所需的后端服务器

3.1信令服务器

        对于连接浏览器之间的对话来说,最重要的就是某种中介器—一个了解双方通话端点的服务器,即信令服务器,负责协商会话,而且可能是最接近WebRTC服务器的东西了。

        通常这个服务器也会通过会话发送相关数据,信令服务器可以实施像SIP或XMPP的标准化协议或私有协议。有时信令内容也会作为Web服务器的一部分来操作网页。

3.2TURN和STUN服务器

        当通话两端端点都监测到对方的时候,他们会尝试在其之间直接建立连接——有时候有用,有时无用。

        当没有用时,是因为在通信通道上的网络地址转换或防火墙机制,要么掩盖了浏览器的地址,将其从私人IP地址转换到了公共地址,要么会认为这个会话是不安全的,以至于他们会阻止流入的数据流并且不允许通话的进行。

        为了克服上述问题,WebRTC使用了STUN和TURN,他们是要求服务器构件来协助协商媒体传输的协议,而且有时将所有的媒体都中继给TURN服务器。

3.3媒体服务器

        在协商信令以及联通媒体之后,我们可能还想要在服务端处理媒体,这种功能是需要有的,因为这样用户就可以实施一个有着大量参与者的会话,并且记录存档会话,或者会话到其他类型的网络协议的网关。在这些情况中我们就会用到后端的媒体服务器。

4.小结

        综上所述,上面每种服务器都可以认为是WebRTC服务器或者与WebRTC服务器相关。在多数情况下通常是将信令服务器视为WebRTC服务器。

上一篇: WebRTC转正
下一篇: WebRTC学习

继续阅读