WebRTC Intro - Impact on OTT




摘要

  随着互联网技术的迅速发展,电信运营商正受到OTT企业猛烈的冲击,基于Web浏览器的实时通信技术(WebRTC)给电信运营商带来了新的挑战和机遇。本文介绍了WebRTC技术的发展和关键技术,并分析了WebRTC对OTT产生的影响。

 

1  引言

OTTOver The Top)意味着服务提供商(如SkypeWhatsApp等)可以利用电信运营商的基础网络,直接向用户提供在线视频和音频业务,使得电信运营商的短信、话音、甚至包括国际电话业务都受到了很大挑战。电信运营商的业务收入也因OTT的分流而锐减,据市场咨询机构Ovum的报告,2011OTT服务提供商抢夺了运营商139亿美元的收入,占运营商全部信息业务收入的9%。在OTT服务提供商的压力不断增加和传统电话使用持续下降的影响下,预计在未来的3年,欧洲核心电信运营商的收入将以每年1.8%的速度下降。

基于Web浏览器的实时通信技术简称为WebRTCWeb Real Time Communication),是一个基于浏览器的标准框架,它定义了如何在Web用户之间实现实时的交互和通信。和传统的基于本地客户端或浏览器插件的多媒体通信方式不同,WebRTC通过将多媒体通信所必须的音视频处理(采集、编码、增强)、网络传输、会话控制等核心模块集成到浏览器内部,从而使第三方应用开发者仅需通过简单的JavaScript API调用即可获得实时的音视频通信和文件共享能力。WebRTC技术不仅对OTT厂商构成威胁,也给电信运营商带来新的挑战和机遇,因此从2011WebRTC技术刚刚问世,它就得到了互联网企业和电信运营商的广泛关注。

2    WebRTC概述

WebRTC技术之前,互联网的实时通信技术主要需通过安装插件或者桌面客户端来实现,如微软花费85亿美金收购的Skype和苹果公司重金打造的FaceTimeiMessage平台。这些软件通常采用私有标准,并且受到专利权的保护。在2010年,Google以大约6820万美元收购了VoIP软件开发商Global IP SolutionsGIPS)公司,并因此获得了该公司拥有的WebRTC技术。Global IP
Solutions
公司之前已经针对AndroidWindows MobileiPhone制作了基于WebRTC的移动客户端。20116GoogleGIPS公司的专利为基础建立了WebRTC开源项目,并以BSD授权形式公开其源代码,希望浏览器厂商能够将该技术直接内嵌到浏览器中,从而在浏览器中创建高质量的实时视频或语音聊天应用。

WebRTC属于新一代Web技术HTML5标准的一部分。HTML5是超文本标记语言(HTML)协议的一个升级版本,将会取代HTML4XHTML1DOM2 HTML,并提供满足Web富媒体应用程序所必须的新功能,同时也会将许多用于Web平台上的技术进行标准化。但严格地就规范而言,HTML5WebRTCW3C中对应不同的规范。HTML5给出了HTML新的标记,如<video><audio><canvas>等,支持在网页中直接播放多媒体或绘制图像,这些工作为使用Web浏览器进行实时通讯奠定了基础。WebRTCAudio等规范定义了具体的实现APIWebRTC支持HTML5的语义格式和API,同时HTML5中也引入了部分WebRTC的定制。例如在HTML5当中定义的Device API中有一个getUserMedia,里面LocalMediaStream采用了WebRTC中定义的结构。

  WebRTC的标准化进展

RTCWeb的标准化工作由Google公司发起,目前在IETFW3C进行标准研究。IETF20113月成立RTCWeb工作组,重点定义浏览器之间的实时通信协议和格式,关注编解码、传输、安全加密和NAT穿越等领域,已提交多份草案。

20115W3C成立WebRTC工作组,与IETF密切合作,重点定义能够控制浏览器实时通信的API,使得Web应用不需要插件仅通过浏览器就可以实现点对点实时通信。20126月媒体捕获任务组(Media Capture Task Force)发布本地媒体设备访问APIgetUserMedia API)。20128W3C发布了WebRTC 1.0:浏览器之间的实时通信规范,该文档定义了一组重要的JavaScript APINetwork Stream APIRTCPeerConnectionPeer-to-peer Data API20129IETF发布音频编码标准OpusRFC 6716)。目前,WebRTC技术标准尚处在草案阶段,预计相关文稿的内容还会有较大的变动。

4   WebRTC的关键技术与应用

4.1  WebRTC的关键技术

WebRTC的软件架构由两套应用程序调用接口组成:Web APINative APIWeb APIWebRTC项目提供给第三方多媒体通信应用开发者的一套由JavaScript实现的API,该模块的主要功能是实现视频会议系统向下接口的兼容和向上采用HTML5完成界面的布局和开发。WebRTC
Native C++API
主要是浏览器厂商用于实现Web
API
的函数集。WebRTC Native APIs拥有两个全局线程:信令线程(Signaling Thread)和工作者线程(Worker Thread),根据PeerConnection factory被创建的方式,应用程序可以提供这两个线程或者直接使用内部创建好的线程。Session Management是一个抽象的会话层,它支持调用构建和提供会话建立及管理功能。

从具体实现来看,WebRTC向浏览器加入了视频引擎、音频引擎、网络传输及会话控制等新功能模块。其中,音视频引擎模块提供了从音视频采集设备,如麦克风、摄像头,到网络侧音视频处理链的总体框架。为了避免专利纠纷,音视频编码都采用了开源的编码格式,如iLBCiSACVP8等,同时提供相应的抖动缓冲及音视频增强等功能。在网络传输方面,WebRTC使用RTP/SPRT进行媒体流传输,使用ICEInteractive Connectivity
Establishment
)技术进行媒体流的私网穿透。WebRTC客户端使用JSEPJavascript Session Establishment
Protocol
)协议草案规范WebRTC通信双方应如何交换SDP信息,并进行媒体流协商和控制。JSEP的设计思路将媒体层的控制交由浏览器,而将信令层的控制交由Web应用开发者,从而使得信令状态机可与浏览器彻底分离,保持了协议的灵活性。WebRTC软件架构如图1所示。

 

                      WebRTC Intro - Impact on OTT_第1张图片

                             图1 WebRTC软件架构图

 

4.2  WebRTC在互联网中的应用

WebRTC技术使用了HTML5和简单的Javascript API,开发者可以很轻松地创建RTC应用,只要浏览器支持就可在不安装任何扩展和插件的前提下进行实时音频和视频聊天。除谷歌Chrome外,其它主流浏览器OperaMozilla FirefoxMicrosoft也纷纷将WebRTC整合进自己的产品中。201211Ericsson Labs发布了全世界第一个可以支持WebRTC的手机Browser

应用厂商如美国最大的Viop提供商Voxeo Labs借助WebRTC技术推出了一项无需安装插件便可在浏览器内进行实时视频和音频通信的技术。利用自己的Phono SDK同样可提供实时在线和聊天功能,开发者可轻松开发出和Google TalkSkype等类似的服务。雷格?沃克,谷歌语音和拨号盘的发明者,在他最新的公司UberConference中应用WebRTC技术实现了丰富的可视化界面的电话会议。该电话会议简单、直观,提供免费使用,不仅解决了不愿透露姓名的问题,也使得电话会议充满乐趣。

随着HTML5的兴起,Flash已开始逐渐走向落幕,免插件的实时视频和音频通信技术势必会成为未来的主流趋势。

4.3  WebRTCIMS网络中的应用

IP多媒体子系统(IMS)是将电话网同计算机网、固定网和移动网结合起来的网络。IMS是无线移动网络演进中的一个重要阶段,IMS能够帮助电信运营商升级电话网络以提供移动计算服务,创造出许多新的服务和应用。从2004年开始,IMS在电信运营商中得到了广泛的部署,如VodafoneBTAT&TFT等。但是在IMS新业务的推广中,受到OTT厂商的很大冲击,一方面IMS新业务缺乏亮点;另一方面是在收费模式上难以抵挡免费的OTT应用。因此,如何利用WebRTC具有快速部署、维护成本低等优势,将其转化为推进IMS业务开展的重要动力,为IMS用户提供更加丰富的新应用,促使传统用户向IMS网络迁移,成为电信运营商关注的热点。基于WebRTCIMS网络架构如图2所示。WebRTC客户端是运行在浏览器中的Web应用程序,采用JavaScript脚本语言编写。其核心部分可以是一个SIP协议栈,用于发送、接收、解析SIP信令,以及维护SIP信令状态机。WebRTC客户端通过WebSocket接口与WebRTC应用网关相互连接。WebRTC客户端将SIP消息作为净载荷封装在WebSocket消息中进行传送。业务平台需要架设WebRTC应用网关,SIP服务器则基于IMS核心网的原有配置,不做任何改动。图中的WebRTC客户端皆位于NAT或防火墙之后。在通信过程中,信令流与媒体流分两路进行传输。

 

                           

                               图2 基于WebRTCIMS网络架构图

 

1WebRTC客户端

WebRTC客户端是运行在浏览器中的Web应用程序,采用JavaScript脚本语言编写。其核心部分是一个SIP协议栈,用于发送、接收、解析SIP信令,以及维护SIP信令状态机。WebRTC客户端将SIP消息作为净载荷封装在WebSocket消息中进行传送。WebSocket协议也属于HTML5标准的一部分,用于实现浏览器间双向通信的协议。WebSocket协议兼容于现有HTTP 1.1协议,并通过UpgradeWebsocket将协议升级为WebSocket协议。

2WebRTC应用网关

RTCWeb应用网关主要完成协议适配、信令映射和流媒体的防火墙穿越。RTCWeb应用网关应支持HTTPHTTPSWebSocketSIPJSONXMPP等控制面相关协议,及HTTPRTP等媒体面相关协议。提供SIP协议与基于HTTP协议的Web服务的映射,RTP/RTCP媒体流与RTP over HTTP的媒体流映射。应用网关支持将HTTP隧道协议承载的媒体流映射到RTP协议承载,从而实现防火墙穿越。

3IMS核心网

可以将IMS核心网简单抽象成为一台SIP服务器,实际上包含了P-CSCFI-CSCFS-CSCFHSS和应用服务器等多个网元构成。IMS核心网的主要功能是进行用户认证以及通话过程控制,但不一定负责媒体流的传输。通话双方必须事先在IMS核心网上注册,并周期性发送心跳包,保持在线状态。

目前,在IMS网络中部署基于WebRTC的音视频实时通信应用的方式也存在许多不完善之处,如没有考虑视频会议等多方通话场景,没有考虑与第三方WebRTC服务商的互通问题等。但相信随着相关标准和技术的不断完善,将WebRTC技术与IMS结合将焕发更强大的生命力,电信运营商如果能够把握未来互联网技术的发展方向,妥善利用WebRTC这一重要机遇,对于推进IMS业务开展、开拓新的业务领域将起到十分积极的作用。

5   WebRTCOTT的影响

5.1  削弱OTT厂商的垄断地位

WebRTC包含了Web浏览器内整个实时通信的全部技术,作为开源技术开放给广大的Web开发者,降低了富媒体应用的开发门槛,极大地增强了WebWeb浏览器的实时通信能力,无论在桌面还是移动领域,都能够减少与原生应用之间的能力差距。使得Web开发者能够很容易地进入语音和视频服务的新领域,开发出大量的通信业务和应用,摆脱对少数垄断厂商的依赖。例如能够削弱微软收购Skype的影响,并危及AppleFaceTime服务。

5.2  打破壁垒,建立新的通信方式

目前的OTT业务建立实时通信必须安装特定的软件,如QQSkype,而且也不允许和竞争OTT的对手服务互通,例如不能从QQ打到Skype。原因是OTT厂商要通过提供免费服务吸引用户并尽可能锁定用户,再通过广告与PSTN互通,使增值服务实现货币化。由于需要通过系统被用户大量使用来获取收入,因此要求用户必须在他们服务边界内使用。

随着WebRTC成为HTML5标准的一部分,将能够在任何浏览器中使用VoIP应用。由于没有特定信令,每个厂商都可以决定是否使用User ID。用户不再需要交换User ID或者电话号码,只需要通过在社交网站上按键,就可以直接联系。已经有不少创业公司使用WebRTC提供服务,包括BistriCloudeoFrisBTenHandsTokBox。目前签订新服务的Web范式是使用现有社交媒体帐号,很多采用WebRTC技术的厂商也将遵循这一模式,不再需要唯一的服务ID

WebRTC技术允许开发者在网页建立实时通信,这将不仅仅影响运营商,OTT厂商现在也面临真正的威胁,因为WebRTC打破了不同OTT厂家间的订购壁垒。

6  结束语

    对于电信运营商而言,WebRTC技术既有挑战,也有机遇。一方面,开源无插件的WebRTC技术能够打破OTT厂商形成的壁垒,对运营商的多媒体实时通信业务产生更加强烈的冲击。另一方面,运营商如果能够积极加入WebRTC开发者社区,发挥自身在网络接入和服务质量保证上的优势,形成富有生机的生态系统,电信运营商也有可能成为创新的主体。



你可能感兴趣的:(WebRTC Intro - Impact on OTT)