一种基于JAIN-SIP的国标28181平台分布式集群实现系统的制作方法

文档序号:20839690发布日期:2020-05-22 17:20阅读:1358来源:国知局
一种基于JAIN-SIP的国标28181平台分布式集群实现系统的制作方法

本发明涉及国标设备接入相关技术领域,尤其是指一种基于jain-sip的国标28181平台分布式集群实现系统。



背景技术:

在传统安防行业,采用较多的是用c++编写的产品,该类产品存在一些缺陷:该类产品对运行环境有一定的要求,代码需要编译不同版本给不同的服务器使用,这过程容易忘记或者出错。该类产品在并发上升的时候,没办法动态扩容,需要通过修改配置,并重启服务的方式来处理,这样会导致系统在升级过程中没办法提供服务。



技术实现要素:

本发明是为了克服现有技术中存在上述的不足,提供了一种解决兼容性且提升扩展性的基于jain-sip的国标28181平台分布式集群实现系统。

为了实现上述目的,本发明采用以下技术方案:

一种基于jain-sip的国标28181平台分布式集群实现系统,包括下级域、nginx集群、zookeeper集群、jain-sip信令服务器集群、流媒体服务器集群和数据库集群,其中:

下级域为支持国标28181协议的设备或者平台,通过jain-sip信令服务器集群中的sip信令和国标28181平台交互,与nginx集群相连;

nginx集群通过keepalive监控nginx服务器运行状态,当发现nginx服务器网络不通的时候,自动切换到另外一台备份nginx服务器,同时会记录下日志,方便排查问题,与jain-sip信令服务器集群相连;

zookeeper集群提供jain-sip信令服务器集群和流媒体服务器集群的dubbo服务的发现和注册使用,并缓存相应配置;

流媒体服务器集群接收国标ps流,将国标ps流转成各种格式,提供给算法、vlc、web页面播放使用;

jain-sip信令服务器集群内部通过dubbo服务的方式实现分布式部署,与数据库集群相连。

本发明提出了基于jain-sip(javaapiforintegratednetworkssip)的国标28181信令服务器分布式设计和实现。通过本发明的方式,不但解决了原有兼容性,另外还提升了扩展性,保证了服务的高可用性;同时采用jain-sip的实现方式,能够使得企业用人成本大大降低(java方面的人才储备远高于c++等其他语言)。

作为优选,所述jain-sip信令服务器集群内部包括注册模块、通道目录模块、实时流模块、ptz云台模块、sip日志管理模块和流状态巡检模块,其中:

注册模块通过siplistener提供端口服务,提供下级域注册,并处理鉴权密码相关事务;

通道目录模块通过siplistener主动下发获取目录请求,获取通道列表,并根据自定义过滤规则,将业务外的通道过滤掉;

实时流模块从下级域中取流,设置传播信令,并告知下级域和流媒体服务器集群处理;

ptz云台模块实现下级域的云平台控制;

sip日志管理模块提供所有下级域的日志查询,分析和监控异常行为,极大提高现场人员的问题排查效率;

流状态巡检模块提供巡检机制,发现异常情况,立即重启推流或者告警。

作为优选,所述的jain-sip信令服务器集群通过zookeeper集群指定leader,由leader通过轮询或者权重负载均衡算法方式指定目标服务器,实现流媒体服务器集群间的负载均衡算法,提供高可用。

作为优选,在流状态巡检模块中会提供定时巡检,检测流媒体服务器集群端口是否正常监听,如果没有正常监听,则立即重启推流。

作为优选,在流状态巡检模块中,如果下级域因为各种原因导致断流,则流媒体服务器集群会停止转码,停止流媒体服务器集群收流端口监听,定时重启推流并进行告警。

本发明的有益效果是:不但解决了原有兼容性,另外还提升了扩展性,保证了服务的高可用性;同时采用jain-sip的实现方式,能够使得企业用人成本大大降低。

附图说明

图1是本发明的系统框架图;

图2是流媒体服务器负载均衡的框架图;

图3是流状态巡检的流程图。

具体实施方式

下面结合附图和具体实施方式对本发明做进一步的描述。

如图1所述的实施例中,一种基于jain-sip的国标28181平台分布式集群实现系统,包括下级域、nginx集群、zookeeper集群、jain-sip信令服务器集群、流媒体服务器集群和数据库集群,其中:

下级域为支持国标28181协议的设备或者平台,通过jain-sip信令服务器集群中的sip信令和国标28181平台交互,与nginx集群相连;例如:ipc、nvr、下级域平台等;

nginx集群通过keepalive监控nginx服务器运行状态,当发现nginx服务器网络不通的时候,自动切换到另外一台备份nginx服务器,同时会记录下日志,方便排查问题,与jain-sip信令服务器集群相连;

zookeeper集群提供jain-sip信令服务器集群和流媒体服务器集群的dubbo服务的发现和注册使用,并缓存相应配置;

流媒体服务器集群接收国标ps流,将国标ps流转成各种格式,提供给算法、vlc、web页面播放使用;流媒体服务器集群内部包括透传模块、转码模块、存储模块、状态返回模块、保活模块等;

jain-sip信令服务器集群内部通过dubbo服务的方式实现分布式部署,提升高并发和高可用,与数据库集群相连;jain-sip信令服务器集群内部包括注册模块、通道目录模块、实时流模块、ptz云台模块、sip日志管理模块和流状态巡检模块,其中:

注册模块通过siplistener提供端口服务,提供下级域注册,并处理鉴权密码相关事务;

通道目录模块通过siplistener主动下发获取目录请求,获取通道列表,并根据自定义过滤规则,将业务外的通道过滤掉;

实时流模块从下级域中取流,设置传播信令,并告知下级域和流媒体服务器集群处理;

ptz云台模块实现设备的焦距调整、方向调整等,实现下级域的云平台控制;

sip日志管理模块提供所有下级域的日志查询,分析和监控异常行为,极大提高现场人员的问题排查效率;

流状态巡检模块提供巡检机制,发现异常情况,立即重启推流或者告警;如图3所示,在流状态巡检模块中会提供定时巡检,检测流媒体服务器集群端口是否正常监听,如果没有正常监听,则立即重启推流;在流状态巡检模块中,如果下级域因为各种原因导致断流,则流媒体服务器集群会停止转码,停止流媒体服务器集群收流端口监听,定时重启推流并进行告警;

如图2所示,jain-sip信令服务器集群通过zookeeper集群指定leader,由leader通过轮询或者权重负载均衡算法方式指定目标服务器,实现流媒体服务器集群间的负载均衡算法,提供高可用。

其中:数据库集群与运行系统相连,数据库集群有mssql、mysql、redis等,运行系统有云服务器、独立服务器、windows/linux等。

视频流是算法分析的源头,视频流的稳定性一直是下级域接入关注点,提供高并发和高可用的平台服务,显得尤为重要。下面简单描述下该系统的工作流程:

1、某一平台注册到国标28281平台。

2、国标28281平台从上述平台获取平台通道列表。

3、国标28281平台从上述平台取流。

4、流媒体服务器将上述平台发送过来的ps流转成rtmp流。

5、第三方系统从流媒体服务器获取rtmp进行播放和算法分析。

6、国标28281平台监控上述平台主动断开的设备,并实时和定时发起推流请求。

7、国标28281平台定时巡检流状态,发现流不正常则重新发起推流。

8、运维人员可以收到或者查到流状态异常的设备,并进行相关分析。

相对于传统的国标平台技术实现,本方案具有如下优点和特性:1、具备传统的国标28181服务所有功能;2、基于dubbo微服务架构,提升服务的高可用和高并发;3、基于dubbo微服务架构,可以实现业务无感知的动态扩容;4、基于java的虚拟机技术,实现各种环境的兼容性;5、基于java的rest接口实现,在对接第三方系统方便简洁;6、完善的sip日志管理,使得现场人员不需要在使用wireshark等技术要求较高的抓包工作,直接就能查看到相关信息,极大提升问题排查效率,降低系统运维的技术难度;7、流状态巡检,发现断流现象,立即重启推流并告知相关人员,为后续流分析提供有力的保障。

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