摘要:從理論上對典型的無線Mesh網絡組播差錯控制協議BLBP、LBLBP以及HLBLBP的性能進行分析,通過MATLAB對各協議在不同丟包率情況下的重傳次數、信道占用時間及端到端平均時延等性能進行實驗仿真。研究結果表明:HLBLBP的整體性能最優,但其未考慮某些信道質量較差的節點對整個網絡性能的影響。
關鍵詞:組播;無線Mesh網絡;基于領導者的協議;差錯控制;性能
中圖分類號:TP393 文獻標識碼:A
1引言
隨著Internet的發展和商業化進程的加速,組播[1]以其節約網絡帶寬和減輕服務器負荷的優勢獲得了越來越多的應用。無線Mesh網絡[2]作為“最后一公里”寬帶無線接入的重要技術之一,具有高速度、低干擾、網絡覆蓋范圍大、結構靈活等特點。因此無線Mesh網絡中的組播應用越來越廣泛。但無線網絡帶寬低、丟包率高、穩定性差的缺點,對無線Mesh網絡組播傳輸的可靠性來說是一個挑戰。
差錯控制是保證組播傳輸可靠性的重要方法,而MAC層的控制協議因為具有處理延遲短等特點,使它成為目前研究的重點,其中基于領導者的系列組播差錯控制協議最為典型。本文對典型的無線Mesh網絡組播差錯控制協議的性能進行分析,通過理論和實驗比較其優劣性,以期改進出性能更優的協議。本文結構主要如下,第2節介紹典型的無線Mesh 網絡組播差錯控制協議;第3節從理論上對協議進行性能分析;第4節實驗仿真結果;第5節對全文進行總結并給出下一步研究期望。
2典型無線Mesh網絡組播差錯控制協議
基于領導者的系列組播差錯控制協議以802.11 MAC標準的分布式協調機制[ 3]為基礎,其基本思想是選擇一個代理(即領導者)來代表所有的接收者負責與發送者進行控制信息的交互,從而避免反饋信息沖突和爆炸。不同的基于領導者協議在非領導者是否有發言權、是否采用分層以及是否結合前向糾錯等方面存在差異,因而其在重傳次數、信道占用時間及端到端平均時延等方面的性能不同。
定義1 組播源節點或任意中間需要轉發數據的節點,在向下一跳發送或者轉發數據時稱為發送者。
2.1LBP
LBP[4]是最基本的領導者協議,其基本思想是在接收者中選出一個領導者,作為和發送者交互的代理。發送者發送數據后,如果領導者正確接收到了數據,則回復ACK確認,其它節點無論是否收到數據都不做任何回應。如果發送者收到領導者回復的ACK,則此次傳輸結束;如果發送者在一定時間內沒有收到ACK,則說明傳輸過程發生錯誤,開始重傳,直至能正確接收到ACK。如果非領導者沒有接收到正確數據,但領導者回復了ACK,則發送者會認為所有節點都已正確接收數據,不會再進行重傳,所以無法保證非領導者節點接收到正確數據。LBP實現簡單,但由于非領導者沒有話語權,不能保證組播的可靠性。
2.2BLBP
BLBP[5]在LBP的基礎上,使非領導者能反饋NACK來告知自己未正確收到數據。BLBP要解決的關鍵問題是如何統一接收者接收數據以及進行反饋的時間。為此,BLBP增加一個信標幀BEACON幀,BEACON幀格式如圖1所示。持續時間標識的是即將發送的數據的持續時間,這樣可以使所有接收者能在收到BEACON幀同時確定數據發送完成的時間,即同步了所有接收者的時間。幀序號標識了當前發送幀的序號,重傳時已正確接收到數據的節點可以直接丟棄重復的幀。
BLBP的基本思想是:發送者在發送數據之前,廣播BEACON幀,這樣所有節點在收到BEACON幀后可根據持續時間設定自己回復ACK/NACK時間;領導者在成功接收數據后,回復ACK,如果未正確接收,則不回應;非領導者成功接收則沉默,否則回復NACK。如果發送者收到ACK,則本次組播成功結束,收到NACK或者ACK等待超時則本次組播失敗,進行重傳,直到發送者正確接收到領導者回復的ACK時,結束本次組播。
分析BLBP可知,領導者和非領導者接收數據的情況有三種。①如果所有節點都成功接收數據,發送者會收到ACK;②如果是領導者或者某些非領導者未收到正確數據,發送者會在ACK等待超時或者收到NACK后進行重傳;③如果領導者正確接收而其他節點有錯誤,則會同時回復ACK和NACK,這樣會因為信道沖突導致信道噪音,發送者會因為無法正確接收到ACK而在等待超時后進行重傳。這三種情況下,BLBP都能保證所有接收者正確接收數據,因此BLBP能保證組播可靠性。
但是BLBP僅考慮了單跳情況,在多跳的無線Mesh網絡環境中性能較差。
2.3LBLBP
為了使BLBP能適用于多跳環境,LBLBP[6]在BLBP的基礎上加入分層的概念,將組播的糾錯過程逐跳的進行。LBLBP子層內用改進的BLBP協議進行可靠性保障,且定義了層內和層間的競爭機制。
定義2從組播源節點開始,按照每增加一跳將組播劃分一層,即到源節點跳數相同的節點處于同一層。
定義3如果某一層中有節點需要向下轉發數據,那么將該節點和接收它轉發數據的節點劃分成一個子層。
在出現錯誤時,如果是單跳情況下,發送者只有一個,可以緊接著重傳;但在多跳環境下,除子層內發送者外,還有其他的轉發節點在競爭信道,所以要對競爭加以限制,因此加入L-C/L-R(Layer-Clear/Layer-Retransmission)幀來標識子層內傳輸完成情況。若子層內所有接收者都正確接收到了數據,則發送者組播L-C幀,告知此次發送成功;如果本次組播出錯,則發送者組播L-R幀,等待一定時間后發送者立刻開始重傳過程。
由于存在多個中間節點需要轉發數據,因此要協調節點對信道的使用,LBLBP定義了層內和層間的競爭機制。同層節點間遵循重傳優先,轉發平等的原則。假設節點A本次轉發失敗,需要進行重傳,此時同層其他節點偵聽到A的L-R幀后會根據A的持續時間域繼續等待,以保證A能優先重傳。層間采用的是下層節點轉發優先的原則,保證數據幀能盡快向下傳遞,減小時延。如圖2,B、C是A的下層節點。A在成功完成數據傳輸后,若仍要繼續發送,則需將競爭窗口設置為最小窗口的2倍再參與信道競爭,而B、C節點只要設為最小競爭窗口即可參與信道競爭,從而保證數據能盡快向下轉發。
分析LBLBP可知,由于子層內采用了改進的BLBP,因此它能保證組播的可靠性;同時LBLBP在多跳環境下定義了信道競爭機制,避免了無序競爭,能有效降低傳輸時延。但LBLBP也存在以下問題:當任意接收者出錯時,發送者都要將數據包單獨重傳一次,這會大大增加重傳的次數,且花費在傳輸控制幀的時間開銷太大。
2.4HLBLBP
HLBLBP[7]在LBLBP的基礎上,采用前向糾錯FEC機制降低重傳次數,另外為了減少控制幀開銷,將BEACON幀與RTS幀通過融合形成新的MRTS幀,格式如圖4所示。
HLBLBP的主要思想是:利用糾刪碼[8]技術將一個數據塊的k個數據包編碼成k+n個包,其中n個包作為重傳包。數據傳輸過程分為兩部分。首先按照802.11規定標準發送前k-c個數據包,這樣可以減少信道競爭和控制幀開銷。其中c的取值取決于信道質量,在丟包率較小、鄰居節點競爭較少時,c取值比較小。其次采用LBLBP機制發送余下的包,當發送完k個包后,發送者根據反饋信息決定是否要進行重傳糾錯。
如果領導者正確收到了k個數據包,則反饋ACK,若接收的正確數據包小于k個,則不反饋任何信息;如果是非領導者正確接收到k個數據包,則不作反饋,若接收到的正確數據包小于k個,則回復NACK。發送者根據反饋,若收到ACK信息,則發送L-C幀,表示數據發送成功;若收到NACK或在一定時間內沒收到ACK幀,則發送L-R幀,表示需要進行糾錯。
分析可知,HLBLBP同樣能夠保證組播的可靠性;由于引入了糾刪碼技術,在組播環境下單個的糾錯包能同時糾正不同接收者的不同錯誤,因此可以有效的減少重傳次數。雖然編碼解碼會增加計算開銷和復雜性,占用更多的帶寬,但與LBLBP每次出錯都要重傳數據包相比,帶寬利用率還是更高。
無線環境中某些節點到發送者的信道質量可能很差,只能收到很少的正確包,需要重傳的數據包數量就很大,這樣對信道質量較好的節點不公平,同時會增大數據包向下轉發的時延,影響整個網絡的性能。因此,公平性問題是基于領導者系列協議要解決的一個共同問題。
3理論分析
從上節分析可知LBP不能保證可靠性,而BLBP、LBLBP和HLBLBP三種協議都能保證可靠性,因此只對后三種協議的性能進行分析。重點分析協議的傳輸次數期望E(N)、數據包信道占用時間期望T(N)和端到端平均時延DK。假設本文用到的MAC層控制幀(RTS、CTS、BEACON、ACK/NACK等)都可無差錯地傳輸到接收者。
3.1傳輸次數期望
5結束語
本文從理論和實驗上分析了BLBP、LBLBP、HLBLBP等典型的無線Mesh網絡組播差錯控制協議的性能,結果表明三者均能保證組播的可靠性;其中BLBP主要適用于單跳環境,而LBLBP和HLBLBP能適用于多跳環境;在傳輸次數、信道占用時間、端到端平均時延等方面HLBLBP的整體性能最好。但HLBLBP也存在某些信道質量較差節點影響整個網絡的性能,對信道質量好的節點不公平,因此解決這個公平性問題是下一步的研究目標。
參考文獻
[1]周賢偉.IP組播與安全[M].北京:國防工業出版社,2006.
[2]方旭明.下一代無線因特網技術:無線Mesh網絡[M].北京:北京郵電出版,2007.
[3]IEEE Standards Department. Wireless LAN medium access control (MAC) and physical layer (PHY) specifications[S].Piscataway,NJ,USA.IEEE,2000.
[4]J Kuri, SK Kasera. Reliable multicast in multiaccess wireless LANs[J].ACM/Kliwer Wireless Networks Journal.2001,7(4):445-487.
[5]Zhao Li,Herfet T. BLBP:A Beacondriven Leader Based Protocol for MAC Layer Multicast Error Control in Wireless LANs[C].Wicom’08.HJ,USA.IEEE,2008:1-4.
[6]席鵬,周顥,趙保華.分層信標幀驅動的無線Mesh網多播差錯控制協議[J].西安交通大學學報.2010.6,44:51-56.
[7]CHI Xinzhe, ZHOU Hao,ZHAO Baohua. Multicast Error Control Protocol in Wireless Mesh Networks Based on Forward Correction[J]. Journal of Xi’an Jiaotong University.2011.8,45:y1-y6.
[8]Rizoo L. Effective erasure codes for reliable computer communication protocols[J].