本文主要介紹流媒體傳輸技術,包括傳輸過程、快取系統和傳輸協定。
概述
傳輸過程
- 用戶選擇某一流媒體服務後,Web瀏覽器與Web伺服器之間使用HTTP/TCP交換控制信息,以便把需要傳輸的實時數據從原始信息中檢索出來。
- Web瀏覽器啟動音視頻客戶程式,使用HTTP協定從Web伺服器檢索相關參數對音視頻客戶程式初始化,這些參數可能包括目錄信息、音視頻數據的編碼類型或與音視頻檢索相關的伺服器地址。
- 音視頻客戶程式及流媒體伺服器運行實時流協定,以交換音視頻傳輸所需的控制信息,實時流協定提供執行播放、快進、快倒、暫停及錄製等命令的方法。
- 流媒體伺服器使用RTP/UDP協定將音視頻數據傳輸給音視頻客戶程式,一旦音視頻數據抵達客戶端,音視頻客戶程式即可播放輸出。後續傳給客戶端的音視頻數據會被客戶端快取起來,待播放後再從快取中刪除。
快取系統
傳輸協定
- 實時傳輸協定RTP(Real-time Transport Protocol)主要是用於網際網路上針對流媒體數據流的一種傳輸協定。其目的是提供時間信息和實現流同步。RTP 通常使用UDP 來傳送數據。RTP 本身並不能為按順序傳送數據包,不能提供可靠的傳送機制,也不能提供流量控制或擁塞控制,它依靠RTCP 提供這些服務。
- 實時傳輸控制協定RTCP(Real-time Transport Control Protocol)為RTP提供流量控制和擁塞控制服務,是RTP的控制協定。它周期性地與所有會話的參與者進行通信,並採用和傳送數據包相同的機制來傳送控制包。RTCP包中含有已傳送的數據包數量和丟失的數據包數量等統計資料,因此伺服器可以利用這些信息動態地改變傳輸速率,甚至改變有效載荷類型。RTP 和RTCP 配合使用,它們能以有效的反饋和最小的開銷使傳輸效率最佳化,因而特別適合網上的流媒體傳輸。
- 資源預留協定RSVP(Resource Reservation Protocol)是網路中預留所需資源的傳送通道建立和控制的信令協定,它能根據業務數據的QoS要求和頻寬資源管理策略進行頻寬資源分配,在IP網上提供一條完整的路徑。RSVP協定是通過預留網路資源建立從傳送端到接收端的路徑,使得IP網路能提供接近於電路交換質量的業務。但是RSVP沒有提供多媒體數據的傳輸能力,它必須配合其它實時傳輸協定來完成多媒體通信服務。
- 實時流協定(RTSP)就是用於控制具有實時特徵數據傳輸的套用層協定。RTSP可建立和控制一個或多個音頻和視頻連續媒體的時間同步流。雖然它可能會將控制流插入連續媒體流,但它本身並不傳送連續媒體流。RTSP用於通過網路對媒體伺服器進行遠程控制。RTSP伺服器維護會話的狀態信息,從而通過RTSP的狀態參數可對連續媒體流的回放進行控制(如暫停等)。
- 多用途網際網路郵件擴充協定(MIME)是SMTP協定的擴展,不僅用於電子郵件,還能用來標記在網際網路上傳輸的任何檔案類型。瀏覽器也是通過MIME來識別流媒體的類型,並調用相應的程式或外掛程式來處理。IE等常用的瀏覽器都提供了很多的流媒體支持。