GB28181
GB28181是中国国家标准编号,标题是“基于IP网络的安全防范视频监控联网系统信息传输、交换、控制技术要求”。这是一个中国国内的标准,主要用于安全防范和监控系统,确保不同制造商的设备在基于IP的网络环境下能够互操作。GB28181标准的主要用途在于公共安全和城市监控应用,例如公安、交通、社区等。
协议类型
GB28181规范了基于IP网络的安全防范视频监控联网系统的信息传输、交换、控制等技术要求。主要内容包括:
- 通信协议:规定了信令和媒体传输协议,确保设备之间可以互操作。
- 媒体传输:定义了音视频流的传输方式,支持RTP、RTCP等。
- 控制信令:定义了设备的控制、管理、告警等功能,包括注册、注销、心跳等信令。
- 设备互操作性:确保不同厂商的设备能够在同一个网络环境下进行协作。
应用场景
主要应用于安全防范和视频监控领域
工作机制
GB28181采用了标准的IP网络协议堆栈,通常基于SIP(Session Initiation Protocol)
作为信令协议,使用RTP(Real-time Transport Protocol)
传输音视频流。其工作机制大致如下:
- 设备注册:
设备通过SIP向中央服务器注册,以便在网络中标识和管理。 - 媒体传输:
音视频流通过RTP传输,通常在局域网或广域网中传输监控内容。 - 设备控制:
中央服务器可以通过SIP信令向设备发送控制指令,例如摄像头的移动、变焦、聚焦等。 - 告警和心跳:
设备可以向服务器发送告警信息或心跳信号,确保系统状态正常。
设备工作流程:
SIP 信令协议
SIP 和 SDP
SIP(Session Initiation Protocol)与 SDP(Session Description Protocol)是用于通信领域的重要协议。虽然它们常常一起使用,但它们在功能和作用上有很大的区别。
SIP
SIP,全称 “Session Initiation Protocol”,是一种应用层协议,主要用于创建、修改和终止多媒体会话(如语音、视频、消息等)。它在网络电话、即时消息、视频会议、流媒体等应用中广泛使用。SIP 的核心功能包括:- 会话建立:通过邀请消息(INVITE)和应答消息等建立会话。
- 会话修改:在会话进行过程中调整会话的参数,例如添加或移除媒体流。
- 会话终止:通过发送 BYE 消息来结束会话。
SIP 使用请求-响应模型,类似于 HTTP,并支持多种传输协议(例如,UDP、TCP、TLS)。SIP 不定义实际传输的数据,而是处理与会话控制相关的信令。
SDP
SDP,全称 “Session Description Protocol”,是一种用于描述多媒体会话参数的协议。它通常与 SIP 一起使用,用于描述会话的相关信息。
SDP 描述的内容包括:- 会话名称和目的:用于标识会话。
- 时间信息:表明会话何时开始和结束。
- 媒体描述:包括媒体类型、传输协议、端口号、编解码器等。
- 连接信息:表明会话在哪个网络地址进行。
SDP 的结构通常是文本格式的,易于解析和生成。它在 SIP 消息中常见,特别是用于描述会话的媒体属性。在 SIP 中,SDP 通常包含在 INVITE 请求和应答消息中,用于协商通信双方如何交换媒体流。
关系
SIP 和 SDP 的关系可以概括为:- SIP 负责建立、修改和终止会话,是一种用于信令和控制的协议。
- SDP 用于描述会话的细节,包括媒体类型、传输参数和编解码器等,是一种描述性协议。
在 SIP 会话的建立过程中,SDP 通常作为 SIP 消息的一部分,以描述会话的详细信息。在 SIP 会话中,SDP 的使用是为了协商会话双方的媒体参数,确保能够正确交换媒体流。
SIP 请求消息分类
请求类型 | 描述 |
---|---|
INVITE | 发起会话或邀请参与者加入现有会话,可能包含 SDP 信息。 |
ACK | 确认 INVITE 请求的最终响应。 |
BYE | 终止会话。 |
CANCEL | 取消正在进行的请求。 |
REGISTER | 向注册服务器注册用户代理位置。 |
OPTIONS | 查询服务器或用户代理的功能和可用性。 |
INFO | 在会话中发送辅助信息。 |
PRACK | 对临时响应的确认。 |
UPDATE | 更新现有会话的参数。 |
REFER | 将当前会话转移给其他用户代理。 |
SUBSCRIBE | 订阅特定事件。 |
NOTIFY | 向订阅者发送事件通知。 |
MESSAGE | 发送即时消息。 |
PUBLISH | 发布状态信息。 |
SIP 响应消息分类
响应类型 | 描述 |
---|---|
1xx 临时响应 | |
100 Trying | 服务器正在尝试处理请求。 |
180 Ringing | 被叫方正在响铃。 |
183 Session Progress | 会话正在进展。 |
——– | —- |
2xx 成功响应 | |
200 OK | 请求成功。 |
202 Accepted | 请求被接受。 |
——– | —- |
3xx 重定向响应 | |
300 Multiple Choices | 多种重定向选项。 |
301 Moved Permanently | 资源永久移动。 |
302 Moved Temporarily | 资源临时移动。 |
305 Use Proxy | 需要使用代理。 |
——– | —- |
4xx 客户端错误响应 | |
400 Bad Request | 请求无效。 |
401 Unauthorized | 需要认证。 |
403 Forbidden | 禁止访问。 |
404 Not Found | 未找到资源。 |
407 Proxy Authentication Required | 需要代理认证。 |
408 Request Timeout | 请求超时。 |
486 Busy Here | 被叫方忙碌。 |
487 Request Terminated | 请求被终止。 |
——– | —- |
5xx 服务器错误响应 | |
500 Server Internal Error | 服务器内部错误。 |
501 Not Implemented | 功能未实现。 |
503 Service Unavailable | 服务不可用。 |
504 Server Timeout | 服务器超时。 |
——– | —- |
6xx 全局错误响应 | |
600 Busy Everywhere | 所有被叫方都忙碌。 |
603 Decline | 被叫方拒绝。 |
604 Does Not Exist Anywhere | 在任何地方都不存在。 |
606 Not Acceptable | 请求不可接受。 |
SIP 请求消息结构
SIP 请求消息包含三个主要部分:请求行、头字段、消息体。
请求行(Request Line)
- 包含请求方法、请求 URI,以及 SIP 版本号。
- 格式:
METHOD sip:uri SIP/2.0
- 示例:
INVITE sip:bob@example.com SIP/2.0
头字段(Headers)
- 包含一系列头字段,包含键和值,用于传递各种信息。
- 常见的头字段:
Via
: 路径追踪,用于记录消息经过的节点。From
: 来源信息,包含显示名称、SIP URI 和标签。To
: 目的地信息,包含显示名称、SIP URI 和标签。Call-ID
: 会话的唯一标识符。CSeq
: 请求序列号,包含请求方法和序列号。Contact
: 用户代理的联系地址。Max-Forwards
: 防止环路,指示消息可以被转发的最大次数。Content-Type
: 消息体的 MIME 类型。Content-Length
: 消息体的长度。
消息体(Message Body)
- 通常包含会话描述协议(SDP)的内容,用于描述会话的细节。
- 根据请求方法和上下文的不同,消息体内容可能不同。
示例 SIP 请求消息
INVITE sip:bob@example.com SIP/2.0 Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds Max-Forwards: 70 From: Alice <sip:alice@atlanta.com>;tag=1928301774 To: Bob <sip:bob@example.com> Call-ID: a84b4c76e66710@pc33.atlanta.com CSeq: 314159 INVITE Contact: <sip:alice@pc33.atlanta.com> Content-Type: application/sdp Content-Length: 142 v=0 o=alice 2890844526 2890844526 IN IP4 pc33.atlanta.com s=- c=IN IP4 pc33.atlanta.com t=0 0 m=audio 49170 RTP/AVP 0
SIP 设备注册过程
用户首次试呼时,sip代理向代理服务器发送 REGISTER 注册请求;
代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理回送401 Unauthorized 质询信息,其中包含安全认证所需的令牌;
终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用REGISTER 消息报告给代理服务器;
代理服务器将REGISTER 消息中的用户信息解密,通过认证/计费中心验证其合法后,将该用户信息登记到数据库中,并向终端代理A 返回成功响应消息200 OK。
SIP 设备注销过程
SIP代理向SIP服务器发送 Register请求,Expires字段的值为0,表示SIP代理要注销;
SIP服务器向 SIP代理发送响应401,并在响应的消息头 WWW_Authenticate字段中给出
适合SIP代理的认证体制和参数;SIP代理重新向SIP服务器发送 Register请求,在请求的 Authorization字段给出信任书,
包含认证信息,Expires字段的值为0;SIP 服务器对请求进行验证,如果检查出 SIP 代理身份合法,向 SIP 代理发送成功响应
200OK,如果身份不合法则发送拒绝服务应答。
客户端发起的点播流程
文档和说明
支持GB28181的优秀开源项目
ZLMediakit + wvp-GB28181-pro + wvp-pro-assist
服务 作用 是否必须 WVP-PRO 实现国标28181的信令以及视频平台相关的功能 是 ZLMediaKit 为WVP-PRO提供国标28181的媒体部分的实现,以及各种视频流格式的分发支持 是 wvp-pro-assist wvp的辅助录像程序,也可单独跟zlm一起使用,提供录像控制,录像合并下载接口 否(不安装只是影响云端录像功能和国标录像下载)
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 1430797759@qq.com