雷动WEBRTC产品

http://www.rtcpower.com/html/leidongwebrtc.html ;


1.前言
 
    WebRTC是一项在浏览器内部进行实时视频和音频通信的技术,是谷歌2010年以6820万美元收购Global IP Solutions公司而获得一项技术。WebRTC实现了基于网页的视频会议,标准是WHATWG 协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯(Real-Time Communications (RTC))能力。

    WebRTC(Web Real-Time Communication)项目的最终目的主要是让Web开发者能够基于浏览器轻易快捷开发出丰富的实时多媒体应用,而无需下载安装任何插件,Web开发者也无需关注多媒体的数字信号处理过程,只需编写简单的Javascript程序即可实现,W3C等组织正在制定Javascript 标准API,目前是WebRTC 1.0版本,Draft状态;另外WebRTC还希望能够建立一个多互联网浏览器间健壮的实时通信的平台,形成开发者与浏览器厂商良好的生态环境。同时,Google也希望和致力于让WebRTC的技术成为HTML5标准之一,可见Google布局之深远。WebRTC提供了视频会议的核心技术,包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:windows,linux,mac,android。

    雷动公司认为的WebRTC与WHATWG及HTML5组织的WebRTC相比更加广义,在目前只有谷歌Chrome及爱立信的Bowser(在IOS及安卓上支持部分webrtc特性)支持的情况下,可以通过“准”插件的方式进行过渡,所谓的“准”插件可以使用Adobe公司的FLASH插件,此插件的装机率在PC市场超过了98%。

2.WEBRTC的来历 
    1991年由Tim Berners-Lee发明HTML1.0,1993年由IETF发布草案,1996年发布了HTML3.2,由W3C定为标准,1997年W3C发布HTML4.01,从97年开始W3C就没有进行HTML5的下一个版本开发,Apple、Mozilla、Opera等几家不满W3C不愿意进行HTML5新版本开发就成立了WHATWG组织进行下版本HTML制定,包括Web应用所需的API能力等,2007年WHATWG与W3C达成一致,集合双方的力量成立新的HTML工作组,以HTML5的名义进行开发,08年发布了第一份正式的草案。


    图1 RTCWeb发展历程

    IETF的RTCWEB工作组(2011年3月成立)重点定义RTCWeb的需求、架构和协议,虽然并没有引入很多新的技术,但却是一个新的环境和框架。与此同时,W3C的WEBRTC工作组(2011年4月成立),与IETF密切合作,重点定义浏览器端支持实时通信的API,使得Web应用不需要插件仅通过浏览器就可以实现点对点实时通信。RTCWEB已经纳入HTML5规范,成为HTML5中的一个分支。


    图2 RTCWEB活跃的参与者


    图3 RTCWEB各个部件的参与者

3.雷动对WEBRTC的理解 
    WEBRTC的目的是无需插件就能完成浏览器及浏览器的点对点多媒体通讯,我们认为对于通讯的参与方应该扩充到浏览器与电信网络中的电话终端之间的MMTel(多媒体电话),除了通讯的参与方需要扩充外,在目前只有少部分浏览器支持WEBRTC规范的情况下,可以引入已经被广泛安装的FLASH插件来完成WEBRTC的功能。

    我们认为WEBRTC最大的意义是无插件的完成浏览器与电信网络中的电话终端之间的MMTel。


    图4 雷动webrtc产品图(HTML+JS电话与中移动TD手机间的视频呼叫)


    图5 雷动webtrc产品图(HTML+JS电话P2P的视频呼叫)


    图6 在爱立信webrtc浏览器在智能终端上P2P视频呼叫

4.雷动WEBRTC产品介绍 
    4.1 产品发展历程 

    图7 雷动WEBRTC产品发展历程

    雷动公司从2010年开始着手研究可以在所有浏览器下免插件直接使用的VOIP终端,到目前为止已经形成了第三代的产品。

    第一代产品基于Adobe公司开源协议RTMP。
    第二代产品基于Adobe公司私有协议RTMFP。
    第三代产品基于HTML5的WEBRTC规范,同时对于不支持WEBRTC规范的浏览器启用FLASH进行过渡。

    4.2 解决方案介绍 
    当前通讯业务及互联网业务融合日趋紧密,在互联网业务中使用到通讯能力是行业发展的需求,如在WEB邮箱系统中能直接与对方进行电话联络;在电子商务网站上面客户可以直接与网店服务人员进行高效的电话沟通;在企业的OA、ERP、CRM中能直接联系到对方;在EMAIL中的邮件签名上客户可以直接同发起EMAIL的人电话联系;在OFFICE文档或PDF文档上,通过点击链接的方式可以直接和作者联系。这些应用场景现有的通过特定客户端的系统都无法完成。

    要实现上述场景需要解决如下几个问题:
    (1)基于浏览器技术。
    (2)无插件或者该插件已经广泛安装。

    雷动公司的话音云平台技术可以提供很好的解决方案。


    图8 通过雷动RTC技术构建语音平台

    通过构建的云平台,浏览器中的WEBAPP可以很好的实现上述业务。


    图9 网络结构图


    图10 系统内部结构图

    上图绿色部分为RTC整体系统的6大子系统。
    1、 RTC CLIENT 包括基于HTML4/5的WEBAPP。
    2、 MPU 主处理单元 主要完成WebSocket承载与RTMP承载及业务全流程控制。
    3、 B2BUA 背靠背用户代理 主要完成ROAP中SDP与SIP协议转换,SIP UA的信令面实现相关工作。
    4、 Media Forward 媒体转发模块 主要完成IMS及RTC CLIENT之间的媒体转发,SRTP协议及RTMFP协议的实现。
    5、 Codec Server 编解码服务器 主要完成媒体格式的编解码工作。
    6、 RPC Proxy 远程调用代理 主要完成和其他应用服务之间的接口,如账号鉴权、通讯录数据的同步等等。

    其中MPU、B2BUA、Media Forward、Codec Server、RPC Porxy统称RTC SERVER。

    RTC SERVER子系统说明

    图11 Rtc功能序列图

    一、4Hosting RPC调用AP的接口后获取了IMS/NGN的账号和密码及SBC的地址信息。
    二、9 Tokenid 在mpu刷新在线用户列表,在线用户P2P的语音和视频通话需要此信息。
    三、13 OFFER B2BUA向MF申请RTP资源。
    四、23、24、25实现js发送dtmf的接口,在RTCServer中完成DTMF插入功能。

    4.3 系统SDK开放 

    图12 开放策略描述图 

    为了方便开发者及ISV进行在浏览器上直接使用HTML/JS进行通讯业务开发,系统可以提供基于JS的SDK,通过SDK的接口调用的方式方便第三方业务开发。

    同时,RTC系统作为一个独立的网元,也可以进行网元之间的对接。

    通过RTC系统的WEB UA主要进行如下2类业务
    1、PC2PHONE的语音通话
    2、PC2PC的在线音视频通话
    4.4 运营维护系统 
    使用WEB方式进行系统监测及维护。
    可以实时监测硬件系统的CPU、内存、硬盘等系统信息。
    可以实时监测通讯系统的话务运行情况。
    可以按主叫\被叫进行接续过程跟踪。
    可以按主叫\被叫进行全程录音。




    4.5 技术指标及性能参数 
    音频:G.711、SPEEX
    视频:VP8、H.263、H.264
    信令:SIP2.0
    媒体流:RTP、SRTP、RTMFP、RTMP
    控制承载:RTMP、WEBSOCKET
    2.8G主频4核PC服务器上并发400路呼叫,系统采用负荷分担模式集群。

5.解决方案应用 
    5.1 电信运营商开放平台 
    与电信运营商的NGN或IMS网络对接,作为互联网与电信网络中间的网关设备实现互通




    同时通过SDK开放的方式构建开放平台。

    5.2 电子商务企业在线客服平台 
    电子商务企业只要将一段JS代码插入网站中,即可无缝的实现将来自互联网的语音咨询转到服务人员电话的功能。



     在线语音客户的服务。相比于传统的400电话,在线语音客服在费用、隐私保护、应用场景上与400电话有区别,双方互为补充,都是为了给客户提供更贴心的服务。

说明 WEB 400
费用 对于购物者免费,对于网店店主按照通话时长计费 对于购物者需要支付市话费,对于网店店主按照通话时长计费
隐私保护 从购物者角度看隐私保护好,除了IP地址外没有泄露其他信息 从购物者角度看,泄露了用户手机号码。
应用场景 对店主而言,增加了一种接触客户的方式。对购物者而言,适用前期的匿名咨询,没有任何心理压力。对于已经习惯了在线沟通的客户,对此方式的接受度高。 对店主而言,增加了一种接触客户的方式。对购物者而言,除了隐私考虑外,习惯直接打电话语音沟通,效率高。。


    5.3 行业融合通讯平台 
    将语音通讯融入企业OA、ERP、CRM系统中。

    5.4 垂直行业门户网站 


    在垂直行业门户上面完成信息检索后可以直接呼叫到目标对象的服务热线上。

6.专业术语 
WEBRTC Web Real-Time Communication, 也被称为RTCWEB,是一项在浏览器内部进行实时视频和音频通信的技术。
ROAP RTCWeb Offer/Answer Protocol (ROAP) ,目前版本draft-jennings-rtcweb-signaling-01。定义了浏览器之间的信令面交付格式,如媒体协商、密钥交换等。
JSEP Javascript Session Establishment Protocol ,JavaScript会话建立协议,定义通信双方交换SDP信息,进行媒体流协商和控制。JSEP的设计思路将媒体层的控制交由浏览器,而将信令层的控制交由Web应用开发者,从而使得信令状态机可与浏览器彻底分离,保持了协议的灵活性。目前版本Javascript Session Establishment Protocol draft-uberti-rtcweb-jsep-02。
IETF IETF是Internet工程任务组(Internet Engineering Task Force)的简写。IETF又叫互联网工程任务组,成立于1985年底,是全球互联网最具权威的技术标准化组织,主要任务是负责互联网相关技术规范的研发和制定,当前绝大多数国际互联网技术标准出自IETF。
B2BUA 背对背的用户代理,是一个逻辑实体,它就像用户代理服务器(UAS)一样接收和处理各类请求。
IMS IP Multimedia Subsystem,IP多媒体系统。
UA 可以担当用户代理客户端和服务器端的逻辑实体。
STUN Simple Traversal of UDP over NATs,NAT 的UDP简单穿越,是一种网络协议,它允许位于NAT(或多重NAT)后的客户端找出自己的公网地址。该协议由RFC 3489定义。
TURN Traversal Using Relays around NAT,即通过Relay方式穿越NAT,这在使用了对称式的NAT(或者防火墙)的网络中尤其具有实用价值。 RFC5766中定义。
ICE Interactive Connectivity Establishment交互式连通建立方式。ICE通过综合运用STUN、TURN等协议,使之在最适合的情况下工作,以弥补单独使用其中任何一种所带来的固有缺陷。
SBC SBC是IMS网络边缘用于实现IP接入、互通和安全保护的网元,存在于接入网络与IMS网络之间或不同IMS网络之间,是用户接入IMS的入口点。SBC作为B2BUA将用户和IMS核心网进行隔离。 SBC的主要功能包括: 1)注册管理功能 2)NAT穿越功能 3)信令防火墙功能 4)媒体资源管理 5)QoS策略控制 6)IP安全功能
posted @ 2015-05-17 15:55  小王爷ii  Views(341)  Comments(0Edit  收藏  举报