视频集中存储/云存储平台EasyCVR国标GB28181协议接入的报文交互数据包分析

news2024/11/25 23:00:25

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。视频汇聚融合管理平台EasyCVR既具备传统安防视频监控的能力,也具备接入AI智能分析的能力,可拓展性强、视频能力灵活,能对外分发RTMP、RTSP、HTTP-FLV、WebSocket-FLV、HLS、WebRTC等视频流。

在视频监控汇聚平台EasCVR的项目运维过程中,经常要借助抓包来进行判断项目现场的问题。在此前的文章中,我们也给大家介绍和分析了一些交互异常的包文信息。今天为大家介绍下视频集中存储EasyCVR平台中,国标协议和设备端正常交互情况下包文的数据分析。

1、服务器抓包

首先,在服务器上进行抓包,这里选用的是Linux服务器进行抓包。查看服务器的网络情况,输入ip addr,确认项目现场的网络环境。

然后再通过tcpdump命令,抓取这个网段上面的所有数据。

显示正在抓取数据,在此期间可以在视频监控/视频集中存储/云存储EasyCVR上进行播放录像等调试操作。调试过后按下ctrl+c,停止抓包。

此时可以看到当前路径上多了一个target.cap的文件,这个就是数据包。随后我们将它导出,在windows里面分析。

2、数据筛选

拿到包的数据后,先进行筛选,只获取sip信息,如下:

3、返回401

每个设备接入之后,EasyCVR平台都会返回给设备端一个401消息,这样设备端才能给服务器传递SIP ID、通道ID以及接入密码等信息。

4、返回200 OK

如果SIP消息正确,服务器则返回200 OK;如果返回403错误,则代表设备接入失败,是接入密码错误,此时需要核对接入密码,查看设备端和服务器的接入密码是否一致。

5、发送invite

在安防视频监控平台EasyCVR播放设备的监控画面时,服务器会给设备端发送invite消息,告诉设备可以发流到指定的端口。

如上图,这里表示告诉设备发流到UDP 50002端口上。

6、100 Trying

设备端收到信息之后会发送一个临时消息100 Trying,接着发送流的数据,返回200 OK。

7、判断是否正常交互

接着我们可以对UDP 50002端口进行筛选,来判断流有没有过来。

此时可以看到,数据流已经在交互了,如果筛选后没有数据,则需要查看50000到60000端口是否已开通。

关于EasyCVR视频汇聚平台的简单抓包流程就介绍到这,用户也可以参照以上步骤去排查视频流在接入、传输、交互等过程中的一些简单问题。

安防监控/视频集中存储/云存储EasyCVR视频汇聚平台,可支持海量视频的轻量化接入与汇聚管理。平台能提供视频存储磁盘阵列、视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集群、语音对讲、云台控制、电子地图、平台级联、H.265自动转码等功能。感兴趣的用户可以前往演示平台进行体验或部署测试。

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

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

相关文章

loss.sum.backward()为什么要sum()?

在动手学深度学习中,这样解释的: 当y不是标量时,向量y关于向量x的导数的最自然解释是一个矩阵。 对于高阶和高维的y和x,求导的结果可以是一个高阶张量。 然而,虽然这些更奇特的对象确实出现在高级机器学习中&#xff…

TypeScript初体验

1.安装编译TS工具包 npm i -g typescript 2. 查看版本号 tsc -v 3.创建ts文件 说明:创建一个index.ts文件 4.TS编译为JS tsc index.ts 5.执行JS代码 node index.js 6.简化TS的步骤 6.1安装 npm i -g ts-node 6.2执行 ts-node index.ts

PL端案例开发手册

目 录 前 言 1 工程编译、程序加载方法 1.1 工程编译 1.2 程序加载 2 led-flash 2.1 案例说明 2.2 操作说明 2.3 关键代码 更多帮助 前 言 本文主要介绍PL端案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Unified 20…

SpringDataRedis 使用

1. SpringDataRedis 特点2. 使用 SpringDataRedis 步骤3. 自定义 RedisTemplate 序列化4. SpringDataRedis 操作对象 1. SpringDataRedis 特点 提供了对不同 Redis 客户端的整合(Lettuce 和 Jedis)提供了 RedisTemplate 统一 API 来操作 Redis支持 Redi…

Python实现企业微信群告警

Python实现企业微信告警 1. 创建企业微信群机器人 1-1. 什么是企业微信群机器人? 企业微信群机器人是企业微信平台提供的一种功能,可以通过Webhook方式将消息发送到指定的企业微信群中。它可以用于自动化发送通知、告警等信息,实现监控和信…

机器学习深度学习——NLP实战(自然语言推断——微调BERT实现)

👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——针对序列级和词元级应用微调BERT 📚订阅专栏:机器学习&&深度学习 希望文…

学习JAVA打卡第三十八天

String 类的常用方法 ⑴public int length() String 类中的length()方法获取了一个String对象的字符序列的长度,例如: String china “1945年抗战胜利”; int n1,n2; n1china.leng…

CentOS镜像下载

官网下载链接:http://isoredirect.centos.org/centos/7/isos/x86_64/ step1: 进入下载页,选择阿里云站点进行下载 Actual Country 国内资源 Nearby Countries 周边国家资源 阿里云站点:http://mirrors.aliyun.com/centos/7/isos/x86_64/ …

如何自己实现一个丝滑的流程图绘制工具(一)vue如何使用

背景 项目需求突然叫我实现一个类似processOn一样的在线流程图绘制工具。 这可难倒我了,立马去做调研,在github上找了很多个开源的流程图绘制工具, 对比下来我还是选择了 bpmn-js 原因: 1、他的流程图是涉及到业务的&#xff0c…

MybatisPlus 项目中使用

大家好 , 我是苏麟 , 今天带来 MybatisPlus 的简单使用 . 官方网站 : MyBatis-Plus (baomidou.com) 开始使用 初步体验 引入依赖 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version…

byte-budddy: Unexpected type reference on method: 19

使用byte-buddy版本为1.10.1 在使用agent时&#xff0c;启动应用&#xff0c;报错如下 造成报错的相关代码 Data public class CloudAccountUpdateReq implements Serializable {private List<Valid CloudAccountDiscountDTO> discountList;}已修复 issue: https://gi…

ClassLoad Of Java

序言 简单学习下ClassLoad的过程cuiyaonan2000163.com 过程 我们有一个x.java文件通过执行javac命令可以变成x.class文件&#xff0c;当我们调用Java命令的时候class文件会被装载到内存中&#xff0c;这个过程叫做classloader。 一般情况下我们自己写代码的时候会用到Java的类…

(6)(6.6) 恢复任务回放

文章目录 前言 6.6.1 配置 6.6.2 工作原理 6.6.3 局限性 前言 本页介绍了什么是"任务继续时后退"功能以及如何使用该功能。 &#xff01;Note 从 4.1 版起&#xff0c;Plane、Copter 和 Rover 均可使用此功能。 在某些应用或运行区域&#xff0c;为了消除冲突…

Nat. Photonics:实时捕获了光子的量子纠缠!

渥太华大学的研究人员与罗马大学的Danilo Zia和Fabio Sciarrino合作&#xff0c;展示了一种新技术&#xff0c;可以实时可视化两个纠缠光子&#xff08;构成光的基本粒子&#xff09;的波函数。 研究成果以“Interferometric imaging of amplitude and phase of spatial biphot…

如何在 Opera 中启用DNS over HTTPS

DNS over HTTPS&#xff08;基于HTTPS的DNS&#xff09;是一种更安全的浏览方式&#xff0c;但大多数 Web 浏览器默认情况下不启用它。了解如何在 Opera 浏览器中启用该功能。 您可能不知道这一点&#xff0c;但您的网络浏览器并不像您希望的那样私密或安全。您会看到&#xff…

华为官方翻新产品上架首款PC产品,售价3699元起!

8月24日&#xff0c;华为官方翻新产品上架首款PC——HUAWEI Matebook 14s&#xff01;产品搭载2.5K高刷触控屏&#xff0c;有第11代英特尔酷睿i7-113700H和酷睿i5-11300H两种处理器可选择&#xff0c;售价3699元起&#xff01; 华为官方翻新PC&#xff0c;品质接近新机&…

node.js 简单使用 开始

1.概要 问&#xff1a;体验一下node.js 看一下如何运行。 答&#xff1a;使用命令 node 文件名.js 2.举例 2.1 代码准备(main.js) console.log(第一行node.js代码); 2.2 运行效果

Linux内核学习(八)—— 内存管理(基于Linux 2.6内核)

目录 一、页&#xff08;page&#xff09; 二、区&#xff08;zone&#xff09; 三、页操作 四、kmalloc() 五、vmalloc() 六、slab 分配器 七、在栈上的静态分配 一、页&#xff08;page&#xff09; 内核把物理页作为内存管理的基本单位。尽管处理器的最小可寻 …

Crontab定时任务运行Docker容器(Ubuntu 20)

对于一些离线预测任务&#xff0c;或者D1天的预测任务&#xff0c;可以简单地采用Crontab做定时调用项目代码运行项目 Crontab简介&#xff1a; Linux crontab命令常见于Unix和类Unix的操作系统之中&#xff0c;用于设置周期性被执行的指令。该命令从标准输入设备读取指令&…

微信通过好友自动回复怎么设置?微信怎么设置自动回复?

当通过了很多客户之后&#xff0c;员工没有办法及时的给每位客户发送欢迎消息&#xff0c;并且发送欢迎消息时也是由员工一个一个去发送给客户&#xff0c;这样既浪费了大量的时间&#xff0c;又给员工增加工作负担&#xff0c;降低工作效率。 我们可以设置自动发欢迎语&#…