首页> 中国专利> 一种应用于音视频数据传输的端到端系统解决方法

一种应用于音视频数据传输的端到端系统解决方法

摘要

本发明涉及通信技术领域,具体地说是一种应用于音视频数据传输的端到端系统解决方法,包括客户端,设备端,和服务端,服务端包括管理服务器,注册服务器和传输服务器以及对应的处理步骤,本发明同现有技术相比,通过独特的客户端、服务端和设备端的架构设计,有效降低因服务器宕机或网络问题导致的故障,有更高的可靠性,通过对系统负载主动调整服务器数量,降低闲置服务器成本,可对设备进行综合系统管理,减少维护成本。

著录项

  • 公开/公告号CN113824723A

    专利类型发明专利

  • 公开/公告日2021-12-21

    原文格式PDF

  • 申请/专利权人 上海安威士科技股份有限公司;

    申请/专利号CN202111117683.5

  • 发明设计人 王伟君;

    申请日2021-09-23

  • 分类号H04L29/06(20060101);

  • 代理机构31301 上海海贝律师事务所;

  • 代理人金星

  • 地址 201108 上海市闵行区金都路4289号6号楼6201室

  • 入库时间 2023-06-19 13:46:35

说明书

技术领域

本发明涉及通信技术领域,具体地说是一种应用于音视频数据传输的端到端系统解决方法。

背景技术

现有RTP,RTMP,WEBRTC,HTTP等为目前使用较为广泛的音视频传输技术,音视频传输技术的被专业安防视频领域和网络视频业务的兴起所推动,在各自的领域内有不同程度的发展,相对专业安防领域,网络视频业务的发展更快。

RTP技术被普遍使用在专业视频安防产品中,由于专业安防产品通常被部署在专用网络中,相对复杂的广域网专用网络相对干扰较少,成为专业安防领域内标准传输协议;RTMP协议多用于广域网视频网站点播中,FLASH插件视频播放的标准协议(目前FLASH已被淘汰);HTTP协议已经非常陈旧,但网络音视频需求推动下,大量的视频数据采用文件方式通过HTTP协议进行传输,通过不断加强服务器的性能和带宽达到理想的效果;WEBRTC是目前最热门的视频传输协议,特点是点对点,实时音视频流传输。

安防类产品主要应用于专业安防领域,一贯使用RTP等技术并与主流视频网站完全是两种技术路线,由于安防类产品逐渐进入个人消费类市场,一些面向消费类安防产品面临各种不兼容问题,目前主流方案为使用云服务器进行数据的存储和转发,其满足当前客户的使用体验,但随着产品不断推向市场,高昂的视频数据转发费用成为了最主要困难,安防视频产品多设计在一个专用局域网内使用,而用户期望在任何位置都能看到视频。首先需要产品能够在广域网环境下传输数据。需要穿透用户和设备之间的网络进行数据传输。通过增设服务器可解决网络数据传输问题,但同时带来巨大的成本压力,安防视频产品每时每刻生产大量的数据,全部通过服务器转发,导致运营成本剧增,通过存储成文件方式进行数据发送又会产生大量的延时。

因此,需要设计一种应用于音视频数据传输的端到端系统解决方法通过自主设计的软件服务构架从而减少同等环境下服务器数量降低服务器硬件要求从而降低运营成本提高整个软件系统的容错性,降低宕机,网络异常对系统的影响,通过新的消息传输模式降低整个系统总数据传输量,从而降低数据传输成本。

发明内容

本发明的目的是克服现有技术的不足,一种应用于音视频数据传输的端到端系统解决方法,通过自主设计的软件服务构架从而减少同等环境下服务器数量降低服务器硬件要求从而降低运营成本提高整个软件系统的容错性,降低宕机,网络异常对系统的影响,通过新的消息传输模式降低整个系统总数据传输量,从而降低数据传输成本。

为了达到上述目的,本发明提供一种应用于音视频数据传输的端到端系统解决方法,包括客户端,设备端,和服务端,服务端包括管理服务器,注册服务器和传输服务器,其步骤在于:

S1:管理服务器添加传输服务器;

S2:管理服务器添加设备;

S3:设备端启动和初始化;

S4:客户端启动和连接设备;

S5:传输服务器过载处理;

S6:传输服务器过载恢复;

S1包括以下内容:

S101:用户通过管理服务器配置页面添加传输服务器,当被设置成自动添加时,管理服务器将由消息触发,自动完成整个逻辑;

S102:管理服务器将配置信息保存到数据库;

S103:管理服务通过云服务运营商提供的API接口提交创建服务器申请;

S104:云服务运营商完成新服务器的创建和启动;

S105:新服务器启动后,向管理服务器发送注册请求;

S106:管理服务器将传输服务信息更新到所有注册服务器;

S2包括以下内容:

S201:用户通过管理服务器配置页面添加(修改/删除)设备;

S202:管理服务器将添加(修改/删除)的设备保存到数据库;

S203:管理服务器将设备信息更新到所有注册服务器;

S3包括以下内容:

S301:设备端启动首先向注册服务器发送注册信息查询消息,获取设备对应的传输服务器列表;

S302:设备端获取传输服务器列表后,向传输服务器发送注册请求,收到传输服务器注册应答消息后,完成注册;

S303:设备完成向传输服务器注册后,需定时15s向传输服务器发送心跳消息,传输服务器发送的心跳应答消息中包含传输服务器负载信息,若设备连续收到3次服务器过载信息时,需重新向注册服务器发送注册查询消息,若传输服务器列表变更,则重新执行初始化流程;

S4包括以下内容:

S401:客户端向注册服务器请求查询设备关联的传输服务器信息;

S402:注册服务器返回指定设备的传输服务器信息;

S403:客户端向传输服务器发送查询请求;

S404:传输服务器向客户端发送查询应答;

S405:传输服务器向设备端转发客户端的查询请求;

S406:客户端收到4传输服务器的应答后,向设备端发送试探消息;

S407:设备端收到5传输服务器的转发查询请求后,向客户端发送试探消息;

S408:若客户端收到设备端的试探消息,表面两者可建立直接连接,客户端发起连接请求;

S409:设备端收到客户端连接请求,发送连接请求应答消息。客户端收到连接请求的应答消息,连接建立完成;

S410:若客户端超时未收到设备端的试探消息,客户端向转发服务器发起转发连接请求;

S411:转发服务器收到转发连接请求,建立转发通道,向设备端发送转发连接请求;

S412:设备端收到转发服务器的转发链接请求,发送应答消息;

S413:客户端收到转发服务器的转发应答消息,连接建立完成;

S5为传输服务器为客户端和设备端提供穿透连接协助,当客户端和设备端的网络限制导致无法成功穿透时,传输服务器提供数据转发服务,包括以下内容:

S501:当一个传输服务器转发数据量或负载设备较多时,传输服务器向管理服务器发送过载消息;

S502:当一个传输服务器转发数据量或负载设备较多时,传输服务器向所有连接的设备(除以建立转发的设备)发送负载过高消息;

S503:管理服务器将高负载传输服务器下的设备转移到新的低负载传输服务器,向注册服务器更新修改后的设备信息列表;

S504:设备端连续多次收到传输服务器的高负载消息2后,向注册服务器重新请求设备信息列表以获取新的传输服务器;

S55:设备端向新低负载传输服务器迁移;

S6为:当传输服务器为某客户端和设备端建立的转发链接停止时,传输服务器资源得到释放,当资源到达低负载阈值时,传输服务器向管理服务器发送的状态消息,管理服务器将转移部分设备到此低负载服务器;

管理服务器采用标准网站构架设计,分为前端,后端,数据库,前端提供用户配置管理界面,后端完成配置消息处理,与其他服务器交互数据处理,数据库用于存储设备信息。

注册服务器提供客户端和设备端查询对应设备的传输服务器关联信息,关联信息并发量巨大且字符串短小。

注册服务器分为高并发查询服务和更新服务,高并发查询服务为客户端和设备端提供查询功能支持,该服务特性为高并发且每个消息的数据短小(84字节);更新服务使用http协议与管理服务器交互,获取设备列表和传输服务器列表。

传输服务器根据各地设备数量进行动态调整,数量不限,当某地区传输服务器负载过大或服务器闲置过多时,管理服务器通过服务器运营商接口进行动态增减传输服务器操作。

传输服务器分为网络穿透,转发服务和更新服务,更新服务功能与注册服务器相同,提供与管理服务器的信息交互。

客户端以运行库方式提供外部程序调用,通过现有的客户端接口API快速完成音视频连接的建立传输。

设备端以运行库方式提供外部程序调用,通过现有的设备端接口API快速完成音视频连接的建立传输。

本发明同现有技术相比,通过独特的客户端、服务端和设备端的架构设计,用户仅需调用客户端和设备端提供的API接口即可实现实时音视频数据传输,通过管理服务器可快速配置和管理相关设备,通过配置,系统可根据负载自行调整增减服务器以适应当前业务需求,具备以下的技术效果:该方案降低数据传输成本,相比现有方案有效降低因服务器宕机或网络问题导致的故障,有更高的可靠性,通过对系统负载主动调整服务器数量,降低闲置服务器成本,可对设备进行综合系统管理,减少维护成本。

附图说明

图1为本发明的整体架构示意图。

图2为本发明的注册服务器架构示意图。

图3为本发明的传输服务器架构示意图。

图4为本发明的客户端接口示意图。

图5为本发明的设备端接口示意图。

图6为本发明的管理服务器添加传输服务器示意图。

图7为本发明的管理服务器添加设备示意图。

图8为本发明的设备端启动和初始化示意图。

图9为本发明的客户端启动和连接设备示意图一。

图10为本发明的客户端启动和连接设备示意图二。

图11为本发明的传输服务器过载处理示意图。

具体实施方式

现结合附图对本发明做进一步描述。

参见图1-2,本发明提供一种应用于音视频数据传输的端到端系统解决方法,包括客户端,设备端,和服务端,服务端包括管理服务器,注册服务器和传输服务器,其步骤在于:

S1:管理服务器添加传输服务器;

S2:管理服务器添加设备;

S3:设备端启动和初始化;

S4:客户端启动和连接设备;

S5:传输服务器过载处理;

S6:传输服务器过载恢复;

S1包括以下内容:

S101:用户通过管理服务器配置页面添加传输服务器(当被设置成自动添加时,管理服务器将由消息触发,自动完成整个逻辑);

S102:管理服务器将配置信息保存到数据库;

S103:管理服务通过云服务运营商提供的API接口提交创建服务器申请;

S104:云服务运营商完成新服务器的创建和启动;

S105:新服务器启动后,向管理服务器发送注册请求;

S106:管理服务器将传输服务信息更新到所有注册服务器;

如图6-7所示,S2包括以下内容:

S201:用户通过管理服务器配置页面添加(修改/删除)设备;

S202:管理服务器将添加(修改/删除)的设备保存到数据库;

S203:管理服务器将设备信息更新到所有注册服务器;

S3包括以下内容:

S301:设备端启动首先向注册服务器发送注册信息查询消息,获取设备对应的传输服务器列表;

S302:设备端获取传输服务器列表后,向传输服务器发送注册请求,收到传输服务器注册应答消息后,完成注册;

S303:设备完成向传输服务器注册后,需定时15s向传输服务器发送心跳消息,传输服务器发送的心跳应答消息中包含传输服务器负载信息,若设备连续收到3次服务器过载信息时,需重新向注册服务器发送注册查询消息,若传输服务器列表变更,则重新执行初始化流程;

如图9-10所示,S4包括以下内容:

S401:客户端向注册服务器请求查询设备关联的传输服务器信息;

S402:注册服务器返回指定设备的传输服务器信息;

S403:客户端向传输服务器发送查询请求;

S404:传输服务器向客户端发送查询应答;

S405:传输服务器向设备端转发客户端的查询请求;

S406:客户端收到4传输服务器的应答后,向设备端发送试探消息;

S407:设备端收到5传输服务器的转发查询请求后,向客户端发送试探消息;

S408:若客户端收到设备端的试探消息,表面两者可建立直接连接,客户端发起连接请求;

S409:设备端收到客户端连接请求,发送连接请求应答消息。客户端收到连接请求的应答消息,连接建立完成;

S410:若客户端超时未收到设备端的试探消息,客户端向转发服务器发起转发连接请求;

S411:转发服务器收到转发连接请求,建立转发通道,向设备端发送转发连接请求;

S412:设备端收到转发服务器的转发链接请求,发送应答消息;

S413:客户端收到转发服务器的转发应答消息,连接建立完成;

如图5-6、图11所示,S5为传输服务器为客户端和设备端提供穿透连接协助,当客户端和设备端的网络限制导致无法成功穿透时,传输服务器提供数据转发服务,包括以下内容:

S501:当一个传输服务器转发数据量或负载设备较多时,传输服务器向管理服务器发送过载消息;

S502:当一个传输服务器转发数据量或负载设备较多时,传输服务器向所有连接的设备(除以建立转发的设备)发送负载过高消息;

S503:管理服务器将高负载传输服务器下的设备转移到新的低负载传输服务器,向注册服务器更新修改后的设备信息列表;

S504:设备端连续多次收到传输服务器的高负载消息2后,向注册服务器重新请求设备信息列表以获取新的传输服务器;

S505:设备端向新低负载传输服务器迁移;

S6为:当传输服务器为某客户端和设备端建立的转发链接停止时,传输服务器资源得到释放,当资源到达低负载阈值时,传输服务器向管理服务器发送的状态消息,管理服务器将转移部分设备到此低负载服务器;

本发明具有极高可扩展性,最小化服务提供时可在一个PC硬件平台上运行所有的服务器,当设备端逐步增加时,逐渐将注册服务器,传输服务器依次部署到独立PC硬件平台,结合当前亚马逊,阿里等云服务运营商提供的硬件升级功能,可以非常快速平滑升级系统。

管理服务器采用标准网站构架设计,分为前端,后端,数据库,前端提供用户配置管理界面,后端完成配置消息处理,与其他服务器交互数据处理,数据库用于存储设备信息,管理服务器以独立程序方式运行在云服务器运行商的主机上,数据存储使用mysql数据库,管理服务器以标准http方式提供用户配置管理。

注册服务器提供客户端和设备端查询对应设备的传输服务器关联信息,关联信息并发量巨大且字符串短小,注册服务器以独立程序方式运行在云服务器运行商的主机上,注册服务器没有数据库,服务器启动后所有数据均从服务器启动后从管理服务器获取,从管理服务器获取数据后开始提供服务器。

注册服务器分为高并发查询服务和更新服务,高并发查询服务为客户端和设备端提供查询功能支持,该服务特性为高并发且每个消息的数据短小(84字节);更新服务使用http协议与管理服务器交互,获取设备列表和传输服务器列表。高并发查询服务的设计相比主流http服务器,每次传输需要进行tcp三次握手,实际数据会增加http协议头信息,对于每个请求服务需要分配独立的内存用于处理tcp数据,再连接结束之间都会占用内存,所以采用http服务方式应对高并发请求需要建立集群服务器处理,而本方案使用udp方式,服务端无需为每个连接分配独立内存,udp数据传输无需握手,总体数据传输减少50%以上,对服务器硬件性能要求降低50%以上。

多注册服务器部署和分析服务设计以及与管理服务器相对独立运行,提升了整个系统的容错性,除非所有注册服务器全部宕机否则系统依然能够保证系统正常运行,相对传统使用备份服务器的容错方案,首先多地部署可有效降低对不同区域连接延时,其次所有注册服务器互为备份,且传统备份服务器即使不在工作状态也需要为其支付费用,本系统中所有注册服务器分布在不同地区,也降低地区性网络瘫痪导致系统不能正常运行的概率。

注册服务器可实现向管理服务器请求设备信息列表,向管理服务器上报状态信息,上报信息状态包含注册服务器负载,每秒请求数量,CPU/内存占用率等信息,接收管理服务器设备信息列表更新请求(系统管理员在管理服务器上进行添加/删除/修改等操作后,管理服务器将更新的设备信息发送到注册服务器),接收客户端设备查询请求以及接收设备端设备查询请求。

例如仅在国内使用可配置1台,若在亚洲区域使用配置2台,若需要业务负载全球可根据地理情况为亚洲,欧洲,非洲,南北美洲各配置1台,视全球骨干网络中心节点而定,更多的注册服务器可让就近的设备获得更快速的响应。

如图3所示,传输服务器根据各地设备数量进行动态调整,数量不限,当某地区传输服务器负载过大或服务器闲置过多时,管理服务器通过服务器运营商接口进行动态增减传输服务器操作;本发明省去了客户端和设备端对网络类型的检测,同时与STUN协议不同,本发明将转发和穿透流程同时进行,即客户端和设备端在连接过程中同时进行尝试下穿透和转发通道的建立,即穿透成功时,停止转发流程,若穿透失败,则使用转发通道,当一个传输服务器承担较多的转发业务时,其负载较高,管理服务将执行传输服务器过载处理流程,当较多的传输服务器上的转发业务停止时,管理服务器将执行传输服务器过载恢复流程。

传输服务器分为网络穿透,转发服务和更新服务,更新服务功能与注册服务器相同,提供与管理服务器的信息交互。

例如,设备规模10个:管理服务器,注册服务器,传输服务器同时部署在阿里云1核1G云服务器上。

例如,设备规模100个:管理服务器,注册服务器部署在1台1核1G云服务,传输服务器部署在1台1核1G云服务器。

例如,设备规模超百万级别后:管理服务器和注册服务器部署在多核心大内存服务器,注册服务器分布于全球各大网络节点,传输服务器根据实际情况动态部署各地。

如图4所示,客户端以运行库方式提供外部程序调用,通过现有的客户端接口API快速完成音视频连接的建立传输。

如图5、图8所示,设备端以运行库方式提供外部程序调用,通过现有的设备端接口API快速完成音视频连接的建立传输,设备端程序主题通过调用设备端API接口列表可快速实现端对端连接。

以上仅是本发明的优选实施方式,只是用于帮助理解本申请的方法及其核心思想,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

本发明从整体上降低服务器部署数量,大量降低服务运营成本,降低数据传输成本,相比现有方案有效降低因服务器宕机或网络问题导致的故障,有更高的可靠性,通过对系统负载主动调整服务器数量,降低闲置服务器成本,可对设备进行综合系统管理,减少维护成本。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号