RFC1889 协议
文概要
这份文档描述了 RTP 这份实时传输协议。 RTP 提供了端到端的传输功能, 通过 或者单播的方式, 适合于传输如音频、 视频等实时数据。 RTP 并不保证服务质 量, 也没有提供资源预留。 传输的数据通过控制协议 RTCP 的补充来实现乃至大 规模多播传输方式下的监功能。并通过 RTCP 提供一些控制和识别流的功能。 RTP RTCP 被设计独立于传输和网络层。这份协议支持使用 RTP 层的混流 服务器(MIXER)和译流服务器(TRANSLATOR)
1.介绍
RTP 通常和 UDP,同时也可以和其他协议共用来实现传输实时数据, 如果下层 网络允许的话,支持目的地为多个地址的多播传输。
RTP 原先被设计用于多方参加的多媒体味议,但也可以用于如交互摹拟等其他 用。
对于特定的应用, RTP 协议是可扩展的。 所以 RTP 协议只是一个框架, 并且有 定义为如此。在实际应用时, RTP 协议的包头可以被修改来得到所需的功能, 而不是像传统协议那样靠不断修改并使其统一来变得更完善。
正因为上述原因,使用 RTP 协议时,普通需要两种伴有文档:
profile中文
1.配置文档(profile specification document)                                定义传输负载类型编码和与实际负载类型格式的对应关系。对于特定的应用, 定义了对于 RTP 所应做的扩展和修改。
2.负载格式规范文档(payload format specification documents)
定义了特定格式编码的音、视频文件如何在 RTP 协议中传输。
2.一些 RTP 应用实例
2.1 简单的音频会议
IP 多播方式建立的一个会议, 每一个参预者通过某些分配机制 (不在本协议 讨论范围中)得到一个组地址和 2 端口号,一个端口号用来传送 RTP 数据, 音频数据, 另一个用来传输 RTCP 控制数据。 如果需要加密,可根据本协议第

9 章内容生成密钥。
议的每一个参预者每隔 20ms 发送一段音频数据,放在 RTP 包中。 RTP 包又通 UDP 输。 RTP 包头中定义了音频文件的编码方式,以便参预者改变自己 的编方式以
适应网络传输(如编码质量低以适应低带宽传输)。
INTERNET 会产丢包和延迟,所以RTP 包头中包含了时间信息和一个序号, 序号可以用来使接受方预测丢包的情况。
在本例中,由于会议不时有成员加入或者离开,所以每一个接受方会每隔一段时间 告一次接受情况。 这个信息有可能被用来控制编码方式以适应带宽。 当某个成 发出 BYE RTCP 包时,该成员离开该会议。
2.2 音频、视频会议
音频、视频信息通过不同的 RTP 会话(session)传输,即二者是分开传输的。 同时对于每一个传输,都有 2 个端口用来传送 RTP 数据和 RTCP 控制信息。
这样做的目的是因为接受者可能由于带宽限制,只够接受音频数据,或者他只想 接受一种数据。在 5.2 中可得到这方面的详细信息。
2.3  流服务器(MIXER)译流服务(TRANSLATOR)
顾名思义,混流就是把多个进入的流信息混合输出为一个流,一个应用就是适 应不同带宽的需要。
译流服务器就是把入流经过转化变成另一种形式的流传出,一个应用是防火墙 有可能阻挠某些端口的 IP 包,而经过转换的IP 包可顺利通过。
混流服务器(MIXER)和译流服务器 (TRANSLATOR)在第 7 章中有详细介 绍,建议先阅读那部份文档以对其有个全面了解
3定义
RTP 负载(RTP PAYLOAD)
RTP 包中传输的数据,比如音频数据和压缩了的视频数据。
RTP 包  (RTP PACKET):
RTP 包头(HEADER),  组成源服务器(CSRC)列表(见下)和传输数据构 成。普通来说一个下层协议如UDP 的包中仅包含一个 RTP 包,但也可以通过封
方式包含几个 RTP 包。
RTCP (RTCP PACKET):

一个包含控制信息包,同样由包头和后面结构化的数据组成,结构化的数 据根据 RTCP 包的类型不同而有所不同(详见第 6 章)。典型的, RTCP 包的传 输是把几个包放在一起组成一个下层协议的包来传输的。
端口  (PORT):
统意义上网络的端口。
输地址(TRANSPORT ADDRESS):
由地址和端口号组成,如一个 IP 地址和 UDP 端口。数据由传送方地址传到 收方地址。
RTP 会话  (RTP SESSION):
个参预者通过 RTP 协议通信, 这就形成为了一个 RTP 会话。 对于每一个参预者 RTP 会话被一个地址和一对端口号定义。 在多媒体味话中, 不同的流建立 不同的 RTP 会话(如:音频的会话,视频的会话)。每种不同的会话都有自己的 RTCP 不同的会话靠不同的传输地址来区分。
同步化(SYNCHRONIZATION SOURCE):
SSRC,可理解信号的源头,如一个麦克风输入或者一个摄像头输入,在整 会话中有一个独一无二的标识符。 从它输出的信号都经过它的同步处理, 以使 接受方能实现对源的控制, 如回放功能。 若一个服务器有多个输入, 如多个摄像 头信,那末每一个摄像头都有一个 SSRC SSRC 标识符靠 RTCP 绑定。
供流源(CONTRIBUTING SOURCE  ):
CSRC,经由混流服务器(MIXER)输出的一个流通常由多个分流汇成,每 个分流都有一个供流源。 (详见第 8 )
系统(END SYSTEM):
个能产生(也可以接受)需要传输的RTP 包的进程。在一个会话中可以由 一个或者几个同步化源组成,但通常仅由一个组成
流服务器(MIXER):
从一个或者多个源接受信息,然后可能对数据类型作适当修改,混合接受流, 一个新数据流的实体。 从其产生的数据流的 SSRC 受到修改, 把混流服务器 SSRC 作为新的同步化源标识符。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。