周 偉
(上海市信息網(wǎng)絡(luò)有限公司,上海 200081)
分簇?zé)o線傳感器網(wǎng)絡(luò)動態(tài)時隙分配MAC協(xié)議
周 偉
(上海市信息網(wǎng)絡(luò)有限公司,上海 200081)
為降低大規(guī)模無線傳感器網(wǎng)絡(luò)的平均能耗,提出了一種基于動態(tài)分配的調(diào)度型無線傳感器網(wǎng)絡(luò)MAC協(xié)議(SDC-MAC)。該協(xié)議簇間使用FDMA方式分配無線信道,簇內(nèi)通過TDMA方式給各個節(jié)點分配可變長的時隙。隨著簇結(jié)構(gòu)的變化,簇頭通過時隙分配通知,對簇內(nèi)節(jié)點的時隙分配進(jìn)行動態(tài)調(diào)整,簇成員節(jié)點則根據(jù)控制信息進(jìn)行休眠和喚醒。仿真結(jié)果顯示,該算法有效地降低了網(wǎng)絡(luò)的平均能耗,當(dāng)網(wǎng)絡(luò)流量高時還可降低平均數(shù)據(jù)包時延。
無線傳感器網(wǎng)絡(luò);MAC協(xié)議;分簇;時隙
隨著大規(guī)模無線傳感器網(wǎng)絡(luò)的應(yīng)用范圍越來越廣[1-2],網(wǎng)絡(luò)通信的復(fù)雜程度也日益加劇,采用分層結(jié)構(gòu)[3]可有效解決無線傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的復(fù)雜化,以及網(wǎng)絡(luò)局部能量消耗過大的關(guān)鍵性問題。然而,傳統(tǒng)的MAC協(xié)議在用于具有分簇結(jié)構(gòu)的大規(guī)模無線傳感器網(wǎng)絡(luò)時,會體現(xiàn)出一定的局限性。
對于S-MAC[4]、T-MAC[5]等基于競爭的MAC協(xié)議[6],它們的主要特點是當(dāng)傳感器節(jié)點需要發(fā)送數(shù)據(jù)時,需通過競爭來獲取信道使用權(quán)。在網(wǎng)絡(luò)中數(shù)據(jù)流量較小的情況下,這種模式可避免信道閑置,從而提升信道利用率。但在應(yīng)用于分簇型無線傳感器網(wǎng)絡(luò)[7]時,面對較大的網(wǎng)絡(luò)規(guī)模和較多的網(wǎng)絡(luò)數(shù)據(jù)流量,此時競爭中的沖突會頻繁出現(xiàn),從而加劇了網(wǎng)絡(luò)的擁塞程度。對于TRAMA[8]、DMAC[9]、PEDAMACS[10]等基于調(diào)度的MAC協(xié)議,它們能夠有效地避免信道中的沖突。但是在用于具有復(fù)雜簇結(jié)構(gòu)的大型網(wǎng)絡(luò)時,較高的同步和控制要求則難免會降低協(xié)議的使用效率。Z-MAC[11]是混合型MAC協(xié)議的代表,它在不同的競爭情況下分別采用TDMA和CDMA等方式,美中不足的是,當(dāng)網(wǎng)絡(luò)競爭狀態(tài)變化較大的時候,TDMA和CDMA的頻繁變換和同步,易導(dǎo)致系統(tǒng)效率的隨之降低。
本文提出一種基于調(diào)度的分簇?zé)o線傳感器網(wǎng)絡(luò)MAC協(xié)議(SDC-MAC),它在簇間使用FDMA,在簇內(nèi)使用TDMA,并采用動態(tài)時隙分配等措施以實現(xiàn)對網(wǎng)絡(luò)性能的有效提升。
無線傳感器網(wǎng)絡(luò)常用的簇結(jié)構(gòu)為單一匯聚節(jié)點控制的方式,并在簇內(nèi)采用單跳的基本結(jié)構(gòu)[12]。網(wǎng)絡(luò)的匯聚節(jié)點具有較高的處理能力,同時具備可持續(xù)的能量接續(xù)能力,因此在整個無線傳感器網(wǎng)絡(luò)中能夠承擔(dān)起中心控制的角色。這種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)就類似于典型的LEACH協(xié)議[13]所適用的網(wǎng)絡(luò)情況。
在網(wǎng)絡(luò)的初始階段,通過匯聚節(jié)點的控制,所有傳感器節(jié)點按照特定的分簇算法[14]形成穩(wěn)定的簇結(jié)構(gòu),并在每個簇內(nèi)建立起一個簇頭和多個簇成員節(jié)點的組合。
在簇建立階段,每個節(jié)點都保存一張頻率表,表中包含了可選的頻率。當(dāng)節(jié)點i當(dāng)選為簇頭以后,它會在頻率表中隨機(jī)選擇頻率fx,并在公共頻率中發(fā)出簇頭公告N(fx,i) 。如果發(fā)生這樣一種情況,節(jié)點i收到其它簇的簇頭j所發(fā)出的公告N(fy,j),則它會將頻率表中的fy標(biāo)記為已使用。另一種情況,當(dāng)節(jié)點i收到其它簇發(fā)出的簇頭公告,發(fā)現(xiàn)對方使用的頻率fx與本簇的頻率相同,則會根據(jù)節(jié)點號進(jìn)行優(yōu)先級判斷,其中優(yōu)先級低的節(jié)點必須重新選擇空閑頻率并再度發(fā)出公告。當(dāng)簇的結(jié)構(gòu)建立完成以后,且完成了頻率選擇和公告,隨后需要進(jìn)行的工作則為簇內(nèi)的時隙分配和調(diào)度。
2.1 初始狀態(tài)時隙分配
本協(xié)議在簇內(nèi)采用TDMA方式,由簇頭承擔(dān)起時隙的分配和調(diào)度任務(wù)。在簇結(jié)構(gòu)建立的初始階段,簇頭根據(jù)簇成員情況,按照等長時隙的規(guī)則分配時隙,并廣播時隙分配表,同時簇內(nèi)各節(jié)點完成時間的同步。
圖1 初始狀態(tài)時隙分配
傳感器節(jié)點收到時隙分配表以后,會根據(jù)時隙分配表的安排,按需進(jìn)行數(shù)據(jù)發(fā)送。如果節(jié)點暫時沒有數(shù)據(jù)需要發(fā)送,那么其無線模塊則始終保持休眠。當(dāng)節(jié)點采集到信息后而需要發(fā)送數(shù)據(jù)時,則在它所分配的時隙中進(jìn)行數(shù)據(jù)發(fā)送準(zhǔn)備,并將無線模塊喚醒。
在所分配時隙的開始,傳感器節(jié)點先發(fā)送一個“開始發(fā)送”的控制信息,然后啟動數(shù)據(jù)發(fā)送。如果節(jié)點在時隙內(nèi)完成了數(shù)據(jù)發(fā)送,則在結(jié)尾時發(fā)送一個“發(fā)送完成”的控制信息,隨后節(jié)點進(jìn)入休眠狀態(tài)而關(guān)閉無線模塊。如果節(jié)點在所分配的時隙內(nèi)沒有完成數(shù)據(jù)發(fā)送,則會在時隙結(jié)尾時發(fā)送一個“申請繼續(xù)發(fā)送”的控制信息。
如果傳感器節(jié)點暫時沒有生成需要發(fā)送的數(shù)據(jù),那么它的無線模塊則始終保持休眠,直至下一時間幀的開始。同樣,若簇頭沒有收到節(jié)點的“開始發(fā)送”信息,則簇頭的無線模塊會進(jìn)行休眠,直至下一個時隙開始。
圖2 節(jié)點發(fā)送信息時的時隙內(nèi)分配
(1)
2.2 時隙調(diào)整
每一幀結(jié)束后,簇頭會根據(jù)各個時隙的使用情況,進(jìn)行時隙分配調(diào)整。針對時隙的忙閑情況,定義:對于前一時間幀發(fā)送了“申請繼續(xù)”請求的時隙,可稱為繁忙時隙;對于前一時間幀發(fā)送完數(shù)據(jù)后并沒有發(fā)送“申請繼續(xù)”請求的時隙,可稱為工作時隙;而對于前一幀沒有發(fā)送過任何數(shù)據(jù)的時隙,則可稱為空閑時隙。
針對兩種特殊情況,如果前一幀一直都沒有出現(xiàn)過繁忙時隙,或者前一幀的所有時隙都是繁忙時隙,則保持前一時間幀的時隙分配狀態(tài)不變。
如果前一時間幀有部分時隙為繁忙時隙,則需對所有時隙進(jìn)行重新分配。設(shè)簇頭編號為0,簇成員節(jié)點編號分別為1~n,則該簇共計有n+1個節(jié)點。可以用Tc來表示控制時隙的時長,對于第i個時間幀的第j個時隙長度則表示為Ts(i,j) 。針對不同節(jié)點,需要設(shè)置參數(shù)As來進(jìn)行時隙長度的控制。對于有繁忙時隙的節(jié)點A,設(shè)定As(i+1,a)=1.5;對于有工作時隙的節(jié)點B,可設(shè)定As(i+1,b)=1;對于有空閑時隙的節(jié)點C,則設(shè)定As(i+1,c)=0.5。這樣的參數(shù)As設(shè)置,可以有區(qū)分性地改變不同忙閑程度節(jié)點的時隙使用情況,增大繁忙節(jié)點的時隙分配所得,減小空閑節(jié)點的占用時隙長度。此時
(2)
經(jīng)過時隙調(diào)整,發(fā)送需求較多的節(jié)點,所分配時隙的時長得到延長;而無數(shù)據(jù)發(fā)送需求的節(jié)點,分配所得的時隙時長被縮短。為防止時隙的時長被無限延長或縮短,可以根據(jù)實際應(yīng)用的需求,制訂Ts的上限Tsmax和下限Tsmin,當(dāng)Ts(i,j)≥Tsmax時,As(i+1,j)的上限為1;而當(dāng)Ts(i,j)≤Tsmin時,As(i+1,j)的下限為1 。
為簡化起見,設(shè)繁忙時隙、工作時隙和空閑時隙出現(xiàn)的概率相等。如果在前一個時間幀的時隙內(nèi),節(jié)點沒有發(fā)送完畢數(shù)據(jù),而需要在本時間幀內(nèi)繼續(xù)發(fā)送數(shù)據(jù),那么前一個時間幀的時隙開始到本時間幀時隙開始的平均時延為Tframe,已發(fā)送數(shù)據(jù)時長為Tslot-Ta-Tc,而剩余需發(fā)送數(shù)據(jù)時長為td-(Tslot-Ta-Tc)=td-Tslot+Ta+Tc,則可算出在此情況下數(shù)據(jù)發(fā)送平均時延為
(3)
由此增加的時延為
ΔD(i)=D′(i)-D(i)=Tframe-Tslot+Tc
(4)
在實際情況下,若繁忙時隙出現(xiàn)的概率為pb,那么全網(wǎng)的數(shù)據(jù)發(fā)送平均時延為
(5)
(6)
為了對本協(xié)議進(jìn)行分析,設(shè)置仿真環(huán)境[15]:在100 m×100 m的正方形區(qū)域里,隨機(jī)分布著55個傳感器節(jié)點。這些傳感器節(jié)點分為5個簇,每個簇包含1個簇頭和10個簇成員節(jié)點,簇半徑為30 。傳感器節(jié)點采集所得的數(shù)據(jù)包大小為512 kB,數(shù)據(jù)傳輸速率為24 kbit·s-1。每個傳感器節(jié)點的發(fā)送功耗為462 mW,接收功耗為346 mW,偵聽功耗為330 mW。初始狀態(tài)下,控制時隙為20 ms,其余每個時隙為200 ms,每個TDMA幀約2.1 s,每輪持續(xù)100個TDMA幀,共歷時210 s。仿真過程將本協(xié)議和基于LEACH算法的TDMA MAC協(xié)議[16]、TC-MAC協(xié)議[17]進(jìn)行了比較。
圖3 平均能耗比較
圖3根據(jù)每秒監(jiān)測事件發(fā)生概率的不同值,比較了幾種協(xié)議的每節(jié)點平均能耗。TC-MAC采用了各種機(jī)制以減少簇頭的空閑偵聽,因此節(jié)點的平均能耗顯著下降。本協(xié)議(SDC-MAC)在TC-MAC的基礎(chǔ)上進(jìn)一步降低了能耗。從原理上分析,主要是由于本協(xié)議對節(jié)點發(fā)送接收數(shù)據(jù)采用了忙閑控制,在閑時節(jié)點處于休眠狀態(tài),這樣可以大幅降低網(wǎng)絡(luò)的平均能耗。
圖4根據(jù)每秒監(jiān)測事件發(fā)生概率的不同值,比較了幾種協(xié)議的數(shù)據(jù)包傳輸時延。當(dāng)信息采集概率較小時,網(wǎng)絡(luò)的數(shù)據(jù)流量稀少,SDC-MAC的控制機(jī)制復(fù)雜,因此平均時延反而較大。而當(dāng)信息采集概率增大時,網(wǎng)絡(luò)的數(shù)據(jù)流量隨之增大,傳感器節(jié)點在監(jiān)測中得到數(shù)據(jù)后保存在緩存中等待發(fā)送的概率也增大,因此SDC-MAC根據(jù)節(jié)點的數(shù)據(jù)發(fā)送需求動態(tài)調(diào)整時隙,使得緩存中數(shù)據(jù)量交多的節(jié)點分配到的時隙也會更長,因此有效減少了平均時延。從仿真結(jié)果中可以看出,當(dāng)數(shù)據(jù)流量較小時,SDC-MAC并不具有優(yōu)勢。隨著數(shù)據(jù)流量的逐漸增大,本協(xié)議可以在較高數(shù)據(jù)流量的情況下有效地減少數(shù)據(jù)包傳輸時延。
圖4 數(shù)據(jù)包傳輸時延比較
SDC-MAC是一種基于調(diào)度及動態(tài)時隙分配的無線傳感器網(wǎng)絡(luò)MAC協(xié)議,它使用FDMA對簇間的無線信道進(jìn)行分配,同時采用可變長時隙分配解決每個簇的通信。簇頭根據(jù)前一幀的時隙使用情況,設(shè)置參數(shù)AS來進(jìn)行時隙長度的控制,對于繁忙時隙、工作時隙和空閑時隙,分別給予不同的AS值,據(jù)此動態(tài)調(diào)整時隙的長度,并調(diào)整時隙分配表。節(jié)點的無線模塊根據(jù)時隙的安排情況決定休眠或喚醒,以實現(xiàn)能耗的節(jié)省。仿真結(jié)果表明,該算法有效地降低了網(wǎng)絡(luò)的平均能量消耗,網(wǎng)絡(luò)流量高時,平均數(shù)據(jù)包延遲減少。因此,對于節(jié)點數(shù)量較多的無線傳感器網(wǎng)絡(luò),若網(wǎng)絡(luò)的監(jiān)測數(shù)據(jù)上傳頻率較高且上傳的數(shù)據(jù)量較大時,會帶來較高的網(wǎng)絡(luò)流量,使用SDC-MAC可以很好地實現(xiàn)全網(wǎng)的能耗和傳輸性能的優(yōu)化。
[1] Quang P T A, Kim D S. Clustering algorithm of hierarchical structures in large-scale wireless sensor and actuator networks[J]. Journal of Communications & Networks, 2015, 17(5):473-481.
[2] 王明偉,陳立萬,李洪兵,等.基于ZigBee協(xié)議WSN在智能家居中的控制實現(xiàn)[J].電子科技,2016,29(3):114-117.
[3] 黃廷輝,伊凱,崔更申,等.基于非均勻分簇的無線傳感器網(wǎng)絡(luò)分層路由協(xié)議[J].計算機(jī)應(yīng)用,2016,36(1):66-71.
[4] Yang O, Heinzelman W B. Modeling and performance analysis for duty-cycled MAC protocols with applications to S-MAC and X-MAC[J]. IEEE Transactions on Mobile Computing, 2012, 11(6):905-921.
[5] Munadi R, Sulistyorini A E, Ulfah F S F, et al. Simulation and analysis of energy consumption for S-MAC and T-MAC protocols on wireless sensor network[C].Wireless and Mobile. IEEE, 2015.
[6] Vikas,Nand P.Contention based energy efficient wireless sensor network - A survey[C]. Greater,Noida:2015 International Conference on Computing,Communication & Automation,2015.
[7] 張智超.基于不均等分層分簇的無線傳感器網(wǎng)絡(luò)協(xié)議[J].電子科技,2015,28(3):83-86.
[8] Rajendran V,Obraczka K,Garcialunaaceves JJ.Energy-efficent collision-free medium access control for wireless sensor networks[J].Wireless Networks,2006,12(1):63-78.
[9] Lu G, Krishnamachari B, Raghavendra C S. An adaptive energy-efficient and low-latency MAC for data gathering in wireless sensor networks[J].Wireless Communications & Mobile Computing,2007,7(7):863-875.
[10] Ergen S C,Varaiya P.PEDAMACS: Power efficient and delay aware medium access protocol for sensor networks[J].IEEE Transactions on Mobile Computing,2006,5(7):920-930.
[11] Rhee I,Warrier A,Aia M,et al.Z-MAC:a hybrid MAC for wireless sensor networks[J].IEEE/ACM Transactions on Networking,2008,16(3):511-524.
[12] Li Mo,Li Zhenjiang,Athanasios V Vasilakos.A survey on topology control in wireless sensor networks:taxonomy,comparative study,and open issues[J].Proceedings of the IEEE,2013,101(12):2538-2557.
[13] Illsoo Sohn,Jong-Ho Lee,Sang Hyun Lee.Low-energy adaptive clustering hierarchy using affinity propagation for wireless sensor networks[J].IEEE Communications Letters,2016,20(3):558-561.
[14] Jiang Changjiang,Xiang Min,Shi Weiren.Overview of cluster-based routing protocols in wireless sensor networks[C].Wuhan:International Conference on Electric Information and Control Engineering,2011.
[15] Omari M,Laroui S.Simulation, comparison and analysis of wireless sensor networks protocols:LEACH, LEACH-C, LEACH-1R and HEED[C].Boumerdes:2015 4th International Conference on Electrical Engineering,2015.
[16] Alvi A N,Bouk S H,Ahmed S H,et al.Enhanced TDMA based MAC protocol for adaptive data control in wireless sensor networks[J].Journal of Communications and Networks,2015,17(3):247-255.
[17] 謝茂濤.一種基于超時機(jī)制的分簇?zé)o線傳感器網(wǎng)絡(luò)MAC協(xié)議[J].計算機(jī)時代,2008(8):16-17.
Dynamic Time Slot Allocation MAC Protocol for Clustered Wireless Sensor Networks
ZHOU Wei
(Shanghai Information Network Co.,Ltd.,Shanghai 200081,China)
In order to reduce the average energy consumption of large scale wireless sensor networks, a scheduling based MAC protocol with dynamic time slot allocation (SDC-MAC) is presented for clustered wireless sensor networks. Among different clusters, the wireless channel is allocated with FDMA, and time slots with variable length are allocated to each node in clusters. With the change of cluster structure in the network, cluster heads dynamic adjust the length of time slots by means of time slot allocation notification, and the cluster members decide to sleep or wake according to control signals. Simulation results show that with the proposed algorithm, average energy consumption of the networks is effectively reduced, and the average packet delay is decreased when the network data flow is high.
wireless sensor networks;MAC protocol;clustering; time slot
2016- 11- 08
周偉(1972-),男,博士,高級工程師。研究方向:數(shù)據(jù)通信。
10.16180/j.cnki.issn1007-7820.2017.09.034
TN915.04;TP393.0
A
1007-7820(2017)09-126-04