摘 要: 目前傳統(tǒng)網(wǎng)絡(luò)架構(gòu)顯得越來越臃腫,以致于產(chǎn)生很多的問題,其中能耗問題顯得越來越突出。為了解決這些問題,不是對已有的網(wǎng)絡(luò)架構(gòu)做修補(bǔ),而是革命性地更改網(wǎng)絡(luò)體系架構(gòu)。國內(nèi)外已經(jīng)有部分項(xiàng)目提出了未來網(wǎng)絡(luò)體系架構(gòu),并且在一些新型的網(wǎng)絡(luò)體系架構(gòu)下提出了休眠機(jī)制,旨在降低能耗。主要介紹了未來網(wǎng)絡(luò)架構(gòu)下的休眠方案,同時(shí)對節(jié)點(diǎn)級休眠方案進(jìn)行仿真和比較,為以后的研究做鋪墊。
關(guān)鍵詞: 未來網(wǎng)絡(luò);能耗;能效;休眠機(jī)制
0 引言
隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)目日益增多,網(wǎng)絡(luò)能耗隨之增加,同時(shí)網(wǎng)絡(luò)架構(gòu)顯得越來越臃腫。關(guān)于ICT能耗消耗調(diào)查表明,ICT行業(yè)所消耗的能量占全球總能耗的2%~10%,因此降低能耗意義非凡。為了根本性地解決現(xiàn)有網(wǎng)絡(luò)中的問題(移動性、安全性、能耗等),國內(nèi)外已經(jīng)啟動相關(guān)的研究項(xiàng)目,提出了新的網(wǎng)絡(luò)體系架構(gòu),例如美國的FIND和GENI項(xiàng)目,歐盟的FP7項(xiàng)目,日本的AKARI項(xiàng)目等。典型的新型網(wǎng)絡(luò)架構(gòu)有DONA(Data-Oriented Network Architecture)、PSIRP (The Publish-Subscribe Internet Routing Paradigm)、NDN(Named Data Networking)、Open Flow Network和DTN(Delay Tolerant Network)等。
面對能源緊張的問題,提出降低能耗的方案刻不容緩。休眠機(jī)制是降低能耗的一種方式,將休眠方式應(yīng)用到新的網(wǎng)絡(luò)架構(gòu)體系下,可以達(dá)到節(jié)省能耗的效果,國內(nèi)外已經(jīng)在一些新型的網(wǎng)絡(luò)中提出相應(yīng)的休眠方案。在DTN網(wǎng)絡(luò)體系架構(gòu)下,參考文獻(xiàn)[1]、[2]提出了EACDS(Exponential Adaptive Cyclic Difference Set system)和MACDS(Multiplicative Adaptive Cyclic Difference Set system)兩種休眠算法;參考文獻(xiàn)[3]、[4]提出了將基于時(shí)間接觸的休眠機(jī)制應(yīng)用到算法里,從而降低能耗。在Open Flow Network網(wǎng)絡(luò)架構(gòu)下,參考文獻(xiàn)[5]提出了相關(guān)的休眠機(jī)制,選擇根節(jié)點(diǎn),形成節(jié)點(diǎn)樹,根據(jù)網(wǎng)絡(luò)所需要的節(jié)點(diǎn)數(shù)和當(dāng)前處于醒著狀態(tài)的節(jié)點(diǎn)數(shù)之間的關(guān)系,致相應(yīng)的節(jié)點(diǎn)休眠。在PSIRP網(wǎng)絡(luò)體系架構(gòu)下,參考文獻(xiàn)[6]、[7]提出了根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)的重要性決定關(guān)閉相應(yīng)的節(jié)點(diǎn),進(jìn)入休眠,并且權(quán)衡能耗和延時(shí)之間的關(guān)系。還有其他一些網(wǎng)絡(luò)級休眠方案,如參考文獻(xiàn)[8]提出了ETE機(jī)制,能量感知以關(guān)閉相應(yīng)的節(jié)點(diǎn)。
上述休眠方案當(dāng)中的一些算法是本文介紹的主要內(nèi)容,在研究的過程中,將休眠機(jī)制分為兩大類:節(jié)點(diǎn)級休眠和網(wǎng)絡(luò)級休眠,介紹了DTN網(wǎng)絡(luò)中節(jié)點(diǎn)級休眠方案和網(wǎng)絡(luò)級休眠方案,并進(jìn)行了仿真。
1 節(jié)點(diǎn)級休眠
網(wǎng)絡(luò)節(jié)點(diǎn)處于工作狀態(tài)和空閑狀態(tài)時(shí),能耗的值相同,如圖1所示[9]。休眠是指將處在空閑狀態(tài)的節(jié)點(diǎn)休眠,以節(jié)省能耗。
DTN網(wǎng)絡(luò)屬于新型的網(wǎng)絡(luò),它的特點(diǎn)是頻繁中斷,長延時(shí)的連接,這是因?yàn)橐苿有浴⒐?jié)點(diǎn)稀疏分布和噪聲等因素的影響。下面介紹DTN網(wǎng)絡(luò)下的休眠方案:EACDS和MACDS[1-2,10]。
介紹EACDS和MACDS之前,首先熟悉DTN網(wǎng)絡(luò)節(jié)點(diǎn)架構(gòu),如圖2所示。其中,灰色方格1、2、4等表示節(jié)點(diǎn)醒著的時(shí)隙,5、6、7方格表示節(jié)點(diǎn)休眠的時(shí)隙,在每一個醒著的時(shí)隙前面加一個幀讓相鄰節(jié)點(diǎn)能夠偵聽到此節(jié)點(diǎn)。對于每一個節(jié)點(diǎn),預(yù)先規(guī)定固定長度為Ls的集合,再以這個長度為周期循環(huán),而之前選取長度為Ls集合,必須保證此集合任意地循環(huán)移位都會有一個重合的、醒著的時(shí)隙。因?yàn)楣?jié)點(diǎn)A和其他的節(jié)點(diǎn)是循環(huán)移位的關(guān)系,只有在某一時(shí)刻兩個節(jié)點(diǎn)都處于醒著的狀態(tài),才具備通信的條件。
EACDS和MACDS的共同點(diǎn)是通過某一種縮放的關(guān)系放大集合的長度Ls,Ls越大,節(jié)能效果越好。
1.1 EACDS算法
EACDS是基于利用集合的分層方法,能量級為0的初始差集(P0=I=(I,kI,λI))被另一個指數(shù)差集(E=(E,kE,λE))放大為能量級1(P1=EI)的分層集合,接著再次被放大為更高級別的分層集合(P2=E2I),依次類推,最后選擇某一能量級的P。其中,ν表示框架長度,k表示活動個數(shù),λ表示重疊個數(shù),表示Kronecker積。
Kronecker積的定義為:A=(aij)是m×n的矩陣,B=(bkI)是p×q的矩陣,A和B的Kronecker積為mp×nq的塊矩陣
1.2 MACDS算法
MACDS是基于集合的分層方法,與EACDS不同的是用乘子集M=(?自M,kM,λM)代替指數(shù)集E,初始集(I)被另外一個乘子集(M1)縮放,用來創(chuàng)建分層集(P1=M1?茚I),然后再被另外一個乘子集M2縮放成另外一個分層集P2=M2?茚I。M1,M2,…,Mi都是旋轉(zhuǎn)集合,滿足:RCP{Mi,Mj}=1。RCP(Rotational Closure Property)表示兩個節(jié)點(diǎn)在所有的循環(huán)移位下都會發(fā)現(xiàn)對方。對于集合Ei和集合Ej,ni≤nj,有:
對于EACDS和MACDS,主要的特點(diǎn)是Pi級數(shù)越高即Ls長度越長,越能降低能耗。MACDS相對更加節(jié)能,但是如果在有能量級需要的情況下,EACDS卻更加實(shí)用。
2 網(wǎng)絡(luò)級別休眠
不僅僅在DTN網(wǎng)絡(luò),在其他網(wǎng)絡(luò)架構(gòu)下也有相關(guān)的休眠機(jī)制,例如PSIRP網(wǎng)絡(luò)架構(gòu)、Open Flow Network等。
2.1 PSIRP架構(gòu)下的休眠機(jī)制
這里介紹的休眠算法歸于以下幾個步驟[6-7]:
(1)檢查每條鏈路的利用率
對于網(wǎng)絡(luò)中的每個節(jié)點(diǎn),分析鏈路利用率,鏈路利用率超過閾值,增加權(quán)重來減少利用率,鏈路利用率低于閾值,它成為減少權(quán)重的等待者。
?。?)網(wǎng)絡(luò)節(jié)點(diǎn)排序
根據(jù)節(jié)點(diǎn)的局部中心度對網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行排列,這個序列反映節(jié)點(diǎn)在網(wǎng)絡(luò)中的重要性。這一步驟很重要。
?。?)關(guān)閉網(wǎng)絡(luò)節(jié)點(diǎn)
節(jié)點(diǎn)進(jìn)入休眠模式,可能導(dǎo)致數(shù)據(jù)包丟失,滿足下列條件,節(jié)點(diǎn)才能夠進(jìn)入休眠模式。
①與此節(jié)點(diǎn)連接的鏈路沒有流量;
②此節(jié)點(diǎn)關(guān)閉后,其余的節(jié)點(diǎn)仍然可以連接;
③此節(jié)點(diǎn)關(guān)閉后,它所有相鄰節(jié)點(diǎn)可重新連接到網(wǎng)絡(luò)上。
該方案的特點(diǎn)是,對網(wǎng)絡(luò)元素重要性排列,以及根據(jù)節(jié)點(diǎn)進(jìn)入休眠的條件判斷能否進(jìn)入休眠。
2.2 Open Flow Network下的休眠機(jī)制
Open Flow Network元素有接入節(jié)點(diǎn)、骨干節(jié)點(diǎn)。接入節(jié)點(diǎn)用來連接用戶終端或服務(wù)器,而骨干節(jié)點(diǎn)連接其他節(jié)點(diǎn)。骨干節(jié)點(diǎn)與接入節(jié)點(diǎn)之間的節(jié)點(diǎn)不能進(jìn)入休眠。節(jié)點(diǎn)的休眠、喚醒以及路由路徑的改變步驟如下[5]:
?。?)預(yù)先測量網(wǎng)絡(luò)流量。
?。?)根據(jù)網(wǎng)絡(luò)流量計(jì)算節(jié)點(diǎn)需要轉(zhuǎn)發(fā)流量的數(shù)量以及決定根節(jié)點(diǎn)。整個網(wǎng)絡(luò)所需要的節(jié)點(diǎn)數(shù)=整個網(wǎng)絡(luò)的流量/節(jié)點(diǎn)轉(zhuǎn)發(fā)率。
?。?)根據(jù)休眠算法讓節(jié)點(diǎn)休眠或者喚醒。
?。?)改變使用醒著節(jié)點(diǎn)的路由路徑,用最短路徑算法來計(jì)算路由路徑。
其中根節(jié)點(diǎn)的選擇是為了形成一個樹結(jié)構(gòu)的拓?fù)?,從而選取相應(yīng)的休眠等待節(jié)點(diǎn)。按照下面的方法選擇根節(jié)點(diǎn):
?、偬幚碜畲罅髁康墓?jié)點(diǎn)作為根節(jié)點(diǎn)。
?、谌绻鄠€節(jié)點(diǎn)的最大流量相同,選擇鏈路連接數(shù)最多的節(jié)點(diǎn)作為根節(jié)點(diǎn)。
休眠算法有以下幾種情況:
(1)醒著的節(jié)點(diǎn)數(shù)目大于傳輸流量所需要的節(jié)點(diǎn)數(shù)。這種情況下,主要又分為兩種:
?、佼?dāng)前的根節(jié)點(diǎn)和之前選擇的根節(jié)點(diǎn)不同。
?。╝)從根節(jié)點(diǎn)到其他節(jié)點(diǎn)用最短路徑構(gòu)建一個訪問樹。這里用Dijkstra算法。
?。╞)選擇候選的休眠節(jié)點(diǎn),注意,根節(jié)點(diǎn)與訪問節(jié)點(diǎn)之間的節(jié)點(diǎn)不能休眠,其余的節(jié)點(diǎn)休眠。
(c)從最小流量節(jié)點(diǎn)開始把候選節(jié)點(diǎn)休眠一次,直到醒著的節(jié)點(diǎn)數(shù)量等于所需節(jié)點(diǎn)數(shù)量或所有候選節(jié)點(diǎn)睡眠。
?、诋?dāng)前的根節(jié)點(diǎn)與之前的根節(jié)點(diǎn)相同。
當(dāng)前選擇的根節(jié)點(diǎn)與原先選擇的節(jié)點(diǎn)相同,則有相同的訪問樹。然而,如果之前沒有休眠的候選節(jié)點(diǎn),節(jié)點(diǎn)可能像上面提到的那樣進(jìn)入休眠。否則,沒有其他操作將被執(zhí)行。
?。?)醒著的節(jié)點(diǎn)數(shù)目小于傳輸流量所需要的節(jié)點(diǎn)數(shù)。喚醒休眠中的節(jié)點(diǎn),順序按照休眠時(shí)的逆序,直到兩者數(shù)目相等。
?。?)醒著的節(jié)點(diǎn)數(shù)目等于傳輸流量所需要的節(jié)點(diǎn)數(shù)。沒有節(jié)點(diǎn)需要喚醒或者休眠。
該方案的特點(diǎn)是選擇根節(jié)點(diǎn)構(gòu)建樹,根據(jù)相關(guān)的準(zhǔn)則,選擇休眠等待節(jié)點(diǎn),優(yōu)化樹的結(jié)構(gòu),從而降低能耗。
3 仿真分析
本文采用ns-2網(wǎng)絡(luò)仿真工具,針對DTN網(wǎng)絡(luò)下的EACDS和MACDS兩種算法進(jìn)行仿真實(shí)驗(yàn)。節(jié)點(diǎn)采用Random Way Point移動模型,采取的路由協(xié)議是MFlood(洪泛協(xié)議),另外一些網(wǎng)絡(luò)環(huán)境參數(shù)設(shè)置如表1所示。
根據(jù)MACDS和EACDS的原理分析,在仿真中選擇I=(7,3,1),MACDS中的P3=(42,9,1),而EACDS中的P3=(63,12,1)。如圖3所示,采取休眠方式的能耗明顯比沒采取休眠機(jī)制的能耗低,而MACDS比EACDS方案節(jié)能。
4 結(jié)論
不同的網(wǎng)絡(luò)體系架構(gòu)下,休眠機(jī)制會存在網(wǎng)絡(luò)連通性的問題,網(wǎng)絡(luò)節(jié)點(diǎn)處于休眠狀態(tài),不接受數(shù)據(jù)報(bào)文,所以要權(quán)衡能耗與網(wǎng)絡(luò)QoS之間的關(guān)系。在未來的工作當(dāng)中,會對新的網(wǎng)絡(luò)體系架構(gòu)下的主流休眠方案下的能耗和延時(shí)參數(shù)進(jìn)行仿真和優(yōu)化。
參考文獻(xiàn)
[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中一種基于接觸時(shí)間的休眠機(jī)制[J].計(jì)算機(jī)科學(xué),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 Internet- working with DTN[J]. Internet Engineering, 2012,5(1).