实时传输协议
实时传输协议(Real-time Transport Protocol或简写RTP)是一个网络传输协议,用来定义在因特网上传输音频和视频的标准包格式,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的。
实时传输协议的组成
实时传输协议由两个紧密链接部分组成:
RTP:传送具有实时属性的数据;
RTCP:监控服务质量并传送正在进行的会话参与者的相关信息。RTCP 第二方面的功能对于“松散受控”会话是足够的,也就是说,在没有明确的成员控制和组织的情况下,它并不非得用来支持一个应用程序的所有控制通信请求。
实时传输协议的原理
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配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
实时传输协议的特点
1、实时传输协议是应用层协议,与RTP、RSVP一起设计来完全流式服务。
2、实时传输协议有很大的灵活性,可被用在多种操作系统上,它允许客户端和不同厂商的服务平台交互。
3、实时传输协议在体系结构上位于RTP和RTCP之上,它使用RTP完成数据传输。它将流式媒体数据可控制的通过网络传输到客户端。
4、实时传输协议可以保持用户计算机与传输流业务服务器之间的固定连接,用于观看者与单播(Unicast)服务器通信并且还允许双向通信,观看者可以同流媒体服务器通信。
5、提供类似“VCR”形式的例如暂停、快进、倒转、跳转等操作。操作的资源对象可以是直播流也可以是存储片段。
6、实时传输协议是设还提供了选择传输通道,如使用UDP还是多点UDP或是TCP。