12
Associative routing for wireless sensor networks q Ramy Eltarras a,, Mohamed Eltoweissy b a Virginia Polytechnic Institute and State University, 118 N. Main St. (0337), Blacksburg, VA 24061, USA b Pacific Northwest National Laboratory, 902 Battelle Boulevard, Richland, WA, USA article info Article history: Available online 14 January 2011 Keywords: Associative routing Routing protocol Adaptive routing Wireless sensor networks Multi-criteria routing abstract Traditionally routing in computer networks has focused on finding paths along which data packets could be delivered to pre-identified destination nodes. Most existing routing protocols rely on the use of net- work addresses as unique node or group identifiers that are usually numeric and independent of any application semantics. The semantically-oblivious identification has forced network designers to incorpo- rate resource/service discovery techniques at higher layers of the network stack, resulting in unnecessary overhead. While such overhead can be tolerated in high-speed wired networks, it significantly limits per- formance and network lifetime in wireless infrastructure-less networks with battery-powered resource- constrained devices like sensor networks. Moreover, sensor nodes are more naturally anonymous and therefore assigning unique identifiers to individual node limits network scalability and imposes signifi- cant overhead on resource management. In this paper, we propose associative routing as a class of rout- ing protocols that enables dynamic semantically-rich descriptive identification of network resources and services. As such, associative routing presents a clear departure from most current network addressing schemes, eliminating the need for a separate phase of resource/service discovery. We hypothesize that since, in essence, resource discovery operates similarly to path discovery then both can be performed in a single phase, leading to significant reduction in traffic load and communication latency without any loss of generality. We also propose a framework for associative routing and present adaptive multi-criteria routing (AMCR) protocol as a realization of associative routing for sensor networks. AMCR exploits application-specific message semantics, represented as generic criteria, and adapts its operation according to observed traffic patterns. Analytical results demonstrate the effectiveness, efficiency, and scalability of AMCR. Ó 2011 Elsevier B.V. All rights reserved. 1. Introduction Recent advances in wireless communications have driven a myriad of research efforts aiming at designing methods and tech- niques for enabling ubiquitous service environments and cyber- physical systems. Wireless sensor networks (WSNs), gained re- search attention as a major enabler of such environments, resulting in a large number of proposed architectures and protocols for WSNs. WSNs are wireless ad hoc networks of heterogeneous, often limited capability, battery-powered, sensing and/or actuation de- vices. Long-lived shared WSNs are needed to enable ubiquitous service environments that are capable of providing in situ users with diverse services from multiple providers while preserving their changing QoS requirements. WSN platforms should provide secure dynamic task-based networking and in-network data stor- age as well as dynamic reconfiguration of tasks and network re- sources to adapt to changes in environment or requirements. WSNs started to transition from a subject of academic research to a technology that is deployed to serve real-life applications, however, the market of commercial WSN technologies and appli- cations is still in its infancy. Due to the very limited computational and communicational capabilities of individual sensor nodes, WSNs rely on the collabora- tion among large number of sensor nodes to perform desired func- tions and achieve its goals. It is very common to have a large number of sensors that are completely identical in hardware or play the same role. Also, the network resource management and maintenance functions becomes more costly as number of nodes in the networks increases if nodes are individually addressed. This makes the unique identification of individual sensor node both unnecessary and undesirable in large scale WSNs. Routing is one of the most challenging problems in WSNs due to its infrastructure-less nature and unreliability of nodes. Although many routing protocols were proposed for WSNs, most of them still rely on unique node identifiers that applications are expected to pro- vide. For applications to use such routing protocols, they need an- other resource discovery protocol that allows senders to query the network for the identifiers of the nodes they want to communicate 0140-3664/$ - see front matter Ó 2011 Elsevier B.V. All rights reserved. doi:10.1016/j.comcom.2011.01.010 q This work is sponsored in part by NSF award 0721523. Corresponding author. Tel.: +1 (571) 207 5595. E-mail address: [email protected] (R. Eltarras). Computer Communications 34 (2011) 2162–2173 Contents lists available at ScienceDirect Computer Communications journal homepage: www.elsevier.com/locate/comcom

Associative routing for wireless sensor networks

Embed Size (px)

Citation preview

Computer Communications 34 (2011) 2162–2173

Contents lists available at ScienceDirect

Computer Communications

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

Associative routing for wireless sensor networks q

Ramy Eltarras a,⇑, Mohamed Eltoweissy b

a Virginia Polytechnic Institute and State University, 118 N. Main St. (0337), Blacksburg, VA 24061, USAb Pacific Northwest National Laboratory, 902 Battelle Boulevard, Richland, WA, USA

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

Article history:Available online 14 January 2011

Keywords:Associative routingRouting protocolAdaptive routingWireless sensor networksMulti-criteria routing

0140-3664/$ - see front matter � 2011 Elsevier B.V. Adoi:10.1016/j.comcom.2011.01.010

q This work is sponsored in part by NSF award 072⇑ Corresponding author. Tel.: +1 (571) 207 5595.

E-mail address: [email protected] (R. Eltarras).

Traditionally routing in computer networks has focused on finding paths along which data packets couldbe delivered to pre-identified destination nodes. Most existing routing protocols rely on the use of net-work addresses as unique node or group identifiers that are usually numeric and independent of anyapplication semantics. The semantically-oblivious identification has forced network designers to incorpo-rate resource/service discovery techniques at higher layers of the network stack, resulting in unnecessaryoverhead. While such overhead can be tolerated in high-speed wired networks, it significantly limits per-formance and network lifetime in wireless infrastructure-less networks with battery-powered resource-constrained devices like sensor networks. Moreover, sensor nodes are more naturally anonymous andtherefore assigning unique identifiers to individual node limits network scalability and imposes signifi-cant overhead on resource management. In this paper, we propose associative routing as a class of rout-ing protocols that enables dynamic semantically-rich descriptive identification of network resources andservices. As such, associative routing presents a clear departure from most current network addressingschemes, eliminating the need for a separate phase of resource/service discovery. We hypothesize thatsince, in essence, resource discovery operates similarly to path discovery then both can be performedin a single phase, leading to significant reduction in traffic load and communication latency withoutany loss of generality. We also propose a framework for associative routing and present adaptivemulti-criteria routing (AMCR) protocol as a realization of associative routing for sensor networks. AMCRexploits application-specific message semantics, represented as generic criteria, and adapts its operationaccording to observed traffic patterns. Analytical results demonstrate the effectiveness, efficiency, andscalability of AMCR.

� 2011 Elsevier B.V. All rights reserved.

1. Introduction WSNs started to transition from a subject of academic research

Recent advances in wireless communications have driven amyriad of research efforts aiming at designing methods and tech-niques for enabling ubiquitous service environments and cyber-physical systems. Wireless sensor networks (WSNs), gained re-search attention as a major enabler of such environments, resultingin a large number of proposed architectures and protocols forWSNs. WSNs are wireless ad hoc networks of heterogeneous, oftenlimited capability, battery-powered, sensing and/or actuation de-vices. Long-lived shared WSNs are needed to enable ubiquitousservice environments that are capable of providing in situ userswith diverse services from multiple providers while preservingtheir changing QoS requirements. WSN platforms should providesecure dynamic task-based networking and in-network data stor-age as well as dynamic reconfiguration of tasks and network re-sources to adapt to changes in environment or requirements.

ll rights reserved.

1523.

to a technology that is deployed to serve real-life applications,however, the market of commercial WSN technologies and appli-cations is still in its infancy.

Due to the very limited computational and communicationalcapabilities of individual sensor nodes, WSNs rely on the collabora-tion among large number of sensor nodes to perform desired func-tions and achieve its goals. It is very common to have a largenumber of sensors that are completely identical in hardware orplay the same role. Also, the network resource management andmaintenance functions becomes more costly as number of nodesin the networks increases if nodes are individually addressed. Thismakes the unique identification of individual sensor node bothunnecessary and undesirable in large scale WSNs.

Routing is one of the most challenging problems in WSNs due toits infrastructure-less nature and unreliability of nodes. Althoughmany routing protocols were proposed for WSNs, most of them stillrely on unique node identifiers that applications are expected to pro-vide. For applications to use such routing protocols, they need an-other resource discovery protocol that allows senders to query thenetwork for the identifiers of the nodes they want to communicate

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2163

with. This is currently the responsibility of the middle-ware. Suchseparation between resource or service discovery and route discov-ery results in unnecessary control traffic in the network that coulddrain the sensor batteries faster. For example, in AODV [1], broadcastis used to discover routes on demand. The same route control pack-ets used to discover routes could serve a dual purpose by discoveringresources too; saving the network from another broadcast storm.

The ability to efficiently and securely share WSN resourceamong multiple applications is another serious challenge thathas been recently highlighted as a missing link in state-of-the-artWSN research in [2]. Applications like traffic monitoring, parkingmanagement, fire alarming, and security enforcement could sharethe same WSN resources to achieve multiple distinct goals in amore economic way. The evolution from single-purpose WSNdeployments to more generic WSN platforms became inevitablefor cost-effective production of WSN technologies.

The limited amount of non-renewable energy is the major chal-lenge in many WSN applications that require long lifetimes. Nomatter how WSN technologies attempts to make the most efficientuse of the node’s energy, such energy efficiency only delays theproblem, but does not solve it. Long-lived shared WSNs are actu-ally WSNs capable of running applications for longer than the life-times of individual nodes. Such WSNs should be capable oftolerating node death and quickly incorporate progressively de-ployed nodes to compensate for failed nodes. This makes theWSN infrastructure highly dynamic.

Changes in the network’s underlying resources, connectivity,mission, or QoS requirements necessitate the design of adaptableWSN architectures and protocols. The network should be able tochange its structure and behavior at run-time in response tochange in requirements, or environment. Such adaptation is essen-tial for long-lived WSN applications that are likely to encounterchanges in the underlying resources and/or mission during theirlong lifetime. This imposes additional challenges on routing proto-cols for this class of WSNs.

The contributions of this paper is twofold: first, we propose asso-ciative addressing for routing protocols in WSNs combining service/resource discovery with route discovery roles into a single coherentrole. We show how such combination: (1) improves energy effi-ciency, (2) minimize communication latency, (3) enhances networkscalability and simplifies management and maintenance operationthrough dynamic identification and addressing, (4) improves thenetwork resilience by allowing transparent fail-over to nodes withsimilar attributes, (5) enables routing protocols to exploit applica-tion layer semantics, (6) supports on demand multi-cast by elimi-nating the need of joining multicast groups, and (7) allows routingprotocol to preserve the anonymity and privacy of nodes whenneeded. Second, we present AMCR, a generic criteria-based routingprotocol, exploiting associative addressing to allow destinations tobe specified as a qualitative reference to node capabilities, adminis-trative settings, and/or application published criteria. We show howAMCR: (1) enables sharing of resources among multiple heteroge-neous applications and allows the network to adapt to changes inapplication behaviour, operating environment, and QoS require-ments; (2) provides seamlessly routing of unicast/multicast/any-cast/broadcast traffic; (3) employs a novel criteria indexingmechanism to optimize communication efficiency and adapts tothe observed application’s semantics and load patterns; (4) pre-serves genericness by not imposing any restrictions on the applica-tion’s choice of desired communication patterns.

The remainder of this paper is organized as follows. Section 2 re-views the related work in literature. Section 3 discusses theassociative routing approach. Section 4 presents the AMCR routingprotocols and its analytic evaluation. Finally Section 5 is ourconclusion.

2. Related work

WSNs share a number of common features with Mobile Ad-hocNETworks (MANETs), essentially, due to the infrastructure-lessnature of both network classes. In both classes, routing may in-volve intermediate nodes to relay network packets from sourceto destination, a technique known as multi-hop routing. Self-orga-nization and self-management are essential properties of softwaresystems and protocols in both classes. The dynamic topology is an-other common features, although the main reasons for topologychanges differ. In MANETs, topology changes are often due to nodemobility, while in WSN, they are mainly due to node failures. Also,nodes in both types of networks are usually battery-poweredrequiring routing protocols to be energy efficient. Despite, themany common features, routing protocols for WSNs were differen-tiated from MANETs according to their communication patterns. InMANETs, all nodes are assumed to be peers and communication isusually node-to-node, while in WSNs, communication usually in-volves a sink that plays the most important role in the network.Also, unlike MANET nodes, sensors do not usually have globallyunique identifiers, challenging address-centric communicationand motivating data-centric communication instead. In WSNs,node-to-node communication was traditionally assumed a rarecommunication pattern, making WSN routing protocols focus onsensor-to-sink, and sink-to-sensor patterns.

Despite the classical distinction between WSNs and MANETsrouting protocols, the differences between the technical require-ments in both classes of protocols are getting blurry, due theevolution of shared multi-purpose WSNs and the need to inte-grate WSNs and MANETs into large scale cyber-physical systems.Most of the assumptions underlying the differentiation betweenthe communication patterns used for WSNs and MANETs are nolonger considered valid for such environment. For example, con-tent-based routing was proposed as a better alternative to ad-dress-based routing in MANETs [3]. Secure node-to-nodecommunication was also extensively studied for WSNs [4]. Acombined routing Layer for WSNs and MANETs was proposedin [5] motivated by the need to integrate heterogeneous net-works of both classes.

We classify ad hoc routing protocols according to their address-ing schemes as shown in Fig. 1:

Data-centeric routing: The network is abstracted as a distributeddatabase. Routing is based on the requested data content.Applications are completely oblivious of the communicationend-points. The network layer is usually inseparable from theapplication layer. Data-centric routing is also referred to ascontent-based routing. TinyDB [6,7], and EnviroTrack [8] areexamples of WSN middleware systems that adopts content-based routing.

Service-centric routing: The network is abstracted as a serviceenvironment composed of multiple service providers. Routingis based on the requested service profile. Like data-centricrouting, applications in service-centric routing are completelyoblivious of communication endpoints and the network layer isusually inseparable from the application layer. Service-centricrouting realizes service oriented architecture (SOA) in MANETsand WSNs. For example, the Reliable Adaptable serviCe-drivenEfficient Routing (l Racer) [9] suite of protocols adopted a novelservice-driven routing approach [10] for WSNs that exposes thenode capabilities to applications as service profiles. l RACERtranslates service profiles into efficient paths for service requests.

Communication-centric routing: The network is viewed as a sub-strate enabling communication among end points. Routing is

Fig. 1. Classification of ad-hoc routing protocols.

2164 R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173

based on destination addresses of end points. The network layerhas clear boundaries and usually separable from applicationlayer. Communication-centric routing protocols are the mostgeneric protocols that do not restrict the application program-ming paradigm or communication patterns. We further classifycommunication-centric routing into two subclasses:

Identifier-based routing: Destinations are identified usingunique identifiers to nodes or groups. There is always adirect mapping between identifiers and nodes.

Static addressing: A globally unique network address isused to identify the node. The network address of a nodedoes not change as it changes its location. Most MANETrouting protocols belong to this class. For example, AODV[1].Dynamic addressing: The node identifier is decoupledfrom its network address, allowing network address tochange as node changes its location while providing away to dynamically map node identifiers to their currentnetwork addresses. DART [11] and its multi-path variantM-DART [12] use distributed hash tables for this purpose.

Associative routing: Destinations are identified using descrip-tive addressing that does not directly map to specific nodes ormulticast groups. AMCR is an example of an associative rout-ing protocol designed for shared sensor networks. Addressingin AMCR is based on generic resource attributes. We devel-oped AMCR as an example of a generic associative routingprotocol capable of adaptation to observed workloads.

Routing protocols targeting WSN platforms usually attempt toachieve routing efficiency through exploiting the application layerquery semantics by proposing an all-in-one solution that weavethe routing concern with other application layer concerns, suchas data-centric and service-centric routing. They also tend to opti-mize routing performance for a specific communication pattern in-spired by a specific a class of WSN applications. A number ofrouting protocols for sensor networks assume a flat network wheresensed data flow from multiple sources to a particular base stationand focus on minimizing redundancy to achieve energy efficiencyas in [13–15]. Such protocols often assume identical roles for allnodes, which is not a practical assumption in large scale heteroge-neous networks. Data reporting, mobility, and role assignmentmodels are often dictated by WSN protocols, resulting in interde-pendence between the application and routing concerns disquali-fying those protocols from being general-purpose. Associativerouting addresses these limitations by providing a generic routinglayer capable of integrating multiple different application layers

and still provide the means to exploit the application layersemantics through descriptive addressing. A semantic routingframework was presented in [16] to facilitate routing messageswithout full knowledge of recipients. Semantic routing frameworkuses message meta-data. While content-based routing requiresprescribed message format, semantic routing uses meta-data to al-low relevant information to be expressed independent of the mes-sage. Like content-based routing [7], semantic routing frameworkadopts publish/subscribe messaging pattern rendering themunsuitable for on-demand, interaction oriented communication.Associative routing extends the semantic routing concept to iden-tify end-points for on-demand communication.

3. Associative routing

Associative routing replaces the semantics-free destination ad-dresses with semantics-rich destination descriptors that dynami-cally bind to nodes at routing time. Destination descriptorsprovide qualitative descriptions of the destination nodes where apacket should be delivered. Associative routing does not requirenodes to have unique identifiers, instead nodes identify themselvesby the services they are willing to provide, resources they are will-ing to share, data they store, or any other attributes of relevance toapplications. Network nodes maintain identification profiles thatcan by checked against destination descriptors of network packetsby the routing protocol to determine the path along which a packetshould travel. The support for associative routing only requiresminimal change in the transport layer protocols to allow passingof destination descriptors from applications to the routing protocol.

Associative routing is a more generic class of routing protocols,where address-based routing protocols are considered specialcases. An address-based protocol, like IP, can be implementedusing the associative routing framework by simply exporting thenumeric IP addresses in the identification profiles, and defining des-tination descriptors to include a single numeric field.

The idea of using dynamic addressing to solve scalability limita-tions in ad hoc routing protocol was presented in DART [11]. DARTdistinguishes between node identifiers and their network ad-dresses, allowing nodes to change their addresses as they movearound while preserving their identities. It was shown that this le-vel of address indirection in routing later considerably enhancedthe routing scalability. Associative routing takes this concept a stepfurther by dynamically mapping attribute-based descriptors tophysical nodes without the need for any explicit node identifiers.Unlike DART, there is no direct mapping between the data packetdestination specified by the sender and the physical nodes thepacket will be delivered to. Multiple different destination

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2165

descriptors may lead to the same node (or same group of nodes).Also, at different times, the same destination descriptor may leadto different nodes (or groups) as their attributes change. For exam-ple, the battery energy level of a node could be part of its identifi-cation profiles, so if the energy level dropped, the node disqualifiesfor a descriptor that it used to qualify for in the past. Such highlydynamic nature of addressing in associative routing makes it anattractive solution to routing in large scale networks of dynamictopologies, like sensor networks.

Associative routing provides the following advantages:

Efficiency: Associative routing allows designers to combine theservice/resource discovery with route discovery leading tolower traffic overhead, lower communication latency, and pro-longed lifetime of networks with battery powered devices.

Dynamic identification and addressing: For large scale networkswith dynamic topologies and mobility, static addressingimposes serious scalability limitations. Associative addressingenhances scalability. In addition, it improves the network resil-ience by allowing transparent fail-over to nodes with similarattributes.

Ability to exploit application layer semantics to optimize routing:The semantics-rich nature of addressing in associative routingallows routing protocols to adapt to application semantics.Intrinsic multicast: There is no need for nodes to explicitly joinmulticast groups. Instead, the sender may specify a destinationdescriptor that matches any number of nodes at any time, elim-inating the overhead of group formation.

Anonymity: Since senders do not need to know or explicitlyspecify identifiers for destination nodes, routing protocoldesigners can exploit that to hide node identities if anonymityis required. This also provides a convenient way to managelarge numbers of nodes in wireless sensor networks, wherenodes are more naturally anonymous.

Associative routing could be effectively used as the underlyingrouting scheme in data-centric and service-centric networks, sinceit provides a highly generic way to model and describe destinations.This would result in a cleaner network design in such networks thatmaintains layer boundaries and separates concerns, unlike currentimplementations that adopts all-in-one design approach.

Our framework for associative routing adopts a targeted mes-saging model that allows the exchange of messages between asource node and a targeted group of nodes. The routing agent de-fines schemas for the destination descriptor and the identificationprofile. The source node creates a destination descriptor object spec-ifying its targeting criteria. A targeted message (TM) is a networkpacket carrying application data in its payload and the destinationdescriptor in its variable-length header. The application agent at the

Fig. 2. Associative routing framework.

sender side instantiates a destination descriptor and configures itaccording to its targeting needs. The application agent then passedthe destination descriptor to the transport agent as the destinationaddress. The transport agent constructs a targeted message and passit to the routing agent. The routing agent decides how the packet isforwarded according to the protocol it implements and/or the rout-ing tables it maintains. When a message is received by a routingagent from lower layers, it extracts the destination descriptor fromthe messages and verifies it against the node’s identification profile.If the profile matches the description in the destination descriptorthe message is passed to the local transport agent to be deliveredto the application agent, otherwise forwarding decision is made.Routing agent may still forward target messages that it matchesthe local identification profile if it implements multicast function-ality. Fig. 2 illustrates the basic interactions in the associative rout-ing framework.

4. The AMCR protocol

In this section, we present a fully distributed routing protocolbased on the concepts presented earlier. AMCR does not requireall nodes in the network to participate in routing or maintain rout-ing information tables. Only a subset of designated nodes play therouting role. We refer to nodes that do not participate in routing asresource nodes in contrast to router nodes. All resource nodes are re-quired to be within the single hop connectivity range of at leastone router node. Each node can determine whether it is interestedto participate in routing or not. Location-aware affinity propaga-tion (LAP) [17] algorithm is used to elect a fully connected set ofrouter nodes and establish neighborhood lists. Each resource noderegisters with only one router node, reachable in a single hop, thatrepresents its gateway to the AMCR network. The average numberof resource nodes per gateway is referred to as router packing ratio(rpr). AMCR uses criteria indexes to speed up routing of messagesto frequently targeted groups. An Index Working Set (IWS) by rou-ter nodes containing actively used indexes. Adaptability is achievedthrough monitoring runtime performance metrics and automati-cally modify the IWS accordingly. As the application workload orthe network topology changes, the IWS changes to include themost efficient indexes for the current workload. Indexes for themost frequently targeted groups are created, while indexes thatno longer produce performance or efficiency gains are dropped.The destination descriptor used in AMCR is a boolean predicate thatwe refer to as target predicate (TP).

The core of the our AMCR approach is implemented in a mes-sage routing unit (MRU). Each node participating in AMCR basednetwork has one or more MRUs. MRU is responsible for routingTMs to their destination groups and optionally routing responsesback to the source. Fig. 3 shows the general architecture of MRU.This model is highly generic for WSNs as it bases its assumptionson the system level properties of WSN environment rather thanon any class of WSN applications. AMCR recognizes the heteroge-neity in node capabilities and maintains an identification profilefor the WSN node based on its capabilities, spatial location, andother administrative criteria. The AMCR’s node profile is an aggre-gation of criteria. Each criterion is key/value pair. Values are eitherboolean, real numbers, or text strings. A criterion may representcapability possessed by the node, context information, administra-tive configuration, or application data. Addresses in AMCR arepredicates referencing nodes’ criteria that evaluate to true onlyfor the target node(s). AMCR enables applications to efficientlygroup resources according to application defined criteria tosupport collaboration oriented tasks. Network managementcomponents can also leverage AMCR for resource management,

Fig. 3. Message routing unit.

Table 1AMCR routing table fields.

Name Fields

IPT Criterion, Value, LastUpdatedIDT IdxName, Properties, Segmented, SegmentSize, SeqNo, TimeIRT IdxName, Criterion, Value, Time, GwIUT IdxName, SeqNo, Src, Cost, Gw, TimeRRT Src, Cost, SeqNo, Gw, TimeQRT Src, PredID, Cost, SeqNo, ResHash, Gw, Time

2166 R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173

fault tolerance, redundancy, optimization, and enforcing quality ofservice constraints.

4.1. Predicate description

The header of targeted messages in AMCR contains a targetpredicate that represents the destination address of the message.Unlike traditional IP based networks, addressing in AMCR doesnot require unique identifiers for every single node. Instead, theaddress in AMCR is a descriptive predicate that can match one ormore nodes depending on the criteria values of the nodes and con-ditions specified in the predicate. Predicates are compiled into aserialized binary format at the source to include in the AMCR pack-et header, then evaluated at every hop to destination. For example:

// For nodes with temperature sensor within

// specific area

(capability.temperaturesensor == true & &location.x > 1129 & & location.x < 3129 & &location.y > 2000 & & location.y < 3000)

// Example application specific predicate

(role == ‘‘Clusterhead’’ & &battery.remainingenergy > 500)

Table 2Protocol configuration parameters.

Symbol Description

h Advertisement periodu Index record expiration timee Route expiration timec Path construction timeoutl Number of records per IVAP packet

Applications can publish application specific criteria in theirnode’s identification profiles, then refer those criteria in target pred-icates. The MRU receives the target predicate from application andrewrites it to add implicit QoS preserving conditions. Unicast rout-ing is performed when the predicate is specific enough to match onlyone node, for example, IeeeMacAddress = ‘‘0014.4F01.0000.05E6’’.Multicast routing is performed when the predicate matches anumber of nodes that are all required to respond to the query. Forexample, hasLightSensor = true. Anycast routing is performed whenthe predicate matches a number of nodes but only a smaller numberof the matching nodes are required to receive the message.Specifying a query limit implies anycast routing. Broadcast isperformed when the literal true is used as the predicate.

4.2. Routing information tables

AMCR relies on six tables for its operation. Table 1 shows thefields in each table.

� Identification profile table (IPT): Contains the all criteria identify-ing a resource. The LastUpdated field is updated whenever thevalue of a criterion changes.� Index definition table (IDT): Contains the definition of indexes.

An index contains one or more criteria from IPT. For multi-cri-teria indexes, a record is inserted for each criteria in the indexwith the same IdxName. If SegmentSize is non-zero, then rangeof values of the indexed criteria is segmented to limit the sizeof the index for criteria that have a large number of unique val-ues. The Time field specifies the time-stamp of the last time theindex was advertised to neighboring routers. Advertisementsare sequence numbered to ensure freshness of updates.

� Indexrouting table (IRT): Used to route multicast route construc-tion packets (MRCP) during route construction phase. AMCRavoids uncontrolled flooding while constructing its routes bypruning dead branches early according to records in IRT. Therecords in IRT expire if the Time became older than r time units.

� Index update table (IUT): Used to temporarily store informationabout recently received index value advertisements packet(IVAP). The main purpose of IUT is to handle the receiving ofduplicated copies of advertisement packets from the sameresource, that may have arrived from different paths to selectthe best path to use for this resource. The Src field indicatesthe node that hosts the resource, and the Gw indicates theneighbor router that forwarded the index update.

� Response routing table (RRT): Used to route query results back tothe query source. The table is propagated with records duringroute construction. The Src identifies the query source. TheSeqNo field holds sequence number to guarantee fresh routes.The Time is used to purge routes that are no longer used.

� Message routing table (MRT): Used to route messages to theirdestination groups. The table is propagated with records duringroute construction phase.

4.3. Protocol description

AMCR consists of three main activities; index propagation,route construction, and message routing. Table 2 shows the proto-col parameters referenced in this section.

Table 3Simulation parameters.

Parameter Symbol Defaultvalue

Unit

Number of nodes n 200 nodeDensity of nodes d 0.0008 node/m2

Route request rate q 0.05 request/sCriteria update rate c 0.05 update/sTransmission range s 50 mAdvertisement period h 100 sExperiment length t 6000 sAdvertisement packet size l 50 record/

packetTotal number of criteria e 4 criterionNumber of targeted criteria f 2 criterionNumber of indexed criteria r 1–4 criterion‘ Average size of destination group g 5 nodeCriteria value range v 1000 –Destination descriptor window

sizew v g

n

� �1f –

Router packing ratio p 1 –Number of router nodes u n

p node

Deployment area side length affiffind

pm

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2167

4.3.1. Index propagationEach node periodically checks its IDT for indexes that either

contain criteria whose value was recently changed in the last htime units or whose time is older than u time units. The matchingcriteria values are advertised by resource nodes to their gateways inindex value advertisement packets (IVAP) that contain theproperty/value pairs of criteria that belongs to the indexes selectedfor advertisement grouped by the index name. If the index is seg-mented the criteria value is rounded to the nearest segment value.The IVAP contains the most recent sequence number for each in-dex. The IVAP also contains the source node identifier and the pathcosts initialized to the current node identifier and zero respectively.When a router node receives an IVAP from a neighbor, it updatesits IRT records as follows: if records already exist for that indexfrom that node, the value and the time of those records are updated.If no records match the node/index combination, new records areadded to the table. If the sending neighbor is a router node r(j), itinserts a record in its IUT for each index in the IVAP associatingthose records, sets the neighbor value of the IUT records to r(j),and updates the path cost by adding the link cost between r(i)and r(j). Each router node constructs aggregated IVAP packets foreach of its neighbor and asynchronously propagate those packetsevery h time units. The aggregation of advertisement eliminatesduplicates by selecting updates with least cost and helps minimizethe number of IVAP packets transmitted limiting the criteria adver-tisement overhead.

4.3.2. Route constructionWhen a node n(s) decides to send a directed message, its MRU

sends a multicast route construction packet (MRCP) to all its neigh-bors containing the targeting predicate, and a sequence number.When a node n(i) receives an MRCP packet, mrcp, from a neighborn(j), it builds a predicate evaluation tree from the destinationdescriptor predicate expression and checks if the predicatematches its own IPT. If the predicate evaluates to true, the match-ing node sends back a unicast route setup packet (RSP) to thesource node through n(j). The Predicate is copied from the MRCPto the RSP packet and the SourceNode is set to n(i). The RSPpacket also contains a ResourceHash, which is an integer value thatassists in resource ranking. The node calculates the ResourceHashaccording to an application provided hash function that attemptsto a calculate unique value for each resource. The function pro-vided reflects the application’s ranking criteria of resources. The

uniqueness of the ResourceHash is achieved by incorporatinginformation like resource location. The reverse path is constructedusing the following algorithm:

if n(i) is a resource node thenif predicate(n(i)) = true then

rsp new RSP packetResHash calculate unique ranking hashsend rsp to n(s) through n(j)

end ifelse if n(i) is a router node then

mrcp.Cost mrcp.Cost + link_cost(n(i),n(j))for all n(k) 2 neighbors(n(i)) and n(k) – n(j) do

if predicate(n(k)) = true {Using IRT of n(i)} then{update reverse path}for all rp 2 RRT and rp.Src = mrcp.Src do

if rp.Cost P mrcp.Cost or rp.Time 6 (now() � e))then

delete rp from RRT invalidate existing recordelse

continue to next neighborend if

end forrp new record in RRTrp.Src mrcp.Srcrp.Cost Costrp.Time now()forward mrcp packet to n(k)

end ifend for

end if

When a node, n(l), receives an RSP packet, rsp, from n(m), itestablishes a forward path as follows:

rsp.Cost rsp.Cost + link_cost(n(l),n(m))record_found falsefor all qr 2 QRT and qr.PredID = rsp.PredID andqr.ResHash =rsp.ResHash do

if rsp.Cost < qr.Cost thenqr.Gw n(m);qr.Time now();qr.Cost rsp.Cost

end ifrecord_found true

end forif record_found = false then

qr new record in QRTqr.Src rsp.Src; qr.PredID rsp.PredID;

qr.ResHash rsp.ResHash;

qr.Cost rsp.Costqr.Gw n(m)qr.Time now()

end ifif n(m) – rsp.DestNode then

for all n(k) 2 neighbors(n(l)) and n(k) – n(m)doif $rrt 2 RRT where n(k) = rrt.Gw and

rrt.Src = rsp.DestNodethen

forward rsp to n(k)end if

end forelse if predicate limit exists then

LimitCutoffValue calculate cutoff valueend if

Fig. 4. Percentage of false negatives over time (moderate criteria update rate).

s over time (high criteria update rate).

2168 R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173

The cutoff value is calculated sorting the RSP responses indescending order of ResHash, and using the ResHash value of the

lth response. The destination nodes wait for c time units before cal-culating the LimitCutoffValue to allow any delayed responses to ar-rive. Redundancy of resources and paths is achieved by selectingthe top ranked routes.

4.3.3. Message routingAfter path is constructed the source node sends the message to

its gateways to be routed to its target group. When a router nodereceives a message, it checks its QRT for the set of records match-ing the message PredID and have a ResHash greater than or equalsto the LimitCutoffValue, then forwards the message to all theneighbor nodes specified in the Gw field of the matching records.When a destination node receives a message that requires a re-

Fig. 5. Percentage of false negative

sponse, it processes the message by invoking the application levelhandler and unicasts the result back to the source. When a routernode receives a result packet from a neighbor, it checks the RRT ta-ble for a record whose Src matches the DestNode of the result pack-et. The router node forwards the packet to the neighbor nodeindicated by the Gw field of the matching record. This is repeatedtill the result packet arrives to the source.

5. Evaluation

In this section we show how AMCR indexes considerably im-prove routing efficiency, compared to purely reactive protocols,by speeding up route discovery to frequently targeted groups atthe cost of pre-advertising indexed criteria values. The amount of

Fig. 6. Percentage of false negatives over time (very high criteria update rate).

Fig. 7. Energy consumption over time (moderate criteria update rate).

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2169

performance improvement is dependent on the index efficiencyand amount of messages that benefit from the index. The resultsshows that even for unbiased random requests, indexing still con-siderably improves the and overall routing efficiency. We analyti-cally study overhead the We evaluate the effectiveness andefficiency of AMCR using simulation.

5.1. Analytical model

We model the AMCR network as a graph G(Gr(u,mr),p), whereGr(u,mr) refers to routing graph, which is a random graph of routernodes. The set of vertices of the routing graph, R, contains all routernodes. The set of vertices of the network graph, R, is a superset of N

containing also vertices for resource nodes. The parameters u refersto the number of elements in R, mr refers to the number of edges inthe graph, and p refers to the router packing ratio. The total numberof nodes in the network, n = u(p + 1). The degree of the routinggraph, dr, represents the average number of router neighbors. Forthe routing graph to be connected with high probability, the aver-age degree of nodes grows with O(log (u)) [18], hence we assumethat the dr = klogu, where k is a constant.

We define the index propagation overhead O as the expectedvalue for the number of IVAP packets forwarded by a node in unit

time. We show that O ¼ 1h� 1

hðpþ1Þ

� �r�re�hc

l

l mþ k

hðpþ1Þ log npþ1, where n

is the number of nodes in the network, r is the number of indexed

Fig. 8. Energy consumption over time (high criteria update rate).

Fig. 9. Energy consumption over time (very high criteria update rate).

2170 R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173

criteria, c is the rate parameter of exponential distribution generat-ing the index update events, and l is the maximum number of in-dex update records that fit in a single advertisement packet, h isthe period of the index advertising cycle, and p is the router packingratio.

We assume that updates to indexed criteria are random eventsthat occur independently with a expected value for the time unitsbetween updates to the criterion 1

c. For a given indexed criterion,the probability that an update will occur during the period of anadvertisement cycle ¼

R p0 ce�tcdt ¼ 1� e�hc. The average number

of indexed criteria updates in a node per advertising cycle = i = r � rehc. The average number of packets generated by a single resource

node per advertising cycle is il

� �¼ r�re�hc

l

l m. The average number of

aggregated packets generated by a router node per adver-tisingcycle = dr = klogu. Total number of packets transmitted in

the network per advertising cycle ¼ ðn � uÞ r�re�hc

l

l mþ ku log u

Therefore, O ¼ f ðn�uÞn

r�rehc

l

l mþ kfu

n log u ¼ 1h � 1

hðpþ1Þ

� �r�re�hc

l

l mþ k

hðpþ1Þ

log npþ1.

Fig. 10. Energy consumption against number of nodes.

Fig. 11. Energy consumption against route request rate.

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2171

Table 3 shows the parameters used in our study and theirdefault values in the simulated experiments.

5.2. Simulation

Evaluation experiments were conducted using an AMCR imple-mentation within a simulated environment. Random topologiesare generated according to the following constraints:

� Nodes are uniformly distributed in a square area of side widthw.� The average density of nodes, d, equals n

a2.� The network graph is unpartitioned.

� Each node has e criteria in its identification profile. The values ofthe criteria are randomly generated within the range [0 . . .v].� Nodes can communicate in single hop with other nodes in the

separating distance is less than or equals to s meters.

For each request, the source node is randomly selected amongall nodes, and a destination descriptor is generated with randomcriteria values. Nodes are considered matching the destinationdescriptor if their criteria values are within a window of width wof the randomly selected descriptor value. The window width, w,is calculated by the simulator such that the average number of

nodes matching the descriptor remains equals to g �w ¼ v gn

1f .

The inter-arrival time of route requests is exponentially distributed

Fig. 12. Energy consumption against criteria update rate.

Fig. 13. Energy consumption against destination group size.

2172 R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173

with rate parameter q. Criteria change events randomly occurduring the experiment. The inter-arrival time of change events isexponentially distributed with rate parameter c.

5.3. Results

We evaluate the effectiveness and efficiency of AMCR under dif-ferent criteria update rates and number of indexes criteria. Themain purpose of AMCR is to construct a routing path, on-demand,between a sender and a destination group of nodes that matchspecific set of criteria. The evaluation of AMCR effectiveness isrequired to verify that it actually provides such functionality. Wecalculate the perfect destination groups using an oracle processthat has global knowledge of all generated destination descriptors

and node profiles. We then compare the perfect group to the realgroup and count false negatives. The efficiency of AMCR is evalu-ated in terms of the energy consumed to establish the routes. Foreach experiment, we compare 5 data sets for different levels ofindexing ranging from ‘‘no indexing’’ to ‘‘full indexing’’.

The first set of experiments measure the effectiveness of AMCRthrough the number of false negatives under moderate, high, andvery high criteria update rates. The results of this set of experi-ments are plotted in Figs. 4–6. False negatives occur primarilywhen a node updates the value of an indexed criteria at a pointof time, but advertising the new value is not yet complete.Accordingly, adding more indexes is expected to increase the num-ber of false negatives. After a brief setup period, the false negativesstart to converge for moderate and high criteria update rates. As

R. Eltarras, M. Eltoweissy / Computer Communications 34 (2011) 2162–2173 2173

the change rate increases, the difference between the data setsbecomes more significant. The very high criteria update rates, ran-dom full results in unacceptable effectiveness. For criteria withvery high update rates, random indexing should be avoided.

The second set of experiments measure the energy consumedby recording the number of packet transmissions per unit time.The results of this set of experiments are plotted in Figs. 7–9. Theresults show that after a brief setup period, full indexing managedto save 58% of the energy consumption. At moderate criteria up-date rate, all levels of indexing provided savings. As the criteria up-date rate increases the energy cost of indexing increases.

The third group of experiments evaluates the network andworkload scalability of AMCR. Figs. 10 and 11 show the impact ofthe network size and workload on the energy consumption. Asthe number of nodes increase the energy consumed is expectedto increase. As the level of indexing increases, the increase in theenergy consumed becomes slower. The results show that as thenetwork size or workload increases, the energy saving from index-ing becomes more significant. At very low workload indexing canresult in increased energy consumption.

We finally show the impact of the criteria update rate and theaverage size of destination groups on the energy consumed in Figs.12 and 13. As criteria update rate increases, the indexing overheadincreases till it reaches a point where any more increase in the up-date rate will result in indexing of more overhead than savings.

6. Conclusion

The large scale and limited capabilities of WSN motivate theneed for scalable efficient routing. In this paper, we proposed anovel associative routing that exploits generic node identificationprofiles and destination descriptors to enable both resource/ser-vice and path discovery in a single phase. The advantages of asso-ciative routing include: (1) dynamic identification and addressing,(2) ability to exploit application layer semantics to optimize rout-ing, (3) intrinsic multicast, and (4) preserving node anonymity. Weproposed a framework for associative routing protocols andpresented AMCR that was designed and implemented using theproposed framework. AMCR is a generic routing protocol forshared WSNs that exploits associative routing. AMCR supportsmulti-application optimization while being purely generic, promis-ing the construction of future WSNs that are of large scale, longlived, and multi-purpose. Analytical evaluation shows that AMCRis highly scalable and has minimal advertisement overhead. Dueto its desirable features and performance characteristic, associativerouting is a cornerstone in the ElaStic Shared nEtworked seNsor-aCtuator systEm (ESSENCE) project [19]. While we proposed andapplied associative routing for wireless sensor (actuator) networks,we hope this paper serves as a catalyst for further research into itsbroader applicability as a general framework for routing in a widevariety of networks.

References

[1] C. Perkins, E. Belding-Royer, S. Das, Ad hoc on-demand distance vector (AODV)routing, Internet Request for Comment RFC 3561, Internet Engineering TaskForce, 2003. <http://www.ietf.org/rfc/rfc3561.txt>.

[2] C. Huygens, W. Joosen, Federated and shared use of sensor networks throughsecurity middleware, in: Third International Conference on InformationTechnology: New Generations, 2009, pp. 1005–1011. <http://doi.ieeecomputersociety.org/10.1109/ITNG.2009.181>.

[3] Content-based routing in mobile ad hoc networks. <http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1540986>.

[4] R. Pietro, L. Mancini, A. Mei, Energy efficient node-to-node authentication andcommunication confidentiality in wireless sensor networks, WirelessNetworks 12 (2006) 709–721, doi:10.1007/s11276-006-6530-5.

[5] T. Senner, R. Karnapke, A. Lagemann, J. Nolte, A combined routing layer forwireless sensor networks and mobile ad-hoc networks, in: InternationalConference on Sensor Technologies and Applications, 2008, pp. 147–153.<http://doi.ieeecomputersociety.org/10.1109/SENSORCOMM.2008.25>.

[6] S.R. Madden, M.J. Franklin, J.M. Hellerstein, W. Hong, Tinydb: an acquisitionalquery processing system for sensor networks, ACM Transactions on DatabaseSystems 30 (1) (2005) 122–173. <http://doi.acm.org/10.1145/1061318.1061322>.

[7] A. Carzaniga, A.L. Wolf, C.A. Carzaniga, M.J. Rutherford, M.J. Rutherford, E.L.Wolf, A routing scheme for content-based networking, in: Proceedings of IEEEINFOCOM 2004, Hong Kong, 2003.

[8] T. Abdelzaher, B. Blum, Q. Cao, Y. Chen, D. Evans, J. George, S. George, L. Gu, T. He, S.Krishnamurthy, L. Lou, S. Son, J. Stankovic, R. Stoleru, A. Wood, Envirotrack:towards an environmental computing paradigm for distributed sensor networks.<http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.60.1000>.

[9] A. Rezgui, M. Eltoweissy, Textmu racer: a reliable adaptive service-drivenefficient routing protocol suite for sensor-actuator networks, IEEE Transactionson Parallel and Distributed Systems 20 (5) (2008). <http://doi.ieeecomputersociety.org/10.1109/TPDS.2008.94>.

[10] A. Rezgui, M. Eltoweissy, Service-driven query routing in sensor networks, in:Proceedings of the First IEEE International Workshop on Practical Issues inBuilding Sensor Network Applications, Australia, LCN 2006, 2006.

[11] J. Eriksson, M. Faloutsos, S.V. Krishnamurthy, Dart: dynamic address routingfor scalable ad hoc and mesh networks, IEEE/ACM Transactions on Networking15 (1) (2007) 119–132. <http://nms.csail.mit.edu/�jakob/pubs/dart_ton_2006.pdf>.

[12] M. Caleffi, L. Paura, M-dart: multi-path dynamic address routing, WirelessCommunications and Mobile Computing (2010). <http://dx.doi.org/10.1002/wcm.986>.

[13] C. Intanagonwiwat, R. Govindan, D. Estrin, Directed diffusion: A scalable androbust communication paradigm for sensor networks, in: Proceedings of the6th annual international conference on Mobile, ACM Press, New York, NY, USA,2000, pp. 56–67. <http://doi.acm.org/10.1145/345910.345920>.

[14] Heinzelman, H. Balakrishnan, Adaptive protocols for informationdissemination in wireless sensor networks, in: Proceedings of the FifthAnnual ACM/IEEE International Conference on Mobile Computing andNetworking, Seattle, WA, USA, 1999, pp. 174–185.

[15] J. Kulik, W.R. Heinzelman, H. Balakrishnan, Negotiation-based protocols fordisseminating information in wireless sensor networks, Wireless Networks 8(1999) 169–185.

[16] A.J. Ford, A semantic routing framework, in: Proceedings of the Second AnnualConference of the International Technology Alliance, 2008.

[17] M. ElGammal, M. Eltoweissy, Location-aware affinity propagation clustering inwireless sensor networks, in: IEEE International Conference on Wireless andMobile Computing, Networking and Communication, 2009, pp. 471–475.

[18] K.A. Lehmann1, M. Kaufmann1, Random graphs, small-worlds and scale-freenetworks, Peer-to-Peer Systems and Applications, Lecture Notes in ComputerScience, vol. 3485, Springer, Berlin/Heidelberg, 2005. pp. 57–76.

[19] R. Eltarras, M. Eltoweissy, S. Olariu, I.-R. Chen, Towards trustworthy sharednetworked sensor-actuator systems, in: CSIIRW’10: Proceedings of the SixthAnnual Workshop on Cyber Security and Information Intelligence Research,AMC, New York, NY, USA, 2010, pp. 1–4. <http://doi.acm.org/10.1145/1852666.1852714>.