RTSP(Real Time Streaming Protocol)实时流协议,是用来控制声音或影像的多媒体串流协议,并允许同时多个串流需求控制,传输时所用的网络通讯协定并不在其定义的范围内,服 务器端可以自行选择使用TCP或UDP来传送串流内容.用于多媒体数据流的控制,如播放,暂停等。
RTP( Real-time Transport Protocol)实时传输协议,是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议和RTP控制协议RTCP一起使用,而且它是建立在UDP协议上的。
RTCP(Real- time Transpor、Control Protocol)实时传输控制协议,是实时传输协议(RTP)的一个姐妹协议.RTCP本身并不传输数据,但和RTP一起协作将多媒体数据打包和发送。 RTCP定期在流多媒体会话参加者之间传输控制数据。RTCP的主要功能是为RTP所提供的服务质量(Quality of Service)提供反馈。
SDP(Session Description Protocol)会话描述协议,
2.与http的关系
RTSP协议非常类HTTP协议。它们都使用纯文本来发送信息,rtsp协议的语法和HTTP类。Rtsp这样设计是为了能够兼容使用以前写的HTTP协议分析代码 。
它们主要的区别是HTTP协议没有状态, http协议在发送一个命令后,连接会断开,而且命令之间没有依赖性。
RTSP的命令需要知道现在正处于一个什么状态,rtsp的命令总是按照顺序来发送,某个命令总在另外一个命令之前要发送。Rtsp不管处于什么状态都不会去断掉连接。
HTTP 协议默认使用80端口,RTSP 默认使用554端口。
RTSP协议的数据发送不占用协议带宽,RTP 可也认为是介于传输层和应用层之间的,默认是把UDP作为传输协议,可以看成是传输层的一个子层。
2.TCP与UDP
UDP 无连接,不保证包的顺序和质量,适用于实时数据
TCP 有连接,三次握手,保证顺序质量
这个关系简单的说可以理解成:
IP--->TCP--->TCP应用层,如http,ftp,telnet等,保证可靠传输
IP--->UDP--->RTP--->应用层,如用在IP电话的音视频流传输。
如果您的应用程序并不关心损坏或丢失的数据包,你不必承担额外的开销,提供额外的可靠性,您可以选择的UDP代替。
RTP/RTCP/UDP
用于音频
视频媒体,而
TCP
用于数据和控制信令的传输
RTP/RTCP相对于底层传输层,和RTSP,SIP等上层协议一起可以实现视频会议,视频直播等应用。
rtsp发起/终结流媒体(通过sdp) rtp传输流媒体数据 rtcp对rtp进行控制,同步。
RTSP的请求主要有DESCRIBE,SETUP,PLAY,PAUSE,TEARDOWN,OPTIONS等,顾名思义可以知道起对话和控制作用 RTP/RTCP是实际传输数据的协议 RTP传输音频/视频数据,如果是PLAY,Server发送到Client端,如果是RECORD,可以由Client发送到Server RTCP包括Sender Report和Receiver Report,用来进行音频/视频的同步以及其他用途,是一种控制协议
RTSP的对话过程中SETUP可以确定RTP/RTCP使用的端口,PLAY/PAUSE/TEARDOWN可以开始或者停止RTP的发送,等等
RTSP响应头中
Content-Type: application/sdp表示响应体是sdp协议数据.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47559-1.html
喜欢刘诺英的歌声