10033.RTP:Real Time Transport Protocol

实时传输协议 RTP 为数据提供了具有实时特征的终端对终端传送服务,如在组播或单播网络服务下的交互式式视频音频或仿真数据。应用程序在 UDP 上执行 RTP 以便使用其多路技术和检验和服务;还有传输协议函数的协议捐助部分。但是 RTP 可以与其它适合的底层网络或传输协议共同使用。如果底层网络提供组播分配,那么 RTP 可以使用该组播分配支持多路目标文件的数据传输。

  RTP 本身并没有为及时传送提供任何机制或其它质量服务 QoS 保证,但它依赖于低层服务去实现这一过程。RTP 并不能保证传送过程或防止无序传送,也不能确定底层网络的可靠性。RTP 实行有序传送,RTP 中的序列号允许接收方重建发送方的包序列,同时序列号也能用于决定适当的包位置,例如在视频译码中,不需要顺次解码。

  RTP 由两个相近链接部分组成:

  • RTP:传送具有实时属性的数据;
  • RTP 控制协议 RTCP:监控服务质量并传送正在进行的会话参与者的相关信息。RTCP 第二方面的功能应用于松散受控会话是足够的,也就是说,在没有明确的控制成员和组织的情况下,它并不用来支持一个应用程序的所有控制通信请求。

协议结构

1238916bit
VPXCSRC CountMPayload Type
Sequence numberTimestamp
SSRCCSRC (variable 0 – 15 items 32bits each)

  • V ― 版本。识别 RTP 版本。
  • P ― 间隙(Padding)。设置时,数据包包含一个或多个附加间隙位组,其中这部分不属于有效载荷。
  • X ― 扩展位。设置时,在固定头后面,根据指定格式设置一个扩展头。
  • CSRC Count ― 包含 CSRC 标识符(在固定头后)的编号。
  • M ― 标记。标记的解释由 Profile 文件定义。允许重要事件如帧边界在数据包流中进行标记。
  • Payload Type ― 识别 RTP 有效载荷的格式,并通过应用程序决定其解释。Profile 文件规定了从 Payload 编码到 Payload 格式的缺省静态映射。另外的 Payload Type 编码可能通过非 RTP 方法实现动态定义。
  • Sequence Number ― 每发送一个 RTP 数据包,序列号增加1。接收方可以依次检测数据包的丢失并恢复数据包序列。
  • Timestamp ― 反映 RTP 数据包中的第一个八位组的采样时间。采样时间必须通过时钟及时提供线性无变化增量获取,以支持同步和抖动计算。
  • SSRC ― 同步源。该标识符随机选择,旨在确保在同一个 RTP 会话中不存在两个同步源具有相同的 SSRC 标识符。
  CSRC ― 贡献源标识符。识别该数据包中的有效载荷的贡献源。

相关协议RTCPRTSPUDPTCPIP
组织来源RTP 由 IETF(www.ietf.org)定义在 RFC 3550和3551中。
相关链接http://www.javvin.com/protocol/rfc3550.pdf: RTP: A Transport Protocol for Real-Time Applications
http://www.javvin.com/protocol/rfc3551.pdf: RTP Profile for Audio and Video Conferences with Minimal Control

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值