ad hoc networks - delab.csd.auth.grdelab.csd.auth.gr/papers/adhoc10dkm.pdf · cache consistency in...

27
Cache consistency in Wireless Multimedia Sensor Networks N. Dimokas a , D. Katsaros b, * , Y. Manolopoulos a a Informatics Dept., Aristotle University, Thessaloniki, Greece b Computer and Communication Engineering Dept., University of Thessaly, Volos, Greece article info Article history: Received 4 September 2008 Received in revised form 30 July 2009 Accepted 3 August 2009 Available online 8 August 2009 Keywords: Cache consistency Cache coherency Replacement policy Cooperative caching Data dissemination Wireless sensor networks abstract The production of cheap CMOS cameras, which are able to capture rich multimedia content, combined with the creation of low-power circuits, gave birth to what is called Wireless Multimedia Sensor Networks (WMSNs). WMSNs introduce several new research challenges, mainly related to mechanisms to deliver application-level Quality-of-Service (e.g., latency minimization). Such issues have almost completely been ignored in tradi- tional WSNs, where the research focused on energy consumption minimization. Towards achieving this goal, the technique of cooperative caching multimedia content in sensor nodes can efficiently address the resource constraints, the variable channel capacity and the in-network processing challenges associated with WMSNs. The technological advances in gigabyte-storage flash memories make sensor caching to be the ideal solution for latency minimization. Though, with caching comes the issue of maintaining the freshness of cached contents. This article proposes a new cache consistency and replacement policy, called NICC, to address the cache consistency issues in a WMSN. The proposed policies rec- ognize and exploit the mediator nodes that relay on the most ‘‘central” points in the sensor network so that they can forward messages with small latency. With the utilization of mediator nodes that lie between the source node and cache nodes, both push-based and pull-based strategies can be applied in order to minimize the query latency and the com- munication overhead. Simulation results attest that NICC outperforms the state-of-the-art cache consistency policy for MANETs. Ó 2009 Elsevier B.V. All rights reserved. 1. Introduction The convergence of the Internet, communications, and information technologies, coupled with recent advances in engineering fields, paved the way for the production of inexpensive sensors, capable of achieving orders of magni- tude spatial and temporal resolution and accuracy, com- pared to what was the situation a decade ago. This generation of the sensors established the now mature research and development area of wireless sensor networks [1] (WSNs). The deployment of networks of hun- dreds of sensors created a wealth of applications, like mil- itary applications (e.g., monitoring friendly/inimical forces and equipment, attack detection, targeting), environmental applications (e.g., microclimates, flood detection, precision agriculture), health applications (e.g., remote monitoring of physiological data, elderly assistance), commercial applications (e.g., inventory control). More recently, the production of cheap CMOS cameras and microphones, which can acquire rich media content from the environment, created a new tidal wave into the evolution of wireless sensor networks. For instance, the Cyclops imaging module [2] is a light-weight imaging module which can be adapted to MICA2 1 or MICAz sensor 1570-8705/$ - see front matter Ó 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2009.08.001 * Corresponding author. Tel.: +30 24210 74975; fax: +30 24210 74997. E-mail addresses: [email protected] (N. Dimokas), dkatsar@ inf.uth.gr, [email protected], [email protected] (D. Katsaros), [email protected] (Y. Manolopoulos). URLs: http://delab.csd.auth.gr/~dimokas (N. Dimokas), http://www. inf.uth.gr/~dkatsar (D. Katsaros), http://delab.csd.auth.gr/~manolopo (Y. Manolopoulos). 1 http://www.xbow.com. Ad Hoc Networks 8 (2010) 214–240 Contents lists available at ScienceDirect Ad Hoc Networks journal homepage: www.elsevier.com/locate/adhoc

Upload: others

Post on 29-Oct-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

  • Ad Hoc Networks 8 (2010) 214–240

    Contents lists available at ScienceDirect

    Ad Hoc Networks

    journal homepage: www.elsevier .com/locate /adhoc

    Cache consistency in Wireless Multimedia Sensor Networks

    N. Dimokas a, D. Katsaros b,*, Y. Manolopoulos a

    a Informatics Dept., Aristotle University, Thessaloniki, Greeceb Computer and Communication Engineering Dept., University of Thessaly, Volos, Greece

    a r t i c l e i n f o a b s t r a c t

    Article history:Received 4 September 2008Received in revised form 30 July 2009Accepted 3 August 2009Available online 8 August 2009

    Keywords:Cache consistencyCache coherencyReplacement policyCooperative cachingData disseminationWireless sensor networks

    1570-8705/$ - see front matter � 2009 Elsevier B.Vdoi:10.1016/j.adhoc.2009.08.001

    * Corresponding author. Tel.: +30 24210 74975; faE-mail addresses: [email protected] (N

    inf.uth.gr, [email protected], dkatsaro@[email protected] (Y. Manolopoulos).

    URLs: http://delab.csd.auth.gr/~dimokas (N. Diinf.uth.gr/~dkatsar (D. Katsaros), http://delab.csd.aManolopoulos).

    The production of cheap CMOS cameras, which are able to capture rich multimediacontent, combined with the creation of low-power circuits, gave birth to what is calledWireless Multimedia Sensor Networks (WMSNs). WMSNs introduce several new researchchallenges, mainly related to mechanisms to deliver application-level Quality-of-Service(e.g., latency minimization). Such issues have almost completely been ignored in tradi-tional WSNs, where the research focused on energy consumption minimization. Towardsachieving this goal, the technique of cooperative caching multimedia content in sensornodes can efficiently address the resource constraints, the variable channel capacity andthe in-network processing challenges associated with WMSNs. The technological advancesin gigabyte-storage flash memories make sensor caching to be the ideal solution for latencyminimization. Though, with caching comes the issue of maintaining the freshness ofcached contents. This article proposes a new cache consistency and replacement policy,called NICC, to address the cache consistency issues in a WMSN. The proposed policies rec-ognize and exploit the mediator nodes that relay on the most ‘‘central” points in the sensornetwork so that they can forward messages with small latency. With the utilization ofmediator nodes that lie between the source node and cache nodes, both push-based andpull-based strategies can be applied in order to minimize the query latency and the com-munication overhead. Simulation results attest that NICC outperforms the state-of-the-artcache consistency policy for MANETs.

    � 2009 Elsevier B.V. All rights reserved.

    1. Introduction

    The convergence of the Internet, communications, andinformation technologies, coupled with recent advancesin engineering fields, paved the way for the production ofinexpensive sensors, capable of achieving orders of magni-tude spatial and temporal resolution and accuracy, com-pared to what was the situation a decade ago. Thisgeneration of the sensors established the now matureresearch and development area of wireless sensor

    . All rights reserved.

    x: +30 24210 74997.. Dimokas), [email protected] (D. Katsaros),

    mokas), http://www.uth.gr/~manolopo (Y.

    networks [1] (WSNs). The deployment of networks of hun-dreds of sensors created a wealth of applications, like mil-itary applications (e.g., monitoring friendly/inimical forcesand equipment, attack detection, targeting), environmentalapplications (e.g., microclimates, flood detection, precisionagriculture), health applications (e.g., remote monitoringof physiological data, elderly assistance), commercialapplications (e.g., inventory control).

    More recently, the production of cheap CMOS camerasand microphones, which can acquire rich media contentfrom the environment, created a new tidal wave into theevolution of wireless sensor networks. For instance, theCyclops imaging module [2] is a light-weight imagingmodule which can be adapted to MICA21 or MICAz sensor

    1 http://www.xbow.com.

    http://dx.doi.org/10.1016/j.adhoc.2009.08.001mailto:[email protected]:dkatsar@ inf.uth.grmailto:dkatsar@ inf.uth.grmailto:[email protected]:[email protected]:[email protected]://delab.csd.auth.gr/~dimokashttp://www. inf.uth.gr/~dkatsarhttp://www. inf.uth.gr/~dkatsarhttp://delab.csd.auth.gr/~manolopohttp://www.xbow.comhttp://www.sciencedirect.com/science/journal/15708705http://www.elsevier.com/locate/adhoc

  • N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 215

    nodes. Thus, a new class of WSNs came to the scene, theWireless Multimedia Sensor Networks (WMSNs) [3].

    Ian Akyildiz and his colleagues emphasized in their arti-cle [3] that WMSNs require us to rethink the computation–communication paradigm of traditional WSNs; this com-putation paradigm has almost exclusively focused on thepreservation of the nodes’ energy, with the ultimate targetof prolonging the network’s lifetime. Although the achieve-ment of this goal remains fundamental in WMSNs, theapplications implemented by WMSNs have a second goal,as important as the energy consumption, to be pursued;this goal is the delivery of application-level data and themapping of this requirement to network layer metrics, likelatency. This goal has (almost) been ignored in mainstreamresearch efforts on traditional WSNs. WMSNs must addressthe following challenges:

    � Energy, and processing capability constraints.� Variable channel capacity, because the multi-hop nature

    of WMSNs implies that the capacity of each wireless linkdepends on the interference level among nodes.

    � The need for multimedia in-network processing; sensornodes are required to store rich media, and also toretrieve such media from remote sensor nodes withshort latency.

    Under these restrictions/requirements, the goal ofachieving application-level QoS in WMSNs becomes a verychallenging task. We could think of several ways to attackparts of this problem borrowing techniques from the ‘wire-less world’, e.g., channel-adaptive streaming [4], jointsource-channel coding [5]; though, none of them can pro-vide solutions to all of the three aforementioned issues,esp. to in-network processing, thus alternative techniquesshould be pursued. Moreover, we could seek for solutionswhich have been developed in the context of the databasesand WWW [6,7], but still these methodologies are notapplicable because they do not suppose resource-starvingnodes/links and moreover the patterns of communicationbetween clients and servers is much more constrained,from many clients to a very specific (predefined) set ofservers, but in our context, the pattern of communicationis the most generic possible: any sensor can request andserve (relay) data. Therefore, even though the consideredenvironment does not seem novel, a closer examination re-veals that the challenges presented can not be dealt withthe aid of already established techniques.

    The success of the applications fuelled by WMSNs willbe determined at a large degree by the technological ad-vances related to the development of appropriate storagedevices for sensor nodes, namely flash storage devices.The progress in this field is another indication of the rapidproliferation of WMSNs. Recent market predictions fore-cast that within the next three years the capacity of theflash memories (e.g., NAND) will be at the order of Tera-bytes. Presently, the NAND flash devices can store a fewgigabytes data [8] and a lot of research work is devotedto developing appropriate data structuring mechanismssuitable for flash memories [9,10].

    Under the assumption that each sensor node has a localstorage capacity associated with it, we could collectively

    address the aforementioned challenges of WMSNs exploit-ing the technique of cooperative caching. In cooperativecaching, multiple sensor nodes share and coordinate cachedata without always having to visit the data centers. Sincethe battery lifetime can be extended if we manage to re-duce the ‘‘amount” of communication, caching the usefuldata for each sensor either in its local store or in the nearneighborhood can prolong the network lifetime and reducethe communication overhead and the data sources work-load. Additionally, caching can be very effective in reduc-ing the need for network-wide transmissions, thusreducing the interference and overcoming the variablechannel conditions. Cooperative caching can also speed-up the multimedia in-network processing, because theprocessing and delivery of multimedia content are notindependent. Thus, cooperative caching results in lower la-tency, energy dissipation and packet loss.

    With caching comes the problem of maintaining thecoherency of the cached data, namely the cache consistencyproblem. A lot of cache consistency policies have been pro-posed in the literature of databases, operating systems, andcellular wireless networks, and a handful of policies for adhoc networks (see Section 2). Though, none of them canaddress the challenges of WMSNs. In our work, we studyhow to use application-level cache consistency to addressthese challenges. Example scenarios are illustrated in thefollowing:

    � In a battlefield sensor nodes are dispersed in a large tar-get area where each sensor node is equipped with acommunication device and a micro-camera that cantake a photograph of its region. The sensors update thephotographs taken and share with each other the newphotographs, in order to built a more suitable view ofthe region that is being monitored. This is because everymicro-camera can capture a limited view of the regioneither due to the sensor node’s position or because ofthe obstacles that exist nearby the sensor node. How-ever, every sensor node requests and receives a largenumber of photographs taken by other sensor nodesthrough multi-hop communication and constructs alarge and accurate image of the monitored area. Everyphotograph has a unique identifier comprised by theregion, the sensor and the time that the photographhas been taken. According to these features, a sensorcan request a photograph of its interest and concludesabout its freshness. Therefore, each military unit thatlies in the battlefield can communicate with nearby sen-sor nodes to obtain an accurate view of the target region.This operation is crucial since each military unit canmonitor more efficiently its corresponding perimeter.

    � In a military scenario again [11], suppose there exists asensor network which collects multimedia informationabout nearby activities. These data are queried in adynamic fashion by soldiers to help them achieve theirmission goals, to avoid possible sources of danger, andthey are also queried by commanders to assess the pro-gress of the whole mission. The queried data are real-time as well as long-term data about enemy activities(e.g., to answer a question such as where the supplylines are located). Thus, data must be cached at the sen-

  • 216 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    sors to enable fast resolution of queries that span tem-porally short and long periods (e.g., days or evenmonths), and such queries might originate from any partof the sensor network since the users (soldiers, com-manders) are mobile and will submit their query tothe nearest sensor.

    � WMSNs can also be used in environmental monitoring.A large number of sensors can be deployed in a forestto prevent a disaster like fire or laying down refuse. Thiscould be achieved through photographs taken by eachsensor node. Rich multimedia data dissemination andsharing can offer an accurate view of the monitoringarea. Thus, the human groups that monitor and protectthe forest can communicate with a few sensors in orderto obtain a detailed view of the forest area that isresponsible for. This is because each sensor node cangather through multi-hop communication the picturestaken by other sensor nodes and create a large imageof the corresponding subarea.

    In this paper, we propose a novel and high-performancecache consistency protocol for cooperative caching, theNICC policy, named after the words Node Importance-basedCache Consistency for maintaining consistency in WMSNs.The proposed protocol is a hybrid push/pull algorithm thatuses minimal message overheads to maintain data consis-tency. With the introduction of ‘‘mediator nodes”, thecaching invalidation performance can be improved greatly.Since there is no prior work on cache freshness for WMSNs,we compare the proposed protocol with the state-of-the-art consistency policy for mobile ad hoc networks, whichis the ‘‘closer” competitor. Using the J-Sim simulation envi-ronment [12], we perform an experimental evaluation ofthe two methods, which attests that the proposed NICCpolicy prevails over its competitor.

    The rest of this article is organized as follows: in Section2 we review the relevant work and record the contribu-tions of the paper. Section 3 describes the system modeland necessary preliminaries of our work. In Section 4 wepresent the details of the NICC protocol, and in Section 5we present the results of the performance evaluation ofthe methods; finally, Section 6 concludes the article.

    2. Relevant work

    The issue of cache consistency is a thoroughly investi-gated area in the field of databases, operating/file systems,Web, and in wireless cellular (one-hop) networks. The arti-cle [13] contains an excellent categorization and survey ofthe most popular techniques developed for maintainingthe cache freshness in these environments. In general,there exist two generic directions for notifying about theupdates done in the data by the source nodes. Either thesource nodes will disseminate, i.e., push, these changesvia invalidation reports [14,15], or alternatively, the nodescaching the data, will query the source nodes, i.e., pullthe updated data of interest [16,17].

    In push-based strategies the source node needs to con-tinuously or periodically send data to cache nodes. Themodifications for a data item are pushed to the entire net-

    work using flooding. Each node, that receives the invalida-tion message, has to check its cache and invalidates theappropriate data. The advantage of the push scheme isthe good consistency guarantees that provides and its sim-plicity. However this scheme suffers from unnecessary up-date transmissions, since not all previously interestednodes, are still interested in the updated data. It also in-creases the control message overhead due to subsequentbroadcasts of the invalidation messages and entails mes-sage processing at every node.

    In pull-based strategies, whenever a cache node needsdata, the node can send a message to the server, and theserver responds with the data. Thus, the cache nodes areresponsible for maintaining consistency of their cacheddata items. The advantage of this scheme is the strong con-sistency guarantees and it is suitable for dynamic networkswhere there are frequent node disconnections and connec-tions. However, this scheme suffers from too many pollingmessages travelling through the network, since the cachingnodes have no way of knowing when or how often the up-dates take place in the source nodes. Also, the latency in-creases as the response time includes an additional delay,that it generated by the cache nodes querying the sourcenodes. Due to communication overhead the energy con-sumption will increase. Clearly, a hybrid among these pol-icies would be the ideal solution, although some attemptsto deploy them for ad hoc networks have been proposed inthe literature [18].

    Indeed, the articles [19,20] proposed such a hybrid pol-icy for mobile ad hoc networks, and they comprise themost relevant research works to our proposed protocol.

    The ‘‘Proximity Regions for Caching in CooperativeMP2P” (PReCinCt) scheme [20] divides the network topol-ogy into geographical regions, where each region isresponsible for a set of keys representing the data. Eachpeer uses a region table to keep the location informationof all regions in the whole network. Additionally, eachkey is then mapped to a region location based on a geo-graphical hash function. A geographic-aided routing proto-col is used to route traffic of each data retrieval. In order tofurther save bandwidth for each data retrieval, PReCinCtincorporates a cooperative caching scheme that caches rel-evant data among a set of peers in a region. When a peerrequests a data item, it first floods the request in the regionin which it resides (home region). If the data item cannotfound in home region, the request is forwarded towardsthe destination region. The first node inside the destinationregion receiving the request message floods the messagewithin the region to locate the peer caching the requesteditem. The PReCinCt scheme is also equipped with a cacheconsistency mechanism. The caching scheme considersdata popularity, data size and region-distance duringreplacement to optimize cache content of peers. PReCinCtemploys a hybrid push/pull mechanism to maintain dataconsistency among replicas in the network. However, theflooding technique increases the network traffic and bat-tery depletion, especially when the region boundary arebig and many sensor nodes reside in each region. Commu-nication overhead is also generated when the location ofeach region has to be published in the entire network. An-other drawback of the PReCinCt scheme is that each peer is

  • N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 217

    location-aware. This imposes a constraint in sensor net-works since each sensor should equipped with GPS-likehardware. Finally, it is not clear which is the optimal num-ber of regions and the number of sensor nodes that residein each of them. Thus, in a battlefield, where sensor nodesare dispersed in a large target area and are not equippedwith GPS-like hardware, the regions is quite difficult tobe defined dynamically.

    The ‘‘Relay Peer-based Caching Consistency” (RPCC) pol-icy [19] exploited ‘‘intervening” nodes, called relay nodes toimplement this hybrid push/pull policy. With the help ofrelay peers between the source node and cache nodes, bothpush-based and pull-based strategies can be employed,which helps to reduce the communication overhead andquery latency. The source host pushes the data to relaypeers and cache hosts pull the data from relay peers. Theseoperations can be performed asynchronously and simulta-neously. The peers, that can listen to the invalidation mes-sages sent from the source host of its cached data item, canbecome relay peers (each source host sent the invalidationmessage within a distance less than a number of hops). Theauthors use three parameters to define the relay peer selec-tion criterion. The first parameter is the coefficient of peeraccess rate (CAR). The second parameter is the coefficientof stability of a node (CS), while the third parameter is thecoefficient of the energy level of a node (CE). The authorspredefine also three thresholds, one for each parameter,namely thCAR; thCS and thCE. A relay peer is considered candi-date relay peer if it satisfies ðCAR < thCARÞ^ðCS > thCSÞ ^ ðCE > thCEÞ. Only after the cache peer receivesan approval message from the source host, it can switchinto a relay peer. However, the use of thresholds is a draw-back, since it is quite difficult to define some values that areapplicable to all network topologies and for differentamount and different densities of sensor nodes. Addition-ally, a communication overhead generated during thebroadcasting of invalidation messages from source hosts.This is because pure flooding technique is adopted. Thus,in case of a dense network topology the number of mes-sages dispersed in network are increased significant.

    Nevertheless, none of the two aforementioned policiesconsiders the latency minimization criterion, which is vitalfor WMSNs. Moreover, they pay special attention in the de-sign of the consistency policy so as to deal with MANETnode mobility, which is almost absent in WMSNs. In partic-ular, the method that RPCC uses to select the relays isbased on a lot of administratively tuned parameters, whichheavily rely on the query pattern of the nodes, thus refrain-ing this policy for being adaptive. Our goal is similar totheirs but the NICC protocol proposed in this paper is moreefficient in terms of communication overhead, energy dis-sipation and query latency.

    Closely related works are the cache cooperation proto-cols developed for sensors [21,22] and ad hoc networks[23–28], but these protocols do not have a cache freshnessmaintenance component. The former protocols are basedon centrality concepts in order to identify sensor nodeswhich control and coordinate the caching decisions; theNICoCa protocol [21] uses the well-known betweennesscentrality metric for that task, and the PCICC protocol[22] is based on a novel metric that identifies sensors

    which are in dense areas of the network topology, curingat the same time some deficiencies of the betweennesscentrality metric. In [29] the authors present an on de-mand relay placement algorithm in order to solve theproblem of placing relay nodes in network regions wherecongestion is detected. Remotely related to the presentwork are the cache placement algorithms developed forwireless sensor networks [30,31] and ad hoc networks[32], the intrusion detection and intruder identificationalgorithms for cache consistency policies for ad hoc net-works [33], and finally caching architectures and protocolsfor Internet-based wireless ad hoc and mesh networks[34–36].

    2.1. Motivation and contributions

    Motivated by the weaknesses of the current cooperativecache consistency protocols and the unique requirementsof the WMSNs, we propose a cooperative cache consis-tency policy, namely the NICC protocol, which is based onthe idea of exploiting the sensor network topology, so asto discover which nodes are more important than the oth-ers, in terms of their position in the network. In summary,the article’s contributions are the following:

    � It introduces a new cooperative cache consistency pro-tocol in order to maintain fresh data in WMSNs withthe use of a metric that captures the significance of sen-sor node in the network topology. The discovery of sig-nificant sensor nodes will imply short latency inretrieval.

    � Description of a cooperative cache consistency protocol.� Development of the algorithm for disseminating the

    updates to caching sensor nodes and for purging out ofthe caches the less valuable data.

    � Performance evaluation of the protocol and comparisonwith the state-of-the-art cooperative caching protocolfor MANETs, namely RPCC, using an established simula-tion package (J-Sim).

    3. System model

    A WMSN consists of a collection of wireless intercon-nected sensor nodes deployed throughout the sensor field.There is no central server to maintain cache consistency.Each node is assigned a unique identifier in the system.We assume that l is the total number of sensor nodesand each node is denoted by SN ¼ fSN1; SN2; . . . ; SNlg. Eachdata item has also a unique identifier. We consider that mis the total number of data items and each data item is de-noted by D ¼ fD1;D2; . . . ;Dmg. Every data item is being as-signed to each sensor node. Thus, each node is the datasource of a unique data item (for example each sensor nodewith the use of micro-camera can capture an image). Weassume that the data source of data item Di is SNi. Severalcopies of the same data item could be disseminated in thenetwork and cached either by the mediator nodes or cachenodes. Each node has limited cache space, so only a portionof D can be cached locally. If the cache space of a node is

  • Table 1List of notations.

    Variable Description

    G The graph corresponding to the ad hoc sensor networkV The set of sensor nodes of GE The set of links between nodes of GdataID The id of data itemSN Sensor nodesrc-req The id of the requester nodesrc-med The id of the mediator nodeTTL Time to live of an invalidation messageTTR Time to refresh of data item at mediator nodeDUI Data update interval of data item at source nodeCL Consistency level (weak, delta, strong)AR Access rate of a data itemUR Update rate of a data itemAvgHops Average number of hops between the requesting and

    the responding node

    218 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    full and it has to cache a new data item, the node needs toselect an item from its cache for replacement. The modifi-cations to a data item is being initiated only by the datasource. Thus, only the data source has the most updatedversion of the data item.

    � The sensor nodes are static. In the majority of applica-tions, sensor nodes have no mobility.

    � Links are bidirectional, thus if node SNi can communi-cate with node SNj then node SNi is also reachable fromnode SNj.

    � The computation and communication capabilities arethe same for all network nodes.

    � One data item is being assigned to each sensor node anddata items have varying sizes. Thus, each node consti-tute a data source.

    � Every node can cache a number of data items, that it isbeing defined by the cache size.

    � Every node calculates its significant neighbors (mediatornodes). Therefore, a node can be in two states: ordinaryor mediator.

    � Every node uses a routing protocol in order to sendrequests to source nodes.

    � Every mediator node holds the following information foreach cached data item:– DataID. It is the identification of the data item.– Source node ID that maintains the original copy of

    the cached data item.– Data item.– Size. The size of the data item is significant, since it

    contributes in the calculation of the cache replace-ment function.

    – Time to refresh. Each mediator node needs to knowthe time to refresh value, in order to attest the valid-ity of cached data item. When time to refresh value isless than 0, data item is no longer valid.

    – Average number of hops of nodes requesting the dataitem. Every request contains a counter that computesthe number of nodes that has passed by. Each sensornode increase the counter by one unit before for-warding the request. Thus, each mediator node isable to compute the average number of hopsbetween the requesting nodes and itself. The biggerthe distance between the requesting nodes and themediator node, the more likely to remain in thecache during the cache replacement procedure.

    – Access rate. The access rate indicates the frequencythat a cached item is being requested.

    – Update rate. The update rate determines the fre-quency that a data item is being modified

    – Version. The version of a data item is being assignedby the source node (the node that owns the request).

    In the rest of the paper we use a number of notations.The complete list is presented in Table 1.

    3.1. Problem formulation

    Given an ad hoc network of sensor nodes GðV ; EÞ withjdataIDj data items D1;D2; . . . ;DjdataIDj, where data item Dj

    can be served by a sensor SNo, a sensor may act as a serverof multiple data items and has capacity of jmoj units. Weuse aij to denote the access frequency with which a sensorSNi requests the data item Dj and dil to denote the distance(in hops) between sensors i and l. The cache consistencyproblem is an online problem, with the goal being theselection of a set of sets M � fM1;M2; . . . ;MjdataIDjg, whereMj is a set of sensors that store a copy of Dj, to minimizethe total access cost:

    sðG;MÞ ¼X

    i2V

    XjdataIDj

    j¼1aij � min

    fSjg[Mjdil

    respecting the consistency requirements of Dj, and fulfill-ing the memory capacity constraint that:

    jfMjji 2 Mjgj 6 mi for all i 2 V :

    Since it can be easily be proven that this problem is NP-hard, in the next sections we develop online algorithmsto achieve the aforementioned goals.

    4. The NICC consistency protocol for cooperativecaching in WMSNs

    In order to address the latency requirement of WMSNs,we attempt to identify some sensor nodes as being more‘‘important” than the others, w.r.t. coordinating the proce-dure of cache coherency check and update messages for-warding. These nodes will be called ‘‘mediator” nodes,and will play the role of the representatives of the source(originator) nodes of the data in their communication withthe cache nodes which store replicas of these data (sinks).

    The mediator nodes constitute the main point of thecache coherence protocol. Each sensor node elects a num-ber of mediator nodes that lie on the most ‘‘central” pointsin the sensor network neighborhood. The mediator selec-tion procedure is localized with small communicationoverhead that is being performed once at the beginningof the network lifetime, since the sensor network is as-sumed relatively static. The mediator nodes lie betweenthe source node and the cache nodes and they are closerto source node, in number of hops. The distance between

  • N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 219

    source node and mediator nodes is defined by the TTL va-lue that source node assigns to invalidation messages.When a mediator node receives an invalidation messageand the distance from the source node is equal to TTL va-lue, then it can cache the data item.

    Because of the proximity between the source node andthe mediator nodes, the communication is push-based,since the communication overhead will be relatively small.Thus, the source node and its mediator nodes can form anoverlay network that could offer a valid data item to cachenodes. At the same time the communication between themediator nodes and cache nodes is pull-based. Every timea new request is arrived in cache node, it has to poll thesource node for fresh data. However, towards the path tothe source node a mediator node can reply to pollingmessage and offer valid data. Because the push and pulloperations can be performed asynchronously and simulta-neously, the communication overhead and the query la-tency can be reduced. Fig. 1 depicts an example thatillustrates the NICC approach.

    The next subsection describes the selection of mediatornodes, whereas Sections 4.2–4.4 present the major compo-nents of NICC.

    4.1. Selection of mediator nodes

    A wireless multimedia sensor network is abstracted as agraph GðV ; EÞ, where V is the set of its nodes, and E is theset of radio connections between the nodes. An edgee ¼ ðu;vÞ; u;v 2 E exists if and only if u is in the transmis-sion range of v and vice versa. The network is assumed tobe in a connected state. The set of neighbors of a node vis represented by N1ðvÞ, i.e., N1ðvÞ ¼ fu : ðv ;uÞ 2 Eg. Theset of two-hop nodes of node v, i.e., the nodes which arethe neighbors of node v’s neighbors except for the nodesthat are the neighbors of node v, is represented by N2ðvÞ,i.e., N2ðvÞ ¼ fw : ðu;wÞ 2 E; where w–v and w R N1 andðv;uÞ 2 Eg. The combined set of one-hop and two-hopneighbors of v is denoted as N12ðvÞ.

    Fig. 1. An example of NICC approach.

    Definition 1. (Local network view of node v ). The localnetwork view, denoted as LNv , of a graph G(V,E) w.r.t. anode v 2 V is the induced subgraph of G associated with theset of vertices in N12ðvÞ.

    A path from u 2 V to w 2 V has the common meaning ofan alternating sequence of vertices and edges, beginningwith u and ending with w. The length of a path is the num-ber of intervening edges. We denote by dGðu;wÞ the dis-tance between u and w, i.e., the minimum length of anypath connecting u and w in G, where by definitiondGðv ;vÞ ¼ 0; 8v 2 V and dGðu;wÞ ¼ dGðw;uÞ; 8u;w 2 V .Note that the distance is not related to network link costs(e.g., latency), but it is a purely abstract metric measuringthe number of hops. Let ruw ¼ rwu denote the number ofshortest paths from u 2 V to w 2 V (by definition, ruu ¼ 0). Let ruwðvÞ denote the number of shortest paths from uto w that some vertex v 2 V lies on. Then, we define thenode importance index NIðvÞ of a vertex v as:

    Definition 2. The NIðvÞ of a vertex v is equal to:

    NIðvÞ ¼X

    u–v–w2V

    ruwðvÞruw

    : ð1Þ

    Large values for the NI index of a node v indicate thatthis node v can reach others on relatively short paths, orthat the node v lies on considerable fractions of shortestpaths connecting others. Fig. 2 illustrates this metric,which is actually the betweenness centrality index as de-fined in the social networks literature [37]. Although, sev-eral other centrality metrics exist in the relevant literature(e.g., closeness centrality, spectral centrality), the NI indexis the most appropriate for our target application, becausethe requests are directed from (potentially) any sensor to(potentially) any other sensor and thus we must seek fornodes that lie on many communicating paths among anypair of nodes. If, on the contrast, our target applicationwas the dissemination of messages from a singe sourceto any other networks, then closeness centrality (or spec-tral centrality) would be more appropriate.

    Apparently, when estimating the NI index for each sen-sor node using the whole network topology we obtain avery informative picture of which nodes reside in a largenumber of shortest paths between other nodes. Fortu-nately, even when we calculate the NI indexes of the nodestaking into account only their k-hop ðk ¼ 2 or 3Þ neighbor-hood, the picture about the relative importance of the

    Fig. 2. Calculation of NI for a sample graphs. The numbers in parenthesesdenote the NI index of the respective node considering the whole WMSNtopology.

  • Table 2NI index of the nodes belonging to LNV11 .

    n(ode) NIV11 ðnÞ n(ode) NIV11 ðnÞ n(ode) NIV11 ðnÞ

    V1 0 V5 0 V9 0V2 0 V6 6 V10 7V3 0 V7 6.33 V11 44.33V4 0 V8 12.67 V12 81.67

    220 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    nodes remains very accurate. For instance, the NI index forthe nodes belonging to LNV11 (see Fig. 2) are indicated inTable 2. For more information regarding the ‘‘localized”behaviour of this metric the interested reader is directedto [38]. The calculation of this localized metric, i.e., NI isquite low, and for neighborhoods comprised by m nodesand � edges, each sensor computes this metrics for itsneighbors in time Oðm � �Þ (for such and algorithm, consult[38]).

    The next subsection explains the knowledge that eachsensor node is supposed to have in order to execute theNICC cooperative cache consistency protocol.

    4.2. Push–pull based approach

    The source node ‘‘pushes” data and invalidation reportsto all nodes within time-to-live (TTL) hops away. Eachinvalidation report is associated with a TTL, which deter-mines the scope the invalidation report can reach. TTL va-lue is initiated by the source node and it is decrementedevery time the data item passes from a sensor node. A nodecan listen the invalidation report when it is within a dis-tance less than TTL number of hops from the source node.Additionally, we assume a sensor network in which thenodes exchange with their neighbors ‘‘Hello” messages(beacon messages), which contain the list of their neigh-bors. Thus, every node is aware of its two-hopneighborhood.

    Mediator nodes are designated separately by each nodeof the network, according to the node importance value.Every node calculates the NI index of its 1-hop neighbors.The node uses this information in order to characterizesome of its neighbors as mediator nodes; the minimumset of neighbors with the larger NI which ‘‘cover” its 2-hop neighborhood are the mediator nodes for that node;mediator nodes undertake the task of rebroadcasting theinvalidation reports of source nodes within TTL distanceand they can use invalidation reports to check whethertheir cached copies are valid. The rebroadcasting of invali-dation reports contributes to the reduction of communica-tion overhead, that implies the push-based strategy. Thus,the number of messages that is being disseminated in or-der to transmit the invalidation reports are minimized.Each source node sends periodic invalidation reports –these intervals are set by the parameter of the systemDUI (data update interval). The invalidation reports includedataID, data item (if changed, otherwise the null value),TTL (in number of hops), and version number. If the dataitem has been modified during the data update interval,the source node will issue an update message to its medi-ator nodes in order to inform them about the update. The

    update message include the modified data item. For everydata item, each source node maintains the followinginformation:

    1. dataID,2. data item,3. size,4. version.

    The fact that a source node defines a TTL value, does notimply that every intermediate hop node (up to hop-Count = TTL) will cache the data item. The data item is ca-ched only in an elected mediator node whose distancefrom the source node (in number of hops) equals the TTLvalue. Thus, we create a ring of nodes around the sourcenode where the invalidation reports are pushed and validcopies are cached. Every mediator node could cache dataitems from different source nodes.

    The communication between mediator nodes and theircache nodes is pull-based. Cache nodes lies between medi-ator nodes and requester nodes and cache data items forsubsequent requests. Every time an ordinary node asksfor data from a source node, the request initially reachesa cache node. In case of strong consistency required (notjust weak or D consistency), cache node forwards the re-quest through the routing path until it reaches a mediatornode of the source node, whose distance from the sourcenode equals TTL hops. Every request includes the dataID,the version, src-req (the id of the requester node). If themediator has a valid and fresher than request version ofthe saught data in its cache, then it sends a reply packetthat includes dataID, data item, version, src-med (the idis the mediator node). If the version of the request is iden-tical to that of mediator node then an AckPacket is sentwhich includes dataID, version, src-med (the id the media-tor node). In case of an invalid data item, the mediatornode holds the request until the next Invalidation reportarrives and appropriate reply is sent. A mediator data itemis considered valid when its TTR (time-to-refresh) value isgreater than zero. In case that no mediator node along therouting path containing the seeked data item is not found,the request eventually reaches the source node. The sourcenode sends the reply to the requester node. The requesternode does not cache the data item since it is not able to re-ceive the invalidation reports (we consider the case wherestrong consistency required – not just weak or D consis-tency). Thus, each time a requester node tries to communi-cate with either a mediator or a source node.

    Based on the above idea, we describe the NICC protocol.For example, suppose that sensor node SNa in Fig. 3 issue arequest for data item x that is placed in data center DC andhas been pushed to mediator nodes. TTL value is assumedto be 2. The square nodes are considered to be the media-tors nodes of the sensor network, while triangle nodes areconsidered to be the cache nodes. In the beginning sensornode SNa sends a request to cache node SNc. Upon receiv-ing the request, cache node checks the consistency levelof the request. If D consistency is required and the D valueequals zero or strong consistency required, cache node willforward the request to data center. Towards the path todata center, the request arrives to sensor node SNf which

  • Fig. 3. An example of NICC operation when strong consistency or Dconsistency required and the D value equals zero.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 221

    is a mediator node for data item x. If the mediator has a va-lid and fresher version of the requested data item in itscache, then it sends a reply packet to cache node SNc withthe new version of data item. Cache node caches the newversion of data item x and forwards the reply to SNa. Ifthe version of the request is identical to that of mediatornode then an AckPacket is sent.

    4.3. Consistency requirements

    NICC can provide query requests with different levels ofconsistency. In this case, we introduce the concept of cachenode. Cache nodes are placed between mediator nodes andthe requester node. A request is initially forwarded to acache node. If only weak-consistency is required, cachenode can send immediately a reply back to the requesternode. If D consistency is required and the D value is largerthan zero, cache node can also serve immediately the re-quest. However, if D value equals zero or strong consis-tency is required, the cache node has to poll the mediatornode in order to check the consistency of data item. Themediator node can compare the versions and answer thecache node. If the mediator node has a valid copy of thedata item, a reply message is sent back to the cache node.Otherwise, it will wait for the next invalidation messagefrom the source node. Thus, the concept of cache node isused in case we must ensure ‘delta’ or ‘weak’ consistency.Cache nodes can be selected using the NICoCa protocol [21]or the PCICC protocol [22].

    4.4. Cache replacement policy

    Even though the cache capacity of individual sensorsmay be in the order of gigabytes (e.g., NAND flash) thedevelopment of an effective and intelligent replacementpolicy is mandatory to cope with the overwhelming sizeof multimedia data generated in WMSNs. The cachereplacement policy used in every node, either mediatoror cache node (in the following discussion we examinemediator nodes) considers the following characteristics ofthe data items:

    1. update rate,2. access rate,

    3. average number of hops of nodes requesting the dataitem,

    4. data size.

    When the mediator node gets a request message, it ex-tracts the number of hops that the request has passedthrough. According to the number of hops, the mediatornode calculates the average number of hops for each spe-cific data item it stores. The bigger the average numberof hops, the more likely to remain in the cache. This occursin order to achieved query latency reduction, since the re-mote sensor node should not wait until the request reachesthe source node. The access rate indicates the frequencythat a cached item is being requested, while the updaterate determines the frequency that a data item is beingmodified. The higher the rate access a data item, the morelikely to remain in cache. The higher the rate of modifica-tion of a data item, the smaller the chance to remain incache. Finally, the bigger the size of an object is, the morelikely to be removed from the cache. Therefore, a mediatornode, during cache replacement, calculates a value for eachdata item. Data item with the smaller value is replaced. Theevaluation function, for each data item i located in thecache, is as follows:

    ValueðdiÞ ¼ARi � AvgHopsi

    URi � Sizei;

    where AR refers to access rate, AvgHops is the averagenumber of Hops, and UR denotes update rate. The updaterate of every data item is evaluated by mediator nodesbased on the data item refresh rate.

    4.5. Radio irregularity

    For the design of all the components of the proposedcooperative cache consistency protocol, we assumed thatthe communication links among the sensors are bidirec-tional (see Section 3). Though, this assumption may not al-ways hold, e.g., [39]. Even in this case, the protocol’ssemantics would not change. In particular, the NI metricwould remain the same, but its calculation would be moreCPU-intensive; its computational complexity would not bethat reported in Section 4.1 using a breadth-first algorithm[38], but it would require the use of the Dijkstra’s algo-rithm. The rest of the protocol components, i.e., push, pull,replacement policy would not require any changes.

    The existence of radio irregularity could deteriorate theexpected performance of the protocol when this irregular-ity would be located in ‘‘dense” areas of the network. Withthe assumption of bidirectionality, the sensors residing indense areas usually have a quite large value for the NI in-dex, and therefore can route messages from sources to des-tinations with small latency. High ‘‘concentration” of radioirregularity in such areas would alter the distribution ofsensors with large NI values, and thus increase latency.Of course, such performance degradation would be ex-pected for all cooperative caching protocols, because radioirregularity significantly reduces the number of alternativeroutes for messages and creates congestion and higherdrop rates.

  • Table 3Radio characteristics used in our simulations.

    Operation Energy dissipated

    Transmitter/receiver electronics Eelec ¼ 50 nJ=bitTransmit amplifier if dtoBS 6 d0 efs ¼ 10 pJ=bit=m2

    Transmit amplifier if dtoBS P d0 emp ¼ 0:0013 pJ=bit=m4Data aggregation EDA ¼ 5 nJ=bit=signal

    222 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    5. Performance evaluation

    We evaluated the performance of the NICC protocolthrough simulation experiments. We conducted a largenumber of experiments with various parameters, and com-pared the performance of NICC to the state-of-the-art cacheconsistency policy for MANETs, namely RPCC [19].

    We do not compare NICC to PReCinCt scheme [20], be-cause it can not be applied in sensor networks since it re-quires by the sensor nodes to know the approximategeographic locations of other sensors. In PReCinCt scheme,it is not also obvious which is the exact number of regionsand how to be set dynamically in a sensor network wheresensor nodes are dispersed non-uniformly in a large targetarea and are not equipped with GPS-like hardware. Addi-tionally, the number of nodes that reside in each regionis obscure. According to NICC and RPCC protocols, a nodedoes not need to be informed about the approximate loca-tions of other nodes.

    5.1. Simulation model

    We have developed a simulation model based on the J-Sim simulator [12]. In our simulations, the AODV [40]MANET routing protocol is deployed to route the data traf-fic in the wireless multimedia sensor network. Althoughother routing schemes, like GPSR [41], are more appropri-ate for sensor networks, for reasons of fair comparisonwith the competitor we employ this routing protocol;though we conducted the experiments using GPSR as wellto confirm that the relative performance of the algorithmsremains the same, and, for the interest of space, we includeonly a couple of representative graphs. We use IEEE 802.11as the MAC protocol and the free space model as the radiopropagation model. The wireless bandwidth is assumed tobe 2 Mbps. Additionally, the radio characteristics used inour simulations are summarized in Table 3. To test thevalidity of the experiments in more radio-starving environ-ments, we also conducted experiments using the IEEE802.15.4 as the MAC protocol.

    The protocols has been tested for a variety of sensornetwork topologies, to simulate sensor networks withvarying levels of node degree, from 4 to 10. We also con-ducted experiments by choosing the number of nodes be-tween 100 and 500. In order to achieve the protocols’network operation, we run each protocol at least 100 timesfor each different node degree. In addition, in our experi-ments we evaluate the protocol efficiency under two dif-ferent set of data item sizes. Each data item has size thatis uniformly distributed from 1 KB to 10 KB for the firstset, and from 1 MB to 5 MB for the second set.

    The network topology consists of many square gridunits where one or more nodes are placed. The numberof square grid units depends on the number of nodes andthe node degree. The topologies are generated accordingto the algorithm described in [42]. Initially, all the nodesare placed uniformly and independently. The location ofeach of the n sensor nodes is uniformly distributedbetween the point ðx ¼ 0; y ¼ 0Þ and the point ðx ¼ 2000;y ¼ 2000Þ. All n � ðn� 1Þ=2 potential edges in the network

    are sorted by their lengths in ascending order. The lengthof the n � d=2th shortest edge is chosen as the transmissionrange R. The first n � d=2 edges in the list remain in thegraph. Other edges are eliminated, making sure that thegraph generated is a unit disk graph and has average de-gree equal to d. However, the J-Sim simulator artificiallydivides the whole simulated area into subareas where eachsubarea is a square grid unit. Two sensor nodes are neigh-bors if they placed in the same grid or in adjacent grids. Inorder to set the grid unit size, we compute the maximumside of square that fit in the circle with radius R. Therefore,the grid unit size corresponding to the value of d is equal toffiffiffi

    2p

    times the length of the edge at position n � d=2 in thesorted sequence. Finally, each candidate graph is checkedfor connectivity. If it is not connected, the procedure is re-peated until a connected graph is generated.

    The simulation area is assumed of size 2000 m� 2000 mand is divided into equal sized square grid units. Beginningwith the lower grid unit, the units are named as 1;2; . . . ; ina column-wise fashion.

    The query model is similar to what have been used inprevious studies [19]. Each sensor node generates read-only query requests with an exponential distributed queryinterval. They also generates an independent stream ofupdates to its source data with an exponential distributedupdate interval. The access pattern of sensor nodes is: (a)location independent, that is, sensor nodes decide inde-pendently the data of interest; each sensor node generatesaccesses to the data following the uniform distribution,and (b) Zipfian with h ¼ 0:8, where groups of nodes resid-ing in neighboring grids (25 grids with size 400 m� 400 m)have the same access pattern. We tested the protocols bothfor Zipfian access pattern and for uniform access pattern. Incase of Zipfian access pattern we conducted experimentswith varying h values between 0.1 and 1.0. For the interestof space, we present only the results for h ¼ 0:8 since webelieve that it is the most representative access pattern.One data item is assigned to each sensor node and so thetotal number of data items is 100 in case of 100 sensornodes topology and 500 in case of 500 sensor nodestopology. The simulation system parameters are listed inTable 4.

    5.2. Performance metrics

    The measured quantities include the number of hits (lo-cal, remote and global), the average query latency, themessage overhead, the residual energy level of the sensornodes and the impact of invalidation message’s TTL onthe system performance. The query latency is the timeelapsed between the query is sent and the data is transmit-

  • Table 4Simulation parameters.

    Parameter Default value Range

    # Items (N) 100 100–500Smin (KB) 1Smax (KB) 10Smin (MB) 1Smax (MB) 5Zipfian h 0.8# Nodes(n) 100 100–500# Requests per node 200 100–200Bandwidth (Mbps) 2Query interval 20 s for items with KB size

    3 min for items with MB-sizeUpdate interval 2 min for items with KB size

    20 min for items with MB-sizeClient cache size (KB) 75 10–100Client cache size (MB) 37.5 15–65TTL 3 hops 3–6

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 223

    ted back to the requester, and average query latency is thequery latency averaged over all the queries. A commonlyused message overhead metric is the total number of mes-sages injected into the network by the query process. Themessage overhead includes all the query and responsemessages of locating and retrieving data. The three differ-ent types of hits are the following:

    1. Local hit (LH): the requested datum is cached by thenode which issued the request, and it is valid.

    2. Remote hit (RH): the requested datum is cached by anode and this node has at least one mediator residingalong the path from the requesting node to the sourcenode for that datum.

    3. Global hit (GH): the requested datum is acquired fromits source node.

    Evidently, a small number of global hits implies lessnetwork congestion, and thus fewer collisions and packetdrops. Moreover, large number of remote hits proves theeffectiveness of cooperation and coherency check. A large

    0

    2000

    4000

    6000

    8000

    10000

    12000

    14000

    16000

    18000

    15 20 25 30 35 40 45 50 55 60 65

    Cac

    he H

    its

    Cache Size (MB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    Fig. 4. Impact of cache size on hits (MB-sized files) in: (a) spa

    number of local hits does not imply an effective cachingpolicy, unless it is accompanied by small number of globalhits, since the cost of global hits vanishes the benefits of lo-cal hits. The independent parameter in all these experi-ments was the cache size of the sensors. In any case, thelocal sensor flash storage ranges from 1% to 10% of the totalsize of all distinct multimedia data.

    5.3. Evaluation

    We performed a number of experiments varying thesize of the sensornet (in terms of the number of its sensornodes), varying the access profile of the sensor nodes, andthe cache size relative to the aggregate size of all dataitems. In particular, we performed experiments for 100and 500 sensors, for cache size equal to 1%, 5% and 10%of the aggregated size of all distinct multimedia data, foraccess pattern with h equal to 0.8 (skewed access pattern),for average sensor node degree equal to 4 (spare sensornet)and 10 (dense sensornet), and for data item size equal to afew kilobytes (KB) and also equal to a few megabytes (MB).We partition the graphs in two large groups w.r.t. whetherthey deal with small KB-sized files or large MB-sized mul-timedia files. Finally, we present the impact of differentTTL values. Following the same methodology as that ofRPCC, we set the TTL equal to 3. The effect of differentTTL values will be discussed in Section 5.3.3.

    5.3.1. Experiments with large data itemsThe purpose of this set of experiments is to examine the

    performance of the coherence algorithms when they haveto deal with large multimedia files, e.g., image files, que-ried by the sensornet.

    All figures show that both schemes exhibit better aver-age query latency, hit ratio (local,remote and global) andmessage overhead by varying the cache size from 15 MBto 65 MB for both sparse and dense sensor deployments.This is because more required data items can be found inthe local cache as the cache gets larger. The results areillustrated in Figs. 4 and 5. The first prevalent observation

    0

    2000

    4000

    6000

    8000

    10000

    12000

    14000

    16000

    15 20 25 30 35 40 45 50 55 60 65

    Cac

    he H

    its

    Cache Size (MB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    rse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

  • 224 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    is that the performance of the proposed algorithm is al-ways better than the performance of its competitor. TheNICC scheme achieves always higher number of remotehits than RPCC scheme, since the mediator nodes locatedin central points of the sensor network. Also, NICC achievesa smaller number of global hits than RPCC. Thus, sourcenodes do not become hot spots of communication andthe workload is significant smaller than those of RPCC pro-tocol. Additionally, NICC achieves a performance gain interms of local hits.

    The second prevalent observation is that the perfor-mance gap between NICC and RPCC is larger for the sparsersensor network deployments. This is true for the subse-quent performance metrics as well. This is due to the factthat in denser deployments, NICC takes better decisionsregarding the selection of the relay peers. This is apparentwhen examining the graphs depicting the relative remain-ing energy per sensor (cf. Figs. 14 and 15). Therefore, the adhoc and highly parameterized methods for the selection ofnodes which will have ‘‘special roles” (mediators vs. relay

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    15 20 25 30 35 40 45 50 55 60 65

    Cac

    he H

    its

    Cache Size (MB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    Fig. 5. Impact of cache size on hits (MB-sized files) in: (a) spa

    0

    20

    40

    60

    80

    100

    15 20 25 30 35 40 45 50 55 60 65

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (MB)

    NICCRPCC

    NC

    Fig. 6. Impact of cache size on latency (MB-sized files) in: (a) sp

    peers) have a profound impact on the performance of theconsistency check algorithms.

    Then, we evaluated the performance of the algorithmswith respect to the average latency incurred for varyingcache sizes, when the transmitted files have sized of afew megabytes for both sparse and dense sensor networkdeployments. The results are depicted in Figs. 6 and 7.The latency incurred by NICC is 20–30% smaller than thatof RPCC. Due to cache replacement policy and the centralpoints that mediator nodes located, the query requestsare served faster than that of RPCC. We can also observethat in NICC the reduction of response time for cache sizesbetween 37.5 MB and 65 MB is not significantly high. It isworth noting that NICC always reach the near optimumperformance when the cache size is equal to 37.5 MB. Thisdemonstrates the low cache space requirement.

    Additionally, we evaluated the performance of the algo-rithms with respect to the number of transmitted mes-sages for varying cache sizes for both sparse and densesensor network deployments. The results are depicted in

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    15 20 25 30 35 40 45 50 55 60 65

    Cac

    he H

    its

    Cache Size (MB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    rse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    0

    10

    20

    30

    40

    50

    60

    70

    15 20 25 30 35 40 45 50 55 60 65

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (MB)

    NICCRPCC

    NC

    arse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

  • 100

    120

    140

    160

    180

    200

    220

    15 20 25 30 35 40 45 50 55 60 65

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (MB)

    NICCRPCC

    NC

    100

    120

    140

    160

    180

    200

    15 20 25 30 35 40 45 50 55 60 65

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (MB)

    NICCRPCC

    NC

    Fig. 7. Impact of cache size on latency (MB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    800000

    900000

    15 20 25 30 35 40 45 50 55 60 65

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (MB)

    NICCRPCC

    NC

    0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    800000

    15 20 25 30 35 40 45 50 55 60 65

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (MB)

    NICCRPCC

    NC

    Fig. 8. Impact of cache size on number of messages (MB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    1e+006

    1.5e+006

    2e+006

    2.5e+006

    3e+006

    3.5e+006

    15 20 25 30 35 40 45 50 55 60 65

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (MB)

    NICCRPCC

    NC

    1e+006

    1.5e+006

    2e+006

    2.5e+006

    3e+006

    15 20 25 30 35 40 45 50 55 60 65

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (MB)

    NICCRPCC

    NC

    Fig. 9. Impact of cache size on number of messages (MB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 225

  • 226 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    Figs. 8 and 9. The relative results follow the same trendsthat we observed in the previous experiment; there is aclose connection between the messages and latency, sincethe more the number of messages transmitted, the moreintense the competition for the broadcast channels is,and thus many more collisions occur, which collectivelyaggravate the average latency. The number of messagesin sparse networks is larger than those in dense networks.This is due to the number of hops that a message requestshould pass by until it reaches a responding node. In sparsenetworks the number of hops increases in contrast todense networks.

    Figs. 10 and 11 evaluates the performance in terms ofquery latency (in log scale) with varying values of requestinterval and update interval. Fig. 10a and Fig. 11a illustratethat query latency is a bit bigger for small values of requestinterval. This is because the network traffic increases as therequest interval decreases. Thus, a delay occurs due tochannel congestion. Both figures present a significant per-formance gain of NICC over RPCC. In NICC requests are

    0

    10

    20

    30

    40

    50

    60

    0 2 4 6 8 10 12

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Request Interval (min)

    NICCRPCC

    NC

    Fig. 10. Query latency (MB-sized files) according to: (a) request

    100

    120

    140

    160

    180

    200

    0 2 4 6 8 10 12

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Request Interval (min)

    NICCRPCC

    NC

    Fig. 11. Query latency (MB-sized files) according to: (a) request

    served by mediator nodes that located in central pointsof network topology. So the round trip time of request issmaller. Fig. 10b and Fig. 11b show the results under differ-ent update interval. We note that there is not a significantdifference of both protocols in terms of query latency asthe update interval widens. Both protocols have a slightlyworse performance for small update intervals, since moreinvalidation messages are disseminated by source nodes.This results in larger network traffic. Finally, we can ob-serve that NICC performs also better than RPCC. Thesegraphs also confirm the significance of the caching as a la-tency-reduction mechanism; the NICC protocols achieves50% reduction in latency compared to the no-cachingapproach.

    Fewer communication messages lead to less networktraffic and energy communication. Therefore, a good algo-rithm should send a small number of messages. Figs. 12and 13 evaluates the performance in terms of network traf-fic with varying values of request interval and updateinterval. As we can see, the RPCC protocol always leads

    0

    5

    10

    15

    20

    25

    30

    35

    40

    45

    50

    0 5 10 15 20 25 30

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Update Interval (min)

    NICCRPCC

    NC

    interval, (b) update interval for a WMSN with 100 sensors.

    100

    120

    140

    160

    180

    200

    0 5 10 15 20 25 30

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Update Interval (min)

    NICCRPCC

    NC

    interval, (b) update interval for a WMSN with 500 sensors.

  • 0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    800000

    0 2 4 6 8 10 12

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Request Interval (min)

    NICCRPCC

    NC

    0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    0 5 10 15 20 25 30

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Update Interval (min)

    NICCRPCC

    NC

    Fig. 12. Network traffic (MB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 100 sensors.

    Fig. 13. Network traffic (MB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 500 sensors.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 227

    to a heavy communication overhead. We can also observethat the request interval and update interval did not affectthe performance of both protocols, except from the case ofsmall values.

    From the obtained results concerning the number ofhits and transmitted messages, we draw the conclusionthat the proposed protocol is more energy efficient thanits competitor. To validate this conclusion we plotted therelative difference between the amount of consumed en-ergy for each sensor node of the WMSN after the executionof NICC and after the execution of RPCC, taking averagesafter several runs of the simulation. The results are de-picted in Figs. 14 and 15. It is indicative that there is notany single sensor which runs NICC with less remaining en-ergy than the respective energy it has after the completionof RPCC. In NICC each sensor node elects the more signifi-cant nodes of its two-hop neighborhood according to its lo-cal network view. Therefore, nearby nodes may electdifferent nodes as mediator nodes. Mediator nodes election

    process depends on sensor nodes that originate and broad-cast a message. Thus, energy consumption of sensor nodesis significantly less intense in NICC than by RPCC, since onlymediator nodes rebroadcast an invalidation report andmediator nodes lie in ‘central’ points of network topology.Additionally, due to the distributed election of mediatornodes by each sensor node, the NICC protocol achieves abalanced energy consumption among sensor nodes, whichis a desirable goal in protocol design according to [43] if wewant to prolong the sensor network lifetime. NICC avoidsthe drawback of a centralized static election process ofmediator nodes that will lead in a fast battery depletionof mediator nodes.

    Moreover, for both cases, that of KB-sized items (Figs.26 and 27) and MB-sized items, we observe that the energygains of NICC are greater in the case of dense networktopology, since the selection of mediator nodes is moreaccurate. Finally, all figures attest that the RPCC causes abig energy depletion of sensor nodes. Such situation is

  • Fig. 15. % difference of energy consumption (MB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 100 sensors when it executes NICC w.r.t.when it executes RPCC.

    Fig. 14. % difference of energy consumption (MB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 500 sensors when it executes NICC w.r.t.when it executes RPCC.

    228 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    undesirable, since may cause network partition and thusmake the WMSN useless.

    5.3.2. Experiments with small data itemsA significant question arises whether these relative re-

    sults still hold when the sensornet has to deal with smallermultimedia files, with size equal to a few kilobytes.Although it is considered that WMSNs will deal with MB-sized images of video files, it might be the case that thesensor nodes will exchange smaller images as well. Toinvestigate the performance of the cache coherence proto-cols for this case, we performed the same set of experi-ments but for KB-sized files and here we demonstrate asubset of the results obtained.

    The general observations that we recorded for the caseof large MB-size files, still hold for this case; NICC achievessignificantly smaller number of global hits and larger num-ber of remote hits than RPCC does. It is not worthy to com-ment on each individual performance graph (Figs. 16–27),

    since in all cases NICC has a better performance; it achievesagain 25% more remote hits and 50% less global hits thanRPCC. The results also in terms of average query latencyand number of messages are almost the same.

    5.3.3. Impact of TTL on system performanceEach cache node can reach immediately a mediator

    node if there are many mediator nodes in the network. Thisimplies that the network traffic between source node andmediator nodes will increase, since a great number ofinvalidation messages have to be disseminated in the net-work. However, the communication overhead betweenmediator nodes and cache nodes will be reduced. Thenumber of hops that a request has to passed through, in or-der to reach a mediator node, will be minimized. On thecontrary, if the number of mediator nodes is small, we willachieve a reduced communication overhead betweensource nodes and mediator nodes, but the communication

  • Fig. 16. Impact of sensor cache size on hits (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    45000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    Fig. 17. Impact of sensor cache size on hits (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    1.6

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    NC

    0

    0.2

    0.4

    0.6

    0.8

    1

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    NC

    Fig. 18. Impact of cache size on latency (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 229

  • Fig. 19. Impact of cache size on latency (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    Fig. 20. Impact of cache size on number of messages (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    1e+006

    1.5e+006

    2e+006

    2.5e+006

    3e+006

    3.5e+006

    50 55 60 65 70 75 80 85 90 95 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    NC

    1e+006

    1.2e+006

    1.4e+006

    1.6e+006

    1.8e+006

    2e+006

    50 55 60 65 70 75 80 85 90 95 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    NC

    Fig. 21. Impact of cache size on number of messages (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    230 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

  • 0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    0 10 20 30 40 50 60 70 80

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Request Interval (sec)

    NICCRPCC

    NC

    0

    0.2

    0.4

    0.6

    0.8

    1

    0 20 40 60 80 100 120 140 160 180

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Update Interval (sec)

    NICCRPCC

    NC

    Fig. 22. Query latency (KB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 100 sensors.

    0

    0.5

    1

    1.5

    2

    2.5

    0 10 20 30 40 50 60 70 80

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Request Interval (sec)

    NICCRPCC

    NC

    0

    0.5

    1

    1.5

    2

    0 20 40 60 80 100 120 140 160 180

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Update Interval (sec)

    NICCRPCC

    NC

    Fig. 23. Query latency (KB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 500 sensors.

    0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    0 10 20 30 40 50 60 70 80

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Request Interval (sec)

    NICCRPCC

    NC

    0

    100000

    200000

    300000

    400000

    500000

    0 20 40 60 80 100 120 140 160 180

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Update Interval (sec)

    NICCRPCC

    NC

    Fig. 24. Network traffic (KB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 100 sensors.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 231

  • Fig. 25. Network traffic (KB-sized files) according to: (a) request interval, (b) update interval for a WMSN with 500 sensors.

    Fig. 26. % difference of energy consumption (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 500 sensors when it executes NICC w.r.t.when it executes RPCC.

    Fig. 27. % difference of energy consumption (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 100 sensors when it executes NICC w.r.t.when it executes RPCC.

    232 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

  • Fig. 28. Impact of TTL value on: (a) number of messages, (b) latency, (c) number of hits in WMSN with 500 sensors.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 233

    overhead between requester nodes and mediator nodeswill be enlarged.

    We vary the TTL value from 3 to 6 hops. The results aredepicted in Fig. 28. NICC has a slightly better performancein terms of number of messages as the TTL value increases.However, the query latency remains almost the same in allcases. On the contrary, in RPCC, the number of messagesincreases significantly with increasing TTL value. Also,the query latency increases according to TTL value.

    5.3.4. Cache replacement experimentsCache replacement policy is a significant component of

    the NICC protocol. An effective and efficient replacementpolicy is requisite to deal with the huge amount of datagenerated in sensor networks. In these set of experiments,the cache replacement policy discussed in Section 4.4 iscompared with GD-Size replacement policy [44], which isselected as the best replacement policy with proven (on-line) optimality.

    Figs. 29 and 30 present the impact of cache replacementpolicies on latency. The proposed policy NICC outperformsthe GD-Size policy (denoted as NICC_GDS) for all cachesizes. The first reason of the performance gains of the pro-

    posed policy is the parameter AvgHops that is included inthe replacement function during the calculation of the util-ity value for a data item. As the distance between the re-quester node and the responding node increases, thecached data item is more possible to remain in the cache.Thus, the proposed policy attempts to keep in cache thedata items that are requested by nodes that are furtheraway. Caching these data items reduce latency, energy dis-sipation and save bandwidth for subsequent requestsabout the same items. The second reason is that GD-Sizedid not take into account the update rate and the popular-ity of a data item. The proposed policy favors data itemsthat is not modified frequently and have a big access rate.

    Figs. 31 and 32 evaluate the performance in terms ofnumber of hits. We observe that the proposed policyachieves better results in local, remote and global cache hitsas compared to those with GD-Size. This is because the pro-posed policy favors the remotely requested, small dataitems with high popularity. Additionally, the GD-Size policydid not take into account the update rate of a data item.

    Finally, it is very interesting to present the differencebetween sparse and dense networks. In sparse networks(Fig. 29a, Fig. 30a, Fig. 31a, Fig. 32a) the performance gains

  • 0.8

    0.85

    0.9

    0.95

    1

    1.05

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCNICC_GDS

    0.5

    0.52

    0.54

    0.56

    0.58

    0.6

    0.62

    0.64

    0.66

    0.68

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCNICC_GDS

    Fig. 29. Impact of cache replacement on latency in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    3

    3.2

    3.4

    3.6

    3.8

    4

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCNICC_GDS

    1.1

    1.15

    1.2

    1.25

    1.3

    1.35

    1.4

    1.45

    1.5

    1.55

    1.6

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCNICC_GDS

    Fig. 30. Impact of cache replacement on latency in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    0

    2000

    4000

    6000

    8000

    10000

    12000

    14000

    16000

    18000

    10 20 30 40 50 60 70 80 90 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHNICC_GDS - LH

    NICC - RHNICC_GDS - RH

    NICC - GHNICC_GDS - GH

    0

    2000

    4000

    6000

    8000

    10000

    12000

    14000

    16000

    18000

    10 20 30 40 50 60 70 80 90 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHNICC_GDS - LH

    NICC - RHNICC_GDS - RH

    NICC - GHNICC_GDS - GH

    Fig. 31. Impact of cache replacement on hits in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors.

    234 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

  • N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 235

    of the proposed policy decrease as the cache size increases.This is because for large values of cache size the cachereplacements reduce significantly, since there is enoughcache space for many data items. Additionally, in sparsenetworks the number of neighboring nodes is small andthus the number of data items to be cached is also small.However in dense networks (Fig. 29b, Fig. 30b, Fig. 31b,Fig. 32b) the proposed policy performs better then GD-Sizewhen the cache size increases. This is due to the largenumber of neighboring nodes. When the cache size is verysmall, the replacements of data items are very often, whilethe candidate data items to be cached are significantlymore than those in sparse networks. Thus, the local and re-mote cache hits decrease while the global hits increase.

    5.3.5. Impact of network density and cache size on number ofreplicas and mediators

    In these set of experiments we examined the impact ofcache size and node degree on the number of mediatornodes and replicas for NICC protocol. Fig. 33 presents the

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    45000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHNICC_GDS - LH

    NICC - RHNICC_GDS - RH

    NICC - GHNICC_GDS - GH

    Fig. 32. Impact of cache replacement on hits in: (a) sparse

    0

    1

    2

    3

    4

    5

    10 20 30 40 50 60 70 80 90 100

    Avg

    Rep

    licat

    ed D

    ata

    Cache Size (KB)

    Degree 4Degree 7

    Degree 10

    Fig. 33. Average number of replicas per data item for variou

    average number of replicas of a data item that have beencached in mediator nodes. When the cache space is smallthe number of replicas of a data item is also small. This isbecause the size of cache cannot allow a huge number ofreplicas to be cached. Additionally, when the cache size in-creases we observe that the number of replicas is also in-creases. However, varying the levels of node degree wedetect a different system performance. This is due to thenumber of neighboring nodes. When the number of neigh-boring nodes is big, the number of nearby mediator nodesincreases. Thus, the number of replicas that are pushed inmediator nodes is also big.

    Fig. 34 illustrates the average number of replicas thathave been cached in each mediator node. It is obvious thatwith increasing values of node degree and cache space, thenumber of cached replicas in mediator nodes is also aug-mented. This is because each mediator node has muchmore neighboring nodes and therefore it receives manyreplicas to be cached. Thus, each mediator node exploitbetter its cache space by caching more data items.

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHNICC_GDS - LH

    NICC - RHNICC_GDS - RH

    NICC - GHNICC_GDS - GH

    ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors.

    0

    1

    2

    3

    4

    5

    6

    7

    8

    10 20 30 40 50 60 70 80 90 100

    Avg

    Rep

    licat

    ed D

    ata

    Cache Size (KB)

    Degree 4Degree 7

    Degree 10

    s degrees in a WMSN with: (a) 100, (b) 500 sensors.

  • 0

    5

    10

    15

    20

    10 20 30 40 50 60 70 80 90 100

    Avg

    Rep

    licat

    ed D

    ata

    per

    Med

    iato

    r

    Cache Size (KB)

    Degree 4Degree 7

    Degree 10

    0

    5

    10

    15

    20

    10 20 30 40 50 60 70 80 90 100

    Avg

    Rep

    licat

    ed D

    ata

    per

    Med

    iato

    r

    Cache Size (KB)

    Degree 4Degree 7

    Degree 10

    Fig. 34. Average number of replicas per mediator node for various degrees in a WMSN with: (a) 100, (b) 500 sensors.

    0

    50

    100

    150

    200

    250

    4 5 6 7 8 9 10

    Num

    ber

    of m

    edia

    tors

    Degree

    Nodes 100Nodes 500

    Fig. 35. Average number of mediator nodes for various degrees in aWMSN with 100 and 500 sensors.

    0

    5000

    10000

    15000

    20000

    10 20 30 40 50 60 70 80 90 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    Fig. 36. Impact of sensor cache size on hits (KB-sized files) in: (a) sparse ðd ¼ 4Þ

    236 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

    Finally, in Fig. 35 we examine the average number ofmediator nodes that are generated in the entire sensor net-work. We observe that for sparse sensor networks thenumber of mediator nodes is big enough. However, fordense sensor networks the number of mediator nodes isdecreased between 25% and 30% of the entire set of sensornodes. This is because many sensor nodes detect the samenodes as important.

    Even though all the aforementioned results concern theAODV routing protocol with an IEEE 802.11 MAC layer, therelative performance results still holds in different proto-col/layer configurations. To test this argument we per-formed a few more experiments: In the first set ofexperiments we experimented with the AODV routing pro-tocol with an IEEE 802.15.4 as the MAC layer, and in a cou-ple of experiments we investigated the GPSR protocol withan IEEE 802.11 MAC layer.

    We investigated the impact of cache size on the numberof hits, latency incurred and transmitted messages for thetwo protocols, but, with the IEEE 802.15.4 as the MAC

    0

    5000

    10000

    15000

    20000

    10 20 30 40 50 60 70 80 90 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    , (b) dense ðd ¼ 10ÞWMSN with 100 sensors and 802.15.4 MAC protocol.

  • 0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    45000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    0

    5000

    10000

    15000

    20000

    25000

    30000

    35000

    40000

    45000

    50 55 60 65 70 75 80 85 90 95 100

    Cac

    he H

    its

    Cache Size (KB)

    NICC - LHRPCC - LHNICC - RHRPCC - RHNICC - GHRPCC - GH

    Fig. 37. Impact of sensor cache size on hits (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 500 sensors and 802.15.4 MAC protocol.

    2

    2.5

    3

    3.5

    4

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    1

    1.5

    2

    2.5

    3

    10 20 30 40 50 60 70 80 90 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    Fig. 38. Impact of cache size on latency (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 100 sensors and 802.15.4 MAC protocol.

    5

    5.5

    6

    6.5

    7

    7.5

    8

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    3.5

    4

    4.5

    5

    5.5

    6

    6.5

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (

    sec)

    Cache Size (KB)

    NICCRPCC

    Fig. 39. Impact of cache size on latency (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors and 802.15.4 MAC protocol.

    N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 237

  • 0

    100000

    200000

    300000

    400000

    500000

    600000

    10 20 30 40 50 60 70 80 90 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    0

    100000

    200000

    300000

    400000

    500000

    600000

    700000

    800000

    10 20 30 40 50 60 70 80 90 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    Fig. 40. Impact of cache size on number of messages (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 100 sensors and 802.15.4 MACprotocol.

    1e+006

    1.5e+006

    2e+006

    2.5e+006

    3e+006

    3.5e+006

    50 55 60 65 70 75 80 85 90 95 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    2.6e+006

    2.8e+006

    3e+006

    3.2e+006

    3.4e+006

    3.6e+006

    3.8e+006

    4e+006

    50 55 60 65 70 75 80 85 90 95 100

    Tot

    al n

    umbe

    r of

    mes

    sage

    s

    Cache Size (KB)

    NICCRPCC

    Fig. 41. Impact of cache size on number of messages (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10ÞWMSN with 500 sensors and 802.15.4 MACprotocol.

    2

    2.5

    3

    3.5

    4

    4.5

    5

    5.5

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (s

    ec)

    Cache Size (KB)

    NICCRPCC

    NC

    1

    1.2

    1.4

    1.6

    1.8

    2

    2.2

    50 55 60 65 70 75 80 85 90 95 100

    Avg

    Que

    ry L

    aten

    cy (s

    ec)

    Cache Size (KB)

    NICCRPCC

    NC

    Fig. 42. Impact of cache size on latency (KB-sized files) in: (a) sparse ðd ¼ 4Þ, (b) dense ðd ¼ 10Þ WMSN with 500 sensors using the GPSR protocol.

    238 N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240

  • N. Dimokas et al. / Ad Hoc Networks 8 (2010) 214–240 239

    layer. The results are illustrated in Figs. 36–41 (they are theanalogous of Figs. 16–21). Although there exists differ-ences in the absolute values of the measured quantities be-cause this MAC supports much lower bit-rates, the relativeperformance of the protocols and the generic trends re-main unchanged. Therefore, there is