z-wave協(xié)議是一種低速率,半雙工的可靠,健壯的無(wú)線傳輸協(xié)議,適用于低成本的網(wǎng)狀控制網(wǎng)絡(luò)。協(xié)議的主要目的是以可靠的方式從一個(gè)控制單元到一個(gè)或多個(gè)節(jié)點(diǎn)網(wǎng)絡(luò)傳輸短控制消息。z-wave協(xié)議不是用來(lái)傳輸大量數(shù)據(jù)或者傳輸任何類(lèi)型的流或臨界時(shí)間的數(shù)據(jù)。
協(xié)議由下至上分為5層:物理層、MAC層、傳輸層、路由層和應(yīng)用層。MAC層負(fù)責(zé)設(shè)備間無(wú)線數(shù)據(jù)鏈路的建立、維護(hù)和結(jié)束。同時(shí)控制信道接入,進(jìn)行幀校驗(yàn),并預(yù)留時(shí)隙管理。為了提高數(shù)據(jù)傳輸?shù)目煽啃裕?dāng)有節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳送時(shí),媒體介質(zhì)層還采用了載波偵聽(tīng)多址、沖突避免(CSMA/CA)機(jī)制以防止其他節(jié)點(diǎn)傳送信號(hào)。
傳輸層主要用于提供節(jié)點(diǎn)之間的可靠的數(shù)掘傳輸,主要功能包括重新傳輸、幀校驗(yàn)、幀確認(rèn)以及實(shí)現(xiàn)流量控制等。路由層控制節(jié)點(diǎn)間數(shù)據(jù)幀的路由、確保數(shù)據(jù)幀在不同節(jié)點(diǎn)間能夠多次重復(fù)傳輸、掃描網(wǎng)絡(luò)拓?fù)浜途S持路由表等。應(yīng)用層負(fù)責(zé)Z-Wave網(wǎng)絡(luò)中的譯碼和指令的執(zhí)行,主要功能包括曼徹斯特譯碼、指令識(shí)別、分配HomeID和Node ID、實(shí)現(xiàn)網(wǎng)絡(luò)中控制器的復(fù)制以及對(duì)于傳送和接收幀的有效荷載進(jìn)行控制等。
Z-Wave技術(shù)的五大協(xié)議介紹
1)物理層
Z-Wave是一種低速率無(wú)線技術(shù),專(zhuān)注于低速率應(yīng)用,有9.6Kbit/s和40Kbit/s兩種傳輸速率,前者用來(lái)傳輸控制命令綽綽有余,而后者可以提供更為高級(jí)的網(wǎng)絡(luò)安全機(jī)制。它的工作頻段靈活,處于900MHz (ISM (Industrial Scientific Medical)頻帶)、868.42MHz(歐洲)、908.42MHz(美國(guó)),工作在這些頻帶上的設(shè)備相對(duì)較少,而ZigBee或藍(lán)牙所使用的2.4GHz頻帶正變得日益擁擠,相互之間的干擾不可避免,因此Z-Wave技術(shù)更能保證通信的可靠性。
Z-Wave的功耗極低。它使用了頻移鍵控(Frequency-Shift Keying,F(xiàn)SK)無(wú)線通方式,適合智能家居網(wǎng)絡(luò)使用,電池供電節(jié)點(diǎn)通常保持在睡眠狀態(tài),每隔一段時(shí)間喚醒一次,監(jiān)聽(tīng)是否有需要接收的數(shù)據(jù),兩節(jié)普通7號(hào)電池可以使用長(zhǎng)達(dá)10年時(shí)間,免去了頻繁充電和更換電池的麻煩,保證了應(yīng)用的長(zhǎng)久穩(wěn)定。
Z-Wave的系統(tǒng)復(fù)雜性比ZigBee小, 比藍(lán)牙設(shè)備要小得多,協(xié)議簡(jiǎn)單,所要求的存儲(chǔ)空間很小。標(biāo)準(zhǔn)的Z-Wave模塊中設(shè)計(jì)了32KB的閃存用于存放協(xié)議,而同等功能的ZigBee模塊則至少需要128KB才能使用,藍(lán)牙則需要更多。所以Z-Wave模塊的成本要低于ZigBee或者藍(lán)牙設(shè)備。
Z-Wave網(wǎng)絡(luò)容量為單網(wǎng)絡(luò)最多232個(gè)節(jié)點(diǎn),遠(yuǎn)低于ZigBee的65535個(gè)。Z-Wave節(jié)點(diǎn)的典型覆蓋范圍為室內(nèi)30m以及室外100m,最多支持4級(jí)路由。在應(yīng)用的普適性方面差于ZigBee,不能使用單一技術(shù)建立大規(guī)模網(wǎng)絡(luò)。但對(duì)于智能家居應(yīng)用來(lái)說(shuō),已經(jīng)足以覆蓋到全部范圍。通過(guò)使用虛擬節(jié)點(diǎn)技術(shù),Z-Wave網(wǎng)絡(luò)也可以與其他類(lèi)型的網(wǎng)絡(luò)進(jìn)行通信。
2) MAC層
Z-Wave的MAC層控制無(wú)線媒介。數(shù)據(jù)流采用曼徹斯特編碼,數(shù)據(jù)幀包含了前碼、幀頭、幀數(shù)據(jù)、幀尾。幀數(shù)據(jù)是幀傳遞給傳輸層的部分。所有數(shù)據(jù)都通過(guò)小端模式傳輸。MAC層獨(dú)立無(wú)線媒介、頻率和調(diào)制方法,但是要求接收到數(shù)據(jù)時(shí)能從曼徹斯特編碼比特流或解碼比特流獲得幀數(shù)據(jù)或整個(gè)二進(jìn)制信號(hào)。數(shù)據(jù)通過(guò)8bit據(jù)塊傳輸,第—位是最高有效位(Most Significant Bit,MSB),數(shù)據(jù)經(jīng)過(guò)曼徹斯特編碼,以便得到一個(gè)無(wú)直流的信號(hào)。
MAC層具有沖突避免機(jī)制,防止節(jié)點(diǎn)在其他節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)開(kāi)始數(shù)據(jù)的傳輸。沖突避免機(jī)制通過(guò)以下方法實(shí)現(xiàn):讓不在傳輸數(shù)據(jù)的節(jié)點(diǎn)進(jìn)入接收模式,如果MAC層正處于接收數(shù)據(jù)階段則延遲傳輸,沖突避免機(jī)制在所有類(lèi)型的節(jié)點(diǎn)上都被激活。當(dāng)媒介正忙時(shí),幀的傳輸延遲一個(gè)隨機(jī)的毫秒數(shù)。
MAC層沖突避免機(jī)制的核心是CSMA/CA,包括載波監(jiān)聽(tīng)、幀間間隔和隨機(jī)退避機(jī)制。每=個(gè)節(jié)點(diǎn)使用載波偵聽(tīng)多路訪問(wèn)(Carrier Sense Multiple Access,CSMA)機(jī)制的分布接入算法,讓各個(gè)節(jié)點(diǎn)爭(zhēng)用信道來(lái)獲取發(fā)送權(quán)。CSMA/CA方式采用兩次握手機(jī)制,即ACK (Acknowledgement)機(jī)制:當(dāng)接收方正確地接收幀后,就會(huì)立即發(fā)送確認(rèn)幀ACK,發(fā)送方收到該確認(rèn)幀,。就知道該幀已經(jīng)成功發(fā)送。如果媒介閑時(shí)間大于等于幀間隔,就傳輸數(shù)據(jù),否則將延時(shí)傳輸。
CSMA/CA的基礎(chǔ)是載波監(jiān)聽(tīng)。物理載波監(jiān)聽(tīng)在物理層完成,通過(guò)對(duì)天線接收的有效信號(hào)進(jìn)行檢測(cè),若探測(cè)到這樣的有效信號(hào),物理載波監(jiān)聽(tīng)認(rèn)為信道忙,MAC載波監(jiān)聽(tīng)在MAC層完成,通過(guò)檢測(cè)MAC幀中的持續(xù)間域完成。信道空閑時(shí)才能發(fā)送數(shù)據(jù),如果信道繁忙,就執(zhí)行退避算法,然后重新檢測(cè)信道,避免共享介質(zhì)碰撞。介質(zhì)繁忙狀態(tài)剛剛結(jié)束的時(shí)間是碰撞發(fā)生的高峰時(shí)刻,許多節(jié)點(diǎn)郡在等待介質(zhì),介質(zhì)空閑的第一時(shí)間所有節(jié)點(diǎn)都試圖發(fā)送,會(huì)導(dǎo)致大量碰撞,所以CSMA/CA采用隨機(jī)退避時(shí)間控制各個(gè)節(jié)點(diǎn)幀的發(fā)送。
3)傳輸層
傳輸層主要用于提供節(jié)點(diǎn)之間可靠的數(shù)據(jù)傳輸,主要功能包括重新傳輸、幀校驗(yàn)、幀確認(rèn)和實(shí)現(xiàn)流量控制等。傳輸層幀共有三種類(lèi)型。
單播幀:?jiǎn)尾蛞粋€(gè)指定的節(jié)點(diǎn)發(fā)送,如果目標(biāo)節(jié)點(diǎn)成功收到此幀,將會(huì)回復(fù)一個(gè)應(yīng)答幀ACK,如果單播幀或者應(yīng)答幀丟失或損壞,單播幀將被重發(fā)。為了避免與其他系統(tǒng)的碰撞,重傳幀將會(huì)有一個(gè)隨機(jī)延遲。隨機(jī)延遲必須與傳輸最大幀長(zhǎng)和接收應(yīng)答幀所花費(fèi)的時(shí)間一致。單播幀在不需要可靠傳輸?shù)南到y(tǒng)中可以選擇關(guān)閉應(yīng)答機(jī)制。應(yīng)答幀是Z-Wave單播幀的一種類(lèi)型,其數(shù)據(jù)域的長(zhǎng)度是o。
多播幀:多播幀將傳輸給網(wǎng)絡(luò)中節(jié)點(diǎn)1到節(jié)點(diǎn)232中的若干個(gè)。多播幀目標(biāo)地址指定了所有的目標(biāo)節(jié)點(diǎn),而不用向每個(gè)節(jié)點(diǎn)發(fā)送一個(gè)獨(dú)立的幀。多播沒(méi)有應(yīng)答,所以這種類(lèi)型的幀不能用在需要可靠傳輸?shù)南到y(tǒng)中,如果多播幀一定要求可靠性,則需要在多播幀之后跟著發(fā)送單播幀。
廣播幀:廣播幀將傳輸給網(wǎng)絡(luò)中所有節(jié)點(diǎn),任何節(jié)點(diǎn)都不對(duì)該幀進(jìn)行應(yīng)答。和多播幀一樣,它也不能用于需要可靠傳輸?shù)南到y(tǒng)中,和多播幀一樣,如果廣播幀一定要求可靠性,則需要在廣播幀之后跟著發(fā)送單播幀。
4)路由層
路由層控制一個(gè)節(jié)點(diǎn)向另—個(gè)節(jié)點(diǎn)的幀的路由。控制器和節(jié)點(diǎn)都參與幀的路由。它們總是處在監(jiān)聽(tīng)狀態(tài)并且有一個(gè)固定的位置。該層負(fù)責(zé)通過(guò)一個(gè)正確的轉(zhuǎn)發(fā)表來(lái)發(fā)送幀,同時(shí)也保證幀在節(jié)點(diǎn)與節(jié)點(diǎn)之間轉(zhuǎn)發(fā)。路由層也要掃描網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)并且維護(hù)控制器中的路由表。
Z- Wave技術(shù)的路由層采用了動(dòng)態(tài)源路由(Dynamic Source Routing,DSR)協(xié)議。DSR協(xié)議是一種按需路由協(xié)議,它允許節(jié)點(diǎn)動(dòng)態(tài)發(fā)現(xiàn)到達(dá)目標(biāo)節(jié)點(diǎn)的路由,每個(gè)數(shù)據(jù)幀的頭部附加有到達(dá)目標(biāo)節(jié)點(diǎn)之前所需經(jīng)過(guò)的節(jié)點(diǎn)列表,即數(shù)據(jù)分組中包含到達(dá)目標(biāo)節(jié)點(diǎn)的完整路由。與傳統(tǒng)的路由方法不同,傳統(tǒng)路由方法如按需距離矢量(AdHoc On-demand Distance Vector Routing,AODV)協(xié)議在分組中只包含下一跳節(jié)點(diǎn)和目的節(jié)點(diǎn)地址,所以DSR不需要周期性廣播網(wǎng)絡(luò)拓?fù)?a target="_blank">信息,避免網(wǎng)絡(luò)大規(guī)模更新,能有效減少網(wǎng)絡(luò)帶寬開(kāi)銷(xiāo),節(jié)約能量消耗。
在發(fā)現(xiàn)路由時(shí),源節(jié)點(diǎn)發(fā)送一個(gè)含有源路由列表的路由請(qǐng)求幀,此時(shí)路由列表只有源節(jié)點(diǎn),收到該幀的節(jié)點(diǎn)繼續(xù)向前發(fā)送該幀,并在路由列表中加入自己的節(jié)點(diǎn)地址,直到到達(dá)目標(biāo)節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)都有一個(gè)用于保存最近收到路由請(qǐng)求的存儲(chǔ)區(qū),
因此可以不重復(fù)轉(zhuǎn)發(fā)已經(jīng)收到的請(qǐng)求幀。部分節(jié)點(diǎn)(如果它們有額外的外部存儲(chǔ)空間)會(huì)將已經(jīng)獲得的源路由表存儲(chǔ)下來(lái)以減少路由開(kāi)銷(xiāo)。當(dāng)收到請(qǐng)求幀時(shí),先查看存儲(chǔ)的路由表中是否存在合適路由,如果有就不再轉(zhuǎn)發(fā),直接返回該路由至源節(jié)點(diǎn),如果請(qǐng)求被轉(zhuǎn)發(fā)到了目標(biāo)節(jié)點(diǎn),那么目標(biāo)節(jié)點(diǎn)就將返回一個(gè)返回路由。
當(dāng)源節(jié)點(diǎn)要與目標(biāo)節(jié)點(diǎn)通信時(shí),源節(jié)點(diǎn)首先廣播一個(gè)具有唯-一ID的RREQ消息,被源節(jié)點(diǎn)無(wú)線覆蓋范圍內(nèi)一個(gè)或多個(gè)具有到目標(biāo)節(jié)點(diǎn)路由信息的中間節(jié)點(diǎn)接收,返回該路由信息至源節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)的路由緩沖區(qū)都會(huì)記錄該節(jié)點(diǎn)偵聽(tīng)到的路由信息。當(dāng)一個(gè)節(jié)點(diǎn)收到RREQ消息時(shí),如果在該節(jié)點(diǎn)最近的請(qǐng)求中包含該請(qǐng)求,則丟棄該請(qǐng)求;如果RREQ路由記錄中包含當(dāng)前節(jié)點(diǎn)的地址,則不進(jìn)行處理,防止形成環(huán)路;如果當(dāng)前節(jié)點(diǎn)就是目標(biāo)節(jié)點(diǎn),則發(fā)送返回路由給源節(jié)點(diǎn);其他情況下,該節(jié)點(diǎn)在RREQ中添加自己的地址,并將該幀廣播出去。
當(dāng)路由列表上的一個(gè)節(jié)點(diǎn)移動(dòng)或掉電時(shí),網(wǎng)絡(luò)拓?fù)鋾?huì)發(fā)生變化,路由不可用。當(dāng)上游節(jié)點(diǎn)通過(guò)MAC層協(xié)議發(fā)現(xiàn)連接不可用時(shí),就會(huì)向上游所有節(jié)點(diǎn)發(fā)送RERR。源節(jié)點(diǎn)收到該RERR后,會(huì)從路由存儲(chǔ)區(qū)中刪除無(wú)效路由,如果需要的話源節(jié)點(diǎn)會(huì)重新發(fā)起路由發(fā)現(xiàn)過(guò)程來(lái)建立新路由。
DSR協(xié)議不需要周期性地交換路由信息,可以減少網(wǎng)絡(luò)開(kāi)銷(xiāo),節(jié)點(diǎn)可以進(jìn)入休眠模式,節(jié)省電池電量。數(shù)據(jù)幀中含有完整的路由信息,節(jié)點(diǎn)可以獲取完整路由中所包含的部分有用信息,如A到B到C的路由中包含了B到C的路由信息,B節(jié)點(diǎn)不需要發(fā)起對(duì)C的路由發(fā)現(xiàn),從而節(jié)省了路由發(fā)現(xiàn)所需的開(kāi)銷(xiāo)。同時(shí),DSR協(xié)議網(wǎng)絡(luò)的規(guī)模受到了限制,因?yàn)閿?shù)據(jù)包中有很多都帶有路由信息,過(guò)長(zhǎng)的路由表會(huì)大幅增加網(wǎng)絡(luò)分組開(kāi)銷(xiāo),鑒于一個(gè)Z-Wave網(wǎng)絡(luò)中最多232個(gè)節(jié)點(diǎn)的限定和最多支持4跳路由,DSR協(xié)議的額外開(kāi)銷(xiāo)并不至于十分嚴(yán)重,增強(qiáng)型節(jié)點(diǎn)類(lèi)型也有更大的外部存儲(chǔ)空間可以存儲(chǔ)最近使用的路由信息,也以硬件開(kāi)銷(xiāo)彌補(bǔ)網(wǎng)絡(luò)性能。
5)應(yīng)用層
應(yīng)用層負(fù)責(zé)Z-Wave網(wǎng)絡(luò)中的譯碼和指令的執(zhí)行,主要功能包括曼徹斯特譯碼、指令識(shí)別、分配Home ID和Node ID、實(shí)現(xiàn)網(wǎng)絡(luò)中控制器的復(fù)制以及對(duì)于傳送和接收幀的有效荷載進(jìn)行控制等。Z-Wave技術(shù)關(guān)注設(shè)備的互操作性和廠商開(kāi)發(fā)的方便性,在應(yīng)用層中引入了相關(guān)機(jī)制以實(shí)現(xiàn)這一點(diǎn)。
為了實(shí)現(xiàn)智能家居控制系統(tǒng)中眾多子系統(tǒng)的相互作用,加強(qiáng)各個(gè)領(lǐng)域廠商產(chǎn)品的相互操作性,Z-Wave提供了標(biāo)準(zhǔn)化的方法來(lái)實(shí)現(xiàn)設(shè)備和設(shè)備之間的相互作用。這允許從某一個(gè)廠商制造的遙控器提供照明子系統(tǒng)的調(diào)光功能,對(duì)另一個(gè)廠商制造的燈光節(jié)點(diǎn)進(jìn)行控制。這樣所有的廠商只需要集中精力開(kāi)發(fā)其所擅長(zhǎng)的產(chǎn)品,它們可以很好地工作在一個(gè)Z-Wave網(wǎng)絡(luò)中,而不需要自己包辦整套智能家居系統(tǒng),給廠商的開(kāi)發(fā)提供了便捷。
評(píng)論
查看更多