GB报文中的Cseq值的注意点

一、 问题现象
【问题现象】NVR使用GB接三方平台发现倍速回放时,
【现场拓扑】现场拓扑如下
(1) NVR侧使用家用宽带的方式,通过国标跨公网接入三方平台。

图1.1:网络拓扑 在这里插入图片描述

二、 抓包分析
INVITE sip:42000000401320000001@192.168.0.14:5060 SIP/2.0
To: sip:42000000401320000001@4200000040
From: sip:42000000402000000001@4200000040;tag=7uu6NGa9
Call-ID: 852055@192.168.0.13
CSeq: 90148 INVITE
Content-Type: application/sdp
User-Agent: NODE GB28181 SERVER V1
Subject: 42000000401320000001:1000009981,42000000402000000001:0
Contact: sip:42000000402000000001@192.168.0.13:5060
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK940592;rport
Content-Length: 323

v=0
o=42000000402000000001 0 0 IN IP4 192.168.0.13
s=Playback
u=42000000401320000001:0
c=IN IP4 192.168.0.13
t=1648780493 1648780553
m=video 10000 TCP/RTP/AVP 96 97 98
a=rtpmap:96 PS/90000
a=rtpmap:97 MPEG4/90000
a=rtpmap:98 H264/90000
a=recvonly
a=setup:passive
a=connection:new
y=1000009981
f=v/2/4///a///
SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK940592;rport=5060
From: sip:42000000402000000001@4200000040;tag=7uu6NGa9
To: sip:42000000401320000001@4200000040;tag=1790623530
Call-ID: 852055@192.168.0.13
CSeq: 90148 INVITE
Contact: sip:42000000401320000001@192.168.0.14:5060
Content-Type: application/SDP
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length: 230

v=0
o=42000000401180000010 0 0 IN IP4 192.168.0.14
s=Playback
c=IN IP4 192.168.0.14
t=1648809293 1648809353
m=video 62006 TCP/RTP/AVP 96
a=sendonly
a=rtpmap:96 PS/90000
a=setup:active
y=1000009981
f=v/2/6/25/1/4096a///
ACK sip:42000000401320000001@192.168.0.14:5060 SIP/2.0
To: sip:42000000401320000001@4200000040;tag=1790623530
From: sip:42000000402000000001@4200000040;tag=7uu6NGa9
Call-ID: 852055@192.168.0.13
CSeq: 90148 ACK
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK320851;rport
Content-Length: 0

INFO sip:42000000401320000001@192.168.0.14:5060 SIP/2.0
To: sip:42000000401320000001@4200000040;tag=1700172176
From: sip:42000000402000000001@4200000040;tag=gtGEJgfw
Call-ID: 562803@192.168.0.13
CSeq: 69 Info
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK989332;rport
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK905191;rport
Content-Length: 38
Contact: sip:42000000402000000001@192.168.0.13:5060

PLAY MANSRTSP/1.0
CSeq:3
Scale:2.0
SIP/2.0 481 Call Leg/Transaction Does Not Exist
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK989332;rport=5060
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK905191;rport
From: sip:42000000402000000001@4200000040;tag=gtGEJgfw
To: sip:42000000401320000001@4200000040;tag=1700172176
Call-ID: 562803@192.168.0.13
CSeq: 69 Info
User-Agent: Embedded Net DVR/NVR/DVS
Content-Length: 0

INFO sip:42000000401320000001@192.168.0.14:5060 SIP/2.0
To: sip:42000000401320000001@4200000040;tag=1790623530
From: sip:42000000402000000001@4200000040;tag=7uu6NGa9
Call-ID: 852055@192.168.0.13
CSeq: 21 Info
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK883179;rport
Contact: sip:42000000402000000001@192.168.0.13:5060
Content-Length: 38

PLAY MANSRTSP/1.0
CSeq:1
Scale:2.0
SIP/2.0 500 Internal Server Error
Via: SIP/2.0/UDP 192.168.0.13:5060;branch=z9hG4bK883179;rport=5060
From: sip:42000000402000000001@4200000040;tag=7uu6NGa9
To: sip:42000000401320000001@4200000040;tag=1790623530
Call-ID: 852055@192.168.0.13
CSeq: 21 Info
User-Agent: Embedded Net DVR/NVR/DVS
Retry-After: 10
Content-Length: 0
(1) 从上述报文可以看出平台在取回放流的时候,Cseq值是CSeq: 90148 INVITE
(2) 在后续的倍速信息中,设备回复的Cseq值变成了CSeq: 21 Info;
(3) 此原因是导致设备倍速操作失败的原因。
三、 详细原因
(1) 在GB协议中,CALL-ID标识唯一会话,
(2) 所以取流中的任何暂停倍速信息都同一会话。
(3) 在一个会话中,Cesq值不能随机赋予,可以与之前的相同,但不能小于之前的值。
(4) 其他的GB报文逻辑相同。

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

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

相关文章

OpenAI安全系统负责人:从头构建视频生成扩散模型

作者 | Lilian Weng OneFlow编译 翻译|杨婷、宛子琳、张雪聃 题图由SiliconFlow MaaS平台生成 过去几年,扩散模型(Diffusion models)在图像合成领域取得了显著成效。目前,研究界已开始尝试更具挑战性的任务——将该技术…

深度学习Day-18:ResNet50V2算法实战与解析

🍨 本文为:[🔗365天深度学习训练营] 中的学习记录博客 🍖 原作者:[K同学啊 | 接辅导、项目定制] 要求: 根据本文Tensorflow代码,编写对应的Pytorch代码了解ResNetV2与ResNetV的区别 一、 基础…

【实战JVM】-基础篇-03-Java内存结构

【实战JVM】-基础篇-03-Java内存结构 1 运行时数据区1.1 总览1.2 程序计数器1.2.1 是否会内存溢出 1.3 java虚拟机栈1.3.1 栈帧的组成1.3.1.1 局部变量表1.3.1.2 操作数栈1.3.1.3 帧数据1.3.1.3.1 动态链接1.3.1.3.2 方法出口1.3.1.3.3 异常表 1.3.2 是否会内存溢出1.3.3 设置虚…

【神经网络结构可视化】使用 Visualkeras 可视化 Keras / TensorFlow 神经网络结构

文章目录 Visualkeras介绍下载安装代码示例1、导入必要的库2、创建VGG16神经网络模型3、可视化神经网络结构4、完整代码5、使用教程 可视化自己创建的神经网络结构1、导入要的库2、创建自己的神经网络模型3、可视化神经网络结构图4、完整代码 Visualkeras介绍 Visualkeras是一…

C++代码错误解决1(函数模板)

1、代码如下 //示例函数模板的使用 #include <iostream> #include <string> using namespace std; template <typename T>//函数模板 T max(T a,T b) {return a>b?a:b; } int main() {int a,b;cout<<"input two integers to a&b:"…

【微机原理及接口技术】可编程并行接口芯片8255A

【微机原理及接口技术】可编程并行接口芯片8255A 文章目录 【微机原理及接口技术】可编程并行接口芯片8255A前言一、8255A的内部结构和引脚1.与外设接口&#xff08;数据端口&#xff09;2.与处理器接口 二、8255A的工作方式三、8255A的编程1. 写入方式控制字&#xff1a;控制字…

从0开始回顾ElasticSearch

1 elasticsearch概述 1.1 elasticsearch简介 官网: https://www.elastic.co/ ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎&#xff0c;基于RESTful web接口。Elasticsearch是用Java开发的&#xff0c;并作为Apache许可条款下的…

【动手学强化学习】第 6 章 Dyna-Q 算法知识点总结

【动手学强化学习】第 6 章 Dyna-Q 算法知识点总结 本章知识点基于模型的强化学习与无模型的强化学习方法简介无模型的强化学习方法基于模型的强化学习方法 强化学习算法的评价指标Dyna-Q算法Dyna-Q 算法的具体流程Dyna-Q 代码实践 本章知识点 基于模型的强化学习与无模型的强…

C++语言·list链表

其实现在在讲这些容器的时候&#xff0c;我们的重点已经不是它的接口都有什么&#xff0c;功能都是什么了&#xff0c;这些内容官网上都能查到&#xff0c;而且容器和容器之间接口的不同处很少&#xff0c;我在讲解的话也只是把官网上的东西截图下来复述一下。现在的重点其实都…

AtCoder Regular Contest 178 A~D

A.Good Permutation 2&#xff08;贪心&#xff09; 题意&#xff1a; 给你一个正整数 N N N和一个由 M M M个正整数 A ( A 1 , A 2 , … , A M ) A(A_{1},A_{2}, \dots,A_{M}) A(A1​,A2​,…,AM​)组成的序列。 在这里&#xff0c; A A A的所有元素都是介于 1 1 1和 N N …

网络编程-TCP

一、TCP的相关IP 1.1 SeverSocket 这是Socket类,对应到网卡,但是这个类只能给服务器使用. 1.2 Socket 对应到网卡,既可以给服务器使用,又可以给客户端使用. TCP是面向字节流的,传输的基本单位是字节. TCP是有连接的,和打电话一样,需要客户端拨号,服务器来听. 服务器的内核…

Stream流的使用

目录 一&#xff0c;Stream流 1.1 概述 1.2 Stream代码示例 二&#xff0c;Stream流的使用 2.1 数据准备 2.2 创建流对象 2.3 中间操作 filter map distinct sorted limit skip flatMap 2.4 终结操作 foreach count max&min collect 2.5 查找与匹配 a…

redis中String,Hash类型用法与场景使用

String 用法 1. 设置键值对 &#xff08;1&#xff09;设置键值对使用 set 命令设置 key 的值。 返回值&#xff1a;ok&#xff0c;如果 key 已经存在&#xff0c;set 命令会覆盖旧值。 &#xff08;2&#xff09;使用 setex 命令设置 key 的值并为其设置过期时间&#xff…

安全设计 | CISA:构建不可侵犯的代码,软件安全设计的未来之路

软件制造商在产品设计和开发过程中应采取安全设计原则和方法&#xff0c;以减少网络安全风险&#xff0c;并转变责任重心&#xff0c;使产品在设计时就内置安全特性&#xff0c;而不是依赖于后期的补丁和修复。为此CISA发布了《软件安全设计的原则和方法》&#xff0c;帮助软件…

兵器室管控系统|DW-306是一套成熟系统

概述 智慧兵器室管理系统&#xff08;DW-S306&#xff09;是依托互3D技术、大数据、RFID技术、数据库技术、AI、视频分析技术对RFID智能仓库进行统一管理、分析的信息化、智能化、规范化的系统。 本解决方案利用现有内部网络&#xff0c;部署部队智能兵器室管理系统&#xff…

【Java】欸...?我学集合框架?真的假的?

【Java】欸…&#xff1f;我学集合框架&#xff1f;真的假的&#xff1f; Java集合框架 概述 Java集合框架主要由以下几个部分组成&#xff1a; 接口&#xff08;Interfaces&#xff09;&#xff1a;定义了集合的基本操作&#xff0c;如添加、删除、遍历等。实现&#xff0…

大语言模型的工程技巧(二)——混合精度训练

相关说明 这篇文章的大部分内容参考自我的新书《解构大语言模型&#xff1a;从线性回归到通用人工智能》&#xff0c;欢迎有兴趣的读者多多支持。 混合精度训练的示例请参考如下链接&#xff1a;regression2chatgpt/ch11_llm/gpt2_lora_optimum.ipynb 本文将讨论如何利用混合…

Java语法篇-易错

文章目录 类型转换switch case类之间关系及UMLtry catch finally 类型转换 隐式类型转换&#xff0c;不同数值类型参与计算时&#xff0c;低精度会转化为高精度参与运算 byte,short,char参与整数运算时会转成int float,int 参与浮点数运算时会转成double 强制类型转换 高精…

数据结构 —— 栈 与 队列

1.栈 1.1栈的结构和概念 栈&#xff08;Stack&#xff09;是一种特殊的线性数据结构&#xff0c;它遵循后进先出&#xff08;LIFO&#xff0c;Last In First Out&#xff09;的原则。栈只允许在一端插入和删除数据&#xff0c;这一端被称为栈顶&#xff08;top&#xff09;&a…

c++引用和内联函数

一、引用 1.引用概念 引用不是新定义一个变量&#xff0c;而是给已存在变量取了一个别名&#xff0c;编译器不会为引用变量开辟内存空 间&#xff0c;它和它引用的变量共用同一块内存空间。&#xff08;引用类型必须和引用实体是同种类型的&#xff09;&#xff0c;如&#x…