趙 騰 ,王海暉 ,2*,彭 云 ,趙茂陽 ,張水平 ,2
1.武漢工程大學(xué)計算機科學(xué)與工程學(xué)院,湖北 武漢 430205;
2.智能機器人湖北省重點實驗室(武漢工程大學(xué)),湖北 武漢 430205
軟件定義無線傳感器網(wǎng)絡(luò)中低控制負載的睡眠調(diào)度
趙 騰1,王海暉1,2*,彭 云1,趙茂陽1,張水平1,2
1.武漢工程大學(xué)計算機科學(xué)與工程學(xué)院,湖北 武漢 430205;
2.智能機器人湖北省重點實驗室(武漢工程大學(xué)),湖北 武漢 430205
為了克服軟件定義無線傳感器網(wǎng)絡(luò)(SDWSN)中控制流量的限制,依據(jù)基于能量消耗的連通k鄰域睡眠調(diào)度算法和軟件定義網(wǎng)絡(luò)(SDN)的特性,提出了一種低控制負載的睡眠調(diào)度方案.首先,利用SDN的網(wǎng)絡(luò)模型重新設(shè)計無線傳感器網(wǎng)絡(luò)的模型;然后,依據(jù)新的網(wǎng)絡(luò)模型,對傳統(tǒng)的睡眠調(diào)度方案進行改進.在此基礎(chǔ)上,設(shè)計出能夠降低網(wǎng)絡(luò)中控制流量的流表,從而降低SDWSN中的控制負載.仿真結(jié)果表明,本文所提出的控制流設(shè)計方案在控制流量和數(shù)據(jù)平面中更新節(jié)點狀態(tài)的平均響應(yīng)時間要優(yōu)于SDWSN中的睡眠調(diào)度,該方案能夠最小化整個網(wǎng)絡(luò)中的控制流量,在延長網(wǎng)絡(luò)生命周期的同時降低控制負載.
無線傳感器網(wǎng)絡(luò);軟件定義網(wǎng)絡(luò);睡眠調(diào)度
近年來,over-the-air軟件更新和re-tasking策略被用于增強不同廠商產(chǎn)品的兼容性和增強典型的無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)中傳感器節(jié)點硬件重循環(huán)方面的靈活性.軟件定義網(wǎng)絡(luò)(software defined network ,SDN)[1-4]是一種新興的解決方案,可以在WSN中動態(tài)地重新配置傳感器節(jié)點的感測、路由及數(shù)據(jù)轉(zhuǎn)發(fā)任務(wù).SDN的主要思想是在物理層面上解耦控制平面和數(shù)據(jù)平面,傳感器節(jié)點不具有任何任務(wù)決策能力,而是由來自集中式控制器的指令控制.因此,傳感器節(jié)點易于控制并且重新指定任務(wù)或者重新編程非常簡單,而已經(jīng)部署的傳感器節(jié)點的硬件不需要進行很大的改變.
OpenFlow[3]是一種開放協(xié)議,它是控制平面和數(shù)據(jù)平面之間的標(biāo)準(zhǔn)接口,允許在流表中重新編程和更新.Sensor OpenFlow[2]是將軟件定義網(wǎng)絡(luò)整合到無線傳感網(wǎng)絡(luò)中的早期嘗試之一.在此之后,針對WSN的SDN解決方案[4],基于狀態(tài)的Open-Flow解決方案由于其減少了數(shù)據(jù)平面和控制平面之間的業(yè)務(wù)交換而受到極大關(guān)注.Gante等人[5]提出了一種提供帶內(nèi)和帶外控制流管理的方法.此方法提出常規(guī)節(jié)點受益于集中式架構(gòu),它處理路由,移動性和服務(wù)質(zhì)量管理.但是,在流表中替換和添加流表項需要內(nèi)存和流量負載,一種稱為FLIP[6]的快速權(quán)重策略保留SDN更新,基于流表項的替換和添加之間的二元性降低了負載.
軟件定義無線傳感器網(wǎng)絡(luò)(software-defined wireless sensor network,SDWSN)的傳感器激活和感測調(diào)度在文獻[7]中進行了分析,特別提出了具有低重新調(diào)度時間和低控制負載的高效算法,以設(shè)計用于具有不同感測目標(biāo)的多任務(wù)的基于能效的傳感器調(diào)度.幾個軟件定義無線傳感器網(wǎng)絡(luò)原型[8]已經(jīng)用基于服務(wù)質(zhì)量(QoS)且要求動態(tài)調(diào)整感測參數(shù)的傳感器節(jié)點進行了實現(xiàn).例如,TinySDN[9],一個硬件獨立的基于TinyOS的SDN框架在多控制器上進行了實現(xiàn).與基于TinyOS的應(yīng)用中使用集合樹協(xié)議(CTP)相比,該方法在低延遲和存儲器負載中受益.該架構(gòu)主要包括啟用SDN的傳感器節(jié)點和啟用SDN的控制器節(jié)點.啟用SDN的傳感器節(jié)點像SDN交換機一樣執(zhí)行數(shù)據(jù)包的傳感任務(wù)和轉(zhuǎn)發(fā),而啟用SDN的控制器節(jié)點主要保存拓撲信息并管理控制流.
傳統(tǒng)的無線傳感器網(wǎng)絡(luò)通常由于傳感器尺寸過小、難以接近以及能量有限而遭受壽命問題.睡眠調(diào)度是延長網(wǎng)絡(luò)壽命的有效方法之一,其允許喚醒節(jié)點的子集,而其他節(jié)點進入休眠一定量的時間以節(jié)省能量.在對無線傳感器網(wǎng)絡(luò)的睡眠調(diào)度研究中,基于連接k鄰域(connected k neighborhood ,CKN)[10]的算法有效地延長了網(wǎng)絡(luò)壽命.Wang等人在軟件定義無線傳感器網(wǎng)絡(luò)中提出了基于能耗的CKN(EC-CKN)算法[12],這是一種眾所周知的基于能耗的睡眠調(diào)度算法,并提出了一種稱為 SDEC-CKN的新方案[11].
然而,控制平面和數(shù)據(jù)平面之間的控制業(yè)務(wù)是軟件定義無線傳感器網(wǎng)絡(luò)中的主要關(guān)注點之一,SDWSN沒有任何單獨的控制信道.此外,在大多數(shù)情況下,流表中的流表項僅使用分組頭部來進行規(guī)則匹配.最近,Galluccio[4]提出了一種根據(jù)節(jié)點當(dāng)前狀態(tài)來設(shè)計流表項的方法,但是對于WSN中能量平衡睡眠調(diào)度缺乏詳細的討論.雖然在SD EC-CKN[11]中研究了基于能耗的睡眠調(diào)度算法,但每個節(jié)點需要在每個周期內(nèi)向控制器發(fā)送信標(biāo)消息,這將會導(dǎo)致高控制負載.
本文將SDN架構(gòu)引入傳統(tǒng)WSN架構(gòu)之中,并通過設(shè)計合理的數(shù)據(jù)包和流表,實現(xiàn)基于SDN的睡眠調(diào)度算法,并依據(jù)SDN架構(gòu)[13-16]的特性,降低網(wǎng)絡(luò)中控制負載,在控制流量和數(shù)據(jù)平面中更新節(jié)點狀態(tài)的平均響應(yīng)時間要優(yōu)于SDWSN中的睡眠調(diào)度.
相較于WSN,SDWSN具有統(tǒng)一和隨機部署無線傳感器節(jié)點的能力.如圖1所示,控制平面由單個控制器組成以確定通過網(wǎng)絡(luò)的路由和數(shù)據(jù)轉(zhuǎn)發(fā)決定,而數(shù)據(jù)平面包含傳感器節(jié)點和交換機.交換機將控制器產(chǎn)生的數(shù)據(jù)包轉(zhuǎn)發(fā)到網(wǎng)絡(luò).每個傳感器節(jié)點由用于發(fā)送和接收數(shù)據(jù)包的通信單元、感測單元和流表組成.任何節(jié)點更改其狀態(tài)(睡眠或喚醒)、轉(zhuǎn)發(fā)或丟棄數(shù)據(jù)包都要根據(jù)流表中的流表項來進行.
SDWSN中最重要的三大組件是控制器、流表和交換機.
1)控制器:SDWSN中的控制器擁有由傳感器節(jié)點生成的全局拓撲信息.在初始階段,控制器廣播監(jiān)視消息(類似于拓撲發(fā)現(xiàn))以獲取每個節(jié)點的能量狀態(tài)、到節(jié)點的距離、鄰居節(jié)點ID和延遲.在獲取這些信息作為輸入之后,映射函數(shù)生成諸如網(wǎng)絡(luò)互連、信號強度和鏈路可靠性的映射信息.控制器可以直接訪問這些映射信息,并通過映射功能隨時更新這些信息.
2)流表:SDN中的流大致分為數(shù)據(jù)流和控制流.數(shù)據(jù)流中包含感測數(shù)據(jù),而控制流主要是指流建立請求、流動作請求、拓撲發(fā)現(xiàn)消息、1跳鄰居節(jié)點的能量和狀態(tài)(睡眠或喚醒狀態(tài))消息、路由信息等.典型的流表包含以下字段:匹配、操作和統(tǒng)計.圖2示出了流表中的流表項的示例.此流表項轉(zhuǎn)發(fā)源節(jié)點ID=X的數(shù)據(jù)包,統(tǒng)計字段生存時間(time to live,TTL)=80指定流表中此項的剩余時間,計數(shù)器表示此流動操作執(zhí)行16次.匹配規(guī)則字段將流表頭與其自己的流表項進行比對,并允許執(zhí)行響應(yīng)動作.操作字段通常為指定轉(zhuǎn)發(fā)或丟棄數(shù)據(jù)包、將數(shù)據(jù)包上傳更新到控制器、狀態(tài)改變和修改數(shù)據(jù)包的字段等動作.統(tǒng)計字段用于指定流表中流表項的TTL,并計算滿足以下規(guī)則的數(shù)據(jù)包數(shù).此外,流表項可以包含多于一個的匹配規(guī)則字段.控制器可以基于應(yīng)用層需求更新、修改、添加和刪除流表中的任何項.
圖1 SDWSN網(wǎng)絡(luò)模型Fig.1 SDWSN network model
圖2 流表項示例Fig.2 An example of flow entry
3)SDWSN交換機:數(shù)據(jù)平面中的交換機不再具有如在傳統(tǒng)WSN交換機中的決策能力.這個交換機簡單地將動作指令從控制器轉(zhuǎn)發(fā)到數(shù)據(jù)平面中的傳感器節(jié)點,此外當(dāng)流表中發(fā)生項缺失的時候?qū)⑼ㄟ^該交換機來向控制器請求響應(yīng).
在傳統(tǒng)的WSN中的睡眠調(diào)度算法,在有效的關(guān)閉能量相對較低的節(jié)點同時保證網(wǎng)絡(luò)的連通性.在CKN算法中,每個節(jié)點如果有k個處于喚醒狀態(tài)的鄰居節(jié)點,這個節(jié)點將會關(guān)閉自己;如果處于喚醒狀態(tài)的鄰居節(jié)點數(shù)量低于k,節(jié)點保持喚醒狀態(tài).這種分布式的CKN算法延長了節(jié)點的存活時間和整個網(wǎng)絡(luò)的生命周期.但是,CKN算法中的能量不能保證被均衡消耗.和CKN算法不同的是,EC-CKN算法在CKN算法的基礎(chǔ)上考慮節(jié)點剩余能量,平衡整個網(wǎng)絡(luò)的能量消耗,同時保證網(wǎng)絡(luò)依舊是k鄰接.EC-CKN的詳細過程如下所示:
1)獲取當(dāng)前節(jié)點剩余能量信息Eranku;
2)廣播Eranku,接收當(dāng)前處于喚醒狀態(tài)的鄰居節(jié)點Nu的能量等級.定義Ru為這些能量等級;
3)廣播 Ru,從每個 Sv∈Nu中獲取 Nu;
4)如果Sv∈Nu中的任何一個節(jié)點的|Nu|<k或者|Nv|<k,則節(jié)點保持喚醒狀態(tài).返回;
5)計算 Eu={Sv|Sv∈Nu而且 Erankv>Eranku};
6)當(dāng)滿足以下條件的時候節(jié)點進入睡眠狀態(tài),不滿足則保持喚醒狀態(tài);Eu中的任何兩個節(jié)點直接自身或間接地通過具有大于Eranku的Erankv的Su的2跳鄰居中的節(jié)點連接;
7)Nu中的任何節(jié)點與Eu至少有k個鄰居;
8)返回.
在SDWSN中,選擇EC-CKN作為基于SDN的基本算法,因為它的判斷標(biāo)準(zhǔn)與節(jié)點的剩余能量相關(guān),可以直接反映整個網(wǎng)絡(luò)的能量消耗.在SD-ECCKN算法中,采用基于SDN的架構(gòu)來代替?zhèn)鹘y(tǒng)的WSN,在新架構(gòu)下去除節(jié)點進行廣播的過程,從而減少總傳輸時間并且降低能耗.從步驟2到步驟3,每個節(jié)點廣播兩次以獲得其1跳和2跳節(jié)點的狀態(tài),用于稍后判斷其自身狀態(tài).在每個間隔中,每個節(jié)點的這兩個廣播過程花費大量的通信能量.而在SDWSN中,控制器根據(jù)節(jié)點發(fā)送的數(shù)據(jù),決定網(wǎng)絡(luò)中每個節(jié)點的狀態(tài),并根據(jù)ECCKN算法對網(wǎng)絡(luò)拓撲進行更新,然后控制器將這些決定發(fā)送到所有狀態(tài)需要改變的節(jié)點.
而在SDWSN中,由表1可以看出,根據(jù)這些差異,所提出的SD-ECCKN算法在每個周期內(nèi)消除了廣播過程.每個節(jié)點通過已經(jīng)最初預(yù)先定義的特定路由向控制器發(fā)送信標(biāo)數(shù)據(jù).在網(wǎng)絡(luò)的整個生命周期內(nèi),節(jié)點之間沒有數(shù)據(jù)交換(廣播).因此,網(wǎng)絡(luò)壽命下降的總傳輸時間節(jié)省了能源,延長了整個網(wǎng)絡(luò)的使用壽命.
表1 SD-ECCKN與EC-CKN的區(qū)別Tab.1 Differences between SD-ECCKN and EC-CKN
控制流分為以下類型:a)控制請求消息,<類型=0>,b)控制動作消息,c)更新消息<類型=1>,以及d)廣播消息<類型=2>.
a.控制請求消息<控制請求頭,節(jié)點能量,鄰居節(jié)點ID>:發(fā)送到控制器以獲得響應(yīng)指令,其中<節(jié)點能量>和<鄰居節(jié)點ID>表示節(jié)點的剩余能量和1跳鄰居節(jié)點ID分別生成控制請求消息.
b.控制動作消息<控制動作頭,狀態(tài)>:來自控制器的相應(yīng)響應(yīng)/動作指令,其中<狀態(tài)>定義節(jié)點的睡眠或喚醒狀態(tài)的決策.
圖3(a)示出了控制動作和控制請求消息的報頭格式.<動作/請求>指定控制消息的類型,即控制消息從控制器發(fā)送(=1)或者需要發(fā)送到控制器(=0).<分組長度>用于包括有效載荷的數(shù)據(jù)包分組的長度.<源節(jié)點ID,目標(biāo)節(jié)點ID,下一跳節(jié)點ID>分別指定生成分組的節(jié)點的地址,目標(biāo)節(jié)點和當(dāng)前節(jié)點的下一跳ID.<喚醒狀態(tài)鄰居節(jié)點數(shù)>表示生成控制請求消息的節(jié)點處于喚醒狀態(tài)的1跳鄰居節(jié)點數(shù)目.<標(biāo)志位>用于指定節(jié)點是否需要將控制消息轉(zhuǎn)發(fā)到控制器,<生存時間>指定刪除此消息的剩余時間.在更新消息報頭中.<狀態(tài)>定義節(jié)點當(dāng)前狀態(tài)(睡眠=0或喚醒=1).<轉(zhuǎn)發(fā)>指定是否需要將消息轉(zhuǎn)發(fā)到其下一跳ID.
報頭格式如圖3(b)所示.另外,圖3(c)示出了1跳廣播消息報頭.
節(jié)點的鄰居表:節(jié)點保存鄰居表,并用網(wǎng)絡(luò)拓撲信息更新字段.典型的鄰居表包含<鄰居節(jié)點ID,能量,狀態(tài),RSSI>,其中 RSSI表示來自 1跳鄰居的接收信號指示符的鏈路質(zhì)量.
圖3 消息報頭格式Fig.3 Message headers format
在所提出的SDWSN中引入基于EC-CKN的睡眠調(diào)度方案[12].
1)當(dāng)1跳喚醒鄰居的數(shù)目小于或等于k時,節(jié)點向其所有1跳鄰居發(fā)送具有<標(biāo)志位=0>和<動作/請求=0>的喚醒請求消息.
2)當(dāng)1跳喚醒鄰居的數(shù)目大于k時,節(jié)點使用<動作/請求=0>和<標(biāo)志位=1>向控制器發(fā)送控制請求消息.
圖4示出了流表項,用于SDWSN中的實現(xiàn)基于EC-CKN的睡眠調(diào)度.匹配規(guī)則1和2檢查消息類型,并分別比較節(jié)點處于喚醒狀態(tài)時的鄰居節(jié)點.相應(yīng)的<標(biāo)志位>值在第一個字節(jié)的第7位更新.此外,<動作/請求>值在第一個字節(jié)的第4位更新.
圖4 流表項Fig.4 Control-flow entries
1)如果<類型=0>,<動作/請求=0>,<標(biāo)志位=0>:節(jié)點需要被喚醒.因此,其將當(dāng)前狀態(tài)設(shè)置為喚醒狀態(tài),此后,向控制器發(fā)送具有<類型=1>和<狀態(tài)=1>的更新消息.此外,該節(jié)點廣播消息以更新其所有1跳鄰居的當(dāng)前狀態(tài).
2)如果<類型=0>,<動作/請求=0>,和<標(biāo)志位=1>:節(jié)點基于路由表信息將控制請求消息轉(zhuǎn)發(fā)到其下一跳ID.
3)如果<類型=0>和<動作/請求=1>:節(jié)點將目標(biāo)地址與其自己的ID進行比較.如果相等,則節(jié)點如根據(jù)<狀態(tài)>位更新其狀態(tài);否則,節(jié)點將該控制動作消息轉(zhuǎn)發(fā)到下一跳ID.圖5示出了當(dāng)節(jié)點接收控制動作和控制請求消息時的流表項.
圖5 流表設(shè)計Fig.5 Flow table design
如果<類型=0>,<動作/請求=0>和<標(biāo)志位=1>,則控制器獲得<源節(jié)點ID>.基于<源節(jié)點ID>的1和2跳鄰居信息,控制器使用基于EC-CKN的睡眠調(diào)度算法決定喚醒或睡眠狀態(tài),并返回此動作消息與更新的<狀態(tài)>到特定節(jié)點.
如果<類型=1>和<轉(zhuǎn)發(fā)=1>,則節(jié)點將該消息轉(zhuǎn)發(fā)到其下一跳.然而,如果<目標(biāo)節(jié)點ID>與其自己的ID相同,則節(jié)點丟棄消息并更新<轉(zhuǎn)發(fā)=0>.
該部分通過實驗在以下方面評估所提出的SDWSN的性能:
1)平均響應(yīng)時間:在睡眠調(diào)度中的每個歷元開始時更新SDWSN中的每個節(jié)點的狀態(tài)所需的時間.
2)控制流量:在網(wǎng)絡(luò)中循環(huán)的控制動作,控制請求,更新和廣播消息方面的控制流的總大?。ㄒ宰止?jié)為單位).
仿真設(shè)置:使用WSN模擬器NetTopo進行仿真.結(jié)果在100個不同的拓撲結(jié)構(gòu)上取平均值.仿真參數(shù)如表2所示.仿真結(jié)果如圖6所示,圖6(a)、(b)分別為本文提出的SDWSN和傳統(tǒng)的WSN,圖6(a)中處于網(wǎng)絡(luò)中心的空心節(jié)點為控制器,淺黑色節(jié)點為喚醒狀態(tài)節(jié)點,深黑色節(jié)點為睡眠狀態(tài)節(jié)點,黑色實線為控制流的路徑,灰色實線為真實鏈路.圖6(a)中所有計算通過控制器完成并生成數(shù)據(jù)包向下轉(zhuǎn)發(fā),節(jié)點通過控制流收到數(shù)據(jù)包后與自身流表進行校驗,判斷執(zhí)行轉(zhuǎn)發(fā)或者睡眠/喚醒動作.圖6(b)中沒有控制器,每個節(jié)點通過接收兩跳以內(nèi)鄰居節(jié)點的信息,計算決定自身是否進入睡眠狀態(tài).
表2 仿真參數(shù)Tab.2 Simulation parameters
圖6 仿真對比圖(a)軟件定義無線傳感網(wǎng)絡(luò);(b)傳統(tǒng)無線傳感網(wǎng)絡(luò)Fig.6 Simulating contrast chart(a)Software-defined wireless sensor network;(b)Traditional wireless sensor network
圖7反應(yīng)了25個傳感器節(jié)點、單個控制器情況下,與本文提出的SDWSN與SD EC-CKN相比,平均響應(yīng)時間的優(yōu)勢.在每個周期開始時從每個傳感器節(jié)點向控制器發(fā)送控制請求,流表項的設(shè)計將控制動作和控制請求最小化,以決定傳感器節(jié)點的睡眠或喚醒狀態(tài).
圖7 平均響應(yīng)時間的優(yōu)勢Fig.7 Advantages of average response time
由圖7可知,在基于EC-CKN的睡眠調(diào)度中隨著k值的增加觀察到顯著的優(yōu)點.原因是在SD EC-CKN的睡眠調(diào)度中,所有節(jié)點必須向控制器發(fā)送請求.而本文中的SDWSN,隨著k值增加,傳感器節(jié)點控制請求的數(shù)量將會減少.然而,廣播和更新消息的數(shù)量增加.由于與控制動作和控制請求消息相比,更新或廣播消息需要較少的跳數(shù),因此用于整體控制流的負載降低.結(jié)果,平均響應(yīng)時間也隨著k值的增加而減小.當(dāng)所有節(jié)點到控制器最大跳躍距離增加時,所提出的方法相對于在數(shù)據(jù)平面中具有相同數(shù)目節(jié)點的SD EC-CKN具有顯著的優(yōu)勢.
圖8 不同k值對應(yīng)的控制流量:(a)距離控制器最大3跳;(b)距離控制器最大5跳Fig.8 Different k values corresponding to the control flow(a)Deployed nodes with maxmum 3-hop distance-to-controller;(b)Deployed nodes with maxmum 5-hop distance-to-controller
圖8顯示出了節(jié)點距離控制器最大3跳和最大5跳情況下具有不同k值的控制流量.顯然,部署的傳感器節(jié)點數(shù)量較多處,控制流量也增加.如第四節(jié)所述,控制請求和控制動作消息隨著EC-CKN中k值的增加而減小.雖然廣播和更新消息的數(shù)量增加,但是控制動作以及控制請求的數(shù)量更大,因此,控制流量增加.比較看來,對于所有的節(jié)點,距離控制器越遠,控制流量越大.原因是隨著部署的傳感器節(jié)點遠離控制器,傳感器鄰居節(jié)點數(shù)大于或者等于k的可能性變小.因此,從所有傳感器節(jié)點到控制器的控制請求增加,結(jié)果是節(jié)點離控制器越遠,控制流量越大.
在WSN中引入了SDN架構(gòu),并且在此架構(gòu)中,引入具有低控制負載的睡眠調(diào)度的方案,在延長網(wǎng)絡(luò)生命周期的同時,克服SDWSN中控制負載過高的缺陷.提出的流表項設(shè)計在控制流量和平均響應(yīng)時間方面表現(xiàn)出顯著的優(yōu)勢,根據(jù)k值的變化,平均響應(yīng)時間降低了5.1%到32.6%.實驗結(jié)果還表明,隨著部署的傳感器節(jié)點遠離控制器,控制流量增加.總體上,筆者所提出的方案能夠最小化整個網(wǎng)絡(luò)中總控制流量,降低控制負載.
基于SDN技術(shù)的無線傳感器網(wǎng)絡(luò)只在小型無線傳感器網(wǎng)絡(luò)中進行研究,控制平面只需一個控制器.而大型無線傳感器網(wǎng)絡(luò)中,控制器需要為每一項數(shù)據(jù)業(yè)務(wù)制定優(yōu)化的路由策略,運算壓力較大,且這一壓力會隨著傳感器網(wǎng)絡(luò)節(jié)點數(shù)量的增加呈幾何級上升,這時可能需要多個控制器進行控制,這種情況還需要進行更深一步分析,也會引起其他問題,如網(wǎng)絡(luò)帶寬、數(shù)據(jù)冗余等等問題.這些問題對于網(wǎng)絡(luò)架構(gòu)的影響也需要進行考慮.本文的研究內(nèi)容只是其中的一小部分,由于時間和能力有限,還有許多問題需要在現(xiàn)有的研究基礎(chǔ)上進行更進一步研究與擴展.
[1] HAQUE I T,ABU-GHAZALEH N.Wireless software defined networking:a survey and taxonomy[J].IEEE Communications Surveys&Tutorials,2016,18(4):2713-2737.
[2] LUO T,TAN H P,QUEK T Q S.Sensor openflow:enabling software-defined wireless sensor networks[J].IEEE Communications Letters,2012,16(11):1896-1899.
[3] MCKEOWN N,ANDERSON T,BALAKRISHNAN H,et al.Openflow:enabling innovation in campus networks[J]. ACM SIGCOMM ComputerCommunication Review,2008,38(2):69-74.
[4] GALLUCCIO L,MILARDO S,MORABITO G,et al.SDN-WISE:Design,prototyping and experimentation of a stateful SDN solution for wireless sensor networks[C]//Computer communications, 2015.Hong Kong:IEEE,2015:513-521.
[5] DEGANTE A,ASLAN M,MATRAWY A.Smart wireless sensor network management based on software-defined networking[C]//Communications, 2014.Kingston:IEEE,2014:71-75.
[6] VISSICCHIO S,CITTADINI L.Flip the(flow)table:Fast lightweight policy-preserving sdn updates[C]//Computercommunications, 2016.San Francisco:IEEE,2016:1-9.
[7] ZENG D, LIP,GUO S,et al.Minimum-energy reprogramming with guaranteed quality-of-sensing in software-defined sensor networks[C]//Communications,2014.Sydney:IEEE,2014:288-293.
[8] MIYAZAKI T.Dynamic function alternation to realize robust wireless sensor network [J]. International Journal of Handheld Computing Research,2012,3(3):17-34.
[9] DEOLIVEIRABT,GABRIELLB,MARGICB.TinySDN:Enabling multiple controllers for software-defined wireless sensor networks[J].IEEE Latin America Transactions,2015,13(11):3690-3696.
[10] NATH S,GIBBONS P B.Communicating via fireflies:
geographic routing on duty-cycled sensors[C]//Information processingin sensornetworks,2007.Cambridge:IEEE,2007:440-449.
[11] WANG Y,CHEN H,WU X,et al.An energy-efficient SDN based sleep scheduling algorithm for WSNs[J].Journal of Network and Computer Applications,2016,59:39-45.
[12] WANG L,YUAN Z,SHU L,et al.An energy-efficient CKN algorithm for duty-cycled wireless sensor networks[J]. InternationalJournalofDistributed Sensor Networks,2012(3):184-195.
[13] CERPA A,WONG J L,KUANG L,et al.Statistical model of lossy links in wireless sensor networks[C]//The 4th internationalsymposium on information processing in sensor networks,2005.Los Angeles:IEEE,2005:81-88.
[14] BERA S,MISRA S,ROY S K,et al.Soft-WSN:Software-defined WSN management system for IoT applications[J].IEEE Systems Journal,2016(99):1-8.
[15] OLIVIER F,CARLOS G,F(xiàn)LORENT N.SDN based architecture for clustered WSN[C]//Innovative Mobile and Internet Services in Ubiquitous Computing,2015.Blumenau:IEEE,2015:342-347.
[16] 張朝昆,崔勇,唐翯祎,等.軟件定義網(wǎng)絡(luò)(SDN)研究進展[J].軟件學(xué)報,2015,26(1):62-81.ZHANG C K,CUI Y,TANG H Y,et al.Research progress of software defined network[J].Journal of Software,2015,26(1):62-81.
Low Control Overhead-Based Sleep Scheduling for Software-Befined Wireless Sensor Networks
ZHAO Teng1,WANG Haihui*1,2,PENG Yun1,ZHAO Maoyang1,ZHANG Shuiping1,2
1.School of Computer Science and Technology,Wuhan Institute of Technology,Wuhan 430205,China
2.Hubei Key Laboratory of Intelligent Robot(Wuhan Institute of Technology),Wuhan 430205,China
To overcome the limitation of the control flow in the software-defined wireless sensor network(SDWSN),a low control overhead sleep scheduling program was proposed based on the energy consumption of the connected k neighborhood sleep scheduling algorithm and the characteristics of software-defined network(SDN).Firstly,the model of the wireless sensor network was redesigned by using the SDN network model.Then,the traditional sleep scheduling scheme was improved according to the new network model.On the basis,the flow table can be designed to reduce the size of the control flow in the network and the control flow overhead can be reduced in the SDWSN.The simulation results show that the control flow size and the average response time of updating the node status in the data plane are better than those in the SDWSN.The proposed scheme can minimize the total control flow size in the whole network and reduce the control overhead while extending the network life cycle.
wireless sensor network;software-defined networking;sleep scheduling
2017-05-08
國家自然科學(xué)基金項目(61401107);武漢工程大學(xué)研究生教育創(chuàng)新基金項目(CX2016068)支持作者簡介:趙 騰,碩士研究生.E-mail:zhaoteng93@outlook.com*通訊作者:王海暉,博士,教授.E-mail:wanghaihui69@sina.com
趙騰,王海暉,彭云,等.軟件定義無線傳感器網(wǎng)絡(luò)中低控制負載的睡眠調(diào)度[J].武漢工程大學(xué)學(xué)報,2017,39(5):488-495.
ZHAO T,WANG H H,PENG Y,et al.Low control overhead-based sleep scheduling for software-defined wireless sensor networks[J].Journal of Wuhan Institute of Technology,2017,39(5):488-495.
TP391
A
10.3969/j.issn.1674-2869.2017.05.015
1674-2869(2017)05-0488-08
陳小平