当阳信息网
星座
当前位置:首页 > 星座

网页实时通信技术将改变浏览器格局

发布时间:2019-10-12 19:57:08 编辑:笔名

WebRTC(WebReal-TimeCommunication,网页实时通信)是一项基于浏览器的实时多媒体通信技术。该项技术旨在使Web浏览器具备实时通信能力,同时,通过将这些能力封装并以JavaScriptAPI的方式开放给Web应用开发人员,使得Web应用开发人员能够通过HTML标签和JavaScriptAPI快速地开发出基于Web浏览器的实时音视频应用,而无需依赖任何第三方插件。该项技术将Web浏览器打造成一个适用于在所有用户设备(比如移动智能终端和个人电脑等)间进行实时音视频和数据通信的通用平台。

目前,WebRTC由IETF和W3C(万维网联盟)联合负责其标准化工作。IETF制定WebRTC的互联网基础协议标准,该标准也被称为RTCWeb(Real-TimeCommunicationinWeb-browsers)。W3C则负责制定WebRTC的客户端JavaScriptAPI接口标准。目前参与该技术标准制定的公司主要有思科、微软、谷歌和爱立信等。其中,微软提出了WebRTC的另一种形式,即CU-RTC-Web。

系统构成

WebRTC是通过将会话管理、音频引擎、视频引擎和网络传输功能,集成到现有浏览器来实现为异构系统提供统一的多媒体实时通信平台。同时,WebRTC为Web开发人员提供了WebAPI(即JavaScriptAPI)来开发基于Web的音视频应用;为浏览器厂商提供了WebRTCNativeC++API用于实现WebAPI的函数集。

WebRTC的会话管理也被称为抽象信令。抽象信令的作用是将具体业务与信令控制分离,从而适应广大Web应用中的信令控制。会话管理的实现有两种方式:一种是以浏览器为主的实现方式ROAP(RTCWebOffer/AnswerProtocol),另一种是以Javascript为主的实现方式JSEP(JavascriptSessionEstablishmentProtocol)。前者的优点在于可以直接使用现有协议栈实现;缺点是灵活度较低,无法支持私有协议。另外,如果将过多的协议栈集成到浏览器,将使得浏览器变得“臃肿”。后者的优势在于灵活度高,能够适用于多种协议。为提高会话管理的普适性,并简化会话管理,W3C通过多次讨论,最终采用了JSEP(JavaScriptSessionEstablishmentProtocal)方式来进行会话管理。

音频引擎负责从麦克风到网络侧、网络侧到音箱的音频处理。它包含的功能主要有音频编解码和声音处理两部分。在音频编解码上,WebRTC主要采用两种语音编码格式:iSAC(internetSpeechAudioCodec)和iLBC(internetLowBitrateCodec),分别对宽带与窄带环境的语音进行编码。在声音处理上,WebRTC主要包括回声消除、错误隐藏和降噪处理等功能,用来降低由网络抖动和丢包等对声音质量造成的影响,并尽可能降低声音延迟。

视频处理引擎负责摄像机到网络侧、网络侧到屏幕显示的视频处理。它主要包括视频编解码和图像处理。在视频编解码上,目前WebRTC主要采用VP8技术(未来VP9也将被集成到WebRTC中),使WebRTC可在较低码率的环境下提供较高质量的视频。在图像处理上,WebRTC主要包括抖动缓冲和图像增强等功能,用来降低从摄像机采集到的图像的噪音。

网络传输负责对采集到的音视频数据进行加密、防火墙穿透和传输。WebRTC将设备采集到的音视频数据在加密的情况下采用SRTP协议进行传输,以确保信息在传输过程中的安全性。另外,WebRTC采用STUN、TURN和ICE等协议栈对VoIP网络中的防火墙或者NAT进行穿透。其中,STUN可以处理大部分NAT穿透问题;TURN是STUN协议的一个增强版,专门用于处理对称形NAT穿透问题;ICE是一个整合了STUN和TURN的框架,为VoIP或视频通话配置以及媒体传输提供可靠的服务。

$$分页$$

应用场景

WebRTC的音视频应用从连接的客户端的数量角度来区分,可以分为一对一模式和多人模式。同时,WebRTC为了取得快速发展,势必与传统网络例如SIP、XMPP和PSTN网络进行无缝对接。

一对一模式是最简单的应用模式。首先,基于WebRTC的Web应用通过Web服务器来进行信令解析。然后,每个浏览器将本地采集到的音视频数据发送给对端浏览器。最后,每个浏览器对本地和对端的多媒体数据进行处理和显示。

相比一对一模式,多人模式则更加复杂。该模式与一对一模式不同的是,每个浏览器将本地采集到的音视频数据广播给其余所有浏览器。为摆脱由于终端的有限能力对WebRTC多人模式中人数的限制,目前,有些公司(例如英特尔)为WebRTC的特定应用提供MCU媒体控制单元。MCU负责对不同格式的音视频进行转码和将多人模式中的音视频流整合在一起,再广播给每一个终端。

为了与传统实时通信业务进行无缝对接,目前,各个厂商根据WebRTC和现有的实时通信业务开发出相应的网关设备。比如对应SIP/XMPP的服务器和PSTN(PublicSwitchedTelephoneNetwork,公共交换电话网络)网关。该网关负责将通过浏览器访问的Web应用和传统客户端访问的现有实时通信应用的信令进行适配,甚至多媒体格式之间的转化。

WebRTC的发展与影响

首先,Android系统内置的浏览器和个人电脑中主流的Web浏览器(例如Chrome、Firefox和Opera)已经支持WebRTC。另外,其他Web浏览器(比如Maxthon)也将支持WebRTC。因此,WebRTC将被快速部署在日常设备(即移动智能终端和个人电脑等)中。由于WebRTC的本质是一项基于Web浏览器的实时通信技术,它将最先应用在IM(InstantMessenger,即时通信)领域。由于IM应用通常应用在社交网络,这使得WebRTC可以依靠社交网络所具有的小世界网络特性迅速实现用户使用。

WebRTC技术的快速普及将对现有的很多领域产生巨大的影响。首先,受到影响的是现有的VoIP业务领域。操作系统的异构性和繁杂性使得VoIP应用的开发、更新与维护的复杂性和成本剧增。随着WebRTC集成到浏览器中,基于Web的实时通信应用可以通过HTML标签和JavaScriptAPI实现快速开发,并避免了由于操作系统的异构性带来的重复开发和由于版本升级带来的维护费用以及不便。目前,涉及VoIP业务的客服以及在线教育领域很关注WebRTC技术的应用。

其次,现有的IM应用通过其拥有的大量用户,并通过构建在这些IM应用上的衍生应用形成生态圈。这些IM应用及其所形成的生态圈正在试图取代浏览器成为互联网入口。这种现象在移动智能终端表现得更加突出。

最后,集成了WebRTC的Web浏览器将进一步改变传统的应用、Web浏览器和操作系统的格局。Web浏览器将成为介于操作系统与Web应用之间的一个平台,为Web操作系统的普及进一步铺平道路。包含了WebRTC的浏览器将进一步巩固其互联网入口的地位——近些年,超级应用(例如微信)通过其拥有的大量用户和在其上开发的衍生应用试图成为互联网入口。Web浏览器及其Web应用将成为一个生态圈,高性能浏览器的研发将成为下一个竞争热点,而浏览器的安全问题将更加凸显。

酒泉治疗包皮过长医院
朔州治疗睾丸炎方法
白山癫痫病
酒泉治疗睾丸炎方法
朔州治疗睾丸炎费用