《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于BMW無線局域網MAC層多播糾錯協議的改進
基于BMW無線局域網MAC層多播糾錯協議的改進
來源:電子技術應用2010年第11期
陳榮強1,2,3,周 顥1,2,3,趙保華1,2,3
1. 中國科學技術大學 計算機科學與技術系,安徽 合肥230027;2.網絡與交換技術國家重點實驗室,北京100876;3.安徽省計算與通訊軟件重點實驗室,安徽 合肥230027
摘要: 基于BMW協議,提出了無線局域網MAC層多播糾錯的改進協議MMW。MMW對BMW中的成員列表進行改進,并且加入了重傳請求控制幀,使得丟失數據幀能夠被即時重傳。仿真實驗驗證了MMW既保持了BMW的可靠性,又減少了延時。
中圖分類號: TP393.1
文獻標識碼: A
文章編號: 0258-7998(2010)10-0145-04
Improvement of MAC layer multicast error control protocol in wireless LANs based on BMW
CHEN Rong Qiang1,2,3, ZHOU Hao1,2,3, ZHAO Bao Hua1,2,3
1.Dept. of Computer Science, University of Science and Technology of China, Hefei 230027, China;2.State Key Laboratory of Networking and Switching Technology, Beijing 100876, China; 3.Anhui Province Key Laboratory of Software in Computing and Communication, Hefei 230027, China
Abstract: An improvement of MAC layer multicast error control protocol in Wireless LANs based on BMW is presented in this paper. MMW improvements the member list in BMW, and joins the retransmission request control frame, making loss of data frames can be immediately retransmitted. Simulation results show MMW keep the reliability with short delays.
Key words : wireless LANs; multicast error control; MMW

    隨著無線網絡技術的快速發展和廣泛應用,無線移動用戶已經不能僅僅滿足于簡單的數據通信。視頻通信,特別是有嚴格時延、錯誤率限制的實時多播業務需求正在迅猛增加[1]。大量的實時多播應用充斥于無線網絡中,包括:數字視頻廣播、視頻會議、游戲、VoIP、IPTV等。
    然而,IEEE802.11[2]對多播數據的MAC層傳輸不提供糾錯,多播數據無法得到可靠性保證。如何在高丟包率的無線網絡中完成快速、準確的多播數據傳輸,這是無線網絡下的多播糾錯協議所要解決的首要問題。
    現有的無線多播糾錯協議大多是基于應用層[3-5],雖然在可靠性上都較好地達成了期望,但是由于應用層處于物理層、數據鏈路層、網絡層等層次之上,在系統中位置較高,基于應用層的協議往往延時較大,有時候不能滿足嚴格的應用程序延時限制。目前對無線MAC層多播糾錯協議的研究主要有BMW[6] (Broadcast Medium Window),BMMM[7] (Batch Mode Multicast MAC)和BLBP[8](Beacon-driven Leader Based Protocol)等幾種方法。BMMM傳輸一個數據幀要發送大量的控制幀而增加了傳輸時間。BLBP在可靠性上存在問題。BMW雖然可以確保進行可靠的多播,但是數據幀的糾錯時間較長。因此本文在BMW的基礎上,提出了BMW的改進協議MMW(Multicast Medium Window),既保持了BMW的可靠性,又克服了BMW延時較大的特點。
1 BMW協議
    BMW協議提出了一種可靠的MAC層多播機制,其主要思想是輪流對各個鄰居節點進行單播來達到多播的效果。
    BMW要求每個節點保存3個列表:成員列表、發送列表和接收列表。成員列表用來記錄所有鄰居節點的MAC地址;發送列表用來保存已經發送但還沒有被所有鄰居節點確認收到的多播數據幀,列表大小應不小于鄰居節點數量;接收列表用來記錄已經收到多播數據幀的序列號。
    BMW在RTS幀中新加入LS和RS兩個域,分別用來標記發送列表數據幀中的最小序列號和當前序列號。CTS新加入SC域用來標記需要的數據幀序列號。擴展的RTS、CTS報文結構如圖1所示。

    當一個節點需要發送一個多播幀時,首先將該幀保存到發送列表中,然后在成功執行CSMA/CA后發送RTS。RTS幀包含當前發送列表中數據幀的最小序列號和當前序列號,并選擇鄰居列表中第一個鄰居節點的MAC地址作為目的地址。該鄰居成功接收到RTS后,根據最小序列號、當前序列號和接收列表檢查是否有丟失數據幀。如果有則將丟失幀的序列號寫入CTS并回復,否則回復帶有當前序列號的CTS。發送節點收到CTS,從發送列表中找到對應的數據幀進行發送,目的節點成功收到該數據幀后回復ACK,并把數據幀的序列號記錄到接收列表中。其他鄰居在接收到該數據幀后也將對序列號記錄到自己的接收列表中。如果發送節點發送的數據不是當前數據幀,則重復上述與該鄰居節點對話過程直到發送當前數據幀并收到ACK確認。如能成功發送當前數據幀且該鄰居節點已經確認收到發送列表中的所有幀,則刪除發送列表中已被所有鄰居確認的數據幀;然后發送節點將選擇鄰居列表中的下一個鄰居重復上述方法發送下一個多播幀。如果沒有新的多播幀需要發送,則選擇鄰居列表中下一個鄰居使用上述方法發送當前的多播幀。當發送列表中沒有數據幀時停止BMW循環過程,直到有新的多播幀需要發送時,重啟BMW。
 可以看出,BMW發送多播數據時,輪流對鄰居節點進行單播,并在單播的時候對該鄰居節點之前丟失的數據幀進行重傳。每個多播幀都能確保被所有節點接收,但是每個節點只有被選擇作為目的節點時才能對之前丟失的數據幀就行重傳。當接收節點數目較多時,加大了數據傳輸的延時。
2 BMW的改進協議MMW
 MMW是在BMW的基礎上進行改進的,既保持了多播數據可靠傳輸的特點,又可以使丟失的報文即時得到重傳,減小了報文傳輸的延時。
2.1 改進成員列表
 由于BMW對廣播數據和多播數據不做區分,將所有各個多播組的多播數據和廣播數據共同計算序列號,輪流對各個鄰居節點進行單播并進行糾錯。實際上把一個多播數據發送給非多播接收節點的鄰居節點并進行糾錯是沒有必要的,而且增加了糾錯時間。
 MMW中規定每個節點為每一個多播組分別保存成員列表、發送列表和接收列表:成員列表用來記錄該多播組所有多播接收節點的MAC地址,該列表在創建多播路由時獲得;發送列表用來保存已經發送但還沒有被所有多播接收節點確認收到的多播數據幀,列表大小應不小于多播接收節點的數量;接收列表用來記錄已經收到多播數據幀的序列號。由于MMW對不同的多播組分開計算序列號,所以需要對RTS幀繼續進行改進,具體報文結構如圖2所示,加入MA域來記錄多播MAC地址。該RTS幀用來表明將要發送的數據屬于哪個多播組的以及源節點的該多播組發送列表中的最小序列號和當前序列號。廣播被看作一個特殊的多播組,成員列表為鄰居列表,RTS中的MA域填入廣播MAC地址。

    通過對成員列表的改進,每個多播報文只需要對各自多播組的接收節點進行糾錯,而不需要對所有鄰居節點糾錯,減少了糾錯延時。
2.2 引入重傳請求幀
    BMW中假設1個節點有n個鄰居節點,當它向第一個鄰居發送第一個多播數據時,鄰居列表中第n個鄰居由于沖突等原因沒有成功接收到這個數據,則第n個鄰居此時已經發現自己出現丟失了數據包,但必須在等待傳輸了n-1個數據后,當發送節點選擇第n個鄰居單播多播數據幀時,才會重傳這個數據。可以看出,BMW不能及時進行糾錯,加大了丟失幀的糾錯延時。
 MMW引入了重傳請求幀,其報文格式如圖3所示,RA域、TA域與RTS幀相同,MA域為多播組MAC地址,SC域為丟失幀的序列號。在每次數據傳輸完成后,接收節點都會根據最大序列號、當前序列號以及自己的接收列表來檢查是否有丟失幀。如果有,則在執行完CSMA/CA后發送重傳請求幀通知源節點。源節點接收到重傳請求幀后,立刻與該節點進行RTS/CTS交換,完成交換后發送丟失幀。在傳輸丟失幀時,其他丟失該數據幀的接收節點也接收此幀并更新各自的接收列表。同時可能有不止1個節點發現丟失多播數據幀,都要發送重傳請求幀,其他節點也有可能要發送RTS幀。因此,在發送重傳請求幀前使用了CSMA/CA避免沖突,一個節點在競爭到信道使用權后,才能發送重傳請求幀通知源節點對丟失幀進行重傳。

 重傳請求幀的引入是為了讓接收節點在發現自己存在丟失數據幀后,可以主動地請求源節點立即進行重傳,而不必等到被選擇作為目的節點時才會對丟失的包進行糾錯,減少了數據幀的傳輸延時。
3 仿真實驗
 通過仿真實驗對MAC層糾錯協議BMW、BMMM、BLBP和MMW進行比較。發送10 000個大小為1 500 B的多播數據幀,比較不同數量接收節點情況下各個協議所需要的時間以及在一定延時限制內的數據丟包情況。物理層部分參數如表1所示,參數使用801.11a標準。所有的接收節點與發送節點只有一跳的距離。


    圖4是網絡丟包率為0.1時,不同數量的接收節點環境下發送10 000個數據幀所用的總傳輸時間。每種協議所需要的傳輸時間都隨著接收節點的數量增加而加大,這是由于接收節點數量的增大,造成更多的重傳。其中BMMM增加的速度要快于其他協議,因為BMMM每發送1個數據包都要進行更多的控制幀交換,控制幀的數量隨著接收節點的增加而增大,因此當接收節點數量加大時,BMMM所用的傳輸時間要高于其他3種協議。

    圖5是接收節點為10個時,不同網絡丟包率環境下發送10 000個數據幀所用的總時間。由圖可以看出,每種協議所需要的傳輸時間都隨著丟包率增加而加大,這也是因為網絡丟包率的增加也造成了更多的重傳。而且四種協議傳輸時間增大的速度基本相同,但是由于接收節點為10個時BMMM需要進行大量的控制幀交換,所以BMMM的傳輸時間要高于其他三種協議。

    圖6是接收節點數量為10個時,不同網絡丟包率環境下發送數據幀的最大延遲時間。可以看出,BMMM、MMW、BLBP最大延遲時間都在10 ms以下,而BMW由于不能即時丟失的數據幀進行重傳,增大了數據幀傳輸的延時。

  圖7是10個接收節點、網絡丟包率為0.1的情況下,每種協議在不同延時限制下的丟失數據幀的數量。BLBP在beach幀的丟失后,非領導節點即使丟失數據幀后也不會回復NACK(Negative Acknowledgements)幀,并且存在隱藏節點問題,造成協議的不可靠,出現丟包。BMMM、BLBP對一個多播數據幀進行糾錯結束后才發送下一幀,及時對丟失數據進行重傳,因此所有數據幀的延時都小于10 ms。而BMW只有在節點被選擇作為目的節點時才能對之前丟失的數據包進行糾錯,加大了數據幀延時,在延時限制10 ms時存在約為1.2%的丟包率。MMW加入了重傳請求幀,使得丟失數據包可以及時進行糾錯,所有數據幀的傳輸延時保持在10 ms以下。

    綜上所述,可以發現BMMM在接收節點變大時需要傳輸大量的控制幀而加大了傳輸時間;BMW由于不能即時對丟失的數據幀進行重傳,增大了數據幀糾錯延時;而BLBP的可靠性存在問題。MMW卻解決了以上問題,為上層的多播服務提供了更可靠的實時性保障。
    本文在BMW的基礎上進行改進,提出了無線局域網糾錯協議MMW。MMW通過對BMW成員列表的改進和引入了重傳請求幀,減少了BMW協議中的糾錯延時,保證了無線多播數據在MAC層快速、可靠傳輸。通過仿真實驗表明,在網絡丟包率為0.1、存在10個多播接收節點、延時限制為10 ms的情況下,MMW仍能保證所有的數據報正確傳輸,為上層多播服務提供了很好的保證。
參考文獻
[1]  DUJOVNE D, TURLETTI T. Multicast in 802.11 WLANs: an experimental study[C]. 9th ACM/IEEE International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWiM), 2006.
[2]  IEEE Standards Department. Wireless LAN medium access  control(MAC) and physical layer(PHY) specifications[S/OL].  IEEE std 802.11TM, 2007, http://standards.ieee.org/.
[3]  TAN Guo Ping, HERFET T. Optimization of an RTP level     hybrid error correction scheme for DVB services in wireless home networks under strict delay constraints[J]. IEEE Transactions on Broadcasting, 2007,53(1).
[4]  REIMERS U H, DVB-the family of international standards     for digital video broadcasting[J]. Proc. IEEE, 2006,94(1): 173-182.
[5]  MAJUMDAR A, SACHS D G, KOZINTSEZ IV, et al. Multicast and unicast real-time video streaming over wireless LANs[J]. IEEE Transactions on CSVT, 2002,12(6).
[6] TANG K, GERLA M. MAC reliable broadcast in Ad Hoc networks[C]. IEEE MILCOM2001,2001:1008-1013.
[7]  SUN M T, HUANG L, ARORA A,et al. MAC layer multicast in IEEE 802.11 wireless networks[C]. International Conference on Parallel Processing (ICPP) 2002, 2002.
[8]  LI Zhao, HERFET T. BLBP: beacon-driven leader based  protocol for MAC layer multicast error control in wireless LANs[C]. International Conference on Wireless  Communications, Networking and Mobile Computing, WiCOM,2008.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日本道色 | 米奇精品一区二区三区 | 9191精品国产费久久 | 91在线一区二区三区 | 国产一区在线看 | 免费国产高清精品一区在线 | 欧美韩国日本一区 | 欧美激情成人网 | 亚洲色视频在线播放网站 | 成人一区二区免费中文字幕 | 久草视频观看 | 又粗又爽又色男女乱淫播放男女 | 九九99视频在线观看视频观看 | 特级淫片欧美高清视频蜜桃 | 一级毛片免费播放视频 | 91一区| 日本在线观看免费视频 | 中文无码日韩欧免费视频 | 在线成人免费观看国产精品 | 18黄网站 | 午夜欧美性欧美 | 精品中文字幕一区在线 | 亚洲天堂欧美 | 亚洲欧美另类色妞网站 | 国产首页精品 | 欧美性极品hd高清视频 | 亚洲视频在线观看网站 | 欧美一级高清免费播放 | 亚洲精品久久一区二区无卡 | 精品国产精品a | 国产在线观看一区精品 | 久久久久久久久免费视频 | 成人中文字幕一区二区三区 | 国产欧美日本亚洲精品五区 | 日韩免费高清一级毛片在线 | 国产精品综合一区二区 | 国产三级三级三级三级 | 日韩三级欧美 | 久久视频6免费观看视频精品 | 成人免费观看永久24小时 | 精品久久一区二区 |