摘 要: 目前传统网络架构显得越来越臃肿,以致于产生很多的问题,其中能耗问题显得越来越突出。为了解决这些问题,不是对已有的网络架构做修补,而是革命性地更改网络体系架构。国内外已经有部分项目提出了未来网络体系架构,并且在一些新型的网络体系架构下提出了休眠机制,旨在降低能耗。主要介绍了未来网络架构下的休眠方案,同时对节点级休眠方案进行仿真和比较,为以后的研究做铺垫。
关键词: 未来网络;能耗;能效;休眠机制
0 引言
随着互联网的快速发展,网络节点数目日益增多,网络能耗随之增加,同时网络架构显得越来越臃肿。关于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(Exponential Adaptive Cyclic Difference Set system)和MACDS(Multiplicative Adaptive Cyclic Difference Set system)两种休眠算法;参考文献[3]、[4]提出了将基于时间接触的休眠机制应用到算法里,从而降低能耗。在Open Flow Network网络架构下,参考文献[5]提出了相关的休眠机制,选择根节点,形成节点树,根据网络所需要的节点数和当前处于醒着状态的节点数之间的关系,致相应的节点休眠。在PSIRP网络体系架构下,参考文献[6]、[7]提出了根据网络节点的重要性决定关闭相应的节点,进入休眠,并且权衡能耗和延时之间的关系。还有其他一些网络级休眠方案,如参考文献[8]提出了ETE机制,能量感知以关闭相应的节点。
上述休眠方案当中的一些算法是本文介绍的主要内容,在研究的过程中,将休眠机制分为两大类:节点级休眠和网络级休眠,介绍了DTN网络中节点级休眠方案和网络级休眠方案,并进行了仿真。
1 节点级休眠
网络节点处于工作状态和空闲状态时,能耗的值相同,如图1所示[9]。休眠是指将处在空闲状态的节点休眠,以节省能耗。
DTN网络属于新型的网络,它的特点是频繁中断,长延时的连接,这是因为移动性、节点稀疏分布和噪声等因素的影响。下面介绍DTN网络下的休眠方案:EACDS和MACDS[1-2,10]。
介绍EACDS和MACDS之前,首先熟悉DTN网络节点架构,如图2所示。其中,灰色方格1、2、4等表示节点醒着的时隙,5、6、7方格表示节点休眠的时隙,在每一个醒着的时隙前面加一个帧让相邻节点能够侦听到此节点。对于每一个节点,预先规定固定长度为Ls的集合,再以这个长度为周期循环,而之前选取长度为Ls集合,必须保证此集合任意地循环移位都会有一个重合的、醒着的时隙。因为节点A和其他的节点是循环移位的关系,只有在某一时刻两个节点都处于醒着的状态,才具备通信的条件。
EACDS和MACDS的共同点是通过某一种缩放的关系放大集合的长度Ls,Ls越大,节能效果越好。
1.1 EACDS算法
EACDS是基于利用集合的分层方法,能量级为0的初始差集(P0=I=(I,kI,λI))被另一个指数差集(E=(E,kE,λE))放大为能量级1(P1=EI)的分层集合,接着再次被放大为更高级别的分层集合(P2=E2I),依次类推,最后选择某一能量级的P。其中,ν表示框架长度,k表示活动个数,λ表示重叠个数,表示Kronecker积。
Kronecker积的定义为:A=(aij)是m×n的矩阵,B=(bkI)是p×q的矩阵,A和B的Kronecker积为mp×nq的块矩阵
1.2 MACDS算法
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却更加实用。
2 网络级别休眠
不仅仅在DTN网络,在其他网络架构下也有相关的休眠机制,例如PSIRP网络架构、Open Flow Network等。
2.1 PSIRP架构下的休眠机制
这里介绍的休眠算法归于以下几个步骤[6-7]:
(1)检查每条链路的利用率
对于网络中的每个节点,分析链路利用率,链路利用率超过阈值,增加权重来减少利用率,链路利用率低于阈值,它成为减少权重的等待者。
(2)网络节点排序
根据节点的局部中心度对网络节点进行排列,这个序列反映节点在网络中的重要性。这一步骤很重要。
(3)关闭网络节点
节点进入休眠模式,可能导致数据包丢失,满足下列条件,节点才能够进入休眠模式。
①与此节点连接的链路没有流量;
②此节点关闭后,其余的节点仍然可以连接;
③此节点关闭后,它所有相邻节点可重新连接到网络上。
该方案的特点是,对网络元素重要性排列,以及根据节点进入休眠的条件判断能否进入休眠。
2.2 Open Flow Network下的休眠机制
Open Flow Network元素有接入节点、骨干节点。接入节点用来连接用户终端或服务器,而骨干节点连接其他节点。骨干节点与接入节点之间的节点不能进入休眠。节点的休眠、唤醒以及路由路径的改变步骤如下[5]:
(1)预先测量网络流量。
(2)根据网络流量计算节点需要转发流量的数量以及决定根节点。整个网络所需要的节点数=整个网络的流量/节点转发率。
(3)根据休眠算法让节点休眠或者唤醒。
(4)改变使用醒着节点的路由路径,用最短路径算法来计算路由路径。
其中根节点的选择是为了形成一个树结构的拓扑,从而选取相应的休眠等待节点。按照下面的方法选择根节点:
①处理最大流量的节点作为根节点。
②如果多个节点的最大流量相同,选择链路连接数最多的节点作为根节点。
休眠算法有以下几种情况:
(1)醒着的节点数目大于传输流量所需要的节点数。这种情况下,主要又分为两种:
①当前的根节点和之前选择的根节点不同。
(a)从根节点到其他节点用最短路径构建一个访问树。这里用Dijkstra算法。
(b)选择候选的休眠节点,注意,根节点与访问节点之间的节点不能休眠,其余的节点休眠。
(c)从最小流量节点开始把候选节点休眠一次,直到醒着的节点数量等于所需节点数量或所有候选节点睡眠。
②当前的根节点与之前的根节点相同。
当前选择的根节点与原先选择的节点相同,则有相同的访问树。然而,如果之前没有休眠的候选节点,节点可能像上面提到的那样进入休眠。否则,没有其他操作将被执行。
(2)醒着的节点数目小于传输流量所需要的节点数。唤醒休眠中的节点,顺序按照休眠时的逆序,直到两者数目相等。
(3)醒着的节点数目等于传输流量所需要的节点数。没有节点需要唤醒或者休眠。
该方案的特点是选择根节点构建树,根据相关的准则,选择休眠等待节点,优化树的结构,从而降低能耗。
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方案节能。
4 结论
不同的网络体系架构下,休眠机制会存在网络连通性的问题,网络节点处于休眠状态,不接受数据报文,所以要权衡能耗与网络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 Internet- working with DTN[J]. Internet Engineering, 2012,5(1).