基于 doubango 框架的 webrtc 到SIP 的网关 webrtc2sip 架构分析

doubango 发布了其 webrtc2sip最新解决方案,该方案的目的是提供一个信令及媒体网关,以使浏览器端基于webrtc技术的 软电话可以与传统SIP电话互通,

架构图如下:

基于 doubango 框架的 webrtc 到SIP 的网关 webrtc2sip 架构分析


此解决方案包括三部分,SIP 代理服务器,RTCWeb Breaker, 以及 Media coder.


SIP代理服务器角色:

浏览器端传输层用 HTML5 引进的WebSocket 传输层协议,而传统SIP 电话都是基于UDP,tcp,tls,所以sip 代理服务器的角色是转换 websocket协议到 udp,tcp,tls,

RTCWeb Breaker

此模块用于必要时支持ICE 及 srtp,我们知道,webrtc框架在 NAT穿越采用ICE框架,而大多数SIP软交换/pbx并不支持 ICE框架的服务器端实现,所以此模块用于与webrtc 客户端交互,解决ICE 协商问题。


Media Coder

此模块实现必要的语音及视频编码,包括 VP8,H264 AVC, H264 SVC.