实时流协议RTSP
RTSP[[[] Schulzrinne,H., Rao.Real time streaming protocol (RTSP) RFC 2326[J]. IETF .1998]]由RealNetworks、Netscape Communications和哥伦比亚大学共同开发而成。1998年5月,IETF作为建议标准发布。RTSP是从HTTP协议框架上继承而来,拥有着HTTP的大部分特性。RTSP(Real Time Stream Protocol,实时流协议)是应用级协议,控制实时数据的发送。RTSP提供了一个可扩展框架,可以建立、传输和控制一条或多条时间同步的媒体流,如音频流和视频流,使实时数据,如音频与视频的受控、点播成为可能。
RTSP协议本身不传输连续的媒体流,还与媒体流交错传输控制流。对于多媒体服务器,RTSP 协议起着“网络远程控制”的作用。RTSP协议所控制的媒体流的集合,由一种称为“表示描述”的格式所定义,一般采用RFC2327中详细说明的会话描述协议SDP(Session Description Protocol)所定义的格式。
RTSP中并没有“连接”(connection)的概念,服务器与客户机之间维持一个唯一标识的“会话”(Session)。这个会话是独立于传输层的,在一个会话中,客户端可以建立或取消多次和服务器之间的传输层的连接,来提交请求。
RTSP协议为选择发送通道如UDP、多播UDP与TCP等提供途径,并为选择基于RTP的发送机制提供方法。
实时流协议(RTSP)建立并控制一个或几个时间同步的连续流媒体。RTSP本身通常并不发送连续媒体流。换言之,RTSP充当多媒体服务器的网络远程控制。
RTSP实时流协议支持流媒体的操作有:
1)检索媒体服务器上的媒体
用户向媒体服务器可以通过 HTTP 或其它手段提交一个演示请求。若演示属于组播,则就包含用于连续媒体的组播地址和端口;若演示是单播发送到用户,则用户为了安全应该提供目的地址。
2)邀请媒体服务器进入会议
媒体服务器可以参加正在进行的会议,或记录其中的全部(或部分),或被邀请回放媒体。对于这种模式主要应用在分布式教育应用上,在会议中的几方可轮流进行远程控制。
3)在现场直播或讲座中添加新媒体
在现场直播或讲座中当有新的媒体加人时,媒体服务器则告诉用户有新的媒体加入,告知用户可以获取。
在多媒体流传输的过程中,播放器和服务器之间通过交换RTSP消息来实现资源描述信息的获取、连接的建立、播放控制等功能。RTSP协议采用请求/应答模式,服务器与客户端的简单交互如图3-1所示。
图3-1 RTSP交互过程示意图
RTSP定义了OPTIONS、DESCRIBE、PLAY等命令方法用于服务器端与客户端的交互,为流媒体提供诸如播放、暂停、快进等远程控制功能,极大地丰富了流媒体的应用领域和实用范围。RTSP定义的方法如表3-3所示: