2021-09-18 稍微写一些关于RTSP协议分析后的小结

RTSP协议(Real Time Streaming Protocol)

偷懒了,好久没更新了。
近日,在做一些视频推流方面的工作,大致的内容,就是利用ffmpeg拉取rtsp流,推送至nginx服务器,由nginx实现rtmp的视频流点播功能。遇到了一些问题是关于RTSP协议的,下面就对协议结合数据包做一些分析和总结;


下面跟着我的思路一起学习和理解RTSP协议吧。


前言


提示:以下是本篇文章正文内容,下面案例可供参考,截图等均是真实可能出现的情况;

一、什么是RTSP协议,与RTP\RTCP什么关系?

下面是我个人做的小结对比图,有一个初步的了解。

在这里插入图片描述
协议族展示(取自网络):
在这里插入图片描述

二、RTSP协议如何分析?

1.常规手段-抓包(本次抓包为RTSP over tcp)

使用wireshark抓取一段RTSP协议包数据,得到下面的数据;
在这里插入图片描述

2.结合数据包分析

  1. 过滤RTSP数据,
    在这里插入图片描述
    得到如下图所示的数据,即所有的RTSP数据包,并使用“rtsp”过滤条件,得到下面的数据包:
    在这里插入图片描述

  2. 过滤RTSP数据,协议类型显示为rtsp的为rtsp的先行控制请求;

rtsp中定义的方法有:OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, SCALE, GET_PARAMETER ,SET_PARAMETER ,这些命令可以通过其他网络资源获取,大致如字面所示比较简单,这里不多做阐述;

  1. rtsp包数据分析:
  • rtsp各个字段的含义;
    在这里插入图片描述

Magic: 魔数,0x24用于表示Interleaved Frame的开始,1个字节固定;
Channel: 1个字节,表明协议的类型,0x00表示Video RTP; 0x01表示Video RTCP; 0x02表示AUdio RTP;0x03表示Audio RTCP;
Length: 2个字节,表示Data区域的长度;

**从上面的数据包来看,是Video RTP的数据包,长度为1472;

  • rtsp 基于TCP or UDP;

本次抓包的数据均是rtsp 基于TCP数据;

总结

本文只是初步对协议和抓包数据做一些理解,帮助第一次接触的人员。欢迎大家提出疑问;
以下分享抓包文件以及rtsp相关的说明书:查看我的资源下载目录;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShaYQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值