- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 1 / 7
实验四 RTP-RTCP 协议
一、实验目的
1、了解实时传输协议 RTP 和实时传输控制协议 RTCP 的基本原理;
2、学习使用 RTP 数据报发送实时数据,并接收重组; 3、学会使用 Wireshark 进行抓包,并分析数据。
二、实验内容
1、RTP 协议报文段的说明语句
RTP(Real-time Transport Protocol,实时传输协议)是一个网络传输协议。RTP 报文由两部分组成:报头和有效载荷。 RTP 报头格式如图 1 所示,其中:
图 1 RTP 报头格式
V:RTP 协议的版本号,占 2 位,当前协议版本号为 2 。 P:填充标志,占 1 位,如果 P=1,则在该报文的尾部填充一个或多个额外
的八位组,它们不是有效载荷的一部分。
X:扩展标志,占 1 位,如果 X=1,则在 RTP 报头后跟有一个扩展报头。CC: CSRC 计数器,占 4 位,指示 CSRC 标识符的个数。
M: 标记,占 1 位,不同的有效载荷有不同的含义,对于视频,标记一帧的
结束;对于音频,标记会话的开始。
PT: 有效载荷类型, 占 7 位,用于说明 RTP 报文中有效载荷的类型, 如 GSM
音频、 JPEM 图像等。
序列号:占 16 位,用于标识发送者所发送的 RTP 报文的序列号,每发送一个报文,序列号增 1。接收者通过序列号来检测报文丢失情况,重新排序报文, 恢复数据。
时戳(Timestamp):占 32 位,时戳反映了该 RTP 报文的第一个八位组的采样
时刻。接收者使用时戳来计算延迟和延迟抖动,并进行同步控制。
同步信源 (SSRC)标识符:占 32 位,用于标识同步信源。该标识符是随机选择的,参加同一视频会议的两个同步信源不能有相同的 SSRC。
特约信源 (CSRC)标识符:每个 CSRC 标识符占 32 位,可以有 0~15 个。每个 CSRC 标识了包含在该 RTP 报文有效载荷中的所有特约信源。
2、RTCP 协议报文段的说明语句
RTCP(RTP Control Protocol,控制协议)——监控服务质量并传送正在进行的会话参与者的相关信息。 RTCP 包括五种数据包类型( RFC3550 Page69):
类型
表
1 RTCP 的五种分组类型
缩写表示
用途
200
SR
发送端报告
201
RR
接收端报告
202
SDES
源点描述
203
BYE
结束传输
204
APP
特定应用
以上五种分组的封装大同小异,以 SR 报文为例详细描述一下 RTCP 报文格式( RFC3550 Page35):
表 2 SR 包的报文格式
0
1
2
3-7
8-15
16-31
V=2
P
RC
PT=SR=200
长度
发送端 SSRC NTP 时间标志NTP 时间标志RTP 时间标志 发送端数据包计数
发送端字节计数
SSRC-1(第一个数据源丢失率 (8 位)
SSRC)
丢失数据包累计数
(24 位)
收到的最大序号扩充接收抖动
最后 SR 延时(LSR)
从最后一个 SR 以来的延时 (DLSR) SSRC-2(第二个数据源的 SSRC )
由框架文件说明的补充
它由三部分成组成, 也可包含扩充部分。 第一部分是长度为 8 个字节的报头。每个字段的含义如下:
V、P 字段与 RTP 报头中相应字段的含义相同。 RC:接收报告计数, 5 位。数据包中 RR 数据块的数目,可为 0。PT:数据包类型, 8 位。其值为常量 200,用于标识 SR 数据包。
Length: 16 位。RTCP 数据包的长度,包括报头和补充字节信息,每 32 位为一个计数单元。
SSRC: 32 位。创建 SR 数据包的同步源标识符。
第二部分是长度为 20 个字节的发送端信息, 每个 SR 都含有这部分信息。 它对发送端传输的数据进行计数。每个字段的含义如下:
NTP 时间标志: 64 位。表示 SR 的发送时间。它与从接收端返回的时间标志配合用来计算在发送端和接收端间的数据传输时间。
RTP 时间标志: 32 位。与 NTP 时间标志对应的时间值。它用于同步与 NTP
时间标志同步的数据源。也可用于接收端估算 RTP 时钟频率。
发送端数据包计数: 32 位。从开始传输到产生 SR 数据包这段时间内由发送端发送的 RTP 数据包。发送端改变其 SSRC 标识符时重新设置该计数值。
第三部分是 0 个或多个 RR 数据块。数据块的数量由接收最后一个报告以来该发送端所收听的其它数据源的数量确定。 每个 RR 数据块通过接收来自单同步源的 RTP 数据包传输统计信息。由于冲突而使数据源改变其 SSRC 标识符时,
原创力文档


文档评论(0)