陳宇
摘 要:ZigBee符合IEEE802.15.4協(xié)議標(biāo)準(zhǔn),節(jié)點平時工作在睡眠模式,具有低功耗、數(shù)據(jù)傳輸可靠、自組網(wǎng)絡(luò)(Mesh)、兼容性好、安全性高、低組網(wǎng)成本等特點,由于帶寬受限,沖突碰撞不可避免,文章分析CSMA/CA在ZigBee網(wǎng)絡(luò)中的應(yīng)用。
關(guān)鍵詞:ZigBee;智能家居;沖突避讓
1.ZigBee通信沖突
智能家居通過zigbee傳感網(wǎng)將家中的各種設(shè)備,如音視頻設(shè)備、照明系統(tǒng)、窗簾控制、空調(diào)控制、安防系統(tǒng)、數(shù)字影院系統(tǒng)、影音服務(wù)器、影柜系統(tǒng)、網(wǎng)絡(luò)家電等)連接到一起,提供家電控制、照明控制、電話遠程控制、室內(nèi)外遙控、防盜報警、環(huán)境監(jiān)測、暖通控制、紅外轉(zhuǎn)發(fā)以及可編程定時控制等多種功能和手段。然而,ZigBee終端通信時帶寬有限,數(shù)據(jù)傳輸必然會發(fā)生碰撞,使用802.11局域網(wǎng)標(biāo)準(zhǔn)協(xié)議CSMA/CA,同時配合停止等待協(xié)議,能夠有效抑制信息交互的沖突避讓。
2. 802.11MAC機制
802.11標(biāo)準(zhǔn)設(shè)計了獨特的MAC層。如圖1所示,它通過協(xié)調(diào)功能來確定在基本服務(wù)器集BBS中移動站在什么時間能發(fā)送和數(shù)據(jù)或接收數(shù)據(jù)。802.11的MAC層在物理層的上面,它包括兩個子層。
(1)分布協(xié)調(diào)功能DCF。DCF不采用任何中心控制,而是在每一個借點使用CSMA機制的分布式接入算法,讓各個站通過爭用信道來獲取發(fā)送權(quán)。因此DCF向上提供曾用服務(wù),802.11協(xié)議規(guī)定,所有的實現(xiàn)都必須有DCF功能。
(2)點協(xié)調(diào)功能PCF。PCF是選項,是用介入點AP集中控制整個BBS內(nèi)的活動,因此自組網(wǎng)絡(luò)就沒有PCF子層。PCF使用集中控制的接入算法,用類似于探詢的方法把發(fā)送數(shù)據(jù)權(quán)輪流給各個站,從而避免了碰撞的產(chǎn)生。對于時間敏感的業(yè)務(wù),如分組語音,就應(yīng)使用提供無爭用服務(wù)的點協(xié)調(diào)功能PCF。
3. CSMA/CA協(xié)議的工作原理
為了盡量避免碰撞,802.11規(guī)定,所有的站在完成發(fā)送后,必須再等待一段很短的時間(繼續(xù)監(jiān)聽)才能發(fā)送下一幀。這段時間的通稱是幀間間隔IFS。幀間間隔的長短取決于該站要發(fā)送的幀的類型。高優(yōu)先級的幀需要等待的時間較短,因此可以優(yōu)先獲得發(fā)送權(quán),但低優(yōu)先級幀就必須等待較長的時間。若低優(yōu)先級幀還沒來得及發(fā)送而其他高優(yōu)先級幀已發(fā)送到媒體,則媒體變?yōu)槊B(tài)因而低優(yōu)先級幀就只能再推遲發(fā)送了。這樣就減少了發(fā)生碰撞的機會。至于各種幀間間隔的具體長度,這取決于使用的物理層特性。三種幀間間隔的作用,如圖2所示:
1.SIFT,即短(Short)幀間間隔。SIFT是最短的幀間間隔,用來分隔開屬于一次對話的各幀。在這段時間內(nèi),一個站應(yīng)當(dāng)能夠從發(fā)送方式切換到接收方式。使用SIFS的幀類型有:ACK幀、CTS幀、由過長的MAC幀分片后的數(shù)據(jù)幀,以及所有回答AP探詢的幀和在PCF方式中接入點AP發(fā)送出的任何幀。
2.PIFS,即點協(xié)調(diào)功能幀間間隔(比SIFS長),是為了在開始使用PCF方式時(在PCF方式下使用,沒有爭用)優(yōu)先獲得接入到媒體中。PIFS的長度是SIPS加一個時隙時間(slot time)的長度。時隙的長度是這樣確定的:在一個基本服務(wù)集BSS內(nèi),當(dāng)某個站在一個時隙開始時接入到信道時,那么在下一個時隙開始時,其它站就都能檢測出信道以轉(zhuǎn)變?yōu)槊B(tài)。
3.DIFS,即分布協(xié)調(diào)功能幀間間隔(最長IFS),在DCF方式中用來發(fā)送數(shù)據(jù)幀和管理幀。DIFS的長度比PIFS再多一個時隙長度。
4.減少碰撞NAV機制
為了盡量減少碰撞的機會,802.11標(biāo)準(zhǔn)采用了一種叫做虛擬載波監(jiān)聽地的機制,這就是讓源站把它要占用的信道時間(包括目的站發(fā)回確認(rèn)幀所需時間)寫入到所發(fā)送的數(shù)據(jù)幀中,(即在首部中的“持續(xù)時間”字段中寫入需要占用信道時間,以微秒為單位,一直到目的站把幀確認(rèn)完為止),以便使其他所有的站在這一段時間都不要發(fā)送數(shù)據(jù)?!疤摂M載波監(jiān)聽”的意思是其他各站并沒有監(jiān)聽信道,而是由于這些站都知道了源站正在用信道才不發(fā)送數(shù)據(jù)。這種好像是其他站都監(jiān)聽了信道。
當(dāng)站點檢測到正在通信中傳送的幀“持續(xù)時間”字段時,就調(diào)整自己的網(wǎng)絡(luò)分配向量NAV。NAV指出了信道處于忙狀態(tài)的持續(xù)時間。信道處于忙狀態(tài)就表示:或者是由于物理層的載波監(jiān)聽檢測到信道忙,或者是由于MAC層的虛擬載波監(jiān)聽機制指出了信道忙。
5.信道預(yù)約
為了更好的解決隱蔽站帶來的碰撞問題。802.11允許要求發(fā)送數(shù)據(jù)的站對信道進行預(yù)約。源站A發(fā)送數(shù)據(jù)幀之前發(fā)送一個短的控制幀(請求發(fā)送RTS),它包括源地址,目的地址和這次通信所需的持續(xù)時間。若信道空閑,則目的站B就響應(yīng)一個控制幀(允許發(fā)送CTS)。如圖3所示:
C處于A的傳輸范圍內(nèi),但不在B的差un數(shù)范圍內(nèi)。因此C能夠收到A發(fā)送的RTS,但經(jīng)過一小段時間后,C不會收到B發(fā)送的CTS幀。這樣,在A向B發(fā)送數(shù)據(jù)時,C也可以發(fā)送自己的數(shù)據(jù)給其他的站而不會干擾B。
D收不到A發(fā)送的RTS幀,但能收到B發(fā)送的CTS幀。因此D知道B將要求和A通信,因此D在A和B通信的一段時間內(nèi)不能發(fā)送數(shù)據(jù),因而不會干擾B接收A發(fā)來的數(shù)據(jù)。
E能收到RTS和CTS,因此E和B一樣,在A發(fā)送數(shù)據(jù)幀和B發(fā)送確認(rèn)幀的整個過程中都不能發(fā)送數(shù)據(jù)。
6.小結(jié)
與普通家居相比,智能家居不僅具有傳統(tǒng)的居住功能,更兼?zhèn)浣ㄖ⒕W(wǎng)絡(luò)通信、信息家電、設(shè)備自動化,實現(xiàn)綜合智能控制和管理,不需要大量布線,且不會破壞建筑的美觀性,利用CSMA/CA沖突檢測機制,能夠提高ZigBee網(wǎng)絡(luò)的有效通信,同時解決暴露終端、隱蔽終端問題,提高網(wǎng)絡(luò)的穩(wěn)定性。
參考文獻:
[1]葉朝輝.楊士元.智能家居網(wǎng)絡(luò)研究綜述[J].計算機應(yīng)用研究,2000
[2]徐君麗,劉冀偉,王志良.基于無線網(wǎng)絡(luò)的智能監(jiān)控系統(tǒng)設(shè)計與實現(xiàn).微計算機信息,2015
[3]高守瑋,吳燦陽ZigBee技術(shù)實踐教程[M].北京:北京航空航天大學(xué)出版社,2017
[4]張亮,基于ZigBee技術(shù)的智能家居環(huán)境監(jiān)測系統(tǒng)[D].武漢科技大學(xué).2009
[5]JaneK.Hart,Kirk Martinez.Environmental Sensor Networks:A revolution in the earth system science7.Earth—Science Reviews,2016