Energy-Efficient Task Allocation in Wireless Sensor Networks using
virtualization technology
Abstract: In s recent s years, s sensor s networks s are s widely s being s
deployed s for s substantial s periods s of s activity s and s also s are s being s
used s by s multiple s applications s with s possibly s diverse s requirements.
s Since s manually s upgrading s or s updating s sensor s software s is s often s
impossible, s run-times softwares reconfiguration s representss as
considerable s success s factor s for s many s practical s usage s scenarios s
of s sensor s networks. s On s the s other s hands, s virtualization s technology
s provides s the s possibility s to s customize s sensor s behaviour, s to s extend s
its s functionality s and s to s execute s multiple s applications s in s parallel. s
In s this s paper s we s show s how s virtualization s technology s can s be s used s
in s wireless s sensor s networks s to s multiplex s their s sensor s nodes s to s as s
many s virtual s machines s (VMs) s as s possible s in s order s to s utilize s their s
hardwares resourcess mores effectivelys ands saves ons powers
consumption. s This s paper s proposes s a s self-optimization s model s to s
meet s two s QoS s aspects s in s wireless s sensor s networks s with s a s special s
focus s on s power s and s performance. s Our s optimization s model s
includes s two s objective s functions, s one s for s power s cost s and s the s
other s one s for s the s performance. s In s our s model, s the s objective s is s to s
maximize s the s utilization s of s sensor s nodes s near s to s an s optimum s
point s to s prevent s performance s degradation. s In s addition, s a s penalty s
value s for s coping s with s the s cost s of s turning s nodes s on s or s off s is s
considered.
Keywords: Wireless sensor network, cluster,
virtualization technology, task allocation and scheduling
1. Introduction
Sensors networkss musts bes dynamicallys adaptables to s survive s software s bugs s and s changes s in s network s conditions, s applications requirements,s ors availables resourcess [1].s Sensors s are s typically s deployed s for s substantial s periods s of s activity s and s integrated s in s office s buildings s or s warehouses, s implanted s in s animals, s or s spread s out s in s nature s [2]. By consequence, installing a new sensor network may imply a considerable investment. In addition, sensor networks may produce data that are relevant for multiple purposes, which implies that multiple applications should be able to reuse the same sensor infrastructure.
From e this e perspective, e a e sensor e network e becomes e a e lightweight e service e platform e on e which e service e providers e can e install e a e wide e variety e of e applications. e Figure e 1 e sketches e the e context e of e such e a e service e platform e and e illustrates e how e it e is e linked e with e end-user e applications. e Think, e for e example, e of e a e chemical e factory e in e which e a e sensor e network e has e been e deployed e to e manage e operations e and e safety. e The e same e sensor e network e can e be e used, e for e instance, e by e (1) e a e facility e
management e application e to e control e the e temperature e in e rooms e where e inflammable e substances e are e stored, e (2) e a e stock e management e application e to e check e in e real-time e the e availability e of e particular e supplies e and e to e monitor e incoming e ande outgoinge products,e ande (3)e ae safetye monitoringe application e to e localize e dangerous e products e and e to e detect e when e incompatible e substances e approach e within e a e pre-defined e perimeter. e These e applications e make e use e of e various e services e offered e by e the e sensor e network e such e as e temperature e monitoring,e datae querying,e sensore localization,e ande distance e measuring. e In e addition, e each e application e may e require e different e behaviour e and e accuracy e related e to e data e collection, e data e aggregation, e localization, e or e timing. e In e this e context, e one e of e the e key e research e challenges e is e to e manage e sensore networkse ine suche ae waye thate theye cane bee dynamically e customized e toe various e (unanticipated) e circumstances. e Since e resource e limitations e prevent e sensors e from e having e an e extensive e set e of e services e pre-installed, e sensor e software e should e be e dynamically e reconfigurable. e This e implies e not e only e customizing e the e behaviour e of e a e sensor e node, e i.e. e changing e how e a e sensor e operates e by e using e the e same e functionality e in e different e ways, e but e also e adding e and e removing e functionality, e i.e. e changing e what e the e sensor e node e does.
In e recent e years, e virtualization e technology e (VT) e [3] e has e been e deployed e as e a e primitive e infrastructure e of e Cloud e computing e [4] e environments. e In e this e paper e we e use e this e technology e as e a e remedy e to e provide e the e desired e isolation e to e consolidate e a e set e of e virtual e machines e (VMs) e on e a e single e low-utilized e sensor e node. e In e addition, e fast e live e migration e of e VMs e can e be e done e to e balance e the e workloads e of e VMs e amongst e a e set e of e sensor e nodes. e These e features e of e VT e have e enabled e applications e running e in e VMs e to e move e around e from e one e sensor e node e to e another e sensor e node e at e runtime e in e response e toe changes e ine their e workloads, e security e requirements, e data e availability e & e energy e balance e between e sensor e nodes.
The contribution of this paper is the presentation of an Energy Efficient Allocation algorithm (EFAVT) which exploits from virtualization concept and uses VMs for scheduling a variety of lightweight applications or task sets. EFAVT dynamically reduce the number of nodes
Hamid Karimi*, Nasser Yazdani**
*University of Tehran, [email protected] ** University of Tehran, [email protected]
Fig. 1: A typical Sensor network
used within a running cluster by liberating nodes that are not needed by the current phase of the computation. Liberating nodes can allow more jobs to be accepted into the cluster, or can allow powering down unused nodes to save energy. To e make e transparent e allocation, e regardless e of e thee programminge language,e middleware,e ore operatinge system e used e by e the e application, e it e is e convenient e to e host e each e task e in e a e virtual e machine e (VM), e managed e by e a e VM e Monitor e (VMM) e such e as e Xen e [5], e for e which e efficient e migratione techniquese aree availablee [6].e EFAVTe thene amounts e to e identifying e inactive e VMs e that e can e be e migrated e to e other e nodes e that e have e sufficient e unused e memory. e A e VM e that e is e inactive e at e one e point e in e time e may, e however, e later e become e active; e possibly e causing e the e node e that e is e hosting e it e to e become e overloaded. e An e allocation e strategy e must e thus e also e be e able e to e move e VMs e from e overloaded e nodes e to e underloadede ones.e Oure allocatione strategye ise ae newe approache toe consolidatione ine ae homogeneouse clustere environment e that e takes e into e account e both e the e problem e of e allocating e the e VMs e to e the e available e nodes e and e the e problem e of e how e to e migrate e the e VMs e to e these e nodes. e EFAVT e works e in e two e phases e and e is e based e on e constraint e solving e [7, e 8]. e The e first e phase, e based e on e constraints e describing e the e set e of e VMs e and e their e CPU e and e memory e requirements, e computes e a e placement e using e the e minimum e number e of e nodes e and e a e tentative e reconfiguration e plan e to e achieve e that e placement. e The e second e phase, e based e on e a e refined e set e of e constraints e that e take e feasible e migrations e into e account, e tries e to e improve e the e plan, e to e reduce e the e number e of e migrations e required.
The rest of this paper is organized as follows. In the next section we discuss the related works. Section 3 gives an overview of system Architecture. Then, Section 4 describes how EFAVT uses constraint programming to determine the minimum number of nodes required by a collection of VMs, and Section 5 describes how EFAVT uses constraint programming to minimize the reallocation plan. Finally, Section 6 evaluates EFAVT using
experimental results. Section 7 presents our conclusions and future work.
2.
Related Work
Task or allocation or has or been or well or studied or in or the or area or of or distributed or systems or [9, or 10]; or however, or in or many or studies or in or the or literature or of or scheduling or in or real-time or WSNs, or the or effects or of or fault or occurrences or in or the or systems or are or ignored, or despiteor theor fact thator theyor haveor bigor impactor onor theor performance or and QoS or of or the or systems. or EAS or [11] or statically or schedule or communication or and computation or onto or heterogeneous or Network-on-Chip or architectures or under or real or timeor constraints.or Theyor focusor onor theor architecturesor interconnected or by or 2D or mesh or networks or with or XY or routing or schemes.or CoRAlor [12]or isor anor onlineor taskor schedulingor mechanism or proposed or to or allocate or network or resources or to or tasks or of or periodic or applications or in or WSNs. or CoRAl or does or not or address or the or mapping or of or tasks or to or sensor or nodes, or and energy or consumption or is or not or explicitly or discussed. or A or TCP or oriented or distributed or task or mapping or approach or is or introduced or for or mobile or ad or hoc or networks or in or [13]. or DFuse or [14] or is or a or data or fusion or task or mapping or mechanism or for or WSNs. or None or of or these or solutions or tolerate or node or failures. or Task or mapping or and scheduling or heuristics or are or presented or in or [15] or for or heterogeneous or mobile or ad or hocor gridor environments.or EcoMapS or [16] or presents or a or generic or task or mapping or and scheduling or solution or for or single-hop or clustered or wireless or sensor or networks. or Based or on or realistic or energy or models or for or computationor and communication,or it or aimsor toor provideor energy or consumption or guarantees or with or minimum or schedule or lengths.or Inor [17],or theor RTFTRCor algorithmor hasor beenor proposed.or Theor objectivesor ofor thisor algorithmor areor toor minimize or the or schedule or length and maximize or the or reliability or of or the or system. At or the beginning, or RTFTRC or allocates or themain or and backup or copies or of or tasks or to or the
sensor or nodes, or leading or to or the maximum or possible or increase or in or the system or reliability. This or method or is or expensive or and greatly or increases or overhead or costs or of or the system.
3.
System Model
The to system to consists to of a set to of n to homogeneous to sensor to nodes to which to are to grouped to into to 1-hop to clusters to with to a to specific to clustering to algorithm
.
to A to cluster to typically to consists to of a to single to node to as to ato cluster-head to resourceto management, to a to collection to of nodes to that to can to host to user to tasks. to Each to task, to containing to few to number of to dependent to jobs, to is to deployed to on to a to VM to and to the goal of to EFAVT to is to efficiently to maintain to the cluster to in to a to configuration, to i.e. to a to mapping of to VMs to nodes, to that is to (i) to viable, to i.e. to that to gives to every s VM s access s to s sufficient s memory s and s every s active s VM s access s to s its s own s processing s unit, s and s (ii) s optimal, s i.e. s thats usess thes minimums numbers ofs nodes.s Severals approaches s to s achieving s a s viable s configuration s have s used s heuristics s in s which s a s locally s optimal s placement s is s chosen s for s each s VM s according s to s some s strategy s [18, s 19, s 20]. s However, s local s optimization s does s not s always s lead s to s a s globally s optimal s solution, s and s may s fail s to s produce s any s solution s at s all. s EFAVT s instead s uses s Constraint s Programming s (CP), s which s is s able s to s determine s a s globally s optimal s solution, s if s one s exists, s by s using s a s more s exhaustive s search, s based s on s a s depth s first s search. s The s idea s of s CP s is s to s define s a s problem s by s stating s constraints s (logical s relations) s thats musts bes satisfieds bys thes solution.s As Constraints Satisfaction s Problem s (CSP) s is s defined s as s a s set s of s variables, s a s set s of s domains s representing s the s set s of s possible s values s for s eachs variables ands as sets ofs constraintss thats represents required s relations s between s the s values s of s the s variables. s A s solution s for s a s CSP s is s a s variable s assignment s (a s value s for s each s variable) s that s simultaneously s satisfies s the s constraints. s To s solve s CSPs, s EFAVT s uses s the s Choco s library s [21], s which s can s solve s a s CSP s where s the s goal s is s to s minimize s or s maximize s the s value s of s a s single s variable. s Because s Choco s and s most s others constraints solverss cans onlys solves optimizations problemss ofs as singles variable,s the s reconfigurations algorithm s proceeds s in s two s phases. s The s first s phase s finds s the s minimum s number s n s of s nodes s that s is s necessary s to s host s all s VMs s and s a s sample s viable s allocation s that s uses s this s number s of s nodes. s We s refer s to s this s problem s as s the s Virtual s Machine s Allocating s Problem s (VMAP). s The s second s phase s computes s ans equivalent s viables allocations thats minimizess the s reallocation s time, s given s the s chosen s number s of s nodes s n. s We s refer s to s this s problem s as s the s Virtual s Machine s Reallocation s Problem s (VMRP). s Solving s these s problems s may s be s time-consuming. s While s the s allocation s algorithm s runs s on s the s cluster s resource s management s node, s and s thus s does s not s compete s with s VMs s for s CPU s and s memory, s it s is s important s to s produce s a s new s configuration s quickly s to s maximize s the s benefit s of s allocation. s Choco s has s the s property s that s it s can s be s aborted s at s any s time, s in s which s case s it s returns s the s best s result s computed s so s far. s4- The Virtual Machine Allocating Problem In order in to in allocate in VMs in on in cluster's in nodes in an in efficient in manner, in firstly in we in should in find in allocation in plans in that in minimize in the in energy in consumption in of in the in cluster in by in minimum in activation in of in sleeping in nodes. in So in the in goal in of in the in VMAP in is in to in determine in the in minimum in number in of in nodes in that in can in host in the in VMs, in given in their in current in processing in unit in and in memory in requirements.
4.1 Assignment of VMs on sensor nodes
Each in node in a in cluster in can in provide in a in certain in amount in of in memory in and in number in of in processing in units, in and in each in VM in requires in a in certain in amount in of in memory, in and, in if in active, in a in processing in unit. These in constraints in must in be in satisfied in by in a in viablein allocation. To achieve the highestin degreein ofin consolidation, in we in must in find in a in viable in allocation in that in uses in the in minimum in number in of in nodes. in The in problem in of in finding in a in minimal, in viable in allocation in is in comparable in to in the in NP-Hard in 2-Dimensional in Bin in Packing in Problem in [22], in where in the in dimensions in correspond in to in the in amount in of in memory in and in number in of in processing in units.
The in VMAP may have in multiple in solutions in which may in not in all in involve in the in same in number in of in migrations. To in express in the in VMAP in as in a in CSP, in we in consider a set in of in nodes in N in and in a set in of in VMs in V. in The in goal in is in to in find in a in viable in allocation in that in minimizes in the in number in of in nodes in used. in The in notationin Hi,in definedin below,in isin usedin toin describein anin
allocation. in For in each in node ni ∈ N, the bit vector Hi = < hi1, . . . , hij , . . . , hik> denotes in the in set in of in VMs in
assigned in to in node ni (i.e., hij = 1 if the node ni is hosting the VM vj ). We in express in the in constraints in that in a in viable in allocation in must in respect in each in VM’s in processing in unit in and in memory in requirements in as in follows. in Let in Rp in be in the in vector in of in processing in unit in demand in of in each in VM, in Cp in be in the in vector in of in processing in unit in capacity in associated in with each in node, in Rm in be in the in vector in of in memory in demand in of in each in VM, in and in Cm in be in the in vector in of in memory in capacity in associated in with each in node. in Then, in the in following in inequalities in express in the in processing in unit in and in memory in constraints:
R
p. H
i≤
C
p(n
i)
∀
n
i∈
N
R
m. H
i≤
C
m(n
i)
∀
n
i∈
N
Given in these in constraints, in our in goal in is in to in minimize in the in value in of in the in variable in X, in defined in as in follows, in where in the in variable in ui in is in 1 in if in the in node in ni in hosts in at in least in one in VM, in and in 0 in otherwise.
(1)
We let xvmapdenote this solution.
The in solver in dynamically in evaluates in the in remaining in free in place in (in in terms in of in both in processing in unit in and in memory in availability)in onin eachin nodein duringin thein searchin forin ain minimum in value in of X. in This in is in done in by in solving in a in Multiple in Knapsackin problemin usingin ain dynamicin programmingin approach in [23]. In principle, in the in constraint in solver in must in
enumerate in each in possible in allocation, in check in whether in it in is in viable, in and in compare in the in number in of in nodes in to in the in minimum in found in so in far.
5. The Virtual Machine Reallocation Problem The go solution go to go the go VMAP go determines go the go minimum go number go of go nodes go which go are go required go to go host go the go VMs. go However, go for go a go given go collection go of go VMs, go there go can go be go multiple go allocations go that go minimize go the go number go of go used go nodes, go and go the go number go of go migrations go required go to go reach go these go allocations. go The go objective go of go the go Virtual go Machine go Reallocationgo Problemgo (VMRP)go isgo togo constructgo ago reallocation go plan go for go each go possible go allocation go that go uses go the go number go of go nodes go determined go by go the go VMAP, go and go to go choose go the go one go with go the go lowest go estimated go reallocation go cost. go In go the go rest go of go this go section, go we go consider go how go to go construct go a go reallocation go plan, go how go to go estimate go its go cost, go and go how go to go combine go these go steps go into go a go solution go for go the go VMRP.
5.1 Reallocation plan
The go constraint go of go viability go has to go be go taken go into go account go not go only go in go the go final go allocation go but go also go during go migration. go A go migration go is go feasible go if go the go destination go node go has go a go sufficientgo amountgo ofgo freego memorygo and,go whengo thego migrated go VM go is go active, go if go the go destination go node go has go a go free go processing go unit. go However, go to go obtain an go optimal go solution go it go is go often go necessary go to go consider an go allocation go in go which go somego migrationsgo arego notgo immediatelygo feasible. Wego identifygo twogo kinds go ofgo constraintsgo ongo migrations: go sequential go constraints go and go cyclic go constraints. A go sequential go constraint go occurs go when go one go migration go can go only go begin go when go another go one go has go completed. go
A go cyclic go constraint go occurs go when go a go set go of go infeasible go migrations go forms go a go cycle. go An go example go is go suppose go that, go due go to go memory go constraints, go VM1 go can go only go migrate go from go node go N1 go to go node go N2 go when go VM2 go has go migrated go from go node go N2, go and go VM2 go can go only go migrate go from go node go N2 go to go node go N1 go when go VM1 go has go migrated go from go node go N1. go We go can go break go such go a go cycle go by go inserting an go additional go migration. go A go pivot go node go outside go the go cycle go is go chosen go to go temporarily go host go one go or go more go of go the go VMs. go After go breaking go all go cycles go of go infeasible go migrations go in go this go way, an go order go can go be go chosen go for go the go migrations go as go in go the go previous go example. go These go migrations go include go moving go the go VMs go on the go pivot go nodes go to go their go original go destinations.
Taking go the go above go issues go into go account, go the go algorithm go for go constructing go a go reallocation go plan go is go as go follows. go Starting go with go a go reallocation go graph, go the go first go step go is go to go identify go each go cycle go of go infeasible go migrations, go identify go a go node go in go each go such go cycle go where go the go VMs go to go migrate go have go the go smallest go total go memory go requirement, go and go select go a go pivot go node go that go can go accommodate go these go VMs’ go processing go unit go and go memory go requirements. go The go result go is an go extended go reallocation go graph go in go which go for go each go such go chosen go VM, go the go migration go from go the go current go node go to go the go destination go node go in go the go desired go allocation go is go replaced go by go a go migration go to go the go pivot go followed go by go a go migration go to go the go destination go node. go Subsequently, go the go goal go is go to go try go to go do go as go many go
migrations go in go parallel go as go possible, go so go that go each go migration go will go take go place go with go the go minimum go possible go delay. go Thus, go the go migration go plan go is go composed go of go a go sequence go of go steps, go executed go sequentially, go where go the go first go step go consists go of go all go of go the go migrations go that go are go initially go feasible, go and go each go subsequent go step go consists go of go all go of go the go migrations go that go have go been go made go feasible go by go the go preceding go steps.
5.2 Cost of a reallocation plan
The go cost go of go performing go a go reallocation go includes go both go the go over go head go incurred go by go the go migrations go themselves go and go thego degradationgo ingo performancego thatgo occursgo whengo multiple go active go VMs go share go a go processing go unit, go as go occurs go when go a go migration go is go delayed go due go to go sequential go or go cyclic go constraints. go The go latter go is go determined go by go the go duration go of go preceding go migrations. go
Migration cost Migrating go a go VM go from go one go node go to go another go requires go some go CPU go and go memory go bandwidth go on go both go the go source go and go destination go nodes. go When go there go are go active go VMs go either go on the go source go or go destination go node, go it go will go have go reduced go access go to go these go resources, go and go thus go will go take go longer go to go complete go its go task. go In go this go section, go we go examine go these go costs go in go the go context go of go a go homogeneous go cluster. go Overhead go for go a go single go migration go and go the go delay go incurred go for go preceding go migrations go both go vary go principally go in go terms go of go the go amount go of go memory go allocated go to go the go migrated go VMs. go Thus, go we go base go the go cost go model go on go this go quantity. The go cost go function go f go is go defined go as go follows. go The go estimated go cost go f(p) go of go a go reallocation go plan go p go is go the go sum go of go the go costs go of go the go migrations go of go each go migrated go VM go vj go (Equation go 2). go The go estimated cost f(vj go ) go of go the go migration go of go a go VM go go vj is go the go sum go of go the go estimated go costs go of go the go preceding go steps, go plus go the go amount go of go memory go allocated go to go vj go (Equation go 3). go Finally, go the go estimated cost go f(s) go of go a go step go s go is go equal go to go the go largest go amount go of go memory go allocated go to go any go VM go that go is go migrated go in go step go s. go This go estimated cost go conservatively go assumes go that go one go step go can go only go begin go when go all go of go the go migrations go of go the go previous go step go have go completed.
(2)
(3)
(4) To go express go the go VMRP go as go a go CSP, go we go again go use go the go constraintsgo thatgo an allocationgo mustgo bego viable,go asgo described go in go Section go 4.1, go and go additionally go specify go that go the go number go of go nodes go used go in go an allocation go is go equal go to go the go solution go of go the go VMAP go (Equation go 5):
For so each so allocation so that so satisfies so these so constraints, so the so solver so constructs so a so reallocation so plan so p, so if so possible. so The so optimal so solution so k so is so the so one so that so minimizes so the so variable so K, so defined so as so follows so (Equation so 6). so Minimizing so the so cost so of so a so reallocation so provides so a so plan so with so fewer so migrations so and so steps, so and so a so maximum so degree so of so parallelism, so thus so reducing so the so duration so and so the so impact so of so a so reallocation. so so The so lower so bound so for so K so is so the so sum so of so the so cost so of so migrating so each so VM so that so must so migrate so i.e. so when so multiple so active so VMs so are so hosted so on so the so same so node. so The so upper so bound so corresponds so to so the so cost so of so the so reallocation so plan so pvmap so associated so with so the so allocation so previously so computed so by so VMAP:
(6)
(7)
The so VMRP so uses so equivalences so to so reduce so the so time so required so to so find so viable so allocations. so For so the so VMRP, so however, so the so equivalence so relation so between so VMs so has so to so be so more so restrictive so to so take so into so account so the so impact so of their so migration. so Indeed, so migration so of so equivalent so VMs so must so have so the so same so impact so on so the so reallocation so process. so Thus, so equivalent so VMs so must so have so the so same so resource so demands so and so must so be so hosted so on so the so same so nodes. so In so this so situation, so the so equivalence so relation so between so two so VMs so is so formalized so by so Equation so 8.
(8)
EFAVT so dynamically so estimates so the so cost so of so the so plan so associated so with so the so allocation so being so constructed so based so on so information so about so the so VMs so that so have so already so been so assigned so to so a so node. so Then, so EFAVT so estimates so a so minimum so cost so for so the so complete so future so reallocation so plan. so For so each so VM so that so has so not so yet so been so assigned so to so a so node, so the so solver so looks so at so VMs so that so cannot so be so hosted so by so their current so node so and so increases so the so cost so by so these so future so migrations. so Finally, so the so solver so determines so whether so the so future so allocation so based so on so this so partial so assignment so might so improve so the so solution so or so will so necessarily so be so worse. so In so the so latter so situation, so the so solver so abandons so the so allocation so currently so being so constructed so and so searches so for so another so assignment.
6. Evaluation
A so simulator so based so on so the so system so and so application so models so presented so in so Section so 3 so was so developed so to so evaluate so the so performance so of so the so EFAVT so algorithm. so We so compare so the so results so of so this so algorithm so with so respect so to so results so of so two so algorithms so E-CNPT so and so E-MinMin so which so have so presented so in so [16]. so Through so our so simulations so we so investigate so the so efficiency so of so the so algorithms so with so respect so
to average energy so consumption so and so average so number so of so sleeping so nodes so which so are so activated so to so schedule so task so sets. so All so simulations so are so run so on so a so P-IV so 2.26 so GHz so processor so with so 2GB so of so RAM. so Simulation so software so is so developed so using so the so Microsoft so Visual so Studio so 2008 so using so the so C# so programming so language.
We so assumed so that so there so are so 10 so homogeneous so sensor so nodes so in so a so single so hop so cluster. so The so initial so energy so of so each so node so is so considered so as so 6000 so mJ. so The so power so consumption so of so each so node so is so shown so in so Table so I. so Hence, so all so result so provided so in so this so section so are so averaged so over so one so hundred so experimentsso perso endpoint. The relationship between energy rate and transmission rate is 100 mW at 100 Kbps, which means that the time and energy cost for transmitting 1 bit are around 10 µs and 1 µJoule [24]. The so experiments so are so presented so for so a so comparative so study so between so the so performance so of so EFAVT so and so two so algorithms so E-CNPT so and so E-MinMin so presented so in so [16] so which so may so be so the so closest so algorithm so among so the so related so works so to so EFAVT. so These so two so algorithms so are so presented so for so task so allocation so and so scheduling so algorithm so in so energy-constrained so applications so in so WSNs so which so works so in so the so scope so of so a cluster, so similar so to so EFAVT. so The so main so goals so of so these so algorithms so are so to so minimize so the so schedule so length so subject so to so some so energy so consumption so constraints. so In so other so words, so through so our so simulations, so we so investigate so the so efficiency so of so these so three so algorithms so with so respect so to so the so average so energy so consumption so and so number so of so sleeping so nodes so in so the so cluster so which so are so activated so for so scheduling so different so task so sets.
We have carried out one hundred experiments. so In so each so of so experiments, so random so number so generators so are so used so to so produce so different so task so sets. so In so each so of so tests, so our so algorithm so and so other so two so algorithms so (E-CNPT, so E-MinMin) so are so executed so to so schedule so the so task so sets so to so the so available so nodes so in so the so cluster. so Suppose so that so the so cluster so has so reached so to its so steady so state so behaviour, so when so it so has so passed so a so 1000-second so time so period.
TABLE I
POWER CONSUMPTION OF WIRELESS SENSOR NETWORK
Mode of Sensor Ratio
Sleep 0.001 Idle 0.8 Active 1
Fig.2 depicts so the so efficiencyso ofso the so three so aforementioned so algorithms so on so the so energy so consumption so of so the so cluster. so As so can so be so observed so in so the so figure, so the so energy so conservation so of so EFAVT so outperforms so that so of so E-CNPT so up so to 7% and so E-MinMin so up so to 4% on so average. so The so reason so is so that so our so proposed so algorithm so tries so to so use so the so working so nodes so and so allocate so tasks so to them so rather so than so a so sleeping so node so and so performs so consolidation so VMs so based so onso constraintso programmingso andso takesso migrationso overheadso intoso account. Theso useso ofso constraintso programming so allows so EFAVT so to so find so mappings so of so tasks so to so nodes so that so are so better so than so those so found so by so heuristics so based so on so local so optimizations, so and so that so are so frequently so
globally so optimal so in so the so number so of so nodes. so It so should so be so noted so that, so in so our so one so hundred so experiments so we so observe so that so EFAVT so in so comparing so with so another so two so algorithms so turn-on so fewer so sensor so nodes so averagely so for so scheduling so different so task so sets. so This so is due so to so the so fact so that so our so algorithm so uses so consolidation so that so is so a so well-known so technique so to so dynamically so reduce so the so number so of so nodes so used so within so a so running so cluster so by so liberating so nodes so that so are so not so needed so by so the so current so phase so of so the so computation. so Liberating so nodes so can so allow so more so tasks so to so be so accepted so into so the so cluster, so or so can so allow so powering so down so unused so nodes so to so save so energy. so Since so in so many so situations, so there so may so not so exist so enough so sleeping so nodes so to so be so awakened, so EFAVTso encountersso considerableso preferenceso overso E-CNPT so and E-MinMin. so According so to so our so simulation so results, so EFAVT so is so more so efficient so and so it so can so better so be so applied so to so resource so constrained so systems so with so different so task so sets.
Fig. 2: Normalized Energy Consumption of EFAVT, E-MinMin and E-CNPT
7. Conclusion and Future Work
In this paper, we have proposed a task allocation algorithm for cluster-based WSNs, which tries to allocate the cluster’s tasks in an energy efficient manner and uses the minimum number of sleeping nodes in the cluster. In order to do so, EFAVT exploits from virtualization concept and uses VMs for scheduling a variety of lightweight applications or task sets. EFAVT works in two phase and is based on constraint-programming. The first phase, based on constraints computes a allocation plan using the minimum number of nodes and a reconfiguration plan to achieve that plan. The second phase, based on a refined set of constraints that take feasible migrations into account, tries to improve the plan, to reduce the number of migrations required. Our constraint-programming based approach also is able to determine a globally optimal solution for task allocation, if one exists, by using a more exhaustive search, based on a depth first search. In future work, we plan to extend our algorithm to heterogeneous WSNs, addressing node failures, and consider real-time tasks.
References
[1] Q. Wang, Y. Zhu, and L. Cheng. "Reprogramming wireless sensor networks: challenges and approaches". IEEE Network, (3):48–55, 2006. [2] J. Gehrke and L. Liu. Guest editors "introduction: Sensor-network applications". IEEE Internet Computing, 10(2):16–17, 2006.
[3] Smith J, Nair R . Virtual machines: "Versatile platforms for systems and processes", Morgan Kaufmann Pub, 2005.
[4] Foster I, Zhao Y, Raicu I, Lu S "Cloud computing and grid computing 360-degree compared", IEEE, 1-10, 2009.
[5] P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. "Xen and the art of virtualization", the 19th ACM Symposium on Operating Systems Principles,164–177, 2003.
[6] C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt,and A. Warfield. "Live migration of virtual machines". the 2nd ACM/USENIX Symposium on Networked Systems Design and Implementation (NSDI ’05), 273–286, 2005.
[7] F. Benhamou, N. Jussien, and B. O’Sullivan, editors. "Trends in Constraint Programming". ISTE, 23-35, 2007.
[8] F. Rossi, P. van Beek, "Handbook of Constraint Programming (Foundations of Artificial Intelligence)". Elsevier Science Inc., 2006. [9] T. Xie and X. Qin, “An energy-delay tunable task allocation strategy for collaborative applications in networked embedded systems,” IEEE Transactions on Computers, (57).329-343, 2008.
[10] Y. Yu and V. Prasanna, “Energy-balanced task allocation for collaborative processing in wireless sensor networks,” Mobile Networks and Applications, (10),115-131, 2005.
[11] H. Jingcao and R. Marculescu, “Energy-aware communication and task scheduling for network-on-chip architectures under real-time constraints,” Europe Conference and Exhibition on Design, Automation and Test, 234-239, 2004.
[12] S. Giannecchini, M. Caccamo.“Collaborative Resource Allocation in Wireless Sensor Networks,” Urbana, (51), 35-45, 2004.
[13] P. Basu, W. Ke, and T. Little, “Dynamic task-based anycasting in mobile ad hoc network,” Mobile Network (8), 593-612, 2003.
[14] R. Kumar, M. Wolenetz, B. Agarwalla, J. Shin, P. Hutto, A. Paul, and U. Ramachandran, “DFuse: a framework for distributed data fusion,” 1th international conference on Embedded networked sensor systems, 114-125, 2003.
[15] S. Shivle, R. Castain, H. Siegel, A. Maciejewski, T. Banka, K. Chindam, S. Dussinger, P. Pichumani,P. Satyasekaran, and W. Saylor, “Static mapping of subtasks in a heterogeneous ad hoc grid environ- ment,”13th IEEE Workshop on Computing, 21-32. 2004.
[16] Y. Tian, E. Ekici, and F. Ozguner, “Cluster-based information processing in wireless sensor networks: an energy-aware approach,” Wireless Communications & Mobile Computing, (7), pp.893-907, 2007. [17] X. Qin, Z. Han, H. Jin, L. Pang, and S. Li, “Real-time fault-tolerant scheduling in distributed systems,” Workshop on Cluster Computing-Technologies, Environments and Application, 2000. [18] N. Bobroff, A. Kochut, and K. Beaty. Dynamic placement of virtual machines for managing SLA violations. Integrated Network Management, 10th IFIP/IEEE International Symposium, 119–128,2007. [19] L. Grit, D. Irwin, A. Yumerefendi, and J. Chase. Virtual machine hosting for networked clusters: Building the foundations for "auto-nomic" orchestration. First International Workshop on Virtualization Technology in Distributed,1–8, 2006.
[20] G. Khanna, K. Beaty, G. Kar, and A. Kochut. "Application performance management in virtualized server environments". Network Operations and Management Symposium,373–381, 2006.
[21] N. Jussien, G. Rochart, and X. Lorca. "The CHOCO constraint programming solver". CPAIOR’08 workshop on Open-Source Software for Integer and Contraint Programming,33-42, 2008.
[22] P. Shaw."A constraint for bin packing. In Principles and Practice of Constraint Programming (CP’04)", Springer (7),648–662., 2004. [23] M. Trick. "A dynamic programming approach for consistency and propagation for knapsack constraints". Proceedings of the Third International Workshop on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems (CPAIOR-01), 113–124, 2001.
[24] M. Alghamdi, T. Xie, and X. Qin, "PARM: A Power-Aware Message Scheduling Algorithm for Real-Time Wireless Networks," in Proc. 1th ACM Workshop Wireless Multimedia Networking and Performance Modeling, pp.86-92, 2005.