gb28181 网守网关分离+推理服务架构
Posted qianbo_insist
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gb28181 网守网关分离+推理服务架构相关的知识,希望对你有一定的参考价值。
1、网关网守如何分离
我们定义gb协议中得网守为sip信令服务器,协议转换服务为网关。考虑有时需要内部网守信令服务,因此架构中,网关和网守可以分离, 内部网守和外网上云网关连接为tcp 连接,整体架构则如下所示:
1、搜索服务、
1 、使用ssdp 协议和 其他组播协议来进行搜索摄像头,
2、 使用onvif协议来补充推算所有设备,
3、 使用snmp协议来搜索其他相关设备,尽可能推知所有设备,并且列出到智能逻辑列表中
2、可视化界面配置服务
从界面中可以看到,我们的服务分化架构:
1 搜索服务 包含被搜索
2 信令网关
3 存储服务
4 媒体服务器引擎
5 展示播放
6 事件,事件本身和脚本又融合在一起,可以看一下的lua脚本示例,在某一种网络链接,断开的时候,逻辑
可以放置到脚本中,本身事件处理又融合到一个单独的服务中,这样代码比较集中。模式就是所有事件排队到队列中
然后,交给脚本处理。
服务描述
网守服务从服务器中分离出来?,实际上在制作得过程中,网守网关本身就是一个进程,甚至客户端可以放进进程中,这种启动方式作为配置项来启动,可以单独启动网守,或者单独启动网关,或者同时启动网关网守,有两种方式作为启动模式:
1 是在配置界面中设置启动方式,明确定义启动模式,这就要求有一个配置界面,可以在配置界面中选取启动方式
2 启动方式为谁先启动谁就作为网守服务,另外启动ssdp协议作为发现服务,这一点非常重要,所有网守和网关都可以。
1.1 网关服务器
网关服务器负责进行网络协议转换。在一个网中,网关可以有多个,网守可以将不同得摄像头推流分配到不同得网关,在内网得服务中可以使用mdns协议,mdns 使用组播地址为: 224.0.0.251 ,端口为5353,使用mdns协议得好处是可以同时发现投屏得airplay设备。
1.2 网守服务
网守服务作为独立进程进行服务时,还有一个功能就是连接外部网关服务器,网守在内网里启动得时候,可以直接连接到外网得网络服务。
这里有一个问题,如何同时可以让内网得网关和外网得网关同时得到数据?
1.3 推理服务
推理服务就是在服务器中的一个角色,使用的方式为:
1 opencv
opencv加载深度模型,模型放置到目录中,自动搜索目录下的所有模型,具体哪一路流对应哪些模型,有lua脚本来配置,而脚本的生成又有界面来生成。
2 yolo
3 onnx
4 python脚本
直接放置python脚本到目录下面,自动搜索目录下的所有python脚本,具体哪一路对应哪个python脚本,有lua脚本来配置。
1.4 存储服务
存储服务分为两种:
1 服务器智能逻辑面板指定流进行存储
2 事件发生前后自动进行事件的流存储,如存储该事件前后10分钟的视频。
1.5 事件
使用脚本化来制作各类事件发生和处理,本身事件的处理过程和逻辑放置到脚本中,脚本主要使用集中方式:
1 python 脚本
2 lua 脚本
3 c++ 脚本
4 js 脚本
function main (clientId, message)
-- echo back the message
_send(clientId, message)
end
-- notify about connects
function on_connect(clientId)
_sendAll("ClientID " .. clientId .. " just joined the server")
end
-- ... and disconnects
function on_disconnect(clientId)
_sendAll("ClientID " .. clientId .. " just quit the server")
end
sdp 协议描述
ts流
m=video 8002 RTP/AVP 96
a=rtpmap:96 MP2T/90000
v=0
o=- 20140233 20140238 IN IP4 192.168.2.105 //#1
s=rtp PS stream
i=N/A
c=IN IP4 192.168.2.105 //#2
t=0 0
a=tool:ACME RTSP server
a=recvonly
a=type:broadcast
a=charset:UTF-8
a=framerate:16
m=video 9004 RTP/AVP 96 //#3 ,端口要是偶数
b=RR:0
a=rtpmap:96 MP2P/90000
未完待续。。。。
以上是关于gb28181 网守网关分离+推理服务架构的主要内容,如果未能解决你的问题,请参考以下文章