seqno是什么意思,seqno翻译中文

您所在的位置:网站首页 seqno翻译中文 seqno是什么意思,seqno翻译中文

seqno是什么意思,seqno翻译中文

2023-05-20 14:18| 来源: 网络整理| 查看: 265

1、 前言

互联网上关于RTSP的文章很多,但是大多数都是抽象的理论介绍,本文将从实际例子解说RTSP协议,不求面面俱到,但求简单易懂。RTSP(Real-Time Streaming Protocol)实时流式协议是IETF的MMUSIC工作组开发的协议,现在已成为因特网建议标准[RFC 2326]。RTSP是为了给流式过程增加更多的功能(暂停、继续、播放、快进、快退)而设计的协议。需要注意的是,RTSP本身不传输数据,音视频流数据是通过RTP传输的。

2、 RTSP的请求方法

在开始实例分析前先介绍RTSP很重的概念,RTSP请求方法,顾名思义,就是定义一系列方法来进行客户端与服务端通信。下面枚举是有关于RTSP的请求方法集合:

typedef enum RtspReqMethod{ RTSP_REQ_METHOD_SETUP = 0, RTSP_REQ_METHOD_DESCRIBE, RTSP_REQ_METHOD_REDIRECT, RTSP_REQ_METHOD_PLAY, RTSP_REQ_METHOD_PAUSE, RTSP_REQ_METHOD_SESSION, RTSP_REQ_METHOD_OPTIONS, RTSP_REQ_METHOD_RECORD, RTSP_REQ_METHOD_TEARDOWN, RTSP_REQ_METHOD_GET_PARAM, RTSP_REQ_METHOD_SET_PARAM, RTSP_REQ_METHOD_EXTENSION, RTSP_REQ_METHOD_MAX,}RtspReqMethod_e;

看上去很多,羞涩难懂,其实只要了解常用几个就好,其它是为了让协议具有兼容性而拓展的,在实际应用中遇到较少,有兴趣可以多了解,没兴趣的话知道就好了。

OPTIONS 请求用于返回服务端支持的 RTSP方法列表 。也可以定时发送这个请求来保活相关的 RTSP 会话。

DESCRIBE 命令用于请求指定的媒体流的 SDP 描述信息(详细包括音视频流的帧率、编码类型等等媒体信息)

SETUP 命令用于配置数据交互的方法。(比如制定音视频的传输方式TCP UDP)

seqno翻译中文,PLAY 用于启动 (当暂停时重启) 交付数据给客户端. PLAY 命令的应答消息包含如下附加的头字段:

seqno是什么意思

PAUSE 请求用于临时停止服务端的数据的交互。使用 PLAY 来重新启动数据交互。

seq指RNA-seq。RNA-seq即转录组测序技术,就是用高通量测序技术进行测序分析,反映出mRNA,smallRNA,noncodingRNA等或者其中一些的表达水平。相关信息:在过去的十年中,RNA-Seq技术迅速发展,并成为了在转录组水平上分析差异。

TEARDOWN 请求用于终止来自服务端的数据的传输。

3、 RTSP的实例抓包分析

好了,有了以上这些知识,可以直接实例分析了,本抓包数据是用wireshark抓取NVR或者IPC RTSP服务端推送过来的流数据,如果没有NVR或者IPC可以用VLC作为RTSP服务器推流进行抓包分析。我们打开wireshark并输入相应的过滤规则(ip.addr==192.168.1.1 && rtsp)开始抓包。然后在VLC输入如rtsp://admin:[email protected]:554/10来向服务器请求流。

为了更容易理解,这里再唠叨一下,上面的会话格式遵循RTSP语法:

RTSP 的语法和 HTTP 的语法基本相同,具体如下:

COMMAND rtsp_URL RTSP/1.0Headerfield1: val1Headerfield2: val2...[Body]

客户端经过TCP三次握手后,客户端发送 OPTIONP的方法询问服务器等提供的服务,此时Cseq为2,它只是记录回话的次数序号而已,可以看到RTSP服务器支持OPTIONS,DESCRIBE,SETUP,PLAY,TEARDOWN,SET_PARAMETER这几种方法。

相关视频推荐

学习地址:

另外亚航的行李是7公斤,7公斤以上就需要托运。每个地方的政策不一样,以北京飞吉隆坡为例,在柜台办托运,15公斤,240元。在网上预订行李托运,只用120块。其实如果您是连飞,而又符合标准的话,可以在网上办理值机,可以节。

需要更多ffmpeg/webrtc..音视频流媒体开发学习资料加群812855908领取

sequence number 序列号。可能是check-in顺序。没注意过。估计是出票吧

Cseq为3时,则是客户端用DESCRIB方法主动告诉服务器自己的信息,服务器回的是未认证Unauthorized,即未登录。

Cseq为4时,客户端用DESCRIB方法主动发送用户名及密码给服务端,用户名为字段username,密码则由nonce和 response加密组成,服务器成功认证的话会发送服务器的媒体信息。

Cseq为5时,客户端用SETUP方法主动向服务端请求视频流(trackID=0)。

Cseq为6时,客户端用SETUP方法主动向服务端请求音频流(trackID=1)。

Cseq为7时,客户端用PLAY方法主动向服务端请求播放,服务端回应200 OK等信息后,开始向客户端推送RTP流。

下面是服务端回应的状态码结构体,跟http请求返回值类型码很类似,有兴趣可以了解一下。

RtspMethod_t gRtspStatu[] = { {&34;,100}, {&34;,200}, {&34;,201}, {&34;,202}, {&34;,203}, {&34;,204}, {&34;,205}, {&34;,206}, {&34;,300}, {&34;,301}, {&34;,302}, {&34;,400}, {&34;,401}, {&34;,402}, {&34;,403}, {&34;,404}, {&34;,405}, {&34;,406}, {&34;,407}, {&34;,408}, {&34;,409}, {&34;,410}, {&34;,411}, {&34;,412}, {&34;,413}, {&34;,414}, {&34;,415}, {&34;,420}, {&34;,450}, {&34;,451}, {&34;,452}, {&34;,453}, {&34;,454}, {&34;,455}, {&34;,456}, {&34;,457}, {&34;,458}, {&34;,500}, {&34;,501}, {&34;,502}, {&34;,503}, {&34;,504}, {&34;,505}, {&34;,911}, {0,RTSP_PARSE_INVALID_OPCODE}};

可以看到抓包序列从407到419为客户端与服务端信息交互的过程,从420开始则是服务端用RTP发送过来的音视频流数据。

4、RTP音视频数据的载体

RTP(Real-Time Transport Protocol)实时运输协议是IEFT的AVT工作组开发的协议,为实时应用提供端到端的运输服务,但不提供任何服务质量的保证,它有两种工作模式,两者的区别归纳如下:

seqno意思是“序号”。

2.在收包的过程中,TCP流式和UDP包式的不同。

typedef struct RtpHdr_s{elif (BYTE_ORDER == BIG_ENDIAN)/* byte 0 */u16 version :2; /* protocol version */u16 p :1; /* padding flag */u16 x :1; /* header extension flag */u16 cc:4; /* CSRC count *//*byte 1*/u16 marker:1; /* marker bit */u16 pt:7; /* payload type */error YOU MUST DEFINE BYTE_ORDER == LITTLE_ENDIAN OR BIG_ENDIAN !#endif/* bytes 2,3 */u16 seqno:16; /* sequence number *//* bytes 4-7 */int ts;/* timestamp in ms *//* bytes 8-11 */int ssrc;/* synchronization source */}RtpHdr_t;

由英文注释,可以大概了解其意思,我比较关注的是payload type 和marker bit ,payload type定义了RTP帧是视频还是音频,marker bit定义了RTP帧是否结束(RTP报文段必须小于MTU,所以一般的视频都有好几个报文段组成)。

seqno是什么意思

上图抓取了其中一个报文段来分析RTP协议数据,可以看出这是一帧视频流,而且尚未结束还有其他报文(marker bit为false)。下面再来看一个抓包截图:

机票中SEQ是序列百号的意思,英语sequence的简写。飞机票上的序号含义:一般备注栏还会有一个票号的信息,ETKT开头后面的一组数字度,这是中国民航特有的机票票号,每张机票都对应着一个票号。票号都是以ETKT四个英文字母大头。

5、总结

SEQ:等于该主机选择本次连接的初始序号加上报文段中第一个字节在整个数据流中的序号。在连接建立的时候,会随机选择一个初始序号,如果发送的数据包中的字节是整个数据流中的第 256 字节到 512 字节。

rtsp协议在音视频流传输上具有很高的地位,在直播平台、流媒体平台、安防监控中使用较多,学会抓包分析rtsp连接问题,能事半功倍解决问题。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3