欢迎访问 水平网    今天是:2018年06月22日 注册 | 登录 | 订阅 | 收藏
>> 网络技术 >> VOIP技术 >> 实时传输协议RTP与RTCP
推荐文章
热点文章
专题
JQuery框架
Prototype.js
HTML5

实时传输协议RTP与RTCP

作者:未知,  来源:网络,  阅读:703,  发布时间:2014-09-01 【放入收藏夹
rtp(real-timetransportprotocol)是用于internet上针对多媒体数据流的一种传输协议。rtp被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp通常使用udp来传送数据,但rtp也可以在tcp或atm等其他协议之上工作。当应用程序开始一个rtp会话时将使用两个端口:一个给rtp,一个给rtcp。rtp本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠rtcp提供这些服务。通常rtp算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分。实时传输控制协议rtcp。rtcp(real-timetransportcontrolprotocol)和rtp一起提供流量控制和拥塞控制服务。在rtp会话期间,各参与者周期性地传送rtcp包。rtcp包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp和rtcp配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。

6.2.1 rtp数据传输协议

 rtp提供端对端网络传输功能,适合通过组播和点播传送实时数据,如视频、音频和仿真数据。rtp没有涉及资源预订和质量保证等实时服务,rtcp扩充数据传输以允许监控数据传送,提供最小的控制和识别功能。rtp与rtcp设计成独立传输和网络层。

2.1.1 rtp固定头
 rtp 头格式如下:
 -----------------------------------------------------------------------------------------------
 |v=2|p|x| cc |m| pt | 系列号 |
 -----------------------------------------------------------------------------------------------
 | 时标 |
 -----------------------------------------------------------------------------------------------
 | 同步源标识(ssrc) |
 -----------------------------------------------------------------------------------------------
 | 作用标识 (csrc) |
 | .... |
 -----------------------------------------------------------------------------------------------

 开始12个八进制出现在每个rtp包中,而csrc标识列表仅出现在混合器插入时。
 2.1.2 复用 rtp 连接
 为使协议有效运行,复用点数目应减至最小。rtp中,复用由定义rtp连接的目的传输地址(网络地址与端口号)提供。例如,对音频和视频单独编码的远程会议,每个媒介被携带在单独rtp连接中,具有各自的目的传输地址。目标不在将音频和视频放在单一rtp连接中,而根据ssrc段载荷类型进行多路分解。使用同一ssrc ,而具有不同载荷类型的交叉包将带来几个问题:
 如一种载荷类型在连接期间切换,没有办法识别新值将替换那一个旧值。
ssrc定义成用于标识单个计时和系列号空间。如媒体时钟速率不同,而要求不同系列号空间以说明那种载荷类型有丢包,交叉复用载荷类型将需要不同计时空间。
 rtcp发送和接收报告可能仅描述每个ssrc的计时和系列号空间,而不携带载荷类型段。
 rtp混合器不能将不兼容媒体流合并成一个流。
 在一个rtp连接中携带多个媒介阻止几件事:使用不同网络路径或网络资源分配;接受媒介子集。
对每种媒介使用不同ssrc,但以相同rtp连接发送可避免前三个问题,但不能避免后两个问题。

2.1.3 对rtp头特定设置的修改
 可以认为,现用rtp数据包头对rtp支持的所有应用类共同需要的功能集是完整的。然而,为维持alf设计原则,头可通过改变或增加设置来裁剪,并仍允许设置无关监控和记录工具起作用。标记位与载荷类型段携带特定设置信息,但由于很多应用需要它们,否则要容纳它们,就要增加另外32位字,故允许分配在固定头中。包含这些段的八进制可通过设置重新定义以适应不同要求,如采用更多或更少标记位。如有标记位,既然设置无关监控器能观察包丢失模式和标记位间关系,我们就可以定位八进制中最重要的位。
 其它特殊载荷格式(视频编码)所要求的信息应该携带在包的载荷部分。可出现在头,总是在载荷部分开始处,或在数据模式的保留值中指出。如特殊应用类需要独立载荷格式的附加功能,应用运行的设置应该定义附加固定段跟随在现存固定头ssrc之后。这些应用将能迅速而直接访问附加段,同时,与监控器和记录器无关设置仍能通过仅解释开始12个八进制处理rtp包。如证实附加功能是所有设置共同需要的,新版本rtp应该对固定头作出明确改变。
TGAS:实时传输协议RTPRTCP
评论【共有0条评论】查看所有评论
称呼:(*)   邮箱:   QQ:   验证码: 看不清楚?点击刷新验证码