一种视频监控网络设备保活方法及装置与流程

文档序号:21319459发布日期:2020-06-30 20:50阅读:692来源:国知局
一种视频监控网络设备保活方法及装置与流程

本发明属于设备保活技术领域,尤其涉及一种视频监控网络设备保活方法及装置。



背景技术:

当前视频监控网络应用广泛,在网的监控设备包括前端的摄像机(ipc)、后端的录像机(nvr)、一体机(管理平台)以及各种的移动客户端和pc端客户端,其中ipc的主要功能是获取实时图像,nvr的主要功能是提供录像存储及管理ipc,一体机是完整解决方案的管理平台,而移动客户端和pc客户端是为了客户能更加方便的访问到监控网络中的实时监控情况。

onvif定义的设备类型包括:网络视频服务端(networkvideotransmitter,nvt)和网络视频客户端(networkvideoclient,nvc)。其中nvt发送媒体流,如视频编码器ec、网络摄像机ipc;nvc接收媒体流和控制nvt设备,如网络硬盘录像机nvr。视频监控网络中存在多种样式组网状况,例如ipc和nvr之间的组网(nvr作为nvc,ipc作为nvt),常用的组网方式是在局域网内ipc添加到nvr上,ipc和nvr在同一个交换机下,此种情况下ipc和nvr之间网络状况良好;另外一种组网方式是ipc和nvr跨网连接,处于不同的nat内,此种情况下,因为中间多了路由器,组网信息更加复杂。

无论在哪种情况下,nvr为了能更好的进行ipc的管理及保存实时的录像信息,nvr需要及时的获取ipc的当前在网状态,因此nvr和ipc之间需要一种机制来保证nvr能及时的了解ipc的实时状态,称之为保活机制。一般判断网络中设备是否存在或者某一网络设备是否正常通常采用ping包,建立tcp连接等方式,但网络环境较复杂的情况下,该常用方式会受制约,例如由于路由器上的各种限制,可能导致ping包或者建立tcp连接的方式无法保证icp和nvr之间的正常保活,因此网络设备的保活机制也需要做出调整。

当前视频监控网络中nvt和nvc之间的通信协议常用的包括rtsp协议,onvif协议,国标协议;国标协议采用了国家标准定义的交互方式,其中保活方案为nvt主动向nvc发送报文进行保活,而onvif协议中未规定设备间保活方案,多数方案采用nvc定时向nvt发送某个onvif报文,或者定时向nvt的ip地址进行ping包,再或者是通过nvc主动尝试建立和nvt之间的tcp连接;通过报文交互,ping包响应,tcp连接建立都能达到视频监控网络nvc和nvt之间保活的目的。

如上所述的发送onvif报文、ping包、建立tcp连接的保活方式都只适用于简单组网,nvc和nvt处于同一局域网下的组网。在某些特殊组网下则无法保证客nvc和nvt之间的正常保活,例如在某些安全性需要较高的组网中以及跨nat的组网中,路由器配置禁止发送ping报文,则ping包被路由器过滤掉无法用ping包方式进行保活;或者路由器设置了syn防攻击,则定时的建立tcp连接则可能会被路由器认为是攻击行为,也会被路由器过滤掉;采用发送onvif报文的保活方式针对市面上大部分性能较差的ipc,频繁发送onvif报文会导致ipc的性能压力增大,严重的会导致ipc设备出现重启或down机情况。



技术实现要素:

本发明的目的是提供了一种视频监控网络设备保活方法及装置,能使监控网络的nvc和nvt之间适应多种复杂网络环境,较大的提高了视频监控网络的稳定性。

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

一种视频监控网络设备保活方法,应用于视频监控网络中的网络视频客户端nvc设备,所述视频监控网络设备保活方法,包括:

当网络视频服务端nvt在nvc上正常上线请流成功,nvc将nvt在线状态标识位置为ture,将媒体流状态标识位置为ture;

在检测到媒体流断流时,将媒体流状态标识位置为false;

周期性检测各标识位,若发现媒体流状态标识位为false,则nvc向nvt发送消息确定nvt状态,如果确定nvt状态正常,则重新向nvt请求媒体流,若请流成功则将媒体流状态标识位置为ture,如果请流失败,则继续向nvt发送消息确定nvt状态;

如果确定nvt状态异常,则将在线状态标识位置为false;

在周期性检测到在线状态标识位置为false时,重新获取nvt信息,并向nvt请求媒体流。

进一步地,所述在检测到媒体流断流时,将媒体流状态标识位置为false,包括:

在检测到媒体流断流超过预设的时间阈值时,将媒体流状态标识位置为false。

进一步地,所述向nvt发送消息确定nvt状态,包括:

采用轮询方式定时向nvt发送消息确定nvt状态。

进一步地,所述如果确定nvt状态异常,则将在线状态标识位置为false,包括:

如果nvt响应异常,则继续定时向nvt发送消息确定nvt状态,在响应异常的次数超过预设次数阈值后,确定nvt状态异常,将在线状态标识位置为false。

进一步地,所述nvc上还设置是否保活状态标识位,所述当网络视频服务端nvt在nvc上正常上线请流成功,还将是否保活状态标识位置为ture;

所述如果请流失败,则继续向nvt发送消息确定nvt状态,包括:

将是否保活状态标识位置为false;

周期性检测各标识位,若发现是否保活状态标识位为false,则向nvt发送消息确定nvt状态。

本发明还提出了一种视频监控网络设备保活装置,应用于视频监控网络中的网络视频客户端nvc设备,所述视频监控网络设备保活装置,包括:

初始上线模块,用于当网络视频服务端nvt在nvc上正常上线请流成功,nvc将nvt在线状态标识位置为ture,将媒体流状态标识位置为ture;

断流检测模块,用于在检测到媒体流断流时,将媒体流状态标识位置为false;

标识位检测模块,用于周期性检测各标识位,若发现媒体流状态标识位为false,则nvc向nvt发送消息确定nvt状态,如果确定nvt状态正常,则重新向nvt请求媒体流,若请流成功则将媒体流状态标识位置为ture,如果请流失败,则继续向nvt发送消息确定nvt状态;如果确定nvt状态异常,则将在线状态标识位置为false;

重新请流模块,用于在周期性检测到在线状态标识位置为false时,重新获取nvt信息,并向nvt请求媒体流。

进一步地,所述断流检测模块在检测到媒体流断流时,将媒体流状态标识位置为false,执行如下操作:

在检测到媒体流断流超过预设的时间阈值时,将媒体流状态标识位置为false。

进一步地,所述标识位检测模块向nvt发送消息确定nvt状态,执行如下操作:

采用轮询方式定时向nvt发送消息确定nvt状态。

进一步地,所述标识位检测模块在确定nvt状态异常,将在线状态标识位置为false时,执行如下操作:

如果nvt响应异常,则继续定时向nvt发送消息确定nvt状态,在响应异常的次数超过预设次数阈值后,确定nvt状态异常,将在线状态标识位置为false。

进一步地,所述视频监控网络设备保活装置上还设置是否保活状态标识位,所述初始上线模块当网络视频服务端nvt在nvc上正常上线请流成功,还将是否保活状态标识位置为false;

所述标识位检测模块在请流失败,继续向nvt发送消息确定nvt状态时,还执行如下操作:

将是否保活状态标识位置为true;

所述标识位检测模块,还周期性检测各标识位,若发现是否保活状态标识位为true,则向nvt发送消息确定nvt状态。

本发明提出的一种视频监控网络设备保活方法及装置,该保活方案采用了实况流和onvif接口相结合的方式进行监控网络中nvt和nvc之间的设备保活,该保活方式针对路由器禁ping、路由器开启了syn防攻击的组网方式仍然能保证设备之间的正常保活,增加了监控组网中nvt和nvc之间的连接稳定性,适用于多种组网情况,增加了监控网络组网的多样性,而且路由器开启禁ping和syn防攻击后也增加了监控网络组网的安全性。

附图说明

图1为本发明实施例视频监控网络设备保活方法流程图;

图2为本发明实施例ipc与nvr的保活过程流程图。

具体实施方式

下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。

如图1所示,一种视频监控网络设备保活方法,应用于视频监控网络中的网络视频客户端nvc设备,包括:

当网络视频服务端nvt在nvc上正常上线请流成功,nvc将nvt在线状态标识位置为ture,将媒体流状态标识位置为ture;

在检测到媒体流断流时,将媒体流状态标识位置为false;

周期性检测各标识位,若发现媒体流状态标识位为false,则nvc向nvt发送消息确定nvt状态,如果确定nvt状态正常,则重新向nvt请求媒体流,若请流成功则将媒体流状态标识位置为ture,如果请流失败,则继续向nvt发送消息确定nvt状态;

如果确定nvt状态异常,则将在线状态标识位置为false;

在周期性检测到在线状态标识位置为false时,重新获取nvt信息,并向nvt请求媒体流。

在本实施例中,nvt与nvc的交互基于网络视频标准规范协议onvif协议(opennetworkvideointerfaceforum)来发送,在onvif中,消息交互采用soap协议,其他部分比如音视频流则通过rtp/rtsp进行。下文中如果不做特殊说明,都是基于onvif协议为例来进行说明。需要说明的是,采用onvif协议是为了适用于任何厂家的的监控设备,对于同一个厂家的设备,消息交互还可以采用厂家私有协议来进行,以下不再赘述。

在视频监控网络中,网络视频服务端nvt会通过onvif协议添加到nvc中,nvc会主动向nvt发送onvif协议报文,从nvt获取到必要的参数和资源信息,当参数和资源信息获取完整后nvc认为nvt在nvc上已经注册上线,此后,nvc会向nvt请求发送媒体流,nvt将媒体流发送给nvc后请求媒体流完成,将媒体流状态标识位置为ture,将在线状态标识位置为ture。

在媒体流传输过程中,由于网络问题或者设备本身的问题,nvt向nvc发送的媒体流可能出现异常,出现没有媒体流发送的状况。nvc在检测到媒体流断流超过预设的时间阈值时,会认为nvt与nvc之间的链接出现问题,此时将媒体流状态标识位置为false。

本实施例,nvc会周期性来检测各标识位,并根据标识位的状态进行相应的操作。当周期性检测时,发现媒体流状态标识位为false,则认为媒体流链接有问题,需要重新建立媒体流传输。此时,nvc会向nvt发送消息确定nvt状态。

向nvt发送消息确定nvt状态,存在下面两种情况:

1、如果nvt收到nvc发送的消息并进行响应,此时确定nvt状态正常,nvc会向nvt请求发送媒体流,若请流成功则将媒体流状态标识位置为ture。如果请流失败,则继续向nvt发送消息确定nvt状态。

2、如果nvt没有进行响应,则继续定时向nvt发送消息确定nvt状态,在响应异常的次数超过预设次数阈值后,确定nvt状态异常,则认为nvt下线了,将在线状态标识位置为false。

本实施例nvc会周期性来检测各标识位,一旦发现在线状态标识位为false,则会重新开始nvt的上线过程,该过程即:

nvc会主动向nvt发送onvif协议报文,从nvt获取到必要的参数和资源信息,当参数和资源信息获取完整后nvc认为nvt在nvc上已经注册上线,此后,nvc会向nvt请求发送媒体流,nvt将媒体流发送给nvc后请求媒体流完成,将媒体流状态标识位置为ture,将在线状态标识位置为ture。

需要说明的是,为了增加是否断流检测的准确性,本实施例在检测到媒体流断流时,将媒体流状态标识位置为fals,包括:

在检测到媒体流断流超过预设的时间阈值时,将媒体流状态标识位置为false。

通过预设的时间阈值,来确定确实断流了,避免媒体流存在间隙导致误判。

本发明的一个实施例,向nvt发送消息确定nvt状态时,采用轮询方式定时向nvt发送消息确定nvt状态。

轮询的结果存在下面两种情况:

1、此时确定nvt状态正常,nvc会向nvt请求发送媒体流,若请流成功则将媒体流状态标识位置为ture。如果请流失败,则继续向nvt发送消息确定nvt状态。

2、如果nvt没有进行响应,则继续定时向nvt发送消息确定nvt状态,在响应异常的次数超过预设次数阈值后,确定nvt状态异常,则认为nvt下线了,将在线状态标识位置为false。

以下通过一个具体的实施例来进一步阐述上述方法,在本实施例中ipc作为nvt,网络硬盘录像机nvr作为nvc,如图2所示:

ipc通过onvif协议添加到nvr上接受nvr管理,此过程中nvr会调用onvif协议定义的接口来获取ipc的各种资源信息,并会请求ipc的实况流到nvr,当信息获取完成,并成功请求实况流后认为ipc在nvr上正常的上线。

nvr侧将在线状态标识位置为ture,将媒体流状态标识位置为ture。

ipc在nvr上正常的上线后,nvr会周期性的检查(时间5~30秒)ipc和nvr之间各个标识位是否正常。

如果ipc和nvr之间的实况流出现异常,实况流断开,则nvr会自动检测到该实况流已经断开,nvr内部上报事件,nvr在检测到媒体流断流超过预设的时间阈值时,会认为ipc与nvr之间的链接出现问题,并设置媒体流状态标识位置为异常状态false。

nvr周期性检测标识位是否正常时,若发现媒体流状态标识位置为识位异常,则会向ipc发送消息确定ipc状态。

如果ipc响应正常,则向ipc请求发送媒体流,ipc将媒体流发送给nvr后请求媒体流完成,将媒体流状态标识位置为ture,即重新请求实况流;

如果请求实况流不成功,nvr则采用轮询方式定时向ipc发送消息确定ipc状态,如果ipc收到nvr发送的消息并进行响应,nvr会向ipc请求发送实况流,若请流成功则将媒体流状态标识位置为ture。

如果ipc没有进行响应,则nvr继续定时向ipc发送消息确定ipc状态,在响应异常的次数超过预设次数阈值后,认为ipc下线了,将在线状态标识位置为false。

等下次周期检查时,nvr检测到在线状态标识位被置为false,则会重新和ipc走上线交互的步骤,即nvr会主动向ipc发送onvif协议报文,从ipc获取到必要的参数和资源信息,当参数和资源信息获取完整后nvr认为ipc在nvr上已经注册上线,此后,nvr会向ipc请求发送媒体流,ipc将媒体流发送给nvr后请求媒体流完成,将媒体流状态标识位置为ture,此时将在线状态标识位置为ture。

本发明的又一个实施例,本实施例还设置了是否保活状态标识位,当网络视频服务端nvt在nvc上正常上线请流成功,还将是否保活状态标识位置为false。

即增加了一个标识位:是否保活状态标识位。

在本实施例中,如果请流失败,则继续向nvt发送消息确定nvt状态,包括:

将是否保活状态标识位置为ture;

周期性检测各标识位,若发现是否保活状态标识位为ture,则向nvt发送消息确定nvt状态。

本实施例,在请流失败后,将是否保活状态标识位置为ture,从而在周期性检测各标识位,若发现是否保活状态标识位为ture,就向nvt发送消息确定nvt状态。即在周期性检测时,只要发现是否保活状态标识位为ture,就开始向nvt发送消息确定nvt状态,从而不用管后面的轮询是否轮询到,尽可能快的开始向nvt发送消息确定nvt状态,开始保活,进一步增加了监控组网中nvt和nvc之间的连接稳定性。

与上述方法对应的,这里还给出了一种视频监控网络设备保活装置的实施例,应用于视频监控网络中的网络视频客户端nvc设备,所述视频监控网络设备保活装置,包括:

初始上线模块,用于当网络视频服务端nvt在nvc上正常上线请流成功,nvc将nvt在线状态标识位置为ture,将媒体流状态标识位置为ture;

断流检测模块,用于在检测到媒体流断流时,将媒体流状态标识位置为false;

标识位检测模块,用于周期性检测各标识位,若发现媒体流状态标识位为false,则nvc向nvt发送消息确定nvt状态,如果确定nvt状态正常,则重新向nvt请求媒体流,若请流成功则将媒体流状态标识位置为ture,如果请流失败,则继续向nvt发送消息确定nvt状态;如果确定nvt状态异常,则将在线状态标识位置为false;

重新请流模块,用于在周期性检测到在线状态标识位置为false时,重新获取nvt信息,并向nvt请求媒体流。

本实施例装置与上述方法对应,由于在前述方法中已经进行了详细的阐述,这里仅通过具体的实施例对本装置进行进一步的阐述,不展开进行详细的说明。

本发明的一个实施例,所述断流检测模块在检测到媒体流断流时,将媒体流状态标识位置为false,执行如下操作:

在检测到媒体流断流超过预设的时间阈值时,将媒体流状态标识位置为false。

本发明的又一个实施例,所述标识位检测模块向nvt发送消息确定nvt状态,执行如下操作:

采用轮询方式定时向nvt发送消息确定nvt状态。

本发明的又一个实施例,所述标识位检测模块在确定nvt状态异常,将在线状态标识位置为false时,执行如下操作:

如果nvt响应异常,则继续定时向nvt发送消息确定nvt状态,在响应异常的次数超过预设次数阈值后,确定nvt状态异常,将在线状态标识位置为false。

本发明的又一个实施例,所述视频监控网络设备保活装置上还设置是否保活状态标识位,所述初始上线模块当网络视频服务端nvt在nvc上正常上线请流成功,还将是否保活状态标识位置为false;

所述标识位检测模块在请流失败,继续向nvt发送消息确定nvt状态时,还执行如下操作:

将是否保活状态标识位置为true;

所述标识位检测模块,还周期性检测各标识位,若发现是否保活状态标识位为true,则向nvt发送消息确定nvt状态。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

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