JAVA实现GB28181接入 —— SIP协议简介

一、GB28181 简介

1. GB28181全称是:

《安全防范视频监控联网系统 信息传输、交换、控制技术要求》
目前最新版本是2016版。

2. GB28181引用的文件:

  • RFC 2030 简单网络时间协议(SNTP)第四版
  • RFC 2326 RTSP:实时流协议
  • RFC 2976 SIP INFO方法
  • RFC 3261 SIP: 会话初始协议
  • RFC 3263 会话初始协议(SIP):定位SIP服务器
  • RFC 3428 会话初始协议(SIP) 即时消息扩展
  • RFC 3550 实时传输协议
  • RFC 3725 会话初始协议(SIP)中第三方呼叫控制(3PCC)的当前最佳实现
  • RFC 4566 SDP: 会话描述协议
  • RFC 3219 TRIP(Telephony Routing over IP)IP电话路由协议
  • ITU-T Rec. G.711-1988数字传输系统的通用部分:音频的脉冲编码调制
  • ITU-T Rec. G.723.1-1996数字传输系统的通用部分:5.3和6.3kbit的多媒体通信传输中的双速率
    语音编码器
  • ITU-T Rec. G.729-1996数字传输系统的通用部分:利用共轭结构代数码激励线形预测的8kbit/s
    语音编码
  • ITU-T Rec. H.264-2005 H系列:音视频和多媒体系统,音视频服务基础-活动视频编码:通
    用音视频服务的先进视频编码
  • ITU-T Rec. H.264.1-2005 H系列:音视频和多媒体系统,音视频服务基础-活动视频编码:H.264
    先进视频编码的一致性说明
  • GB/T GB/T 25724-2010 安全防范监控数字视音频编解码技术要求

3. 缩略语

  • B2BUA Back to Back User Agent 背靠背用户代理
  • CIF Common Intermediate Format 通用中间格式
  • DNS Domain Name System 域名系统
  • DVR Digital Video Recorder 数字硬盘录像机
  • IP Internet Protocol 因特网协议
  • MANSCDP Monitoring and Alarming Network System Control Description Protocol
    监控报警联网系统控制描述协议
  • MANSRTSP Monitoring and Alarming Network System Real-Time Streaming Protocol
    监控报警联网系统实时流协议
  • NAT/FW Network Address Translator and FireWall 网络地址翻译/防火墙
  • NTP Network Time Protocol 网络时间协议
  • PS Program Stream 节目流
  • RTCP Real-time Transport Control Protocol 实时传输控制协议
  • RTP Real-time Transport Protocol 实时传输协议
  • RTSP Real-Time Streaming Protocol 实时流化协议
  • SDP Session Description Protocol 会话描述协议
  • SIP Session Initiation Protocol 会话初始协议
  • S/MIME Secure Multipurpose Internet Mail Extensions 安全多用途网际邮件扩充协议
  • TCP Transmission Control Protocol 传输控制协议
  • TLS Transport Layer Security 传输层安全
  • UA User Agent 用户代理
  • UAC User Agent Client 用户代理客户端
  • UAS User Agent Server 用户代理服务端
  • UDP User Datagram Protocol 用户数据报协议
  • URI Universal Resource Identifier 全局资源标识符
  • XML EXtensible Markup Language 可扩展标记语言
  • SVAC Surveillance video and audio coding 安全防范监控数字视音频编码

4. 互联结构

JAVA实现GB28181接入 —— SIP协议简介

5. 联网方式

级联

信令级联结构示意图
JAVA实现GB28181接入 —— SIP协议简介
媒体级联结构示意图:
JAVA实现GB28181接入 —— SIP协议简介

互联

JAVA实现GB28181接入 —— SIP协议简介
JAVA实现GB28181接入 —— SIP协议简介

6. 通讯协议

JAVA实现GB28181接入 —— SIP协议简介

二、SIP协议

1. 定义

SIP 协议,即 会话初始协议(Session Initiation Protocol),是一个应用层的 点对点协议,用于初始、管理和终止网络中的语音和视频会话,是 GB28181 的核心之一。

按照 IETFRFC2543 的定义:

SIP是一个基于文本的应用层控制协议,独立于底层传输协议 TCP/UDP/SCTP,用于建立、修改和终止IP网上的双方或多方多媒体会话。SIP协议借鉴了HTTP、SMTP等协议,支持代理、重定向及登记定位用户等功能,支持用户移动。通过与RTP/RTCP、SDP、RTSP等协议及DNS配合,SIP支持语音、视频、数据、E-mail、状态、IM、聊天、游戏等。SIP协议可在TCP或UDP之上传送,由于SIP本身具有握手机制,可首选UDP。

JAVA实现GB28181接入 —— SIP协议简介

SIP 用于设备管理,其中有两个要素 - SIP用户代理 和 SIP网络服务器。
JAVA实现GB28181接入 —— SIP协议简介

2. SIP结构

一个合法的SIP请求必须至少包含如下头域:TO,FROM,Cseq,Call-ID,Max-Forwards, Via;这些字段在所有SIP请求中必须包含。这6个字段是SIP消息的基本组成部分,他们提供了用于路由用的核心信息,包含了消息的地址,响应的路由,消息传递次数,详细的顺序,事务的唯一标志。

这些头域字段是必须包含在请求行之后的,请求行包含了请求的方法,Request-URI,SIP的版本号码。请求行例子:REGISTER sip:192.168.10.177:5060 SIP/2.0。

JAVA实现GB28181接入 —— SIP协议简介

 

 

SIP的优点:

1.扩展性:

SIP可以由特定的应用程序扩展,并具有内置的机制来创建其他应用程序。此外,SIP消息可以承载各种消息体(如纯文本、媒体会话描述、XML文本等)的有效负载,因此应用程序开发人员可以将SIP用作任何类型应用程序数据的通用传输机制。   

2.冗余设计:

SIP并不在传输层实现冗余。它有一个内置的命令重传机制(即,如果目标接收者不确认该命令)。这使得通信系统更加可靠,因为任何丢失的命令,例如媒体服务器组的一个成员的故障,都会被该组的另一个成员重新传输和确认。

3.传输独立:

SIP不绑定到特定的传输协议,但它可以在任何传输数据包的协议(如IPv4、ATM、IPv6等)上运行。这意味着UCS可以在更广泛的网络中配置,不仅适用于基于IP的网络,还适用于其他传输协议。

4.轻量级特性:

SIP是一个绝对的轻量级协议,每条消息的开销在几百字节以内,而且一条消息的格式很容易解析。这意味着解析或组成命令消息只占用很少的CPU资源,而且这些消息只带来很少的网络开销。另外,SIP可以操作在无连接的传输协议(如UDP)之上,这就消除了连接时间(即建立一个连接的时间)的开销,而在面向套接字或连接的协议(如TCP)中,这个开销是很典型的。   

5.支持加密:

SIP含有的另一功能是在通信双方之间指定加密计划。这允许媒体服务器为了传送安全的服务而与其他可靠的网络单元交换加密命令和媒体流。

上一篇:【解决方案】基于RTSP/RTMP/GB28181协议视频平台EasyCVR搭建的金融系统担保监控平台的设计与实现


下一篇:C语言笔记001-用C语言编写程序