一、無(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ā)重傳。
(2) 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)了一定的困難。
(3) 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)的能量消耗。
(5) WSN 中非擁塞丟包和多路傳輸?shù)纫鸬臄?shù)據(jù)包傳輸亂序,都會(huì)引發(fā)TCP 協(xié)議的錯(cuò)誤響應(yīng),使得發(fā)送端頻頻進(jìn)入擁塞控制階段,導(dǎo)致傳輸性能下降。
(6) TCP 協(xié)議要求每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)具有獨(dú)一無(wú)二或全網(wǎng)獨(dú)立的網(wǎng)絡(luò)地址。在大規(guī)模的WSN 中,為了減少長(zhǎng)地址位帶來(lái)的傳輸消耗,傳感器節(jié)點(diǎn)可能只具有局部獨(dú)立的或地理位置相關(guān)的網(wǎng)絡(luò)地址或采用無(wú)網(wǎng)絡(luò)地址的傳輸方案,無(wú)法直接使用TCP 協(xié)議。
3、WSN 傳輸協(xié)議研究進(jìn)展
當(dāng)前對(duì)于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)傳輸協(xié)議研究的工作還是側(cè)重于擁塞控制和可靠保證。該研究將擁塞控制分為流量控制、多路分流、數(shù)據(jù)聚合和虛擬網(wǎng)關(guān)等;可靠保證則包括數(shù)據(jù)重傳、冗余發(fā)送。
流量控制中,ERST、PORT 和IFRC 協(xié)議是基于報(bào)告速率調(diào)節(jié)的擁塞控制協(xié)議;Fusion、CCF 是基于轉(zhuǎn)發(fā)速率調(diào)節(jié)的擁塞控制協(xié)議,適合要求數(shù)據(jù)逼真度較高的網(wǎng)絡(luò);Buffer-based、PCCP、CODA 則是基于綜合速率調(diào)節(jié)的擁塞控制協(xié)議。ERST 考慮了可靠性和能耗的因素,通過(guò)調(diào)整報(bào)告速率來(lái)減輕擁塞;PORT 協(xié)議則將報(bào)告速率調(diào)整問(wèn)題建模為優(yōu)化問(wèn)題,解決ERST 的不足;IFRC 則著重保證信道帶寬能更公平地被相鄰多個(gè)節(jié)點(diǎn)所分享。
Fusion 采用了令牌桶機(jī)制,節(jié)點(diǎn)要按照一定規(guī)則積累令牌,且發(fā)送一次數(shù)據(jù)就消耗一個(gè)令牌;CCF 用速率比較的方法,擁塞發(fā)生時(shí)節(jié)點(diǎn)將自身轉(zhuǎn)發(fā)速率與父節(jié)點(diǎn)告知的轉(zhuǎn)發(fā)速率比較,以其中較小的值來(lái)轉(zhuǎn)發(fā)數(shù)據(jù)包。
Buffer-based 采用基于緩沖區(qū)的輕量級(jí)控制機(jī)構(gòu)。發(fā)送數(shù)據(jù)包之前,要求節(jié)點(diǎn)監(jiān)聽(tīng)鄰居節(jié)點(diǎn)的緩沖區(qū)溢出否;PCCP 對(duì)數(shù)據(jù)流賦與不同的加權(quán)優(yōu)先級(jí),來(lái)保證調(diào)整公平性;CODA 結(jié)合了開(kāi)環(huán)和閉環(huán)控制方式來(lái)解決擁塞。網(wǎng)絡(luò)流量突發(fā)導(dǎo)致局部短暫擁塞時(shí)就啟用開(kāi)環(huán)控制。同時(shí),若某被監(jiān)測(cè)事件的發(fā)生頻率低于設(shè)定的信道吞吐量,源節(jié)點(diǎn)即可自行調(diào)整報(bào)告速率,否則就啟動(dòng)閉環(huán)擁塞控制。
多路分流就是通過(guò)多路轉(zhuǎn)發(fā)來(lái)分散流量,解決擁塞問(wèn)題。其中,ARC 協(xié)議是利用網(wǎng)絡(luò)中的冗余節(jié)點(diǎn)構(gòu)建新的轉(zhuǎn)發(fā)路徑,CAR 與ARC 方法相近,BGR 則是在地理路由中增加方向偏離范圍,以此來(lái)擴(kuò)大轉(zhuǎn)發(fā)路徑的可選范圍。
數(shù)據(jù)聚(融)合的必要性和重要性前文已述。協(xié)議包括CONCERT 和PREI。前者采用適應(yīng)性聚合,后者將網(wǎng)絡(luò)劃分為大小相同的網(wǎng)絡(luò),對(duì)來(lái)自同一網(wǎng)格的數(shù)據(jù)進(jìn)行聚合。
可靠性方面,數(shù)據(jù)重傳協(xié)議包括網(wǎng)關(guān)向節(jié)點(diǎn)、節(jié)點(diǎn)向網(wǎng)關(guān)和雙向可靠保證3 類(lèi);冗余發(fā)送則包括拷貝發(fā)送(AFS、Rein form、MMSPEED、GRAB)和編碼冗余。
PSFQ、GARUDA 是網(wǎng)關(guān)向節(jié)點(diǎn)的。前者用緩發(fā)快取進(jìn)行控制,后者則建立層次結(jié)構(gòu),進(jìn)行階段性丟包恢復(fù)。RMST、RBC 是節(jié)點(diǎn)向網(wǎng)關(guān)的。前者是基于單路由協(xié)議設(shè)計(jì)的,除了原有的由數(shù)據(jù)源到網(wǎng)關(guān)的方向之外,增加了后向路徑,用于反饋丟包。BRTM 是雙向可靠保證的。
此外還有5 種隨機(jī)投遞傳輸協(xié)議并分別對(duì)它們建模分析,在仿真對(duì)比的基礎(chǔ)上做出了相關(guān)結(jié)論。這些協(xié)議包括:
1)逐跳可靠傳輸協(xié)議HHR、帶應(yīng)答的逐跳可靠傳輸協(xié)議
HHRA 后者是前者的一個(gè)變體。HHR 是最簡(jiǎn)單的該類(lèi)協(xié)議。協(xié)議中,某轉(zhuǎn)發(fā)節(jié)點(diǎn)將同一數(shù)據(jù)包向其下一跳轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)行多次發(fā)送。只要下一跳節(jié)點(diǎn)收到重發(fā)數(shù)據(jù)包一份副本,它就會(huì)繼續(xù)發(fā)送。HHRA 則要求轉(zhuǎn)發(fā)節(jié)點(diǎn)等待來(lái)自接收者的應(yīng)答包。若收到應(yīng)答包,則終止本跳后續(xù)副本的轉(zhuǎn)發(fā)。
2)逐跳廣播傳輸協(xié)議HHB、帶應(yīng)答的逐跳廣播傳輸協(xié)議
HHBA 后者是前者的一個(gè)變體。HHB 中,轉(zhuǎn)發(fā)節(jié)點(diǎn)向其多個(gè)下一跳鄰節(jié)點(diǎn)多次發(fā)送同一數(shù)據(jù)包。若任何一個(gè)鄰節(jié)點(diǎn)成功接收到至少一個(gè)數(shù)據(jù)包,它就繼續(xù)以一定概率轉(zhuǎn)發(fā)此包。HHBA 則引入應(yīng)答機(jī)制來(lái)增加傳輸可靠性,并減少傳輸時(shí)能量的消耗。
3)Rein form協(xié)議
該協(xié)議在多條隨機(jī)路徑上同時(shí)發(fā)送一個(gè)數(shù)據(jù)包的多個(gè)副本,以此來(lái)產(chǎn)生數(shù)據(jù)冗余,提高傳輸可靠性
4)基于分簇的協(xié)同傳輸協(xié)議。分析了傳輸效能和網(wǎng)絡(luò)吞吐量的改善。協(xié)議分為四步:1)分簇,即確定簇頭并在各簇內(nèi)確定協(xié)同傳輸?shù)墓?jié)點(diǎn);2)簇內(nèi)信息傳輸;3)簇內(nèi)協(xié)同節(jié)點(diǎn)向匯聚節(jié)點(diǎn)發(fā)送數(shù)據(jù);4)匯聚節(jié)點(diǎn)接收和檢測(cè)信號(hào)。該協(xié)議的主要問(wèn)題是協(xié)同節(jié)點(diǎn)間的同步。研究者相信,這種技術(shù)可用于無(wú)線(xiàn)自組織網(wǎng)、無(wú)線(xiàn)局域網(wǎng)及無(wú)線(xiàn)傳感器網(wǎng)等多種場(chǎng)合
5)實(shí)時(shí)傳輸協(xié)議。主要研究了SPEED 協(xié)議,并在TinyOS1.1.11 和Crossbow 公司的Micaz 節(jié)點(diǎn)搭建的平臺(tái)上進(jìn)行了實(shí)驗(yàn)。
總結(jié):
WSN的傳輸控制協(xié)議在以下幾個(gè)方面還有待進(jìn)一步深入研究:
1) 設(shè)計(jì)跨層協(xié)作的傳輸控制協(xié)議。在WSN 中傳輸控制任務(wù)不能僅僅依靠傳輸層來(lái)完成, 傳感器節(jié)點(diǎn)協(xié)議棧中的各個(gè)層次應(yīng)在傳輸層控制機(jī)制的協(xié)調(diào)下進(jìn)行充分的交互與協(xié)作,共同支持和保證數(shù)據(jù)的可靠傳輸。
2) 提高傳輸控制協(xié)議的綜合控制能力。在WSN 應(yīng)用過(guò)程中,網(wǎng)絡(luò)中擁塞和丟包的現(xiàn)象可能會(huì)同時(shí)發(fā)生并互相影響,網(wǎng)關(guān)和節(jié)點(diǎn)之間也會(huì)頻繁的進(jìn)行數(shù)據(jù)交互。目前的控制協(xié)議大多只對(duì)單個(gè)數(shù)據(jù)流方向上的一種問(wèn)題(擁塞或丟包)進(jìn)行處理,新的傳輸控制協(xié)議應(yīng)提供全面的綜合控制機(jī)制。
3) 基于多優(yōu)先級(jí)的控制策略。網(wǎng)絡(luò)中出現(xiàn)不同的數(shù)據(jù)流對(duì)可靠性的要求可能會(huì)不同,需要在協(xié)議設(shè)計(jì)時(shí)考慮對(duì)優(yōu)先級(jí)問(wèn)題的處理。
4) 傳輸控制協(xié)議需要提供公平性保證。在確保傳輸效率的同時(shí),網(wǎng)絡(luò)中的多個(gè)數(shù)據(jù)流應(yīng)按照事先定義的公平性原則分享無(wú)線(xiàn)信道進(jìn)行數(shù)據(jù)傳輸。
5) 支持WSN 中以數(shù)據(jù)為中心的設(shè)計(jì)方案。WSN 以數(shù)據(jù)為中心的特點(diǎn)帶來(lái)了一些新的設(shè)計(jì)方案,如無(wú)獨(dú)立地址的節(jié)點(diǎn)設(shè)計(jì)、數(shù)據(jù)的在網(wǎng)處理和分簇網(wǎng)絡(luò)結(jié)構(gòu)等,新的傳輸控制協(xié)議需要提供對(duì)這些方案的支持。
6) 提供對(duì)節(jié)點(diǎn)移動(dòng)性的支持。目前,WSN 傳輸控制協(xié)議基本都假定傳感器節(jié)點(diǎn)和網(wǎng)絡(luò)是靜態(tài)的。但在戰(zhàn)場(chǎng)、物流等應(yīng)用中,節(jié)點(diǎn)的移動(dòng)會(huì)給網(wǎng)絡(luò)傳輸帶來(lái)更多不可靠因素,加重丟包現(xiàn)象的發(fā)生,需要設(shè)計(jì)更高處理效率和更快處理速度的控制協(xié)議。
評(píng)論
查看更多