Caching Techniques for Streaming Media

以前还写过文章,说web渐进下载和流媒体的区别, 说了一大堆,其实现在一想还是没有抓住重点,其实关键还是模式,http这些都是属于请求响应模式的,而流本质上是一种推送的模式。

流媒体是有时间约束的媒体数据流。既不是mp3等的下载播放,也和一些持续的数据流有区别,比如自动化设备的系统监测数据。

有的流媒体用户能忍受开始前的延迟,比如直播,但是有的应用不能,比如视频会议等。

Multicast 在这里很常用,但是运营商很少在全网部署multicast,现实是仅仅某些子网支持multicast,这些子网形成了一些孤岛。MBONE, the Internet Multicast Backbone 是一个临时的解决方案,它可以将多播包通过隧道方式穿过单播的router传播。MBONE本身构成一个虚拟网络。Multicast Routing Protocol (DVMRP) [RFC 1075] 是用于MBONE router的协议 ,UNIX 上的mrouted 程序也实现了这个协议。

Although the HTTP protocol is well suited for transferring the text and images
of Web pages it is not a good choice for streaming media. HTTP running over
TCP enforces data integrity without regard to timeliness and is not well suited
to meet the time-critical needs of multimedia. Also, HTTP couples the signaling
channel with the bearer channel, reducing the flexibility of the signaling. Finally,
the signaling capabilities of HTTP do not support random access or time-based
access into a stream, nor precise timing control. When HTTP is used to deliver
streaming media the data downloads through one application thread while
another application thread begins to display what has been received. The user
has very little control of the download.

HTTP在internet世界是一个广泛使用的协议,但是本身却有很多不适合流媒体的地方:

1. HTTP基于TCP(其实也可以基于其他reliable协议,比如sctp), TCP只关心数据完整,却不关心是否合乎timelines.对于一些时间关键性的多媒体应用是不合适的。

2. HTTP的控制通道(信号)和数据通道都是在一起的,降低了信号机制的灵活性。

3. HTTP不支持随机访问(其实还是可以,只不过断开重新请求range内容) 和 基于时间的流访问,也不能进行精确的时间控制。

streaming media 常使用 RTP/RTCP/RTSP和SMIL.

With this pair of protocols, RTP is the bearer channel and RTCP is the separate signaling channel.

4.2.1 The Real-Time Transport Protocol (RTP) [RFC 1889]

目的:

1. 端到端的网络分发

2. 通过单播或者多播传输实时数据

特性:

payload-type identification,sequence numbering, timestamping, and delivery monitoring.

Both the RTP andUDP protocols contribute parts of the transport protocol functionality.??

4.3 Caching Techniques for Streaming Media

流媒体有实时性和时间同步性的要求,导致我们使用了不同的协议来传输和控制他们,流会比文本和图片更加的消耗空间。存储流对象会很快的消耗完为静态web对象设计的cache空间。因此一个可扩展的cache方案只能存储每个流的一部分。

四种技术:

audio/video smoothing, fast prefix transfer,object segmentation and cache replacement, and dynamic caching.

 posted on 2007-12-15 17:26  加菲猫  阅读(346)  评论(0编辑  收藏  举报