行政院國家科學委員會專題研究計畫 成果報告
遺失封包分類與在有線/無線網路環境上可信賴之分層串流
技術
計畫類別: 個別型計畫 計畫編號: NSC94-2218-E-009-033- 執行期間: 94 年 11 月 01 日至 95 年 07 月 31 日 執行單位: 國立交通大學資訊工程學系(所) 計畫主持人: 蕭旭峰 報告類型: 精簡報告 處理方式: 本計畫可公開查詢中 華 民 國 95 年 10 月 31 日
行政院國家科學委員會專題研究計畫成果報告
遺失封包分類與在有線/無線網路環境上可信賴之分層串流技術Packet Loss Classification and Reliable Layered Streaming over Wired/Wireless Networks
計畫編號:NSC94-2218-E-009-033 執行期限:94 年 11 月 1 日至 95 年 7 月 31 日 主持人:蕭旭峰教授 交通大學資訊科學工程學系 一、 中文摘要 在無線通訊的環境裡,噪音和動態環 境的改變經常導致比特 (bit) 發生錯誤乃 至於封包的遺失,這類的遺失和因為網路 壅塞所導致的封包遺失有很大的不同。 本計畫的主要目的,在於對混和型有 線/無線網路環境裡,進行所遺失封包之特 性分析以建構出遺失封包之分類演算法 (Packet Loss Classification Algorithm) ,並 提出一個結合遺失封包之分類演算法之適 應性前向糾錯編碼 (adaptive FEC) 之分層 視訊串流 (Layered Video Streaming) 系統 架構。 對於大多數的壅塞控制演算法裡,遺 失封包的訊息對於網路壅塞扮演著很有價 值的參考指標,而且可以用來做有效的傳 輸速率調整。基於這個理由,無線網路所 遺失的封包很可能會導致網路壅塞控制演 算法 (Congestion Control Algorithm) 的效 能造成很大的降低。在這個計畫裡,我們 首先參考研究文獻上之封包遺失分類演算 法,探討封包延遲的模型理論並研發更優 良的分類法則將對遺失的封包進行分類。 針對這個分類演算法配合無線網路的信號 強度撿測 (基於無線通道的環境估測) 來 建構一個在無線/有線環境中可靠的分層 視訊串流。 關鍵詞:遺失封包、分類演算法、分層串 流、壅塞控制 英文摘要
In a wireless communication, noise and channel fluctuation often cause bit errors and subsequently the packet loss, which has different characteristics from the loss due to network congestion.
The objective of this research project is to study the causes leading to packet loss in wired/wireless communication channels and then propose a packet loss classification (PLC) algorithm so that we can construct a robust adaptive FEC scheme for layered streaming.
For most congestion control algorithms, packet loss information serves as a valuable index of network congestion and may be used for effective rate adjustment. For this reason, wireless packet loss can mistakenly lead to a dramatic degradation of congestion control performance. In this project, we discuss the packet delay model as an important clue to classify the packet loss type (from the results of PLC algorithm) and examine wireless signal strength (from wireless channel estimation) for better performance of layered video streaming applications over wired/wireless networks.
Keywords: Packet loss, classification algorithm,
二、 計畫緣由與目的 近年來,無線網路技術的飛快進步, 使得多種應用在無線網路上蓬勃成長。而 多媒體資訊應用在無線網路上的需求,使 得原先存在的、為有線網路所設計一些機 制必須要有一些改變,才能適用於混合型 有線與無線之異質網路上(heterogeneous wired/wireless networks)。 大部分已經存在的壅塞控制演算法原 本只為了有線網路的環境而設計,而往往 使用封包遺失來當成網路擁擠的指標。在 混合型有線與無線之異質網路上,將面臨 誤將無線網路因通道錯誤或訊號衰減所造 成的封包遺失,當成網路擁擠的訊息,因 而降低傳送速率,結果造成網路傳輸效能 的下降。面對這種情形,如果我們能對遺 失的封包進行分類,使得擁擠控制演算法 只在是擁擠所造成的情形下所遺失的封 包,才去降低傳送速率,進而對網路情形 做出適當的反應。 在目前已經存在的遺失封包分類演算
法(Packet Loss Classification Algorithm:
PLC),包含 Biaz 和 Vaidya [BV99] 所提出
的使用封包inter-arrival time 當成封包遺失
分類的依據。Inter-arrival time 的定義為兩 個 連 續 收 到 的 封 包 到 達 的 時 間 差 。 Spike-train [TTMGT00] 預先在相對的封
包單趟時間延遲 ROTT (relative one-way
trip time) 定義兩個邊界值來進行封包分 類;以及ZigZag [CCV02] 同樣使用 ROTT 值來做為封包分類的依據,但邊界值會隨 著ROTT 的值的變化而改變。 然而,上述的方法,邊界值的選取非 常 重 要 而 且 常 依 據 網 路 拓 譜 (network topology) 的分布有所不同。若是待分類之
封包的ROTT 或 inter-arrival time 落在邊界
值附近時,很難去分類為擁擠遺失或是無 線網路錯誤造成的遺失,因此,我們在[4]
中提出若封包的ROTT 落在 gray zone,即
難以分類的區間時,使用ROTT 的變化趨 勢是否為增加來作為判斷封包遺失是因為 擁擠還是因為無線網路錯誤所造成。我們 實作並探討不同的封包遺失分類演算法, 並評估分析實驗結果,並提出一個結合遺 失封包之分類演算法之分層視訊串流系統 架構來驗證我們所研究之封包遺失分類演 算法的正確性及在串流服務對此類演算法 的需要性。 三、 問題與結果討論 3.1 系統架構 圖一、 使用 PLC 之分層串流系統架構圖 圖一為本計畫提出之以遺失封包分類 演算法(PLC)為基礎之分層串流系統架構 圖。我們提出,對於使用遺失封包作為判 斷 依 據 之 擁 擠 控 制 演 算 法 ( 圖 中 BW Analysis 模組)以及無線通道保護之 FEC 模組而言,我們可以使用PLC 作為前置處 理 (pre-processing) 而讓各模組更正確的 工作。 而本計劃的主題,封包遺失分類演算 法 (PLC 模組)基本流程如圖二所示。當接 收端接收到封包後會更新一些演算法所需 的相關資訊,如目前最大/小的 ROTT 或是 目前最大/小的 inter-arrival time 等。接著由
封包序號 (sequence number) 的不連續來 判別封包遺失。一旦發現有封包遺失,則 使用封包遺失分類演算法去判別封包遺失 的類型,接著再接收下一個封包。封包遺 失分類演算法的細節在 3.3 節會有更詳 細的介紹。 圖二、PLC 啟動流程圖 3.2 無線通道錯誤模型 在 研 究 PLC 的分類演算法的過程 裡,我們使用 ns2 (Network Simulator - Version 2) 架構有線及無線的網路模擬環 境,並在無線網路環境中,於節點上加入 error model 來 模 擬 wireless 的 channel error。 在此所使用的 error model 為如圖三
所 示 的 Gilbert/Elliot’s two-state Markov
chain。
圖三、Gilbert/Elliot’s Markov chain
在good state (G)中封包有較低的遺失
機率pG,而在bad state (B)則有比較高的遺
失機率pB。pGB 定義為從 good state 轉換
到 bad state 的機率,以及 pBG則為從 bad
state 轉換到 good state 的機率。因此,good state 和 bad state 的穩定狀態機率 (steady state probabilities)分別如下: GB BG BG G
p
p
p
+
=
π
, GB BG GB B p p p + =π
所以由Gilbert/Elliot error model 產生
的平均的封包遺失率 pavg為: B B G G
p
p
p
avg=
π
+
π
在此我們可以透過設定 pGB、pBG 、 pG、pB 來得到所想要的平均封包遺失率 pavg。 3.3 封包遺失分類演算法 在提出我們的構想之前,我們先討論 Biaz 和 Vaidya [BV99]所提出的封包遺失分類演算法。其使用inter arrival time 來作
為封包分類的依據,此方法需要假設該連 線只有在最後一段連結為無線連結,並且 為該連線中的bottleneck。 因此,當封包傳送到無線網路連結 時,會是 back-to-back 的傳送,所以可以 用封包之間的inter-arrival time 來當作封包 遺失的分類依據。假設封包大小相同,如 果有N 個封包因為無線網路錯誤而遺失, 那麼這N 個封包實際上有傳送到無線網路 連結中,因此inter-arrival time 大約會介於 N+1 倍的 inter-arrival time 與 N+2 倍的 inter-arrival time 中間。 如果下式成立,則將封包分類為無線 網路錯誤造成的遺失,否則分類為擁擠所 造成的封包遺失。 (n+1)Tmin<=Tg<=(n+2)Tmin Tmin 定義為目前所接收到連續封包間 最小的inter-arrival time。Tg為發生封包遺
失時,兩個連續接收到的封包的時間差。n
為封包遺失個數。
在我們的構想裡,點對點 (end-to-end)
的封包延遲 (packet delay) Td 可以下式表
示:
Td= Tproc+Tprop+Ttrans+Tq
Td由四項延遲所組成:Tproc為路由器 processing delay ,主要為路由器處理封包 的傳送時所需做的重組及轉送封包等。 Tprop 為資料傳送的電磁延遲(propagation delay) 。Ttrans為封包傳送所需時間,由各 個連結的傳輸速率所決定。Tq為佇列延遲 (queuing delay),當壅塞發生時,這一項會 變大並且可能造成封包的遺失。Tproc, Tprop,和 Ttrans大約是常數,因此我們可將 封包延遲 Td 作為提供網路擁擠的重要資 訊。
承上述,以ROTT(Relative one way trip
time)表示封包延遲,相對於壅塞的情形, 將 會 是 有 相 當 程 度 的 值 。 因 此, 在 [TTMGT00]中所提出的封包遺失分類演算 法使用ROTT 值並預先設定兩個 threshold 來作為封包分類的依據,而在[CCV02]中 的演算法,threshold 隨著 ROTT 值的改變 而 變 化 。 然 而 這 兩 種 方 法 的 缺 點 為 當 ROTT 落在 threshold 附近時,無法正確的 判斷封包遺失為擁擠或是無線網路錯誤所 造 成 。 因 此 我 們 提 出 [4] 設 定 兩 個
threshold,當 ROTT 落在兩個 threshold 中 間時,我們定義為灰色地帶 (gray zone, 如圖四所示) ,使用 ROTT 的趨勢變化來 做為判別的依據。 圖四、PLC 灰色地帶 其中TGup和TGlow定義如下式所列: ). ( ), ( min max min min max min ROTT ROTT ROTT TG ROTT ROTT ROTT TG low up − + = − + = β α α 和 β 的值由實驗定在 0.8 和 0.3。 若 ROTT 時間大於 TGup則為擁擠遺 失,小於TGlow則為無線通道訊號減弱或受 破壞所造成的遺失。如果ROTT 落在灰色 地帶,我們則以封包延遲趨勢檢測演算法 來決定遺失封包的類別。延遲趨勢檢測演 算法可由下式說明。 ). ( ) 1 ( − ⋅ + ⋅ > −1 = f i i f S I D D S γ γ 這邊我們設定Sf如果大於0.4,我們認 為ROTT 呈現增加的趨勢,所以將封包遺 失判斷為擁擠遺失,小於的話,則判斷為 無線通道訊號減弱或受破壞所造成的遺 失。 3.4 實驗結果評估 圖五、網路拓譜圖 圖六、設定之資料流量 我們此次模擬所使用的網路拓譜和各 點間的連線情況如圖五所示。我們在節點 0 到節點 8 建立一連線為 cbr1,節點 1 到 節點四建立一連線為cbr2 ,節點 5 到節點 9 建立 cbr3 的連線。而資料流量的設定則
如圖六所示。因此可以看出在10 到 40 秒 間會在節點 6 到節點 75 之間產生壅塞情 形,而50 到 60 秒間則會在節點 2 到節點 3 間產生壅塞。 我們定義PLC 演算法分類的準確率作 為衡量標準:
Ac (accuracy of congestion loss discrimination) 是正確被判斷為壅塞遺失 的封包個數比上全部的壅塞遺失個數。
相對的,Aw (accuracy of wireless loss discrimination)則是正確被判斷為無線錯誤 造成的遺失的封包個數比上全部的無線錯 誤所造成的遺失個數。 圖七、遺失的封包classes 一個封包在網路上可能遭遇到網路壅 塞以及無線網路的錯誤,如圖八。兩個圓 相交的部分,代表的是網路處在壅塞以及 無線通道狀況差的情況。在這種情況下, 我們偏好將封包分類到壅塞遺失,對壅塞 控制演算法以及系統的穩定度比較有幫助 的。 在我們的方法裡,Ac 為 1,Aw 為 0.512605,由結果可以看出相對於 wireless loss,congestion loss 的判斷準確率是比較 高的。而 wireless loss 判斷準確度差的原 因在於如上圖所示相交的區間較大 (有可 能在10-40 sec 以及 50-60sec 之間) 。模擬 區間的 Aw 分佈如圖八所示。紅線為作為 對照組之Biaz 演算法所得到的 Aw 比上模 擬區間;綠線部分則為本計劃的方法所得 到的 Aw 在不同模擬時段的分布,由圖六 可以看出Biaz 演算法的 Aw 在網路發生壅 塞之後大幅下降,並且即使之後移去壅塞 狀況仍不能回升。這是Biaz 演算法必須假 設 無 線 網 路 部 分 必 須 為 整 段 連 線 的 bottleneck 的限制所造成的結果。 圖八、Aw 隨時間的分布圖,綠色為本計 劃所提方法 圖九、綜合之分類錯誤率,綠色為本計劃 所提方法 圖九是在模擬時間內全部的封包遺失 個數中被錯誤分類的比例,紅線為Biaz 演 算法的錯誤分類率,綠線為我們所提演算 法的方法的錯誤分類率,可以看出所提演 算法比起Biaz 演算法在整體分類率上有較 好的表現。 由圖六所示設定之資料流量,我們知 道在10 到 40 秒間以及 50 到 60 秒間會有 壅塞情況發生,而在這兩個區間,PLC 演 算 法 將 部 分 的 wireless loss 判 斷 為 congestion loss,這也是 Aw 為 0.5 左右的
原因。若我們觀察區間 0 到 10 秒、40 到 50 秒以及 60 到 80 秒,分別可以得到 Aw 為0.96、1。由前所述,這種分類結果事實 上也是比較有利於壅塞控制演算法以及系 統的穩定度的地方。 我們本計劃裡並針對所發展的分類演 算法探討其在串流服務系統中的狀況分 析。我們使用如下圖的網路拓譜來進行實 驗,串流客戶端共有三點位於 node 1,node 2 以及 node 3。這裡的串流壅塞控制演算 法是使用改良的pathload 演算法。 0 5 6 10M 10ms 512K 8 10M10ms 100ms 1 1M 50ms 3 2 4 256K 30ms 1M 50ms 512K 30ms 圖十、用於串流服務的實驗網路拓譜 0 50 100 150 0 5 10 x 105 t(s)
node 1 node 2 node 3
圖十一、純有線網路環境中各客戶端於壅 塞控制串流系統之接收流量 0 50 100 150 0 5 10 x 105 t(s)
node 1 node 2 node 3
圖十二、混合式網路環境中各客戶端於壅 塞控制串流系統之接收流量 0 50 100 150 0 5 10 x 105 t(s)
node 1 node 2 node 3
圖十三、混合式網路環境中各客戶端於 ZigZag/壅塞控制串流系統之接收流量 0 50 100 150 0 5 10 x 105 t(s)
node 1 node 2 node 3
圖十四、混合式網路環境中各客戶端於 Spike-train/壅塞控制串流系統之流量 0 50 100 150 0 5 10 x 105 t(s)
node 1 node 2 node 3
圖十五、混合式網路環境中各客戶端於所 提PLC/壅塞控制串流系統之接收流量 從圖十一至圖十五列舉了各個所提演 算法及與其它分類演算法的比較結果。由 圖十五所提的方法表現可知,所加入的分 類演算法大幅提升壅塞控制演算法在有線 /無線的傳輸環境下各節點應有的接收流 量。 四、 結果自評 透過有線/無線網路封包分類演算法 及其對應之串流系統架構之研究,近年來 隨著WiFi 及 WiMAX 的發展以為日漸重要 之課題。有鑑於此,發展相關之技術和培 育這一方面的研究人才已是刻不容緩之課 題。參加本計劃之研究人員,在學理上和 實務上都能受到紮實而有效的訓練,相信 對於多媒體網路研究上的發展推動將大有 助益。 參考文獻
[BV99] S. Biaz, N. Vaidya, "Discriminating Congestion Losses from Wireless Losses Using Inter-Arrival Times at the Receiver," IEEE Symposium, 24-27 March 1999, Pages:10 –17.
[CCV02] S. Cen, P. C. Cosman and G. M. Voelker, "End-to-End Differentiation of Congestion and Wireless Losses," Proceedings of ACM Multimedia Computing and Networking 2002, San Jose, CA, Jan. 2002.
[Ela02] H. Elaarag, "Improving TCP Performance over Mobile Networks," ACM Computing Surveys, Vol. 34, N0 3, Sep 2002, pp 357-374.
[Ell63] E. Elliot, “Estimates of Error Rates for Codes on Burst-Noise Channels,” Bell System Technique Journal, 1963. [FHPW00] S. Floyd, M. Handley, J. Padhye, J. Widrner, "Equation-based Congestion Control for
Unicast Applications," SIGCOMM'00, 2000.
[fITU96] ITU-T Recommendation G. 114, Feb 6, 1996. [HAK04] M. Hassan, L. Atzori, M. Krunz, “Video Transport over Wireless Channels: A Cycle-Based Approach for Rate Control,” Proceedings of the 12th Annual ACM International Conference on Multimedia, October 2004.
[HCRCH05] H.-F. Hsiao, A. Chindapol, J. Ritcey, Y.-C. Chen, J.-N. Hwang, “A New Multimedia Packet Loss Classification Algorithm for Congestion Control over Wired/Wireless Channels,” ICASSP, IEEE, March 2005.
[HS03] N. Hu and P. Steenkiste. "Evaluation and Characterization of Available Bandwidth Techniques," IEEE JSAC Special Issue in Internet and WWW Measurement, Mapping, and Modeling, 2003. [JD02] M. Jain and C. Dovrolis. "Pathload: A Measurement Tool for End-to-End Available Bandwidth," In Passive and Active Measurements, Fort Collins, CO, March 2002.
[Kes91] S. Keshav, “The Packet Pair Flow Control Protocol,” Technical Report 91-028, Berkeley, California, May, 1991. [LB00] A. Legout and E. W. Biersack, "PLM: Fast Convergence for Cumulative Layered Multicast Transmission Schemes," Proceedings of ACM SIGMETRICS'2000, June 2000.
[LLC02] C.-L. Lee, C.-F. Liu, Y.-C. Chen, "On The Use of Loss History for Performance Improvement of TCP over Wireless Networks," IEICE Transactions on Communications, Nov. 2002, pp.2457-2467.
[LYJCH05] Q. Liu, J. Yoo, B.-T. Jang, K.-H. Choi, and J.-N. Hwang, “A scalable VideoGIS system for GPS-guided vehicles,” Signal Processing: Image Communication, Vol. 20, No. 3, pp. 205-208, March 2005.
[MCGSR01] S. Mascolo, C. Casetti, M. Gerla, M. Y. Sanadidi, and Ren Wang, "TCP Westwood: Bandwidth Estimation for Enhanced
Transport over Wireless Links," ACM Mobicom 2001, July 16-21, Rome, Italy.
[MJV96] S. McCanne, V. Jacobson, and M. Vetterli,
“Receiver-driven layered multicast,” Proc ACM SIGCOMM, pp. 117-130, Volume 3, Aug. 1996.
[RHE99] R. Rejaie, M. Handley, D. Estrin, "RAP: An End-to-end Rate-based Congestion Control Mechanism for Realtime Streams in the Internet," INFOCOM ’99, IEEE, pp. 1337-1345, 1999. [RRBNC03] V. J. Ribeiro, R. H. Riedi, R. G. Baraniuk, J. Navratil, and L. Cottrell, "pathChirp: Efficient Available Bandwidth Estimation for Network Paths," In Passive and Active Measurement Workshop, 2003.
[SKK03] J. Strauss, D. Katabi, F. Kaashoek, "A Measurement Study of Available Bandwidth Estimation Tools," IMC2003, Miami Beach, Florida, USA, 2003.
[SMW04] H. Schwarz, D. Marpe, and T. Wiegand, “Subband Extension of H.264/AVC,” Joint Video Team of ISO/MPEG and ITU-T VCEG, March 2004.
[SS98] D. Sisalem, H. Schulzrinne, "The Loss-Delay Based Adjustment Algorithm: A TCP-Friendly Adaptation Scheme," Network and Operating System Support for Digital Audio and Video (NOSSDAV), Cambridge, UK, July 8-10, 1998.
[TTMGT00] Y. Tobe, Y. Tamura, A. Molano, S. Ghost, H. Tokuda, "Achieving Moderate Fairness for UDP Flows by Path-Status Classification, " IEEE LCN2000, Tampa, FL, Nov. 2000, pp 252-261.
[TZ01] W.-T. Tan, A. Zakhor, “Video Multicast Using Layered FEC and Scalable Compression,” IEEE Transactions on Circuits and Systems for Video Technology, March 2001.
[Var02] U. Varshney, “Multicast over Wireless Networks,” Communications of the ACM, December 2002.
[VAS00] B. Vickers, C. Albuquerque, and T. Suda, “Source-Adaptive Multilayered Multicast Algorithms for Real-Time Video Distribution,” IEEE/ACM Transactions on Networking, pp 720-733, 2000.
[VCR98] L. Vicisano, J. Crowcroft, L. Rizzo “TCP-Like Congestion Control for Layered Multicast Data Transfer,” INFOCOM, March 1998.
[WBB04] J. Widmer, C. Boutremans, J.-Y. Le Boudec, "End-to-End Congestion Control for TCP-friendly Flows with Variable Packet Size," ACM Sigcomm 2004.
[Wil02] A. Willi, "A New Class of Packet- and Bit-Level Models for Wireless Channels," IEEE Symp. On Personal, Indoor and Mobile Radio Communi., Sep. 2002.
[YB94] R. Yavatkar and N. Bhagawat, "Improving End-to-End Performance of TCP over Mobile Internetworks," in Proceedings of the IEEE Workshop on Mobile Computing Systems
and Applications, December 1994, pp. 146-152.
[ZGNZZ05] Q. Zhang, Q. Guo, Q. Ni, W. Zhu, Y.Q. Zhang, “Sender-Adaptive and Receiver-Driven Layered Multicast for Scalable Video over the Internet,” IEEE Transactions on Circuits and Systems for Video Technology, April 2005.
[ZWXZZ04] Q. Zhang, G. Wang, Z. Xiong, J. Zhou, W. Zhu, “Error Robust Scalable Audio Streaming over Wireless IP Networks,” IEEE Transactions on Multimedia, December 2004.