蘇俊基,楊龍祥,朱樂恒
(南京郵電大學 通信與信息工程學院,江蘇 南京 210003)
隨著互聯網的快速發展,網絡節點數目日益增多,網絡能耗隨之增加,同時網絡架構顯得越來越臃腫。關于ICT能耗消耗調查表明,ICT行業所消耗的能量占全球總能耗的2%~10%,因此降低能耗意義非凡。為了根本性地解決現有網絡中的問題(移動性、安全性、能耗等),國內外已經啟動相關的研究項目,提出了新的網絡體系架構,例如美國的FIND和GENI項目,歐盟的FP7項目,日本的AKARI項目等。典型的新型網絡架構有DONA(Data-Oriented Network Architecture)、PSIRP(The Publish-Subscribe Internet Routing Paradigm)、NDN(Named Data Networking)、Open Flow Network和DTN(Delay Tolerant Network)等。
面對能源緊張的問題,提出降低能耗的方案刻不容緩。休眠機制是降低能耗的一種方式,將休眠方式應用到新的網絡架構體系下,可以達到節省能耗的效果,國內外已經在一些新型的網絡中提出相應的休眠方案。在DTN網絡體系架構下,參考文獻[1]、[2]提出了EACDS(ExponentialAdaptiveCyclicDifferenceSet system)和MACDS(MultiplicativeAdaptiveCyclicDifferenceSetsystem)兩種休眠算法;參考文獻[3]、[4]提出了將基于時間接觸的休眠機制應用到算法里,從而降低能耗。在Open Flow Network網絡架構下,參考文獻[5]提出了相關的休眠機制,選擇根節點,形成節點樹,根據網絡所需要的節點數和當前處于醒著狀態的節點數之間的關系,致相應的節點休眠。在PSIRP網絡體系架構下,參考文獻[6]、[7]提出了根據網絡節點的重要性決定關閉相應的節點,進入休眠,并且權衡能耗和延時之間的關系。還有其他一些網絡級休眠方案,如參考文獻[8]提出了ETE機制,能量感知以關閉相應的節點。
上述休眠方案當中的一些算法是本文介紹的主要內容,在研究的過程中,將休眠機制分為兩大類:節點級休眠和網絡級休眠,介紹了DTN網絡中節點級休眠方案和網絡級休眠方案,并進行了仿真。
網絡節點處于工作狀態和空閑狀態時,能耗的值相同,如圖1所示[9]。休眠是指將處在空閑狀態的節點休眠,以節省能耗。

圖1 有無休眠的能耗對比
DTN網絡屬于新型的網絡,它的特點是頻繁中斷,長延時的連接,這是因為移動性、節點稀疏分布和噪聲等因素的影響。下面介紹DTN網絡下的休眠方案:EACDS和MACDS[1-2,10]。
介紹EACDS和MACDS之前,首先熟悉DTN網絡節點架構,如圖2所示。其中,灰色方格1、2、4等表示節點醒著的時隙,5、6、7方格表示節點休眠的時隙,在每一個醒著的時隙前面加一個幀讓相鄰節點能夠偵聽到此節點。對于每一個節點,預先規定固定長度為Ls的集合,再以這個長度為周期循環,而之前選取長度為Ls集合,必須保證此集合任意地循環移位都會有一個重合的、醒著的時隙。因為節點A和其他的節點是循環移位的關系,只有在某一時刻兩個節點都處于醒著的狀態,才具備通信的條件。

圖2 節點時隙
EACDS和MACDS的共同點是通過某一種縮放的關系放大集合的長度Ls,Ls越大,節能效果越好。
EACDS是基于利用集合的分層方法,能量級為0的初始差集(P0=I=(υI,kI,λI))被另一個指數差集(E=(υE,kE,λE))放大為能量級1(P1=E?I)的分層集合,接著再次被放大為更高級別的分層集合 (P2=E2?I),依次類推,最后選擇某一能量級的P。其中,ν表示框架長度,k表示活動個數,λ表示重疊個數,?表示Kronecker積。
Kronecker積的定義為:A=(aij) 是m×n的矩陣,B=(bkI) 是p×q的矩陣,A和B的Kronecker積為mp×nq的塊矩陣C=(cαβ)=αijbkl,α=p(i-1)+k,β=q(j-1)+l。


MACDS是基于集合的分層方法,與EACDS不同的是用乘子集M=(υM,kM,λM)代替指數集E,初始集(I)被另外一個乘子集(M1)縮放,用來創建分層集(P1=M1?I),然后再被另外一個乘子集M2縮放成另外一個分層集P2=M2?I。M1,M2, …,Mi都是旋轉集合, 滿足:RCP{Mi,Mj}=1。RCP(Rotational Closure Property)表示兩個節點在所有的循環移位下都會發現對方。對于集合Ei和集 合Ej,ni≤nj,有 :

對于EACDS和MACDS,主要的特點是Pi級數越高即Ls長度越長,越能降低能耗。MACDS相對更加節能,但是如果在有能量級需要的情況下,EACDS卻更加實用。
不僅僅在DTN網絡,在其他網絡架構下也有相關的休眠機制,例如PSIRP網絡架構、Open Flow Network等。
這里介紹的休眠算法歸于以下幾個步驟[6-7]:
(1)檢查每條鏈路的利用率
對于網絡中的每個節點,分析鏈路利用率,鏈路利用率超過閾值,增加權重來減少利用率,鏈路利用率低于閾值,它成為減少權重的等待者。
(2)網絡節點排序
根據節點的局部中心度對網絡節點進行排列,這個序列反映節點在網絡中的重要性。這一步驟很重要。
(3)關閉網絡節點
節點進入休眠模式,可能導致數據包丟失,滿足下列條件,節點才能夠進入休眠模式。
①與此節點連接的鏈路沒有流量;
②此節點關閉后,其余的節點仍然可以連接;
③此節點關閉后,它所有相鄰節點可重新連接到網絡上。
該方案的特點是,對網絡元素重要性排列,以及根據節點進入休眠的條件判斷能否進入休眠。
Open Flow Network元素有接入節點、骨干節點。接入節點用來連接用戶終端或服務器,而骨干節點連接其他節點。骨干節點與接入節點之間的節點不能進入休眠。節點的休眠、喚醒以及路由路徑的改變步驟如下[5]:
(1)預先測量網絡流量。
(2)根據網絡流量計算節點需要轉發流量的數量以及決定根節點。整個網絡所需要的節點數=整個網絡的流量/節點轉發率。
(3)根據休眠算法讓節點休眠或者喚醒。
(4)改變使用醒著節點的路由路徑,用最短路徑算法來計算路由路徑。
其中根節點的選擇是為了形成一個樹結構的拓撲,從而選取相應的休眠等待節點。按照下面的方法選擇根節點:
①處理最大流量的節點作為根節點。
②如果多個節點的最大流量相同,選擇鏈路連接數最多的節點作為根節點。
休眠算法有以下幾種情況:
(1)醒著的節點數目大于傳輸流量所需要的節點數。這種情況下,主要又分為兩種:
①當前的根節點和之前選擇的根節點不同。
(a)從根節點到其他節點用最短路徑構建一個訪問樹。這里用Dijkstra算法。
(b)選擇候選的休眠節點,注意,根節點與訪問節點之間的節點不能休眠,其余的節點休眠。
(c)從最小流量節點開始把候選節點休眠一次,直到醒著的節點數量等于所需節點數量或所有候選節點睡眠。
②當前的根節點與之前的根節點相同。
當前選擇的根節點與原先選擇的節點相同,則有相同的訪問樹。然而,如果之前沒有休眠的候選節點,節點可能像上面提到的那樣進入休眠。否則,沒有其他操作將被執行。
(2)醒著的節點數目小于傳輸流量所需要的節點數。喚醒休眠中的節點,順序按照休眠時的逆序,直到兩者數目相等。
(3)醒著的節點數目等于傳輸流量所需要的節點數。沒有節點需要喚醒或者休眠。
該方案的特點是選擇根節點構建樹,根據相關的準則,選擇休眠等待節點,優化樹的結構,從而降低能耗。
本文采用ns-2網絡仿真工具,針對DTN網絡下的EACDS和MACDS兩種算法進行仿真實驗。節點采用Random Way Point移動模型,采取的路由協議是MFlood(洪泛協議),另外一些網絡環境參數設置如表1所示。
根據MACDS和EACDS的原理分析,在仿真中選擇I=(7,3,1),MACDS中的P3=(42,9,1),而EACDS中的P3=(63,12,1)。 如圖3所示,采取休眠方式的能耗明顯比沒采取休眠機制的能耗低,而MACDS比EACDS方案節能。

表1 仿真參數

圖3 仿真時間對平均能耗的影響
不同的網絡體系架構下,休眠機制會存在網絡連通性的問題,網絡節點處于休眠狀態,不接受數據報文,所以要權衡能耗與網絡QoS之間的關系。在未來的工作當中,會對新的網絡體系架構下的主流休眠方案下的能耗和延時參數進行仿真和優化。
[1]CHOI B J,SHEN X.Adaptive asynchronous clock based power saving protocols for delay tolerant networks[C].Global Telecommunications Conference,GLOBECOM 2009,IEEE,2009:1-6.
[2]CHOI B J,SHEN X.Adaptive asynchronous sleep scheduling protocols for delay tolerant networks[J].IEEE Transactions on Mobile Computing,2011,10(9):1283-1296.
[3]付凱,夏清波,尹波.DTN中一種基于接觸時間的休眠機制[J].計算機科學,2013,2(40):87-90.
[4]JUN H W,AMMAR M H,ZEGURA E W.Power management in delay tolerant networks:a framework and knowledge-based mechanisms[C].2005 Second Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks,IEEE SECON 2005,2005,5:418-429.
[5]BISTA B,TAKANOHASHI M,TAKATA T,et al.Rawat,a power saving scheme for open flow network[J].Journal of Clean Energy Technologies,2013,1(4):276-280.
[6]de Comunica?oes,Engenharia de Redes.Energy efficient architectures for the current and future Internet.2012.
[7]SILVA T,ARTUR A.A Survey on Energy Efficiency for the Future Internet.International Journal of Computer and Communication Engineering,2013,2(5).
[8]ATHANASIOU G,TSAGKARIS K,VLACHEAS P,et al.Introducing energy-awareness in traffic engineering for future networks[C].2011 7th International Conference on Network and Service Management(CNSM),IEEE,2011:1-4.
[9]BOLLA,BRUSCHI R,DAVOLI F,et al.Energy efficiency in the future Internet:a survey of existing approaches and trends in energy-aware fixed network infrastructures[J].Communications Surveys&Tutorials,IEEE,2011,13(2):223-244.
[10]VARDALIS D,TSAOUSSIDIS V.Energy-efficient Internetworking with DTN[J].Internet Engineering,2012,5(1).