流媒体技术笔记(协议相关)
1、RSVP:资源预留协议
由于音频和视频数据流比传统数据对网络的延时更敏感,要在网络中传输高质量的音频、视频信息,除带宽要求之外,还需其它更多的条件。RSVP(ReSource reserVe Protocol)是Internet上的资源预留协议,使用RSVP预留一部分网络资源(即带宽),能在一定程度上为流媒体的传输提供QoS。资源预留协议使Internet应用传输数据流时能够获得特殊服务质量,它同路由协议协同工作,建立与路由协议计算出路由等价的动态访问列表,RSVP属OSI七层协议栈中传输层。RSVP的流程是单一的,并不区分发送方和接收方,且支持单播和组播,适应于可变成员个数和路由。
相关RFC:
a) rfc2205 : Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification
http://www.ietf.org/rfc/rfc2205.txt
b) rfc2209 : Resource ReSerVation Protocol (RSVP) -- Version 1 Message Processing Rules
http://tools.ietf.org/rfc/rfc2209.txt
2、RTP:实时传输协议
RTP是针对Internet上多媒体数据流的一个传输协议, 由IETF(Internet工程任务组)作为RFC1889发布。RTP被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP的典型应用建立在UDP上,但也可以在TCP或ATM等其他协议之上工作。RTP本身只保证实时数据的传输,并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。
相关RFC:
a) rfc1889 : RTP: A Transport Protocol for Real-Time Applications http://www.ietf.org/rfc/rfc1889.txt
b) rfc1890 : RTP Profile for Audio and Video Conferences with Minimal Control
http://www.ietf.org/rfc/rfc1890.txt
c) rfc3550 : RTP: A Transport Protocol for Real-Time Applications
http://www.ietf.org/rfc/rfc3550.txt
d) rfc3551 : RTP Profile for Audio and Video Conferences with Minimal Control
http://www.ietf.org/rfc/rfc3551.txt
3、RTCP:实时传输控制协议
RTCP(Real-timeTransportControlProtocol)和RTP一起提供流量控制和拥塞控制服务,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
相关RFC:
参考RTP的RFC
4、RTSP:实时流传输协议
RTSP(Real Time Streaming Protocol)协议定义了如何有效地通过IP网络传送多媒体数据,是一种客户端到服务器端的多媒体描述协议。RTSP是一个非常类似于HTTP的应用层协议,是由RealNetworks和Netscape以及哥伦比亚大学共同提出的。它是从RealNetworks的"RealAudio" 和 Netscape的 "LiveMedia"的实践和经验发展来来的。第一份RTSP协议是由IETF 在1996年8月9日正式提交后作为INTERNET的标准,在此后此协议经过了很多明显的变化。它的应用现在是广泛的,APPLE、IBM、Netscape、 Silicon Graphics、VXtreme 还有其它公司都宣称它们的在线播放器支持RTSP协议,不过微软一直都坚持不支持此协议,不知道这种局面还会持续多久。
相关RFC:
a) rfc2326 : Real Time Streaming Protocol (RTSP)
http://www.ietf.org/rfc/rfc2326.txt
b) rfc6064 : SDP and RTSP Extensions Defined for 3GPP Packet-Switched Streaming Service and Multimedia Broadcast/Multicast Service
http://www.ietf.org/rfc/rfc6064.txt
5、SDP:会话描述协议
SDP(Session Description Protocol)是一个用来描述多媒体会话的应用层控制协议,它是一个基于文本的协议,用于会话建立过程中的媒体类型和编码方案的协商等。
相关RFC:
a) rfc2327 : SDP: Session Description Protocol
http://tools.ietf.org/rfc/rfc2327.txt
b) rfc3266 : Support for IPv6 in Session Description Protocol (SDP)
http://tools.ietf.org/rfc/rfc3266.txt
c) rfc4566 : SDP: Session Description Protocol
http://tools.ietf.org/rfc/rfc4566.txt
6、MMS:微软流媒体服务协议
MMS协议:MMS(MicrosoftMediaServerprotocol)是一种串流媒体传送协议,用来访问并流式接收Windows Media服务器中.asf文件的一种协议。
7、RTMP(RTMPE/RTMPS/RTMPT):Adobe实时消息协议簇
8、RTMFP:Adobe实时消息流协议(p2p)
9、HLS:HTTP直播流协议
HLS 指HTTP Live Streaming,Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件,TS媒体分片文件和key加密串文件。