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

評論