webRTC 网关技术点分析

本文来自 csdn     http://blog.csdn.net/voipmaker   转载注明出处,谢谢。

 

webRTC技术逐渐成熟,VOIP厂商也在逐步实现对WebRTC的支持,由于WebRTC与传统SIP通信上的一些技术上差异,如果想让WebRTC客户端与普通SIP客户端互通,

需要借助网关设备,一些SBC厂商已经开始在SBC 加入webRTC网关能力以与已存在的普通SIP系统互操作,SBC作为会话的边界控制设备,在上面实现webRTC客户端到传统通信设备的终结无疑是个不错的选择,这样无需改造已有VOIP基础设施即可让WebRTC客户端与已存在的VOIP 基础设施通信。


通常,我们需要一个WebRTC网关设备,或者在已有的边界设备上添加网关能力,作为网关,根据具体需求,包含下面几部分。

1.  WebSocket 协议承载 SIP协议 网关:

     webRTC并没有定义其控制层采用什么协议,但SIP无疑是目前主要采用的控制层协议,通常web开发人员在浏览器端实现了javascript写的sip协议栈,

    而webRTC标准规定,浏览器端承载信令的协议时Websocket,如果采用SIP作为控制层,浏览器客户端与服务器交互通过websocket 协议承载SIP协议,

  这就需要WebRTC网关 支持websocket 服务器的实现,然后把websocket转换成 tcp/udp/tls传输协议,抓发给传统voip设备(客户端,服务器等)。


2. 媒体控制器

    WebRTC 规定采用ICE解决 NAT穿越问题, 媒体传输基于srtp, 媒体控制模块的作用是实现ICE服务器。必要时需要实现turn模块,做媒体relay.


3. 转码网关:

   webRTC 在音频编码上采用opus和g711,视频编码还在vp8和h264之间竞争,浏览器厂商表现不一,而传统voip基础设备可能不支持opus, 或者有其他codec,

  这就需要实现媒体转码模块,处于性能考虑,往往需要专门的硬件dsp 实现。


4. FLASH RTMP 网关

     RTMP协议是目前在浏览器端实现类似WEbRTC功能的前身,属于flash家族,需要浏览器安装插件,如果想让已经存在的RTMP 基础设备与WebRTC 客户端或者普通SIP设施互操作,需要实现 RTMP网关设备。


上面的几点是webRTC网关实现时应该考虑的几点,好的网关可能需要实现上面的大部分功能。 1,2应该是网关必要实现的部分。





你可能感兴趣的:(webRTC 网关技术点分析)