無(wú)線(xiàn)傳感網(wǎng)絡(luò)(WSN)設(shè)計(jì)經(jīng)典參考實(shí)例(一)
一、無(wú)線(xiàn)傳感網(wǎng)絡(luò)傳輸協(xié)議綜述
1、無(wú)線(xiàn)傳感網(wǎng)絡(luò)協(xié)議棧的構(gòu)成
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)協(xié)議棧由物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層5 部分組成,和互聯(lián)網(wǎng)協(xié)議棧的五層協(xié)議相對(duì)應(yīng)。
無(wú)線(xiàn)傳感網(wǎng)絡(luò)協(xié)議棧
物理層:數(shù)據(jù)收集、采樣、發(fā)送、接收,以及信號(hào)的調(diào)制解調(diào);
數(shù)據(jù)鏈路層:媒體接入控制,網(wǎng)絡(luò)節(jié)點(diǎn)間可靠通信鏈路的建立,為鄰居節(jié)點(diǎn)提供可靠的通信通道;
網(wǎng)絡(luò)層:發(fā)現(xiàn)和維護(hù)路由;
應(yīng)用層:提供安全支持,實(shí)現(xiàn)密鑰管理和安全組播;
傳輸層:為端到端的連接提供可靠的傳輸、流量控制、差錯(cuò)控制、QoS 等服務(wù),即便是在OSI 模型中也只有該層是負(fù)責(zé)總體數(shù)據(jù)傳輸和控制的,因此非常重要。
2、傳統(tǒng)協(xié)議的不足之處
傳統(tǒng)IP 網(wǎng)絡(luò)主要使用協(xié)議棧中傳輸層的UDP 和TCP 協(xié)議控制數(shù)據(jù)傳輸。UDP 協(xié)議是面向無(wú)連接的傳輸協(xié)議,不提供對(duì)數(shù)據(jù)包的流量控制及錯(cuò)誤恢復(fù);TCP 協(xié)議則提供了可靠的傳輸保證,如利用滑動(dòng)窗口和AIMD 等機(jī)制進(jìn)行擁塞控制,以及使用重傳進(jìn)行差錯(cuò)控制。但TCP 協(xié)議卻不能直接用于WSN,主要原因如下:
(1) TCP 協(xié)議遵循端到端(end-to-end)的設(shè)計(jì)思想,數(shù)據(jù)包的傳輸控制任務(wù)被賦予網(wǎng)絡(luò)的端節(jié)點(diǎn)上,中間節(jié)點(diǎn)只承擔(dān)數(shù)據(jù)包的轉(zhuǎn)發(fā)。而WSN 以數(shù)據(jù)為中心,中間節(jié)點(diǎn)可能會(huì)對(duì)相關(guān)數(shù)據(jù)進(jìn)行在網(wǎng)處理(In-network Processing),即根據(jù)數(shù)據(jù)相關(guān)性對(duì)多個(gè)數(shù)據(jù)包內(nèi)的信息進(jìn)行綜合處理,得到新的數(shù)據(jù)包發(fā)送給接收端,直接使用TCP 協(xié)議會(huì)導(dǎo)致將此視為丟包而引發(fā)重傳。
?。?) TCP 協(xié)議建立和釋放連接的握手機(jī)制相對(duì)比較復(fù)雜,耗時(shí)較長(zhǎng),不利于傳感器節(jié)點(diǎn)及時(shí)反饋被監(jiān)測(cè)對(duì)象的相關(guān)信息。WSN 網(wǎng)絡(luò)拓?fù)涞膭?dòng)態(tài)變化也給TCP 連接狀態(tài)的建立和維護(hù)帶來(lái)了一定的困難。
?。?) TCP協(xié)議采用基于數(shù)據(jù)包(packet-based)的可靠性度量,即盡力保證所有發(fā)出的數(shù)據(jù)包都被接收節(jié)點(diǎn)正確收到。在WSN 中,可能會(huì)有多個(gè)傳感器節(jié)點(diǎn)監(jiān)測(cè)同一對(duì)象,使得監(jiān)測(cè)數(shù)據(jù)具有很強(qiáng)的冗余性和關(guān)聯(lián)性。只要最終獲取的監(jiān)測(cè)信息能夠描述對(duì)象的真實(shí)狀況,具有一定的逼真度(fidelity),并不一定要求數(shù)據(jù)包傳輸?shù)耐耆煽?,這種方式也被稱(chēng)為基于事件的(event-based)可靠性度量。
(4) TCP 協(xié)議中數(shù)據(jù)包重傳通過(guò)端節(jié)點(diǎn)之間的ACK 反饋和超時(shí)機(jī)制來(lái)保證。傳感器網(wǎng)絡(luò)數(shù)據(jù)包中所含的數(shù)據(jù)量相對(duì)較小,大量ACK 包的傳輸會(huì)加重傳輸負(fù)載和能量消耗。并且,每次ACK 確認(rèn)和數(shù)據(jù)包重傳都要從發(fā)送端發(fā)出經(jīng)歷多跳傳輸路徑到達(dá)目的端,引發(fā)整條路徑上所有節(jié)點(diǎn)的能量消耗。
評(píng)論