RTSP
- 格式:doc
- 大小:46.00 KB
- 文档页数:7
防火墙rtsp协议处理流程及rtspalg应用防火墙是用于保护网络安全的一种网络安全设备。
它可以在网络边界处监控和过滤网络流量,以防止恶意流量进入受保护的内部网络。
防火墙通常通过检查网络流量的源和目标地址、端口号和协议类型等信息来决定是否允许通过。
在RTSP协议的处理流程中,防火墙通常会识别RTSP流量,并根据特定的规则来处理。
以下是一般的RTSP协议处理流程:1.流量识别:防火墙会检查传入的网络流量,以确定是否为RTSP协议的流量。
这可以通过检查流量的目标端口号来完成,通常RTSP协议使用的是TCP端口号5542.状态检查:防火墙会根据其内部的状态表来确定当前连接的状态。
如果是一个新的RTSP连接,防火墙将在状态表中创建一个新的记录。
3.访问控制:防火墙将根据预先定义的访问控制规则来决定是否允许这个RTSP连接通过。
这些规则可以根据源和目标地址、端口号、协议类型等进行配置。
4.NAT(网络地址转换)处理:如果防火墙位于内部网络和外部网络之间,它可能需要执行NAT来修改RTSP流量中的IP地址和端口号,以确保正确的数据传输。
5.RTSPALG(应用层网关)应用:RTSPALG是一种特殊的应用层网关,它可以帮助防火墙处理RTSP流量。
RTSPALG可以解析RTSP协议,并根据协议的要求修改网络流量。
例如,RTSPALG可以帮助解决RTSP流量中的NAT问题,并确保正确的端口映射。
6.数据转发:如果RTSP连接被允许通过,并且不需要任何修改或处理,防火墙将允许RTSP流量通过,并将流量转发到目标设备或服务器。
总结起来,防火墙在处理RTSP协议时,首先识别该流量,并根据预定义的访问控制规则来决定是否允许它通过。
如果需要执行NAT,防火墙会在这一步进行地址和端口转换。
然后,防火墙可以借助RTSPALG来解析和修改RTSP协议,以确保正确的数据传输。
最后,防火墙将转发RTSP流量到目标设备或服务器。
RTSP ALG应用可以帮助解决RTSP协议在NAT环境下的一些问题。
RTSP协议讲解RTSP(Real Time Streaming Protocol)是一种用于控制媒体服务器和媒体播放器之间数据传输的应用层协议。
它可以实现实时音视频流的传输、控制和管理。
RTSP可以被视为一个远程控制协议,用于控制流媒体服务器的播放器和实际的媒体资源之间的交互。
RTSP是一个基于文本的协议,使用RTSP控制消息来进行客户端和服务器之间的交互。
RTSP可以和实际媒体传输协议(如RTP和RTCP)一起使用,并且可以和其他协议(如HTTP和SDP)进行集成。
1.客户端向服务器发送一条消息,请求服务器的一些媒体资源的描述信息。
这个请求可以是一个基本的HTTP请求,也可以是一个定制的RTSP 请求。
2. 服务器回复客户端的请求,返回媒体资源的描述信息。
这个描述信息通常是一个SDP(Session Description Protocol)文件,其中包含了媒体流的编码格式、媒体的位置和时长等信息。
3.客户端解析服务器返回的描述信息,并根据其中的信息建立起媒体流传输的相关参数。
如果需要使用加密或身份验证等安全措施,客户端也会进行相应的处理。
4.客户端向服务器发送一条“PLAY”命令,请求开始播放媒体流。
服务器回复一个包含流媒体数据的RTP数据包。
5.客户端接收到服务器返回的RTP数据包后进行解码和播放。
6.客户端可以发送一条“PAUSE”命令,请求暂停媒体流的播放。
服务器会发送一条“200OK”响应确认暂停命令。
7.客户端可以发送一条“TEARDOWN”命令,请求关闭媒体流的传输。
服务器会发送一条“200OK”响应并关闭流传输。
RTSP主要有以下几个特点:1.实时性:RTSP被设计用于实时流媒体传输,并提供了控制和管理的能力。
2.可扩展性:RTSP可以和其他协议一起使用,并且可以根据需要进行扩展和定制。
3. 面向服务:RTSP可以通过URI(Uniform Resource Identifier)访问特定的媒体资源,并提供了基于请求和响应的交互模型。
RTSP协议实时流传输协议简介RTSP(Real-Time Streaming Protocol)是一种用于实时流传输的网络协议。
它的主要作用是控制多媒体服务器上的流媒体数据,实现实时的传输和控制。
一、RTSP协议的概述RTSP协议是由IETF(Internet Engineering Task Force,互联网工程任务组)制定的一种应用层协议。
它通过控制服务端上的媒体数据流,为客户端提供实时播放、暂停、倒带、快进等控制功能。
二、RTSP协议的特点1. 实时性:RTSP协议能够提供低延迟的实时传输,适用于对实时性要求较高的应用场景,如视频监控、视频会议等。
2. 灵活性:RTSP协议支持多种编解码器、多种传输协议,可以适应不同的网络环境和设备要求。
3. 扩展性:RTSP协议允许通过扩展方式定义新的方法和参数,以满足个性化的业务需求。
三、RTSP协议的工作原理1. 客户端发送请求:客户端通过建立RTSP连接向服务器发送命令请求,如PLAY、PAUSE、SETUP等。
这些命令指示服务器开始、暂停或切换媒体流的传输。
2. 服务器响应请求:服务器接收到客户端的请求后,将相应的媒体流数据传输给客户端,并返回相应的状态码和信息。
3. 媒体流传输:客户端通过UDP或TCP协议与服务器建立数据传输通道,实现实时媒体流的传输。
4. 控制指令交互:客户端与服务器之间进行控制指令的交互,如快进、快退、暂停等,实现对媒体流的控制。
四、RTSP协议与RTP协议的关系RTSP协议通常与RTP(Real-Time Transport Protocol)协议配合使用。
RTP协议负责将媒体数据进行分片并在网络中传输,而RTSP协议则负责控制RTP协议的传输和播放。
两者配合使用,可以实现流媒体的实时传输和控制。
五、RTSP协议的应用场景1. 视频监控:RTSP协议适用于实时监控系统,可以帮助实现远程监控图像的实时传输和控制。
2. 视频会议:RTSP协议可以实现多方视频会议中的视频数据传输和控制,保证会议的实时性和流畅性。
RTSP协议范文RTSP(Real Time Streaming Protocol)是一种用于控制实时流媒体传输的应用层协议。
它提供了用于发送和接收媒体数据的控制信令,可以用于实现实时音视频的传输和控制。
本文将介绍RTSP协议的基本原理、工作过程以及其在网络中的应用。
一、RTSP协议的基本原理二、RTSP协议的工作过程1.建立连接:客户端首先与服务器建立TCP连接。
通常使用默认的RTSP端口(554)进行连接。
客户端发送一个OPTIONS请求给服务器,以了解服务器支持的RTSP方法和协议版本。
2.描述会话:客户端发送一个DESCRIBE请求给服务器,请求指定媒体的描述信息。
服务器返回一个包含媒体描述的响应。
客户端根据描述信息选择合适的媒体流。
3.创建会话:客户端发送一个SETUP请求给服务器,请求创建一个媒体会话。
客户端可以选择单播、组播或混合模式的传输。
服务器返回一个包含传输地址和服务器端口的响应。
4.控制媒体:客户端发送PLAY、PAUSE、TEARDOWN等请求给服务器来控制媒体的播放和暂停。
服务器根据请求对媒体进行相应的操作。
5.关闭会话:客户端发送一个TEARDOWN请求给服务器,请求关闭媒体会话。
服务器返回一个响应来确认关闭。
三、RTSP协议在网络中的应用1.直播和点播:RTSP协议可以用于直播和点播的实时流媒体传输。
客户端可以使用RTSP协议与服务器建立连接,并控制媒体的播放、暂停和停止。
2.视频监控:RTSP协议可以用于视频监控系统中的流媒体传输。
监控摄像头可以将实时视频流通过RTSP协议发送到监控中心,监控中心可以使用RTSP协议进行控制和管理。
3.视频会议:RTSP协议可以用于视频会议系统中的实时流媒体传输。
参与者可以通过RTSP协议建立连接,并进行视频传输和控制。
4.多媒体广告:RTSP协议可以用于多媒体广告系统中的实时流媒体传输。
广告服务器可以使用RTSP协议将广告内容发送到终端设备,并进行控制和管理。
RTSP协议RTSP协议RTSP(Real Time StreamProtocol,实时流协议)是应用级协议,控制实时数据的发送。
RTSP提供了一个可扩展框架,使实时数据,如音频与视频的受控、点播成为可能。
数据源包括现插数据与存储在剪辑中的数据。
该协议目的在于控制多个数据发送连接,为选择发送通道如UDP、多播UDP 与TCP等提供途径,并为选择基于RTP上发送机制提供方法。
一.简介1.目的实时流协议建立并控制一个或几个时间同步的连续流媒体。
尽管连续媒体流与控制流交叉是可能的,通常它本身并不发送连续流。
换言之,RTSP充当多媒体服务器的网络远程控制。
RTSP连接没有绑定到传输层连接,如TCP。
在RTSP连接期间,RTSP用户可打开或关闭多个对服务器的可靠传输连接以发出RTSP请求。
此外,可使用无连接传输协议,如UDP。
RTSP 流控制的流可能用到RTP,但RTSP操作并不依赖用于携带连续媒体的传输机制。
实时流协议在语法和操作上与HTTP 1.1类似,因此HTTP的扩展机制大都可加入RTSP。
协议支持的操作如下:(1)从媒体服务器上检索媒体用户可通过HTTP或其他方法提交一个演示描述。
如演示是多播,演示时就包含用于连续媒体的多播地址和端口。
如演示仅通过单播发送给用户,用户为了安全应提供目的地址。
(2)媒体服务器邀请进入会议媒体服务器可被邀请参加正进行的会议,或回放媒体,或记录其中一部分或全部。
这种模式在分布式教育应用上很有用,会议中几方可轮流按远程控制按钮。
(3)将媒体加到现成讲座中例如,服务器告诉用户可获得附加媒体内容。
这对现场讲座显得尤其有用。
如HTTP 1.1中类似,RTSP请求可由代理、通道与缓存处理。
2.协议特点RTSP有如下特性。
(1) 可扩展性:新方法和参数很容易加入RTSP。
(2) 易解析:RTSP可由标准HTTP或MIME解析器解析。
(3) 安全:RTSP使用网页安全机制。
(4) 独立于传输:RTSP可使用不可靠数据报协议(EDP)、可靠数据报协议(RDP);如要实现应用级可靠,可使用可靠流协议。
RTSP协议详解中文版RTSP(Real Time Streaming Protocol)是一种用于控制实时流媒体的应用层协议,用于在客户端和服务器之间进行媒体资源的传输和控制。
它工作在TCP或UDP上,并且可以与各种流媒体服务器和客户端软件兼容。
RTSP协议的通信模型是基于客户端和服务器之间的请求和响应。
客户端通过发送请求来向服务器发送控制指令,服务器则通过发送响应来告知客户端请求的结果。
请求和响应是基于文本的,并且使用类似于HTTP的格式。
RTSP协议的请求由方法、URL和协议版本组成。
常见的请求方法包括DESCRIBE、SETUP、PLAY、PAUSE、TEARDOWN等。
DESCRIBE方法用于获取媒体资源的描述信息,SETUP方法用于建立与服务器的连接,PLAY方法用于开始播放,PAUSE方法用于暂停播放,TEARDOWN方法用于关闭连接。
RTSP协议的响应由状态码、状态描述和协议版本组成。
常见的状态码包括200 OK,表示请求成功;401 Unauthorized,表示未经授权;404 Not Found,表示资源不存在等。
状态码和状态描述用于告知客户端请求的结果。
RTSP协议还支持使用SDP(Session Description Protocol)来描述媒体资源。
SDP是一种用于描述会话信息的协议,它可以描述媒体资源的类型、媒体格式、传输地址等。
客户端可以使用DESCRIBE方法获取媒体资源的SDP描述,从而可以解析和播放媒体资源。
RTSP协议的优点包括灵活性和互操作性。
由于RTSP协议本身只负责控制,而不直接传输媒体数据,因此可以适用于各种不同的流媒体传输协议,如RTP、RTCP、RTMP等。
同时,RTSP协议还可以与其他媒体相关的协议配合使用,如RTSP over HTTP、RTSP over SSL等。
总结起来,RTSP协议是一种用于实时流媒体控制的协议,它可以实现实时流媒体的连续控制和广泛的交互性。
web播放rtsp方案近年来,由于互联网和移动设备的普及,视频服务已经成为网络上用户最受欢迎的内容之一。
而RTSP(Real Time Streaming Protocol)作为一种用于实时流媒体传输的协议,也在Web播放中发挥着重要的作用。
本文将讨论Web播放RTSP方案以及其在实际应用中的实现。
一、RTSP协议简介RTSP是一种应用层协议,用于控制和传输实时流媒体数据,包括音频和视频。
它允许客户端与服务器之间进行交互,实现流媒体的播放和控制功能。
RTSP不涉及流媒体的传输,而是负责维护流媒体会话的状态、传输控制和控制命令的交换。
二、常用的Web播放RTSP方案1. HTML5 video元素HTML5引入了video元素,使得在Web页面上播放视频变得更加简单。
对于RTSP流媒体,可以通过将RTSP URL转换为支持的格式(如HLS或MPEG-DASH),然后将转换后的URL放入video元素的src属性中实现播放。
这样的方案可以直接在支持HTML5的浏览器上播放RTSP流媒体,但需要服务器端进行转码和格式转换,增加了服务器的负载。
2. 基于插件的方案由于不同浏览器的兼容性问题,一些基于插件的方案也被广泛采用。
常见的插件有Flash和Silverlight,它们可以通过自己的播放器实现对RTSP流媒体的播放。
这种方案需要用户安装相应的插件,同时也受到不同平台和浏览器的限制。
3. WebRTC技术WebRTC(Web Real-Time Communication)是一种支持浏览器之间实时通信的技术,包括音频、视频和数据传输。
借助WebRTC技术,可以实现浏览器端直接与RTSP服务器进行通信,实现流媒体的传输和播放。
这种方案需要浏览器支持WebRTC,并需要RTSP服务器端进行相应的适配。
三、Web播放RTSP方案的实现在实际应用中,根据具体的需求和技术栈选择合适的方案。
如果目标是在常用的HTML5浏览器上播放RTSP流媒体,可以采用第一种方案,将RTSP URL转换为HLS或MPEG-DASH格式以实现播放。
RTSP协议概述RTSP(Real Time Streaming Protocol)是一种网络传输协议,用于控制多媒体服务器和客户端之间的实时数据传输。
它是多媒体流媒体传输的重要协议之一,常被用于实时音视频的传输。
1.端到端控制:RTSP协议允许客户端对服务器上的流媒体进行控制,包括播放、暂停、停止、快进、快退等操作。
客户端可以发送指令请求控制服务器的媒体流。
2.请求响应模式:RTSP协议采用请求-响应模式进行通信。
客户端向服务器发送RTSP请求,服务器根据请求返回响应。
客户端通过解析响应来实现控制和传输。
3.会话管理:RTSP协议支持会话管理,可以在一次连接中多次请求媒体流。
客户端可以在一个会话中控制多个媒体流的播放,而无需多次连接服务器。
4.支持单播和组播:RTSP协议可以支持单播和组播两种传输模式。
单播模式将媒体数据定向传输给单个客户端,而组播模式可以将媒体数据同时发送给多个客户端。
5. 描述和控制媒体流:RTSP协议可以通过SDP(SessionDescription Protocol)描述和控制媒体流。
SDP定义了媒体流的属性和参数,包括媒体类型、编码格式、传输协议等。
RTSP协议可以通过发送SDP描述符来告知客户端媒体流的相关信息。
RTSP协议的应用范围广泛,常用于视频会议、流媒体服务器和客户端之间的通信等场景。
通过RTSP协议,用户可以实现对多媒体流的控制和传输,提供更灵活和实时的体验。
同时,由于RTSP协议的开放性和可扩展性,它也被广泛应用于视频监控、在线教育、视频直播等领域。
总之,RTSP协议是一种用于控制多媒体流媒体传输的协议,通过请求-响应模式实现客户端和服务器之间的交互。
它的优势在于实现了对媒体流的实时控制和传输,以及支持单播和组播等传输模式,为多媒体应用提供了更强大的功能和性能。
RTSP协议详解中文版RTSP(Real Time Streaming Protocol)是一种用于控制媒体流传输的应用层协议。
它在传输数据之前,通过建立控制信道,协商会话参数,完成媒体流的控制和管理。
本文将详细介绍RTSP协议的各个方面。
RTSP协议中,客户端发送请求,服务器回复响应,请求和响应的消息格式基于文本,并且可以使用多种传输协议(如TCP或UDP)进行通信。
RTSP协议定义了丰富的方法(Method),以便客户端可以控制会话的各个方面。
常用的方法包括OPTIONS,DESCRIBE,SETUP,PLAY和TEARDOWN。
OPTIONS方法用于查询服务器支持的方法,客户端可以通过此方法获取服务器的能力信息。
DESCRIBE方法用于获取媒体会话的描述信息,客户端可以通过此方法获得媒体流的信息,例如编码格式和媒体地址。
SETUP方法用于建立媒体流的传输通道,客户端可以通过此方法告知服务器自己的传输能力,并请求服务器向其指定的地址发送数据。
服务器可以根据实际情况来进行响应,例如选择合适的传输协议(如TCP或UDP)以及传输端口。
PLAY方法用于开始播放媒体流,服务器会将实时传输协议(RTP)数据发送给客户端。
客户端可以通过TEARDOWN方法来终止会话,服务器在接收到TEARDOWN请求后会释放资源并关闭连接。
总结起来,RTSP协议是一种用于控制媒体流传输的应用层协议。
它使用文本消息格式,在客户端和服务器之间建立控制信道,并通过方法来实现会话管理和媒体流的控制。
RTSP协议具有可扩展性和灵活性,可以与其他协议结合使用,适用于不同的应用场景。
RTSP协议介绍RTSP概要实时流放协议(Real-Time Streaming Protocol,RTSP)是应用级协议,提供对媒体流的类似于 VCR的控制功能,如播放、暂停、快进等,它的设想描述在RFC 2326文件中。
RTSP 提供了一个可扩展框架,在Internet上为用户提供完整的流媒体服务, 一般与RTP/RTCP 和RSVP等低层协议一起工作。
它主要目标是为单目标广播和多目标广播上的流式多媒体应用提供牢靠的播放性能,以及支持不同厂家提供的客户机和服务机之间的协同工作能力。
RTSP协议希望提供控制多种应用数据传送的功能,提供一种选择传送通道的方法,例如UDP, TCP, IP多目标广播通道,以及提供一种基于RTP协议的递送方法。
正在设计的RTSP 将工作在RTP的上层,用来控制和传送实时的内容。
RTSP能够与资源保留协议一起使用,用来设置和管理保留带宽的流式会话或者广播。
RTSP协议支持以下操作:1、从媒体服务器上检索媒体:用户可通过HTTP或其它方法提交一个演示描述。
如演示是组播,演示时就包含用于连续媒体的组播地址和端口。
如演示仅通过单播发送给用户,用户为了安全应提供目的地址。
2、邀请媒体服务器加入会议:媒体服务器可被邀请参加正进行的会议,或回放媒体,或记录其中一部分。
这种模式在分布式教育应用上很有用,会议中几方可轮流按远程控制按钮。
3、将媒体加到现成讲座中:如服务器告诉用户可获得附加媒体内容,对现场讲座显得尤其有用。
与HTTP/1.1中类似,RTSP请求可由代理、通道与缓存处理。
RTSP协议特点1、可扩展性:新方法和参数很容易加入RTSP。
2、易解析:RTSP可由标准HTTP或MIME解析器解析。
3、安全:RTSP使用网页安全机制。
4、独立于传输:RTSP可使用不可靠数据报协议(UDP)、可靠数据报协议(RDP),如要实现应用级可靠,可以使用可靠流协议。
5、多服务器支持:每个流可放在不同服务器上,用户端自动与不同服务器建立几个并发控制连接,媒体同步在传输层执行。
6、记录设备控制:协议可控制记录和回放设备。
7、流控与会议开始分离:仅要求会议初始化协议提供,或可用来创建唯一会议标识号。
特殊情况下,SIP或H.323可用来邀请服务器入会。
8、适合专业应用:通过SMPTE 时标,RTSP支持帧级精度,允许远程数字编辑。
9、演示描述中立:协议没强加特殊演示或元文件,可传送所有格式类型;但是,演示描述至少必须包含一个RTSP URI。
10、代理与防火墙友好:协议可由应用和传输层防火墙处理。
防火墙需要理解SETUP方法,为UDP媒体流打开一个"缺口"。
11、友好的HTTP:RTSP明智的采用HTTP观念,使现有许多结构都可重用。
结构包括Internet 内容选择平台(PICS)。
由于在大多数情况下控制连续媒体需要服务器状态,RTSP不仅仅向HTTP 添加方法。
12、适当的服务器控制:如用户启动或停止一个流。
13、传输协调:实际处理连续媒体流前,用户可协调传输方法。
14、性能协调:如基本特征无效,必须有一些清理机制让用户决定那种方法没生效。
同时允许用户提出适合的用户界面。
扩展RTSP由于不是所有媒体服务器有着相同的功能,媒体服务器有必要支持不同请求集。
RTSP 可用如下三种方式扩展:1、以新参数扩展。
如用户需要拒绝通知,而方法扩展不支持,相应标记就加入要求的段中。
2、加入新方法。
如信息接收者不理解请求,返回501错误代码(还未实现),并且发送者不能尝试再使用这种方法。
用户可使用OPTIONS方法查询服务器支持的方法。
服务器使用公共响应头列出支持的方法。
3、定义新版本协议。
RTSP除了协议版本号位置,几乎允许改变所有部分。
与其他协议关系RTSP协议负责在服务器和客户机之间创建并控制连续媒体流,其目标是象HTTP协议为用户提供文字和图形服务那样为用户提供连续媒体服务。
因此,RTSP协议的设计在语法和操作上与HTTP协议十分相似,对HTTP的大部分扩展也适用于RTSP。
RTSP与HTTP 相互作用体现在与媒体流内容的初始连接是通过网页进行的。
协议允许在网页服务器与实现RTSP媒体服务器之间存在不同传递点,例如,演示描述可通过HTTP和RTSP检索,也允许独立RTSP 服务器与用户不全依靠HTTP。
当然,RTSP同HTTP也有不同之处。
RTSP与HTTP 的本质差别在于数据发送以不同协议进行。
首先,HTTP是无状态协议,而RTSP协议则是有状态的,因为RTSP服务器必需记录客户的状态以保证客户请求与媒体流的相关性;其次,HTTP是个不对称协议,客户机只能发送请求,服务器只能回应请求,而RTSP是对称的,客户机和服务器都可以发送和回应请求。
RTSP连接没有绑定到传输层连接,在RTSP连接期间,RTSP用户可打开或关闭多个对服务器的可靠传输连接以发出RTSP 请求。
RTSP流控制的多媒体流可能使用RTP,但RTSP 操作并不依赖用于携带连续媒体的传输机制,也即RTSP没有绑定到RTP。
RTSP操作模式在RTSP中,每个演示和与之对应的媒体流都由一个RTSP URL(Uniform Resource Locator)标识。
整个演示与媒体属性都在一个演示描述文件中定义,该文件可能包括媒体编码方式、语言、RTSP URL、目标地址、端口和其它参数。
用户在向服务器请求某个连续服务之前,必须首先从服务器获得该媒体流的演示描述文件以获得必要的参数。
演示描述文件不一定保存在媒体服务器上,用户可使用HTTP、EMail或其它途径获得这个文件。
一个演示可以包含多个媒体流,除媒体参数外,还需确定网络目标地址和端口。
不同的操作模式确定地址和端口的方式也不同:单播:以用户选择的端口号将媒体发送到RTSP请求源。
组播,服务器选择地址:媒体服务器选择组播地址和端口,这是现场直播或准点播放常用的方式。
组播,用户选择地址:如服务器加入正在进行的组播会议,组播地址、端口和密匙由会议描述给出。
连接RTSP请求有几种不同传送方式:1、持久传输连接,用于多个请求/ 响应传输。
2、每个请求/ 响应传输一个连接。
3、无连接模式。
传输连接类型由RTSP URI来定义。
对"rtsp" 方案,需要持续连接,比如TCP连接;对"rtspu"方案,调用RTSP 请求发送,而不用建立连接,比如UDP连接。
RTSP允许媒体服务器给媒体用户发送请求。
然而,这仅在持久连接时才支持,否则媒体服务器没有可靠途径到达用户,这也是请求通过防火墙从媒体服务器传到用户的唯一途径。
RTSP控制通过单独协议发送流,与控制通道无关。
例如,RTSP控制可通过TCP连接,而数据流通过UDP。
因此,即使媒体服务器没有收到请求,数据也会继续发送。
在连接生命期,单个媒体流可通过不同TCP连接顺序发出请求来控制。
所以,服务器需要维持能联系流与RTSP请求的连接状态。
实现RTSP的系统必须支持通过TCP传输RTSP ,并支持UDP。
对UDP和TCP,RTSP 服务器的缺省端口都是554。
当传输选择为RTP,RTCP信息也被服务器通过TCP连接插入。
缺省情况下,RTCP包在比RTP通道高的第一个可用通道上发送。
客户端可能在另一通道显式请求RTCP包,这可通过指定传输头插入参数中的两个通道来做到。
当两个或更多流交叉时,为取得同步,需要RTCP。
RTSP数据可与RTP和RTCP包交叉。
RTSP 消息RTSP是一个基于文本的协议,它使用UTF-8编码(RFC2279)和ISO 10646字符序列,采用RFC882定义的通用消息格式,每个语句行由CRLF结束。
RTSP的消息包括请求和应答两类,请求消息的格式如下所示:RTSP message=Method Request-URL RTSP-Version CRLF<Message Header>CRLFCRLF<Message Body>CRLFMethod是请求命令,Request-URL是请求的媒体资源地址,RTSP-Version是协议版本号。
<Message Header>表示消息头,<Message Body>表示消息内容。
常见的请求命令包括:DESCRIBE、SETUP、GET-PARAMETER、SET-PARAMETER、OPTIONS、REDIRECT、PLAY、PAUSE、TEARDOWN等。
URL的格式为("rtsp:"| "rtspu:")"/ /" host[":"port][abs_ path]Host为合法的互联网主机IP地址域名(十进制表示),与RFC1123\cite {rfc1123}中的定义类似。
端口如果是空的或没有给出时,则假定端口是554。
RTSP应答消息的格式如下所示:RTSP message=RTSP-Version Status-Code Reason-Phrase CRLF<Message Header>CRLFCRLF<Message Body>CRLFStatus-Code是3位状态码,用于表示响应请求时的主机状态,Reason-Phrase是与状态码对应的文本解释。
消息头定义消息内容可选的元信息,如果没有消息内容,表示请求标识的资源。
扩展头机制允许定义附加消息头段,而不用改变协议,但这些段不能假定接收者能识别。
不可识别的头段应被接收者忽略,而让代理转发。
RTSP正是通过服务器端和客户端的消息应答来完成媒体流的创建、初始化(SETUP)、VCR控制和拆线(TEARDOWN)等。
请求命令请求命令表示对资源执行的操作,它区分大小写。
新的请求命令可在将来定义,但不能以ASCII美圆符号$开头。
下面解释几个在服务器流资源的分配与应用上起着重要作用的请求命令:SETUP:让服务器给流分配资源,启动RTSP连接。
PLAY与RECORD:启动SETUP 分配流的数据传输。
PAUSE:临时停止流,而不释放服务器资源。
TEARDOWN:释放流的资源,RTSP连接停止。
RTSP协议操作下面以分布式视频点播系统为例来说明RTSP协议的操作。
分布式视频点播系统是一种为用户提供实时视频点播服务的分布式多媒体系统,它一般由视频服务器、服务器代理、通信网和客户端组成,其结构如下图所示。
图:分布式视频点播系统音频和视频数据存储在视频服务器上,为用户提供视频点播服务的资源。
客户可以是PC机或机顶盒,负责为用户提供服务界面和基本的音频视频处理功能。
由于在分布式视频点播系统中,视频数据分散在不同的视频服务器上,用户需要通过代理服务器获得相应视频服务的相关信息,例如:服务器地址、端口号、视频数据编码格式等,然后才能向该视频服务器请求服务。