一种基于SIP协议的WebRTC媒体流网关系统、容灾方法与流程

文档序号:37758397发布日期:2024-04-25 10:45阅读:7来源:国知局
一种基于SIP协议的WebRTC媒体流网关系统、容灾方法与流程

本发明涉及网关通信,具体而言,涉及一种基于sip协议的webrtc媒体流网关系统、容灾方法。


背景技术:

1、webrtc(web real-time communications)网关系统是由多个信令服务及多个媒体流服务组成一个整体对外提供高并发的服务。它是连接浏览器与公共交换电话网络(public switch telephone network,pstn)的网元,它可以允许通过web浏览器拨打或接听来自pstn的呼叫。webrtc网络安全性体现在网络套接字安全(web socket secure,wss),安全实时传输协议(secure real-time protocol,srtp)。通过webrtc接入到传统pstn,让pstn电话应用更安全更广泛。

2、现有技术中的媒体流网关负责媒体流传输及音频数据处理,通过多个相同的节点为成千上万的终端或设备提供媒体流服务,一旦发生异常或者需要维护升级,将造成大面积的网络呼叫无声音或会话无法建立等异常。传统的容灾方案会采用高可用(ha,highavailable)+远程字典服务(remote dictionary server,redis)集群方案,节点之间共享,以确保实时传输协议(real-time transport protocol,rtp)在需要时正确故障转移及对redis集群的监控维护,而这样的方案部署复杂且可利用率很低,且webrtc媒体流网关节点异常后导致此节点上提供服务的所有web浏览器通话无法正常使用。


技术实现思路

1、有鉴于此,本发明的目的在于提供通过对媒体流网关容灾处理以解决目前使用webrtc媒体流网关节点异常后导致此节点上提供服务的所有web浏览器通话仍然可以继续进行使用。

2、本发明的第一方面提供了一种基于sip协议的webrtc媒体流网关系统,所述webrtc媒体流网关系统包括信令服务器集群、媒体流服务器集群以及异常监测服务器,所述信令服务器集群包括多个sip服务器;其中:

3、信令服务器,用于在通话建立时保存会话标识及所用媒体流节点信息,当会话建立时,信令服务器指定分配一个媒体流服务器节点至本端的会话描述协议sdp中,并生成第一sdp请求发送至远端,实现与远端的sdp进行协商,建立媒体流通道;

4、异常监测服务器,用于监测媒体服务器的状态信息;当监测到第一媒体服务器的工作状态异常,记录第一媒体服务器信息,并发送至所有的信令服务器;

5、媒体流服务器,用于与异常监测服务器保持连接,并按照预定周期上传当前的工作状态至异常监测服务器;

6、所述信令服务器,还用于接收到第一媒体服务器信息,并重新分配一可用的第二媒体流服务器至本端的会话描述协议sdp中,实现与远端的sdp进行重新协商,重新建立媒体流通道。

7、进一步,所述第一媒体服务器信息包括第一媒体服务器ip、端口及状态信息;

8、所述信令服务器,还用于启动当前本端的媒体流服务,将本端的媒体流服务信息写入至本端的会话描述协议sdp,构成第一sdp请求,发送至远端;所述本端的媒体流服务信息包括ice信息、ip、端口以及媒体编码器信息;

9、远端接收所述第一sdp请求,进行解析并回复应答消息;其中所述应答消息包括远端的媒体流服务信息;所述远端的媒体流服务信息包括ice信息、ip、端口以及媒体编码器信息;

10、所述信令服务器根据所述媒体信息执行sdp协商,sdp协商完成后,开始媒体流数据传输。

11、进一步,所述异常监测服务器,还用于确定预定的时间内没收到第一媒体流服务器的工作状态信息,确认第一媒体流服务器异常,记录所述第一媒体服务器信息;

12、或者,接收第一媒体流服务器发送的维护信息,确认第一媒体流服务器异常,记录所述第一媒体服务器信息。

13、进一步,所述异常监测服务器,还用于向所有的信令服务器的udp监听端口发送所述第一媒体服务器信息;所述信令服务器收到所述第一媒体服务器信息后,向所述异常监测服务器发送响应指令;并基于所述响应指令发送分配请求至信令服务器;

14、所述信令服务器,还用于基于所述分配请求,根据负载均衡策略确定第二媒体流服务器,并确定所述第二媒体流服务器ip以及端口信息;根据所述第二媒体流服务器ip以及端口信息重写本端的会话描述协议sdp,并生成第二sdp请求发送至远端。

15、进一步,所述实现与远端的sdp进行重新协商,重新建立媒体流通道,包括:

16、远端接收到所述第二sdp请求,将其媒体层信息放入所述sdp中,并回复确认指令至所述信令服务器,实现sdp协商完成,并基于第二媒体流服务器实现媒体流数据传输。

17、此外,本发明还提出一种基于sip协议的webrtc媒体流网关容灾方法,所述方法包括:

18、在本端、远端建立通话时,保存会话标识及所用媒体流节点信息,指定分配一个媒体流服务器节点至本端的会话描述协议sdp中,并生成第一sdp请求发送至远端,实现与远端的sdp进行协商,建立媒体流通道;

19、监测媒体服务器的状态信息;当监测到第一媒体服务器的工作状态异常,记录第一媒体服务器信息,并发送至所有的信令服务器;

20、根据第一媒体服务器信息重新分配一可用的第二媒体流服务器至本端的会话描述协议sdp中,实现与远端的sdp进行重新协商,重新建立媒体流通道。

21、进一步,所述第一媒体服务器信息包括第一媒体服务器ip、端口及状态信息;

22、所述指定分配一个媒体流服务器节点至本端的会话描述协议sdp中,并生成第一sdp请求发送至远端,实现与远端的sdp进行协商,建立媒体流通道,包括:

23、启动当前本端的媒体流服务,将本端的媒体流服务信息写入至本端的会话描述协议sdp,构成第一sdp请求,发送至远端;所述本端的媒体流服务信息包括ice信息、ip、端口以及媒体编码器信息;

24、远端接收所述第一sdp请求,进行解析并回复应答消息;其中所述应答消息包括远端的媒体流服务信息;所述远端的媒体流服务信息包括ice信息、ip、端口以及媒体编码器信息;

25、所述信令服务器根据所述媒体信息执行sdp协商,sdp协商完成后,开始媒体流数据传输。

26、进一步,所述当监测到第一媒体服务器的工作状态异常,记录第一媒体服务器信息,包括:

27、确定预定的时间内没收到第一媒体流服务器的工作状态信息,确认第一媒体流服务器异常,记录所述第一媒体服务器信息;

28、或者,接收第一媒体流服务器发送的维护信息,确认第一媒体流服务器异常,记录所述第一媒体服务器信息。

29、进一步,所述方法还包括:

30、所述异常监测服务器向所有的信令服务器的udp监听端口发送所述第一媒体服务器信息;所述信令服务器收到所述第一媒体服务器信息后,向所述异常监测服务器发送响应指令;并基于所述响应指令发送分配请求至信令服务器;

31、信令服务器基于所述分配请求,根据负载均衡策略确定第二媒体流服务器,并确定所述第二媒体流服务器ip以及端口信息;根据所述第二媒体流服务器ip以及端口信息重写本端的会话描述协议sdp,并生成第二sdp请求发送至远端。

32、进一步,所述实现与远端的sdp进行重新协商,重新建立媒体流通道,包括:

33、远端接收到所述第二sdp请求,将其媒体层信息放入所述sdp中,并回复确认指令至所述信令服务器,实现sdp协商完成,并基于第二媒体流服务器实现媒体流数据传输。

34、本发明的方案中,通过在本端、远端建立通话时,保存会话标识及所用媒体流节点信息,指定分配一个媒体流服务器节点至本端的会话描述协议sdp中,并生成第一sdp请求发送至远端,实现与远端的sdp进行协商,建立媒体流通道;监测媒体服务器的状态信息;当监测到第一媒体服务器的工作状态异常,记录第一媒体服务器信息,并发送至所有的信令服务器;根据第一媒体服务器信息重新分配一可用的第二媒体流服务器至本端的会话描述协议sdp中,实现与远端的sdp进行重新协商,重新建立媒体流通道。相比于现有技术,在webrtc媒体流网关发生容灾,不需要媒体流服务内部做任何处理,媒体流服务器只用专注于自身的媒体流工作,由sip信令层负责对异常媒体流服务器节点进行切换到正常的媒体流服务器节点,使得webrtc媒体流网关节点异常后导致此节点上提供服务的所有web浏览器通话仍然可以继续进行使用,方便部署,高效利用媒体流服务节点,且易于维护及对媒体流服务的负载均衡控制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1