行政院國家科學委員會補助專題研究計畫成果報告
※※※※※※※※※※※※※※※※※※※※※※※※※
※ ※
※ MPEG 多媒體傳輸網路機制、協定及模擬測試 ※
※ 環境的分析設計 ※
※ ※
※※※※※※※※※※※※※※※※※※※※※※※※※
計畫類別:□個別型計畫 □整合型計畫
計畫編號:NSC 92-2219-E-009-006
執行期間: 92 年 8 月 1 日至 93 年 7 月 31 日
計畫主持人:蔡淳仁
本成果報告包括以下應繳交之附件:
□赴國外出差或研習心得報告一份
□赴大陸地區出差或研習心得報告一份
□出席國際學術會議心得報告及發表之論文各一份
□國際合作研究計畫國外研究報告書一份
執行單位:國立交通大學資訊工程系
中 華 民 國 93 年 10 月 1 日
9
9行政院國家科學委員會專題研究計畫成果報告
MPEG 多媒體傳輸網路機制、協定及模擬測試環境的分析設計
Design and Analysis of MPEG Multimedia Transport
Mechanisms, Protocols, and Network Simulator
計畫編號:NSC 92-2219-E-009-006
執行期限:92 年 8 月 1 日至 93 年 7 月 31 日
主持人:蔡淳仁 國立交通大學資訊工程系
計畫參與人員:何健鵬、陳京何、曾建堂、游雅惠 國立交通大學資訊工
程系
一、中文摘要 目前最受廣泛使用的多媒體傳輸系統平台 包 括 Microsoft 的 Media Platform 和 RealNetwork 的 Helix Platform.但是這兩種 系統所採用的主要核心技術均非公開的國 際標準.目前有許多國際組織都在致力於 製定公開標準技術的多媒體傳輸服務.其 中,進行最積極的包括 3G 的標準制訂單位 3GPP 和互聯網的多媒體串流服務標準制 訂組織 ISMA.另外,MPEG 也正在製訂一 個 通 用 的 多 媒 體 傳 輸 架 構 MPEG-21 . MPEG-21 的標準和 3GPP 及 ISMA 所製訂 的標準主要差異在於後二者的標準是針對 特定的網路架構和客戶端功能而設計,因 而 在 實 作 上 的 技 術 大 抵 已 有 定 案 . 而 MPEG-21 則採取較高層、較抽象的架構設 計.如何將 MPEG-21 的概念實現則仍是一 個十分有潛力的研究題目.另外 MPEG-21 試圖涵蓋的技術範圍也比較大.本計畫的 主要目的在研究及設計在 MPEG-21 的架 構下適用於 MPEG 多媒體數位內容的封包 交換式網路傳輸機制、協定、及模擬測試 環境。 關鍵詞:MPEG-4、MPEG-21、多媒體串流 傳輸、封包交換式網路多媒體通訊、數位 內容傳輸、多媒體網路模擬 AbstractToday, the most popular multimedia distribution platforms are Microsoft Media Platform and RealNetwork Helix Platform.
However, these two systems are based on proprietary core technology, instead of open standards. There are many international organizations working on the standardization of multimedia communication services. Among which, the most successful organizations are the 3G mobile standards committee 3GPP and the Internet Multimedia Streaming Alliance (ISMA). In addition, MPEG is also defining a universal multimedia access infrastructure, MPEG-21. MPEG-21 is very different from those standards defined by 3GPP and ISMA in that it uses a very abstract approach, instead of addressing a specific network systems and a class of clients. Both 3GPP and ISMA streaming services standards have finalized the implementation details, while there are still many open issues for MPEG-21. Furthermore, MPEG tries to address a much broader scope than those defined by 3GPP and ISMA. The goal of this project is to study and design MPEG multimedia digital content transport mechanisms, protocols, and a simulation test environment for packet-switched networks under the scope of MPEG-21.
Keywords: MPEG-4, MPEG-21, multimedia streaming, packet-switched network multimedia
communications, digital content transport, multimedia network simulation
二、緣由與目的 一個完整的分散式數位多媒體系統含 蓋的範圍極廣,包括數位內容的製作、數 位資料庫的建立、使用者收費機制、智財 權保護機制、媒體傳輸伺服器、應用服務 介面,和媒體接收播放器的設計等等.為 了能有一個統一的國際標準能達到建構互 通的分散式多媒體系統的目的,MPEG 國 際標準組織在西元 2001 年開始製訂一個新 的國際標準:MPEG-21. 由於整個系統的重點在於能橫跨不同 的 網 路 架 構 和 在 不 同 的 客 戶 端 設 備 上 (PC、手機、PDA 等等)提供一致而且最 高品質的多媒體傳輸播放服務,因此傳輸 系統的設計必須能動態的根據不同的平台 調整.簡言之,一個數位多媒體傳輸系統 的架構必需包含流量控制和容錯機制.另 外,依據客戶端的能力來調整媒體資料流 品質的能力也是十分重要的.本計畫的主 要目的在研究以 MPEG 的多媒體 codecs 及 IETF 的通訊傳輸協定為核心的系統在 不同的網路之下的流量控制和容錯機制. 另外,本計畫也會發展一個完整的多媒體 IP 網路測試模擬環境以提供多媒體應用系 統進行效能分析.這樣的網路模擬器,對 於多媒體傳輸系統的設計,具有極高的價 值.特別是多媒體通訊協訂,必須能有相 當的強軔性,以對付一個不可靠的通訊管 道所有可能產生的資料誤失.在發展系統 的過程中,一個可控制的完整的通訊網路 模擬器,將可幫助鎖定需要加強的部份. 另外,也可以有利於改進現有的通訊協 訂,以及幫助分析多媒體網路一些參數的 調整對整個傳輸系統設計會產生的影響. 三、結果與討論 本 計 畫 主 要 的 重 點 之 一 在 於 制 定 MPEG-21 的多媒體傳輸共通測試平台.目 前此平台標準已經成為 Committee Draft (CD),在短期內就會成為國際標準[1] .在 這個整合計畫下,總計畫團隊為 MPEG 所 設計的開放原始碼包含了完整的可調式媒 體伺服器、網路摸擬器、及媒體播放器. 詳細的架構請參考[1] (附件一)中只針對 系統的設計作大略的介紹. 首先,我們設計的 MPEG-21 的多媒 圖一、ISO/IEC TR21000-12 的多媒體傳輸共通測試平台的架構 RTSP mux with terminal& user XDI Decoder Media Channels (RTP, UDP) Control Channel (RTSP,TCP) RTSP mux with SDP Packet
Buffer Output Buffer
Network Emulator Offline Media Encoder TCP Network Profile Server Media Database Stream Buffer Network Interface UDP UDP Client TCP Client Controller Client Controller control RTP/ RTCP RTP/ RTCP RTSP demux with terminal& user XDI Packet Loss Monitor QoS Decision QoS Decision terminal & user XDI
NISTnet NISTnet Network Interface media Packet Buffer Packet Buffer media 1 1 CDI, XDI, IOD network XDI media Server Controller IPMPFilter (PostDIA) IPMPFilter (PreDecoder) IPMPFilter (PostDecoder) User Characteristics control RTSP demux with SDP Streamer Streamer DIA DIA network XDI
體傳輸共通測試平台的架構如圖一.其中 包含以下主要元件:
1. 多媒體伺服器.目前媒體伺服器可以支 援 MPEG-4 ASP 和 FGS 的 video 及 BSAC 的 audio.整個媒體伺服器又可 以分成五個子模組.首先是伺服器控制 模組 (Server Controller),這是用來負責 ISMA [15] 相容的 RTSP [8] 控制協定 的 機 制 . 其 次 是 串 流 傳 輸 模 組 (Streamer),根據網路狀況的好壞,串流 傳輸模組會估算出要從原始媒體資料 中抽取出多少流量的資料,並呼叫數位 內容調適模組(DIA),最後將 DIA 模組 傳回的資料加以切成封包,並在適當的 時機傳到網路上.最後,在媒體伺服器 中負責估算網路狀況的好壞的是服務 品質評估模組(QoS Decision).服務品質 評估模組除了可以支援真正的網路偵 測演算法外,還可以透過後門和網路模 擬器溝通,以進行演算法的驗證和測 試.最後,在媒體伺服器中還有一個媒 體資料庫模組,可以提供多媒體資料的 索引支援.不過,目前這部份只是利用 簡單的樹狀檔案結構來根據檔名做索 引.一個可調式媒體伺服器的核心,就 在於媒體調適引擎,這部份我們的設計 如圖二. 2. 多媒體播放器.這個程式包含了以下幾 個模組.首先是媒體解壓縮模組,目前 這部份和媒體伺服器一樣,可以支援 MPEG-4 ASP 和 FGS 的 video 及 BSAC 的 audio.其次是傳輸協訂控制 模組(Client Controller),這是用來負責 ISMA 客戶端相容的 RTSP 控制協定的 機制.第三個模組是封包接收狀況監視 器(Packet Loss Monitor).這個模組負責 圖二、媒體調適引擎 Media Database Rate Shaping Rate Control DIA Engine QoSDecision Streamer GetNextResourceUnit() GetNextResourceUnit() SetXDIInfo() Resource Adaptation Engine Network Profile FGS Video/BSAC Audio Stream Adapted FGS Video/BSAC Audio Stream CalculateCurrent Bandwidth() network conditions Media Database Rate Shaping Rate Control DIA Engine QoSDecision Streamer GetNextResourceUnit() GetNextResourceUnit() SetXDIInfo() Resource Adaptation Engine Network Profile FGS Video/BSAC Audio Stream Adapted FGS Video/BSAC Audio Stream CalculateCurrent Bandwidth() network conditions 圖三、網路模擬控制檔
# You can have as many lines of comments as you wish. #
# Time(sec) PLR(%) Bandwith(bps) Delay(ms) SDD Network_Buffer_Size
0 0 100000 20 0 80
5 2 70000 10 0 80
10 1 90000 10 0 80
計算封包接收狀況的統計資料,以通知 媒體伺服器進行適當的媒體調適.最後 在媒體播放器裏也有一個服務品質評 估模組(QoS Decision),這是為了支援客 戶端主導的流量控制機制. 3. 網路模擬器.這是一個在 Linux 下執行 的網路模擬器(emulator).我們是以由美 國標準局所發展的 NIST Net [16] 為 核心,為它加上一個以 Java 設計的使 用者界面.在設定好模擬器後,它會根 據一個控制檔(如圖三)來設定網路狀 況,並隨時畫出實際網路流量(圖四). 整個 MPEG-21 的多媒體傳輸共通測 試平台架設的狀況如圖五. 本計畫的另一個重點是流量控制和容 錯 機 制 的 設 計 . 在 這 方 面 , 為 配 合 MPEG-21 Scalable Video Codec 的標準制 定及 MPEG-21 Digital Item Adaptation 的 理 念 , 我 們 進 行 了 碼 率 失 真 最 佳 化 (rate-distortion optimized)可調式串流傳 輸機制的設計.目前在這方面較知名的是 由 P. A. Chou 等人發展的系統[2],不過這 套方法目前發表的成果以理論分析為主, 在實作上有很多細節並沒有提出解決方 圖四、網路模擬界面 圖五、MPEG-21 多媒體傳輸共通測試平台 FGS Server IP: 10.0.1.2 Network Emulator Emulator Ethernet Interface 1 IP: 10.0.1.1 Emulator Ethernet Interface 2 IP: 192.168.1.1 Player 1 (FGS) Ethernet Interface IP: 192.168.1.2
Player 2 (single layer) Ethernet Interface IP: 192.168.1.3 hub/switch Player 1 Player 2 Client machine FGS Server IP: 10.0.1.2 Network Emulator Emulator Ethernet Interface 1 IP: 10.0.1.1 Emulator Ethernet Interface 2 IP: 192.168.1.1 Player 1 (FGS) Ethernet Interface IP: 192.168.1.2
Player 2 (single layer) Ethernet Interface IP: 192.168.1.3 hub/switch Player 1 Player 2 Client machine
案,而且在頻寬變化大的網路環境下,串 流傳輸最難達到的平滑播放要求也沒有考 量. 在可調式位元串流傳輸中,影像資料 可以分成好幾次傳送,每次的傳送都可以 幫助解碼端得到更接近於原影像資料的重 建 訊 號 , 因 此 可 調 式 位 元 串 流 的 調 適 (scalable bitstream adaptation) 設計必須考 慮到如下幾點:必須支援多樣化的更新運 作(update operations)以產生有效可解碼的 串流、將資料刪除時不能違反解碼相關性 (decoding dependencies)的原則、允許在各 個次元(dimensions)的可調性、對於媒體的 特性 (如:碼率、失真率、frame rate、frame size…等)必須提供所有可能的可調適性、 針對不同的調適單元(adaptation units)可能 必須設計不同的調適決策、對於網路服務 品質(quality of service , QoS) 設計所有可 能的調適方法。媒體資源的傳遞和調適在 可調適的地點 (location of adaptation) 我 們 可 以 分 成 : 傳 送 端 驅 動 調 適 (sender-driven adaptation)、接收端驅動調適 (receiver-driven adaptation)、網路驅動調適 (network-driven adaptation)等三個不同的類 別來考量。而對於可調式位元串流系統, 可以把視訊資料分成一個基礎層和一個或 多個加強層,解碼器可以選擇只解碼基礎 層以獲得較低品質的重建訊號,或再加上 一些加強層以獲得較高品質的重建訊號。 本計畫針對以下傳輸模組進行設計以 達到最佳的全維度可調式媒體動態傳輸的 效能: 1. 媒體封包相依性控制:媒體封包相依控 制 (packet dependency control) 的設計 目標是針對提供較高的錯誤抵抗能力 (higher error-resilience) 和消除影像封 包的重傳 (retransmission) 需求。典型 的多媒體串流在影像封包之間具有強 烈的相依關係,如果其中一個影像封包 在傳送過程中丟失,則與這個封包有相 依關係且跟隨在後的 frames 在解碼時 將可能會受到影響.網路調適性的媒體 封包相依控制模組可以用來改善可調 式多媒體串流的錯誤抵抗能力和減少 延遲 (latency),在此,可以運用一個樹 狀 的 模 型 來 記 錄 通 道 的 封 包 丟 失 率
(channel loss rate) 和錯誤傳遞 (error propagation)以達成有效的控制機制。 2. 碼率最佳化傳輸控制:這部份的設計是
針對[2]的方法進行改良.一個多媒體封 包傳送的率碼失真最佳化控制架構必 需 在 資 料 單 元 群 組 之 間 利 用 解 出 Lagrangian cost function of expected rate and distortion 的最小值來有效率的分 配時間和頻寬的網路資源.在率碼失真 最佳化控制的多媒體串流系統中,決定 那些封包在每個可傳送機會是否應該 被試著傳遞到客戶端是依據此一封包 的截止期限、傳送過程的歷史記錄、通 道的統計資料、回饋的資訊、封包間的 相依性和如果封包可以在接收端正常 解碼之每一封包可以減少的失真度來 一起進行評估。 3. 傳輸系統驅動的媒體播放速度控制:在 媒體傳輸時封包與封包之間的到達時 間是隨機的,或者封包的到達時間雖然 是有固定的時間但卻跟隨著連續隨機 錯誤 (random errors bursts.)。動態媒體 播放 (adaptive media playout) 允許我 們在媒體 frames 的傳送期間獨立分開 的去調整播放的速度,並因而給我們在 到 達 解 碼 端 的 截 止 期 限 (arrival deadlines) 之前可設計一些控制機制, 例如,以較慢的速度播放這個 frame, 並延長這個 frame 後續 frames 的到 達截止期限,針對影像而言, frame 週 期的調整可以簡單的設計成調整每個 frame 的時間週期,另針對聲音而言, 將音訊號處理的過程與時間軸的刻度 連結以維持訊號的品質。因此,動態媒 體播放技術能被用在多媒體串流系統 以減少用戶端受到延遲的影響,用戶端 的緩衝器可以用來對抗隨機的封包遺 失和延遲,但如果使用較大容量的緩衝 器雖可以吸收掉較大的頻寬變動,但也 會在客戶端造成較長的播放延遲,動態 媒體播放技術將利用可變動的播放速 率來緩解客戶端緩衝器溢滿缺空(buffer overflow and underflow) 的問題,並且 降低播放延遲的情形。一個先進的系統 會分析在動態媒體播放技術中延遲和 緩衝器溢滿缺空的狀況,並調整動態播
放的速率以防止緩衝器溢滿缺空的情 形 發 生 , 其 目 標 是 將 播 放 的 延 遲 (playout delay) 最小化,並且降低因傳 輸延遲時間太長而誤以為封包遺失的 比率 (late loss rate)。
4. TCP-friendly 流量控制:這個傳輸模組 是用來控制 data units 的傳送速率。當 data units 的群組較大時,我們應該限 制傳送端的傳輸速率,如此一來傳送端 和網路的資源才不會被太多的傳送資 料淹沒,為了達到這個目的,一個系統 可以採用 equation-based 的 TCP 流量 控制機制,目的是讓 UDP-Based 的媒 體播放傳輸系統在傳送封包時,不要排 擠同時在傳輸的 TCP 頻寬,並可使整 個系統長時間的頻寬使用量接近一般 的 TCP session 頻 寬 用 量 . 根 據 TCP-friendly 流量控制所量測出來的頻 寬,多媒體串流可以被動態地調整傳送 速率,並讓傳送速率的變化量儘可能的 平緩,以符合多媒體串流的需求。而在 網路擁塞情況很嚴重時,不但可以充分 利用目前網路上的可用頻寬,並在與 TCP flow 競爭可用頻寬時也會讓 TCP flow 可以較公平的分享可用頻寬。不 過一般 TCP-friendly 的機制所慣用的 “等差性流量增加,等比性流量减小” 演算法有一個很大的問題,就是位元速 率會呈現出顯著的振盪特性,它會嚴重 地影響多媒體串流的品質一致性.目前 我們正針對這個缺點進行改進. 四、計劃成果自評 本計畫研究內容與原計畫相符程度十分吻 合.在達成預期目標情況方面、除了多媒 體傳輸系統網路動態 QoS 偵測、流量控 制、及容錯系統相關文獻研究外,目前己 經進行完成第一版本的 MPEG 多媒體數位 內容所需的傳輸層流量控制模組機制開 發.這部份的研究重點在於探討如何根據 網路頻寬及動態 QoS 偵測模組的輸出,來 調整多媒體封包的傳輸時序和流量控制以 提高有效傳輸量並降低封包漏失率.還有 在媒體伺服器和媒體播放器之間的串流式 容錯機制方面,總計畫團隊為 MPEG 所開 發的系統是以 ARQ 的機制來達到傳輸失 誤控制.不過因為多媒體傳輸可容許部份 的資料漏失,在知覺傳輸品質(perceptual transmission quality)和頻寬運用效率之間 (efficient bandwidth usage)取得一個最佳 化的平衡點是本部份的研究重點,本計畫 也已經初步完成這部份設計的開發.另 外,關於網路頻寬及動態 QoS 偵測模組的 研究設計也已經開始進行,本模組會針對 MPEG 多媒體數位內容的傳輸和不同網路 服務系統(mobile networks, Internet 等等) 之間的特性進行設計.在論文發表方面, 本計畫主要是以發表 MPEG 會議文件(M 編號文件 14 篇,W 編號文件 6 篇)及制定 MPEG 標準(1 項)為主. 五、參考文獻 [1] ISO/IEC JTC 1/SC 29, Inofrmation Technology – Multimedia Framework (MPEG-21) – Part 12: Test Bed for MPEG-21 Resource Delivery, ISO/IEC TR 21000-12: 2004(E), 2004.
[2] P. A. Chou and Z. Miao, "Rate-distortion optimized streaming of packetized media," IEEE Transactions on Multimedia, February 2001.
[3] Chun-Jen Tsai, Mihaela van der Schaar, and Young-Kwon Lim, ISO/IEC JTC 1/SC
29/WG11 N5494: Working Draft of ISO/IEC TR21000-12 Resource Delivery Test Bed,
MPEG Awaji Meeting, December 2001.
[4] 3rd Generation Partnership Project, Technical Specification Group: Services and System Aspects, “Transparent End-to-end Packet Switched Streaming Service (PSS); General Description (Release 5),” 3GPP TS 26.233,
v5.0.0, March 2003.
[5] ISO/IEC JTC 1/SC 29/WG11,
Information technology -- Coding of Audio-visual objects - Part II: Visual,
ISO/IEC 14496-2:2001, January 2001.
[6] ISO/IEC JTC 1/SC 29/WG11,
Information technology -- Coding of Audio-visual objects - Part III: Audio,
ISO/IEC 14496-3:2000, May 2000.
[7] H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson, RTP : A Transport
Protocol for Real-Time Applications,
RFC 1889, January 1996.
[8] H. Schulzrinne, A. Rao, and R. Lanphier,
RTSP: Real Time Streaming Protocol,
[9] M. Handley and V. Jacobson, SDP:
Session Description Protocol, RFC 2327,
April 1998.
[10] J. Chaoui et al., OMAP: Enabling
Multimedia Applications in Third Generation (3G) Wireless Terminals, Texas Instrument Technical White Paper SWPA001, December
2000.
[11] M. Berekovic, H.-J. Stolberg, and P. Pirsch, “Multicore System-on-Chip Architecture for MPEG-4 Streaming Video,” IEEE
Transactions on Circuit and Systems for Video Technology, Vol. 12, No. 8, pp.
688-699, August 2002.
[12] 3GPP SSA Technical Specification Group, Multimedia Messaging Services;
Functional Descriptions, 3GPP TS 23.140, v5.0, March, 2002.
[13] 3GPP SSA Technical Specification
Group, Transparent End-to-end Packet Switched Streaming Services (PSS) – Protocols and Codecs, 3GPP TS 26.234, v5.0, March, 2002.
[14] 3GPP SSA Technical Specification
Group, Transparent End-to-end Packet
Switched Streaming Services (PSS); General Descriptions, 3GPP TS 26.233,
v5.0, March, 2002.
[15] ISMA, Internet Streaming Media Alliance Implementation Specification,
v1.0, August 2001.
[16] NISTnet: