GB28181 协议 SIP

news2024/11/25 4:35:49

2、注册信令

2.1基本注册

2.1.1 抓包过程

 

2.1.2 详细步骤

2.1.2.1、REGISTER 

 

REGISTER sip:34020000002000000001@192.168.9.186:15060 SIP/2.0

Via: SIP/2.0/TCP 192.168.9.186:42860;rport;branch=z9hG4bK1557586049

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=1292111901

To: <sip:30514805331320000140@192.168.9.186:5060>

Call-ID: 367786093

CSeq: 1 REGISTER

Contact: <sip:30514805331320000140@192.168.9.186:5060>

Max-Forwards: 70

User-Agent: DVR UAC

Expires: 3600

Content-Length: 0

2.1.2.2、401 Unauthorized

SIP/2.0 401 Unauthorized

Via: SIP/2.0/TCP 192.168.9.186:42860;rport=42860;received=192.168.9.186;branch=z9hG4bK1557586049

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=1292111901

To: <sip:30514805331320000140@192.168.9.186:5060>;tag=354769008

CSeq: 1 REGISTER

Call-ID: 367786093

User-Agent: EasyGBS v200511

Content-Length: 0

Contact: <sip:34020000002000000001@192.168.9.161:15060>

WWW-Authenticate: Digest realm="3402000000",nonce="59074a1a5ae62cb13d81d919b69af0be"

2.1.2.3、重新REGISTER 

 

REGISTER sip:34020000002000000001@192.168.9.186:15060 SIP/2.0

Via: SIP/2.0/TCP 192.168.9.186:42860;rport;branch=z9hG4bK2080745015

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=1292111901

To: <sip:30514805331320000140@192.168.9.186:5060>

Call-ID: 367786093

CSeq: 2 REGISTER

Contact: <sip:30514805331320000140@192.168.9.186:5060>

Authorization: Digest username="30514805331320000140", realm="3402000000", nonce="59074a1a5ae62cb13d81d919b69af0be", uri="sip:34020000002000000001@192.168.9.186:15060", response="1cfb6de705b4c6fe0c135a6e7ebb7965", algorithm=MD5

Max-Forwards: 70

User-Agent: DVR UAC

Expires: 3600

Content-Length: 0

 

2.1.2.4、200 OK

 

SIP/2.0 200 OK

Via: SIP/2.0/TCP 192.168.9.186:42860;rport=42860;received=192.168.9.186;branch=z9hG4bK2080745015

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=1292111901

To: <sip:30514805331320000140@192.168.9.186:5060>;tag=241770024

CSeq: 2 REGISTER

Call-ID: 367786093

User-Agent: Easy SIP Server

Content-Length: 0

Date: 2023-03-24T14:06:22.760

Expires: 3600

Contact: <sip:34020000002000000001@192.168.9.161:15060>

 

2.2基本数字证书双向认证注册

 

2.2.1、REGISTER 

2.2.2、401 Unauthorized

2.2.3、重新REGISTER 

 

2.2.4、200 OK

2.3、注销

2.3.1 、REGISTER

 2.3.2 、401 Unauthorized

 2.3.3 、重新REGISTER

 2.3.4、200 OK

2.4、状态信息

 

 

2.4.1 心跳报

MESSAGE sip:34020000002000000001@192.168.9.161:15060 SIP/2.0

Via: SIP/2.0/TCP 192.168.9.186:42860;rport;branch=z9hG4bK999627714

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=895079034

To: <sip:34020000002000000001@192.168.9.161:15060>

Call-ID: 1652649404

CSeq: 20 MESSAGE

Content-Type: Application/MANSCDP+xml

Max-Forwards: 70

User-Agent: DVR UAC

Content-Length:   160



<?xml version="1.0" encoding="UTF-8"?>

<Notify>

<CmdType>Keepalive</CmdType>

<SN>1</SN>

<DeviceID>30514805331320000140</DeviceID>

<Status>OK</Status>

</Notify>

SIP/2.0 200 OK

Via: SIP/2.0/TCP 192.168.9.186:42860;rport=42860;received=192.168.9.186;branch=z9hG4bK999627714

From: <sip:30514805331320000140@192.168.9.186:5060>;tag=895079034

To: <sip:34020000002000000001@192.168.9.161:15060>;tag=180771049

CSeq: 20 MESSAGE

Call-ID: 1652649404

User-Agent: Easy SIP Server

Content-Length: 0

2.5、实时点播

 

 

点击播放

 流程4步 sip 服务器-> 设备客服端

INVITE sip:30514805331320000141@192.168.9.186:59354;transport=tcp SIP/2.0

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK863172447

From: <sip:34020000002000000001@3402000000>;tag=989172447

To: <sip:30514805331320000141@192.168.9.186:59354>

Call-ID: 211171919

CSeq: 356 INVITE

Max-Forwards: 70

User-Agent: Easy SIP Server

Content-Length: 222

Content-Type: application/sdp

Contact: <sip:34020000002000000001@192.168.9.161:15060>

Subject: 30514805331320000141:0148000141,34020000002000000001:0



v=0

o=34020000002000000001 0 0 IN IP4 192.168.9.161

s=Play

c=IN IP4 192.168.9.161

t=0 0

m=video 50100 RTP/AVP 96 98 97

a=recvonly

a=rtpmap:96 PS/90000

a=rtpmap:98 H264/90000

a=rtpmap:97 MPEG4/90000

y=0148000141

流程5步  设备客服端 -> sip 服务器

 

SIP/2.0 100 Trying

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK863172447

From: <sip:34020000002000000001@3402000000>;tag=989172447

To: <sip:30514805331320000141@192.168.9.186:59354>

Call-ID: 211171919

CSeq: 356 INVITE

User-Agent: DVR UAC

Content-Length: 0
SIP/2.0 200 OK

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK863172447

From: <sip:34020000002000000001@3402000000>;tag=989172447

To: <sip:30514805331320000141@192.168.9.186:59354>;tag=382514535

Call-ID: 211171919

CSeq: 356 INVITE

Contact: <sip:30514805331320000141@192.168.9.186:59354>

Content-Type: application/sdp

User-Agent: DVR UAC

Content-Length:   265



v=0

o=30514805331320000140 719885386 719885386 IN IP4 192.168.9.186

s=Play

c=IN IP4 192.168.9.186

t=0 0

m=video 15000 RTP/AVP 96

a=setup:active

a=sendonly

a=rtpmap:96 PS/90000

a=username:30514805331320000140

a=password:12345678

a=filesize:0

y=0148000141

流程7步  sip 服务器 -> 设备客服端  

ACK sip:30514805331320000141@192.168.9.186:59354;transport=tcp SIP/2.0

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK929172974

From: <sip:34020000002000000001@3402000000>;tag=989172447

To: <sip:30514805331320000141@192.168.9.186:59354>;tag=382514535

Call-ID: 211171919

CSeq: 356 ACK

Max-Forwards: 70

User-Agent: Easy SIP Server

Content-Length: 0

实时媒体流 RTP

流程19步  sip 服务器 -> 设备客服端  

流程20步  设备客服端 ->  sip 服务器  

2.6 SDP  协议

v字段:协议版本
o字段:-
a字段:a=rtpmap: / [/] 中的,利用该属性携带编码器厂商名称。该属性表明该流为某厂商编码器编码且是不符合gb28181规定的媒体流,符合国标的媒体流不需要该属性。
例如:a=rtpmap:96 DAHUA/90000
a=rtpmap:96 HIKVISION/90000
a字段有下列格式:
a字段可携带倍数参数,用于文件下载时控制下载速度。格式: a=downloadspeed:下载倍数(整型)
a字段可携带文件大小参数,用于文件下载时的进度计算。格式: a=filesize:文件大小 (单位:Byte)
a字段可携带setup、connection作为TCP连接协商参数。 a=setup:TCP连接方式(表示本SDP发送者在建立RTP over TCP连接时是主动还是被动发起TCP连接,“active”为主动,“passive”为被动)
a字段可携带SVC参数,用于视频传输时的分辨率或者帧频控制。a=svcspace:空域编码方式 【取值整型。 0:不使用 1:1级增强 2:2级增强 3:3级增强 】 a = svctime:时域编码方式

s字段:表示请求媒体流的操作类型,“Play”标识为点播请求 “Playback”标识回播请求 “Download”表示文件下载 “Talk”表示语音对讲;
u字段:u行应填写视音频文件的URL。该URL的取值有两种:简捷方式和普通方式。简捷方式直接采用产生该历史媒体的媒体源(如某个摄像头)的设备ID以及相关参数,参数用“:”分隔;普通方式采样http://储存设备ID[/文件夹]*/文件名;
m字段:描述媒体的媒体类型、端口、传输层协议、负载类型等内容。媒体类型采样“video”标识视频或者视音频混合内容,采样“audio”标识传输音频内容;传输方式采用“RTP/AVP”标识传输层协议为 RTP over UDP,采用“TCP/RTP/AVP”标识传输层协议为RTP over TCP;
t字段:当回放或者下载时,t行值为开始时间,结束时间,采样“ ”分隔;
y字段:十进制整数字符串,标识SSRC值。其中第一位为历史或者实时媒体流的标识位,0为实时,1为历史;第2位到第6位取20位SIP监控域ID之中的4-8位作为域标识;第7-10位作为域内媒体流标识,是一个与当前域内产生的媒体流SSRC值后4位不充分的四位十进制整数;
f字段:f=v/编码格式/分辨率/帧率/码率类型/码率大小 a/编码格式/码率大小/采样率 其中v表示video a表示audio

2.7 设备目录查询

服务端 - > 客服端

 

MESSAGE sip:34020000001320000111@192.168.9.186:5060;transport=udp SIP/2.0

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK691041267

From: <sip:34020000002000000001@3402000000>;tag=45041267

To: <sip:34020000001320000111@3402000000>

Call-ID: 725041267

CSeq: 167 MESSAGE

Max-Forwards: 70

User-Agent: Easy SIP Server

Content-Length: 156

Content-Type: Application/MANSCDP+xml



<?xml version="1.0" encoding="UTF-8"?>

<Query>

    <CmdType>Catalog</CmdType>

    <SN>791041265</SN>

    <DeviceID>34020000001320000111</DeviceID>

</Query>

客服端 - > 服务端  

SIP/2.0 200 OK

Via: SIP/2.0/UDP 192.168.9.161:15060;rport=15060;branch=z9hG4bK691041267

From: <sip:34020000002000000001@3402000000>;tag=45041267

To: <sip:34020000001320000111@3402000000>;tag=54976721

Call-ID: 725041267

CSeq: 167 MESSAGE

User-Agent: DVR UAC

Content-Length: 0

客服端 - > 服务端  

 

服务端  - >  客服端 

SIP/2.0 200 OK

Via: SIP/2.0/UDP 192.168.9.186:5060;rport=5060;received=192.168.9.186;branch=z9hG4bK1596506343

From: <sip:34020000001320000111@192.168.9.186:5060>;tag=1063069655

To: <sip:34020000002000000001@192.168.9.161:15060>;tag=393041274

CSeq: 20 MESSAGE

Call-ID: 2086294613

User-Agent: Easy SIP Server

Content-Length: 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/417730.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手写Spring框架-前奏-反射获取Annotation

目录 所谓反射 反射机制的作用 反射依赖reflect和Class 反射依赖的Class Class类的特点 获取Class对象的三种方式 获取类的构造方法并使用 获取类的成员变量并使用 获取类的成员方法并使用 问题引入 解析类的注解 解析成员变量的注解标签 解析方法上的注解 注解获…

Java类加载

类加载的时机 一个类型从被加载到虚拟机内存中开始&#xff0c;到卸载出内存为止&#xff0c;它的整个生命周期将会经历加载、验证、准备、解析、初始化、使用和卸载七个阶段。其中验证、准备、解析三个阶段统称为连接。 图中加载、验证、准备、初始化和卸载这五个阶段的顺序是…

CDGP数据治理专家认证含金量如何?值得考一个吗?

CDGP&#xff08;Certified Data Governance Professional&#xff09;数据治理专家认证的含金量非常高。该认证证明了持有人拥有数据治理方面的专业知识和技能&#xff0c;能够有效地管理和保护组织的数据资产。 CDGP认证考试内容涵盖数据治理的各个方面&#xff0c;包括数据…

看这家在线教育企业如何通过DHTMLX Scheduler,实现培训管理系统优化

“我们公司目前有一套培训管理系统&#xff0c;用于管理培训学员。目前学员越来越多&#xff0c;老旧的系统已经没法满足需求&#xff0c;导致我们经常需要手动记录学员出勤培训情况&#xff0c;除此之外&#xff0c;系统课程安排只展示时间&#xff0c;没法展示诸如主题&#…

macOS Big Sur 11.7.6 (20G1231) 正式版 ISO、PKG、DMG、IPSW 下载

本站下载的 macOS 软件包&#xff0c;既可以拖拽到 Applications&#xff08;应用程序&#xff09;下直接安装&#xff0c;也可以制作启动 U 盘安装&#xff0c;或者在虚拟机中启动安装。另外也支持在 Windows 和 Linux 中创建可引导介质。 2023 年 4 月 10 日&#xff08;北京…

【Vue全家桶】Pinia状态管理

【Vue全家桶】Pinia状态管理 文章目录【Vue全家桶】Pinia状态管理写在前面一、认识Pinia1.1 认识Pinia1.2 为什么使用Pinia&#xff1f;二、 Store2.1 定义Store2.2 Option对象2.3 setup函数2.4 使用定义的Store三、Pinia核心概念State3.1 定义State3.2 操作State3.3 使用选项式…

基于小生境粒子群优化算法的考虑光伏波动性的主动配电网有功无功协调优化(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5;&#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密…

C语言基础——指针

文章目录一、指针1.指针的意义2.指针类型表示3.一些操作3.1打印1个变量地址3.2通过地址查看改地址的内容以及修改改地址的内容3.3操作某个空间 -- 4个字节,给他赋值为100&#xff0c;只知道该空间的地址0x8000 00004.指针变量的定义5.指针类型的大小6.指针变量的使用6.1 指针变…

python数据分析-matplotlib折线图知识总结01

python绘图库matplotlib的知识总结一.matplotlib是什么二.matplotlib的安装与导入三.matplotlib的常用函数四.matplotlib绘制折线图的使用方法1.设置图形大小2. 利用数据绘图3.调整x,y轴的刻度,旋转角度,显示描述信息,绘制网格,添加图例4.图形的样式5.绘制多条折线6.显示绘制的…

python知识记录:灵活使用numpy提高python数据分析效率!

NumPy是Python语言的一个第三方库&#xff0c;其支持大量高维度数组与矩阵运算。 作为python科学计算领域的三剑客之一&#xff0c;numpy在数据分析处理方面有着独特的魅力&#xff01; numpy模块的出现更多的是在数组处理的操作上面&#xff0c;并且支持和python常用的数据结…

Transformer在时序预测的应⽤第一弹——Autoformer

Transformer在时序预测的应⽤第一弹——Autoformer 原文地址&#xff1a;Autoformer: Decomposition Transformers with Auto-Correlation for Long-Term Series Forecasting&#xff08;NIPS 2021&#xff09; 做长时间序列的预测 Decomposition把时间序列做拆分&#xff0c…

目标检测——YOLOv7(十三)

简介&#xff1a; 继美团发布YOLOV6之后&#xff0c;YOLO系列原作者也发布了YOLOV7。主要从两点进行模型的优化&#xff1a;模型结构重参化和动态标签分配。 YOLOv7的特点是快&#xff01;相同体量下比YOLOv5精度更高&#xff0c;速度快120%&#xff0c;比YOLOX快180%。 Github…

RabbitMQ消息丢失的情况,以及如何通过代码解决

目录 RabbitMQ消息丢失问题&#xff1a; 代码部分&#xff1a; 完整代码&#xff1a; RabitMQConfig&#xff1a; CourseMQListener: 生产者跟交换机通信的消息丢失解决 &#xff1a; 交换机跟消息队列的消息丢失&#xff1a; 消息队列跟消费者的消息丢失&#xff1a; …

自动处理【支付宝交易支付投诉管理系统】配置指南

大家好&#xff0c;我是小悟 已经有小伙伴开始使用自动处理【支付宝交易支付投诉管理系统】&#xff0c;所以详细介绍一下如何配置。 阅读这篇文章之前&#xff0c;结合这篇【连夜干出来一个自动处理【支付宝交易支付投诉管理系统】&#xff0c;支持多商户】干货食用更佳。 连…

Filter 过滤器 Listener 监听器

Filter web中的过滤器当用户访问服务器资源时&#xff0c;过滤器将请求拦截下来&#xff0c;完成一些通用的操作应用场景如&#xff1a;登录验证、统一编码处理、敏感字符过滤 编写filter对目标资源servlet进行拦截 1. 编写java类&#xff0c;实现filter接口 public class Qu…

智慧医院人员定位系统解决方案,助力医院安全管理智能化

随着经济的发展与生活质量的提升&#xff0c;人们对医疗健康的重视度越来越高&#xff0c;医疗行业也因此蓬勃发展起来。然而&#xff0c;不断扩大的经营规模也给医院安全管理带来挑战和难题。 医院安全管理痛点 1、医疗事件信息获取不及时甚至存在瞒报现象&#xff0c;管理者…

yc博客项目创建-白手起家

初始化项目 1、码云创建代码库 2、下载码云项目到本地 3、IDEA直接生成springboot项目 接入mysql 1、配置文件 2、代码配置 启动项目 访问项目 访问连接&#xff1a; http://localhost:8089/yc-blog/index/listlistContent 注意点&#xff1a;server.servlet.context-path…

Redis用于全局ID生成器、分布式锁的解决方案

全局ID生成器 每个店铺都可以发布优惠卷 当用户抢购时&#xff0c;就会生成订单并保存到tb_voucher_order这张表中&#xff0c;而订单表如果使用数据库自增id就存在一些问题&#xff1a; 1.id的规律性太明显 2.受单表数据量的限制 全局ID生成器&#xff0c;是一种在分布式系…

极光笔记 | 如何在Shopify中使用EngageLab (下)

Sendgird发布的《2022 Global Messaging Engagement Report》中揭示了世界各地的用户更喜欢用哪种方式与品牌互动&#xff0c;结论是&#xff1a;“电子邮件仍然是第一名&#xff08;短信紧随其后&#xff09;”。4800多名受访者中&#xff0c;有18%的人将电子邮件列为他们最常…

普通人是否能从ChatGPT中分一杯羹?

ChatGPT3.0刚刚推出&#xff0c;最开始的时候&#xff0c;人们只是将ChatGPT看作一个很会聊天的机器人&#xff0c;无论问题多么天马行空&#xff0c;它的答案看上去都有理有据。后来&#xff0c;像打开潘多拉魔盒一样&#xff0c;很多人开始拿它编大纲、撰写文案、编代码、创作…