摘要:在源特定組播(SSM)的基礎上,提出了一個分布式可靠組播傳輸協議——SDRMP(SSM-based distributed reliable multicast protocol)。該協議基于劃分域和分布式數據存儲的思想,在域內由各節點分級保證與直連下游節點間的可靠報文傳輸,在域間由各個域的主節點分布式保存數據報文,并且發送者的發送速率根據各個域主節點的反饋報文進行調整,避免網絡擁塞。仿真實驗結果表明,SDRMP能有效地保證組播數據傳輸的可靠性,并具有較好的可擴展性和TCP友好性。
關鍵詞:可靠組播; 域; 分布式; 擁塞控制; 傳輸控制協議友好性
中圖分類號:TP393文獻標志碼:A
文章編號:1001-3695(2007)11-0264-04
0引言
IP組播是指在IP網絡中,數據包以盡力傳送(best effort)的形式發送到所有網絡節點的某個確定子集,這個子集稱為組播組。現今Internet上使用的IP組播體系結構主要是基于Steve Deering等人提出的host group模型[1]。但是這種模型存在訪問控制困難、地址分配方案不健全、路由協議復雜等缺陷。針對上述缺陷,源特定組播(SSM)技術[2]有較好的改進,因而具有良好的應用前景。然而,SSM技術也是采用盡力而為的服務模式,具有天生的不可靠性,必定會遇到數據包丟失和亂序問題;依靠IP組播技術本身,并不能滿足各類應用對服務質量的要求。因此可靠組播的研究目的就是解決這些問題。
現有的主要可靠組播協議包括可靠組播協議(RMP)[3]、可擴展可靠組播(SRM)[4]、可靠組播傳輸協議(RMTP)[5]和基于樹的組播傳輸協議(TMTP)[6]等。RMP是一個基于環的可靠組播協議,可以使處理負載由各節點分布式共同承擔,但其修復過程完全由令牌節點負責,沒有從根本上解決由單一節點負責報文緩存的問題。SRM是一個基于接收方檢測報文丟失和要求重傳的可靠組播協議,具有良好的可擴展性和魯棒性,但其延時反饋機制本身大大增加了修復延遲。RMTP是一個基于組播樹的層次化可靠組播協議,可以明顯減輕發送者和網絡的負載,但其固定的樹型結構難以適應會話和范圍的較大變化。TMTP是一個基于樹的層次可靠組播協議,具有良好的差錯控制方法和流控機制,但其使用TTL值作為分組的方法效果不太理想。綜上所述,這些可靠組播協議各有優缺點,且主要針對host group模型。
針對源特定組播,本文提出了一種新的分布式可靠組播傳輸協議——SDRMP。SDRMP基于劃分域和分布式報文存儲的思想,能在不影響通信系統傳輸時延和報文吞吐率的前提下,為參與一個源特定組播通信系統的所有節點提供可靠的傳輸服務,還可以通過反饋報文進行一定程度的流量控制。通過ns仿真分析驗證了SDRMP的性能。實驗結果證明SDRMP能有效地保證組播數據傳輸的可靠性,并具有節省網絡帶寬資源、修復延遲較小、可擴展性較好、節點負擔分配均勻等特點。
1SDRMP的基本思想
SDRMP將參與組播會話的所有節點按照一定規則分成若干個域,每個域有一個指定的主節點(master router,MR)負責從上層轉發節點,可靠地接收數據報文,并通過與同一組播組其他域的MR的配合來保證域內所有接收者的可靠組播通信。一個域是由二元組〈MR的IP地址,組播組地址〉惟一確定的。域是保證數據報文可靠傳輸到組成員的基本單位,MR是處于骨干網和用戶接入網絡之間的轉發節點,是一個域的組播分發樹的樹根。SDRMP工作的網絡模型如圖1所示。
SDRMP分為三個部分,即發送者與MR間的可靠報文傳輸、域內可靠報文傳輸和域間可靠報文傳輸。發送者與MR之間是基于肯定應答報文(ACK)的接收方控制的可靠數據傳輸,通過MR的反饋報文,對發送者進行一定的流量控制;域內可靠報文傳輸是通過分級可靠性保證的基于否定應答報文(NACK)的接收方控制的可靠數據傳輸,各級轉發節點只保證與自己直連的下級轉發節點的可靠報文傳輸;域間可靠報文傳輸通過分布式報文存儲的方式保證了組播報文傳輸的可靠性。域間通信由每個域的MR負責,所有MR通過特定的協議報文交互,實現數據報文的分布式存儲。下游節點請求重傳時,所在域的MR迅速向保存有被請求重傳的報文的MR請求所需報文,從全局上保證接收者接收報文的可靠性。
2SDRMP的設計
2.1發送者與MR間的可靠報文傳輸
對于每個數據報文,發送者只處理收到的第一個來自MR的反饋報文,而忽略來自其他MR的反饋報文。由于基于因特網的數據包的往返時間一般不超過200 ms[7],為避免在很短的時間內大量用戶的反饋信息會產生反饋風暴,阻塞發送端,MR發送的反饋報文需要在全組內組播,抑制其他MR發送反饋報文,同時提供給所有MR關于報文存儲狀態的必要信息。
發送者的協議行為描述如下:
a)發送第一個數據報文后,啟動一個定時器,等待MR反饋ACK報文。若定時器超時仍沒有收到ACK報文,則重發第一個數據報文;否則轉b)。
b)通過ACK報文的相應字段值,根據TCP的速率等式[8]確定發送報文的速率。式(1)計算的是TCP發送速率的上限。如果多媒體應用系統的發送端以低于或等于這個速率發送數據,則被認為具有TCP友好性[9]。
從圖4可以看出,在開始階段,TCP流波動很大,但是經過組播流與TCP流對資源的競爭后,系統對資源的共享進入相對平穩的狀態。顯示SDRMP基本上達到了可靠組播流的TCP友好性要求。
4結束語
本文給出了一個可適用于源特定組播的分布式可靠組播協議SDRMP。仿真結果說明該協議可以在不占用過多網絡帶寬的情況下,較好地滿足了接收者的時延和丟包率要求,具有良好的可靠性。
本協議基于以下三種思想:在各個域間分布式保存數據報文,既可以避免集中式報文恢復方式給恢復節點帶來的負擔以及協議本身的脆弱性,又能夠對網絡的變化作出及時響應,具有良好的可擴展性;由轉發節點分級保證自己的直接下游節點的可靠報文傳輸,既可以減小報文的修復延遲,又降低了轉發節點的負擔,減少了網絡中的報文流量,對于避免網絡擁塞有一定的積極作用;由接收節點對發送者的發送速率進行調整,既可以盡量避免網絡擁塞及數據重傳,又可以將數據重傳任務分配到各個域中,從而減輕發送者的負擔。
在下一步的工作中,如何使本協議支持更多的QoS服務質量參數是主要的研究方向。
參考文獻:
[1]DEERING S, CHERITON D. Host groups: a multicast extension for datagram Internet works[C]//Proc of the 9th Data Communications Symposium. Whistler Mountain:[s.n.], 1985.
[2]HOLBROOK H. Source-specific multicast for IP[R]. [S.l.]: IETF,2004.
[3]GARCIA M H. Ordered and reliable multicast communication[J]. ACM Trans on Computer Systems, 1991,9(3):242-271.
[4]FLOYD S, JACOBSON V, McCANNE S. A reliable multicast framework for light-weight sessions and application level framing[J]. IEEE/ACM Trans on Networking,1997,5(6):784-863.
[5]LIN J C, SANJOY P. RMTP: a reliable multicast transport protocol[C]//Proc of IEEE INFOCOM’96.San Francisco:IEEE,1996:1414-1424.
[6]YAVATKAT R, GRIFFIOEN J, SUDAN M. A reliable dissemination protocol for interactive collaborative applications[C]//Proc of ACM Multimedia.San Francisco:[s.n.]:1995.
[7]TAN W, ZAKHOR A. Error control for video multicast using hierarchical FEC[C]//Proc of ICIP’99.[S.l.]:IEEE,1999:401-405.
[8]PADHYE J, FIROIU V, TOWSLEY D. Modeling TCP throughtput: a simple model and its empirical validation[C]//Proc of ACM SIGCOMM’98. Yew York:ACM Press,1998:303-314.
[9]SISALEM D, WOLISZ A. MLDA: a TCP_friendly congestion control framework for heterogeneous multicast environments[C]//Proc of the 8th International Workshop on Quality of Service. Pittsburgh:[s.n.], 2000:65-74.
[10]NS2(network simulator version 2)[EB/OL]. [2006].http://www-mash.cs.berkely.edu/ns/.
“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”