GB28181国标协议通讯流程简析以及NVR注册不上等相关问题点记录

留给读者


       该篇文章主要记录自己开发政府雪亮工程、公安人车结构化布防、国家教育考试网上巡察等系统中遇到的问题点。说人话就是开发GB28181协议信令管理系统过程中遇到的问题点以及初识GB28181协议的简单记录。

       内容简浅,大佬略过,以免浪费自己的宝贵时间。

初识GB28181协议


       GB28181将 SIP定位为联网系统的主要信令基础协议,并利用 SIP协议的有关扩展,实现了对非会话业务的兼顾,例如,对报警业务、历史视音频回放、下载等的支持。目前有GB28181-2011和 GB28181-2016两个版本。

       GB28181对联网系统的用户和设备的管理,全部通过一个20位的设备ID号来管理。

什么是SIP?


       SIP(会话初始化协议)是在 IP网络上进行多媒体通信的应用层控制协议,用来创建,修改和终止有多个参与者的多媒体会话进程。

       SIP协议使用 RTP协议传送音视频数据流,使用 SDP协议进行媒体描述。

SIP中的INVITE

在这里插入图片描述

SIP中的MESSAGE

在这里插入图片描述

什么是NVR?


       NVR网络硬盘录像机,可以将摄像头绑定在NVR设备上,直接通过NVR即可获取到绑定摄像头的实时音视频,也可以选定时间、指定摄像头进行录像,录像文件存储于NVR设备上。

GB28181从注册到注销都经历了哪些步骤?


注册

安全注册 GB28181使用的是SIP规定的 Register方法实现。
当客户端第一次接入时,客户端将持续向 Server端发送 REGISTER消息,直到 Server端回复"200 OK"代表注册成功。
每隔一定时间客户端都会再次向服务器注册一遍,防止注册过期导致断开连接。

在这里插入图片描述

设备信息查询

注册成功后,客户端与服务器之间信息查询操作,如目录查询、历史录像文件查看等,GB28181使用 SIP扩展协议规定的 Message方法实现。

目前使用了两种类型的查询命令:
   1.Catalog 设备目录查询消息;
   2.RecordInfo 历史录像文件查询消息。

在这里插入图片描述

实时视频、历史录像等

获取摄像头上的实时音视频和历史录像文件,GB28181使用 SIP扩展协议规定的 Invite方法实现。
目前获取实时音视频和历史录像文件都是 Invite方法,只是在 SDP描述中有所区别。

实时视频INVITE流程:
在这里插入图片描述
历史录像INVITE流程:
在这里插入图片描述

注销

客户端向服务器发送 Register命令消息,消息中的 Expire字段设置为0即是注销。

在这里插入图片描述

异常

如当NVR上没有要请求的数据时,消息处理如下:

在这里插入图片描述

从注册到INVITE实时视频播放的抓包数据

注册:

REGISTER sip:44010200492000000001@4401020049 SIP/2.0
Via: SIP/2.0/UDP 10.255.29.3:5060;rport;branch=z9hG4bK179708693
From: <sip:44010200491180000030@4401020049>;tag=1347375099
To: <sip:44010200491180000030@4401020049>
Call-ID: 1296218428
CSeq: 2 REGISTER
Contact: <sip:44010200491180000030@10.255.29.3:5060>
Authorization: Digest username="44010200491180000030", realm="4401020049", nonce="eba4725b7fbf45113d68ce6735f3091e", uri="sip:44010200492000000001@4401020049", response="d380be41b70fa93b1548b308e98d17a4", algorithm=MD5, cnonce="0a4f113b", qop=auth, nc=00000001
Max-Forwards: 70
User-Agent: Embedded Net DVR/NVR/DVS
Expires: 86400
Content-Length: 0

SIP/2.0 200 OK
CSeq: 2 REGISTER
Call-ID: 1296218428
From: <sip:44010200491180000030@4401020049>;tag=1347375099
To: <sip:44010200491180000030@4401020049>
Via: SIP/2.0/UDP 10.255.29.3:5060;rport=5060;branch=z9hG4bK179708693;received=10.255.29.3
Date: 2021-10-08T21:17:37.639
Contact: <sip:44010200491180000030@10.255.29.3:5060>
Expires: 86400
Content-Length: 0

查询设备信息:

MESSAGE sip:44010200491180000030@10.255.29.3:5060 SIP/2.0
Call-ID: 83ef8fa665a779e8791d69b89db9f6cc@0.0.0.0
CSeq: 1 MESSAGE
From: <sip:44010200492000000001@10.255.1.166:5060>;tag=FromDev1633699057817
To: <sip:44010200491180000030@4401020049>
Via: SIP/2.0/UDP 10.255.1.166:5060;branch=z9hG4bK-ViaDeviceInfo-1633699057817;rport
Max-Forwards: 70
Content-Type: APPLICATION/MANSCDP+xml
Content-Length: 151

<?xml version="1.0" encoding="GB2312"?>
<Query>
<CmdType>DeviceInfo</CmdType>
<SN>408614</SN>
<DeviceID>44010200491180000030</DeviceID>
</Query>
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.255.1.166:5060;branch=z9hG4bK-ViaDeviceInfo-1633699057817;rport=5060
From: <sip:44010200492000000001@10.255.1.166:5060>;tag=FromDev1633699057817
To: <sip:44010200491180000030@4401020049>;tag=225433465
Call-ID: 83ef8fa665a779e8791d69b89db9f6cc@0.0.0.0
CSeq: 1 MESSAGE
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length: 0

MESSAGE sip:44010200492000000001@4401020049 SIP/2.0
Via: SIP/2.0/UDP 10.255.29.3:5060;rport;branch=z9hG4bK1271226169
From: <sip:44010200491180000030@4401020049>;tag=1788751727
To: <sip:44010200492000000001@4401020049>
Call-ID: 1181114760
CSeq: 20 MESSAGE
Content-Type: Application/MANSCDP+xml
Max-Forwards: 70
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length:   346

<?xml version="1.0" encoding="gb2312"?>
<Response>
<CmdType>DeviceInfo</CmdType>
<SN>408614</SN>
<DeviceID>44010200491180000030</DeviceID>
<Result>OK</Result>
<DeviceType>DVR</DeviceType>
<Manufacturer>HIKVISION</Manufacturer>
<Model>DS-8832N-K8</Model>
<Firmware>V3.4.98</Firmware>
<MaxCamera>32</MaxCamera>
<MaxAlarm>16</MaxAlarm>
</Response>
MESSAGE sip:44010200491180000030@10.255.29.3:5060 SIP/2.0
Call-ID: 248d9f0dd5ff780bc1a5ca7d4abb22f3@0.0.0.0
CSeq: 1 MESSAGE
From: <sip:44010200492000000001@10.255.1.166:5060>;tag=FromCat1633699057894
To: <sip:44010200491180000030@4401020049>
Via: SIP/2.0/UDP 10.255.1.166:5060;branch=z9hG4bK-ViaCatalog-1633699057894;rport
Max-Forwards: 70
Content-Type: APPLICATION/MANSCDP+xml
Content-Length: 148

<?xml version="1.0" encoding="GB2312"?>
<Query>
<CmdType>Catalog</CmdType>
<SN>710793</SN>
<DeviceID>44010200491180000030</DeviceID>
</Query>
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.255.1.166:5060;branch=z9hG4bK-ViaCatalog-1633699057894;rport=5060
From: <sip:44010200492000000001@10.255.1.166:5060>;tag=FromCat1633699057894
To: <sip:44010200491180000030@4401020049>;tag=1968195743
Call-ID: 248d9f0dd5ff780bc1a5ca7d4abb22f3@0.0.0.0
CSeq: 1 MESSAGE
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length: 0
、、、、、、

播放、关闭播放:
INVITE sip:44010200491320000070@10.255.29.3:5060 SIP/2.0
Call-ID: 1cee642a5d8e9a9217b5125a2e66d77e@0.0.0.0
CSeq: 1 INVITE
From: <sip:44010200492000000001@4401020049>;tag=FromInvt1633699065853
To: <sip:44010200491320000070@4401020049>
Via: SIP/2.0/UDP 10.255.1.166:5060;rport;branch=z9hG4bK-353036-1e0402994423393287165916c8415a51
Max-Forwards: 70
Contact: <sip:44010200492000000001@10.255.1.166:5060>
Subject: 44010200491320000070:0102009027,44010200492000000001:0
Content-Type: APPLICATION/SDP
Content-Length: 205

v=0
o=00000 0 0 IN IP4 10.255.1.166
s=Play
c=IN IP4 10.255.1.166
t=0 0
m=video 30039 RTP/AVP 96 98 97
a=recvonly
a=rtpmap:96 PS/90000
a=rtpmap:98 H264/90000
a=rtpmap:97 MPEG4/90000
y=0102009027
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.255.1.166:5060;rport=5060;branch=z9hG4bK-353036-1e0402994423393287165916c8415a51
From: <sip:44010200492000000001@4401020049>;tag=FromInvt1633699065853
To: <sip:44010200491320000070@4401020049>;tag=118149088
Call-ID: 1cee642a5d8e9a9217b5125a2e66d77e@0.0.0.0
CSeq: 1 INVITE
Contact: <sip:44010200491320000070@10.255.29.3:5060>
Content-Type: application/SDP
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length:   253

v=0
o=44010200491180000030 0 0 IN IP4 10.255.29.3
s=Network Video Recorder
c=IN IP4 10.255.29.3
t=0 0
m=video 62008 RTP/AVP 96
a=sendonly
a=rtpmap:96 PS/90000
a=username:44010200491180000030
a=password:admin123
a=filesize:0
y=0102009027
f=
ACK sip:44010200491320000070@10.255.29.3:5060 SIP/2.0
Call-ID: 1cee642a5d8e9a9217b5125a2e66d77e@0.0.0.0
CSeq: 1 ACK
Via: SIP/2.0/UDP 10.255.1.166:5060;rport;branch=z9hG4bK-353036-8235165e38f636e7a2568dd30874c796
From: <sip:44010200492000000001@4401020049>;tag=FromInvt1633699065853
To: <sip:44010200491320000070@4401020049>;tag=118149088
Max-Forwards: 70
Content-Length: 0

BYE sip:44010200491320000070@10.255.29.3:5060 SIP/2.0
Via: SIP/2.0/UDP 0.0.0.0:5060;branch=z9hG4bK-353036-109ee07ecb87c631a403fe8ba2eefe9a
CSeq: 2 BYE
From: <sip:44010200492000000001@4401020049>;tag=FromInvt1633699065853
To: <sip:44010200491320000070@4401020049>;tag=118149088
Call-ID: 1cee642a5d8e9a9217b5125a2e66d77e@0.0.0.0
Max-Forwards: 70
Content-Length: 0

SIP/2.0 200 OK
Via: SIP/2.0/UDP 0.0.0.0:5060;branch=z9hG4bK-353036-109ee07ecb87c631a403fe8ba2eefe9a;received=10.255.1.166
From: <sip:44010200492000000001@4401020049>;tag=FromInvt1633699065853
To: <sip:44010200491320000070@4401020049>;tag=118149088
Call-ID: 1cee642a5d8e9a9217b5125a2e66d77e@0.0.0.0
CSeq: 2 BYE
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length: 0

为什么我的NVR注册上来只有一个通道号?


1、注意一下双lan的nvr,网关要配置和服务器同一个;
2、MTU设置小一点,设备数据太大,造成Catalog查询设备时数据返回中断问题;

在这里插入图片描述

THE END


感谢查阅
玉念聿辉:编辑
  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉念聿辉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值