Sei sulla pagina 1di 15

Adaptive Routing in Wireless Sensor Networks: QoS Optimisation for Enhanced Application Performance

Mohammad Hammoudeha,, Robert Newmanb


a Manchester b University

Metropolitan University, Chester Street, Manchester, M1 5GD, UK of Wolverhampton, Wulfruna Street, WV1 1LY, UK

Abstract One of the key challenges for research in wireless sensor networks is the development of routing protocols that provide application-specic service guarantees. This paper presents a new cluster-based Route Optimisation and Load-balancing protocol, called ROL, that uses various quality of service (QoS) metrics to meet application requirements. ROL combines several application requirements, specically it attempts to provide an inclusive solution to prolong network life, provide timely message delivery and improve network robustness. It uses a combination of routing metrics that can be congured according to the priorities of user-level applications to improve overall network performance. To this end, an optimisation tool for balancing the communication resources for the constraints and priorities of user applications has been developed and Nutrient-ow-based Distributed Clustering (NDC), an algorithm for load balancing is proposed. NDC works seamlessly with any clustering algorithm to equalise, as far as possible, the diameter and the membership of clusters. This paper presents simulation results to show that ROL/NDC gives a higher network lifetime than other similar schemes, such Mires++. In simulation, ROL/NDC maintains a maximum of 7% variation from the optimal cluster population, reduces the total number of set-up messages by up to 60%, reduces the end-to-end delay by up to 56%, and enhances the data delivery ratio by up to 0.98% compared to Mires++. Keywords: Wireless Sensor Networks, Routing, Distributed Clustering, Quality of Service, Optimisation, Adaptive, Load-balancing, Application Performance

1. Introduction Wireless Sensor Networks (WSNs) hold a lot of promise in applications where gathering sensed data in remote or inaccessible locations is required. The stream nature of the gathered data, the limited resources, and the distributed nature of WSNs bring new challenges for data routing techniques that need to be addressed. Since communication is often the most expensive operation for a sensor node, the applications underlying data communication paradigm must be energy ecient. In WSNs, routing protocols are application dependent and their design goals vary among dierent applications. For instance, many applications require real-time communication, e.g., a re ghter may rely on timely temperature updates to remain aware of the current re conditions whereas a soil monitoring system may only need to report measurements every few hours. Therefore, routing protocols must meet the delay requirements at minimum energy cost. Hence, routing protocol designers have to consider the characteristics of sensor nodes along with the application and architectural requirements. Many routing
Corresponding

author Email addresses: M.Hammoudeh@mmu.ac.uk (Mohammad Hammoudeh), R.Newman@wlv.ac.uk (Robert Newman) Preprint submitted to Information Fusion

protocols have been proposed in the literature, although the performance of these protocols is promising in terms of energy eciency, most of them come with no guarantee of Quality of Service (QoS) required by real-time and communication-heavy applications. As discussed in Section 2, a protocol that balances, as far as possible the following characteristics is needed: energy eciency, scalability, robustness, and provision of timeliness. To address these requirements, a new protocol called Route Optimisation and Load-balancing (ROL) is proposed. Compared to LEACH [1] and Mires++ [2], this protocol reduces the cost and number of setup messages, and thus extends the network life. ROL improves on the robustness of LEACH and Mires by ensuring that each node learns multiple paths to its Cluster Head (CH) and by the electing of CH backup node(s). Energy expenditure is further reduced by shortening the distance between the node and its CH. This is done by incorporating a hop count metric in addition to the transmission backo delay. Load balancing is achieved at two levels: (1) Network level, through trac multiplexing over multiple paths; (2) Cluster level, by rotation of the CHs. This paper proceeds as follows. Section 2 introduces hierarchical routing in WSNs. Section 3 outlines the objectives and motivation for a new clustering protocol. In Section 4, is the main exposition of the ROL, it explains
February 27, 2013

dierent phases in the clustering process. In Section 5, NDC is described. In Section 6, the evaluation metrics for the ROL/NDC are dened. In Section 7, the simulation results of ROL/NDC are presented. Finally, conclusions are drawn and further work suggested. 2. Hierarchical Routing in WSNs Routing has proved to be a key issue in WSNs research. In the literature, a lot of the eort has been devoted to routing protocols since they dier depending on the nature of user applications and on the architecture of the underlying network. As clustering approaches are particularly tempting for large-scale high-density WSN applications, a solution for clustering with ad hoc wireless communications is sought. Hierarchical routing is a two or more tier routing scheme. Nodes in the upper tier are called CHs and act as a routing backbone, while nodes in the lower tier perform sensing tasks. Kulkarni et. al. [3] argue that multi-tier networks are scalable and oer the following number of advantages over single-tier networks: lower cost, better coverage, higher functionality, and better reliability. Many clustering algorithms have been previously investigated, both independently and in the context of routing protocols. In this section, we briey review some clustering protocols used in this paper. We refer the interested reader to [4, 5] and references there in for a comprehensive survey of recent clustering algorithms. LEACH [1] is one of the rst clustering-based protocols that utilises randomised rotation of the CH role to evenly distribute the energy load among nodes in the network. LEACH is well-suited for applications where constant monitoring is needed and data collection occurs periodically to a centralised location. LEACH has been based on a number of assumptions which in the authors opinion limit its eectiveness in a number of applications, such as single hop communication. Smaragdakis et al. [6] address the issue of heterogeneity of nodes in terms of their energy. The development of their protocol was motivated by applications that would benet from realising the eect of nodes heterogeneity, e.g. reenergisation of WSNs and applications where the spatial density of sensors is a constraint. This protocol assumes that the sink can be reached directly by all nodes. It requires knowledge of the energy levels of other nodes in the network to weight the CH election probabilities, which requires extra communication overhead. In [7], the authors proposed a protocol called HEED for sensor applications requiring ecient data aggregation. HEED produces balanced clusters with low message overhead using information about residual energy and a second parameter such as node degree. HEED out-performs generic clustering protocols on various factors including energy eciency. However, HEED is still heuristic in nature and suers a high network delay due to the complex2

ity of the CH selection algorithm. Besides which, HEED provides only a two level hierarchy. Unlike previous work targeting the optimisation of energy eciency and network lifetime, Yang et al. [8] proposed Minimum Energy Spanning Tree for Ecient Routing (MESTER) for maintaining high quality in data collection for as long as possible. The design of MESTER is predicated on the idea that the sink or network controller is more powerful than the nodes, which are seen as having very limited resources. MESTER therefore adopts centralised algorithms and requires the sink to take control of managing the network topology and calculating the routing path and time schedule for data collection. This results in it being intrinsically non-scalable - or scalable according to the capacity of the sink, and dependent on the reliability of a single sink node. Mires++ [2] is a clustering service on a publish/subscribe middleware called Mires. It attempts to achieve energy saving, load balancing, and robustness. Mires++ implement two protocols: (1) Creates two tier at clusters based on residual energy and subscribed data topics. (2) Performs load balancing by rotating the CH role and setting a maximum cluster size. It also elects a backup CH to achieve fault tolerance. Mires++ inherits all features of Mires middleware, including its drawbacks. Publish/subscribe is initiated centrally at the sink, which introduces a single point of failure, communication bottlenecks, and incurs high communication costs. Usually, nodes are deployed to achieve a common sensing task; therefore, all nodes are likely to subscribe in the same data topic, which reduces the usefulness of its clustering. Finally, physical location awareness is an important condition in Mires++ clustering, which limits its applicability. We compare ROL/NDC performance with that of Mires++ as they both aim to achieve the same goal. LEACH, and its derivatives, have been successful in reducing the energy per bit required by each node and the network as a whole. Nonetheless, most of these protocols are built upon inexible assumptions and have serious drawbacks. Many clustering algorithms are heuristic in nature and have a time complexity of O(n), e.g. [9], where n is the total number of nodes in the network. Also other protocols, such as [6], demand time synchronisation among nodes, which makes them unsuitable for large-scale networks. Another set of protocols requires centralised management which limits their scalability. Some of these protocols have been designed with robustness in mind, however, the level of fault tolerance is usually designed to adapt to occasional node failures and infrequent topology migration. The characteristics of the protocols discussed above are summarised in Table 1. In summary, it is evident that the desired qualities of a routing protocol are largely determined by the characteristics of the applications they serve. Most of the reviewed clustering protocols are application specic. Such protocols require profound modications to be exible enough

Table 1: Characteristics of existing hierarchical routing protocols Protocol Heuristic Sink cen- Depth Application tralised limited limited LEACH No No Yes Yes HEED Yes No Yes Yes MESTER No Yes No Yes Mires++ No Yes Yes Yes

to meet the diversity of functional and non-functional requirements placed on them by applications. Therefore, application requirements combined with the sparse memory and processing resources of a typical node have great impact on choosing a suitable routing protocol. As more WSNs software applications are deployed and the diversity of sensor devices increases, there is signicant value in developing a routing protocol that allows system developers to optimise its operation. This provides a way to provide paths based on dierent optimisation objectives as specied by an objective function and the routing metrics. Thus, a routing protocol that balances as many of the following design objectives is desirable: 1. Real-time: An eective protocol should provide timely communication by reducing end-to-end communication delays. Timeliness constraints are important as WSNs often operate in the real world to reect the current physical status of the sensing environment. Data timeliness is normally at odds with energy consumption [10]; data aggregation reduces the routing protocol temporal performance due to the introduced aggregation delay. 2. Reliability: A reliable and robust routing protocol is to be capable of providing correct measurements at the right moment without interruption. Dierent WSN applications have varied requirements on the reliability of data delivery, which may evolve over time. For example, a WSN deployed for re detection in a forest can be used for measuring humidity as well. When the measured temperature is in the range of normal temperature it is delivered to the sink tolerating a certain percentage of loss. Yet, when a re is detected, the data should be delivered to the sink with high priority. 3. Scalability: Scalability is the ability of the network to grow in size without excessive communication overhead. In a larger scale WSN, more overhead is unavoidable to keep the build of the communication paths to the sink. Routing protocols should support in-network processing, such as lossy aggregation, and deploy localised algorithms to reduce the amount of communicated data to save energy and reduce bandwidth utilisation. Besides, they should be able to exploit the density of nodes in saving energy, distributing load, and correcting faults. 4. Energy consumption: Routing protocols should use resources eciently to carry out data communication tasks. This is particularly important for long-term 3

deployment applications of WSNs. 5. Load-balancing: Routing protocols should be able to distribute energy consumption between nodes to extend network life. Distributing workload will also help to prevent energy depletion in one part of the network, which may result in partial coverage of the monitored environment. 6. Clustering requirements: Clustering should be kept fast, simple, and decentralised. The total number of clusters in the network should be sustained equal or around the optimal number of clusters dened in [1], which is 5% of the total number of nodes in the network. 7. Location information: Routing protocol should be able to function without node geolocation. However, it should be open to utilise location information if the application requires. 3. ROL Motivation and Aim The increasing number of WSN applications, each with their own intrinsic needs, present systems designers with software architectural challenges, both at development time and throughout the system life-cycle. WSN research, e.g. [11], has successfully shown the merits of integrating application domain knowledge in system design. It is obvious that each application imposes dierent requirements on the routing scheme with respect to the urgency of timeliness, data delivery patterns, QoS, memory consumption, processing levels, etc. These requirements evince that special support for accommodating routing eciently relies on a distinctive set of requirements as it must be optimised for the application. As shown in Section 2, most of the existing routing protocols are developed to meet application-specic design objectives and requirements. The majority of these protocols achieve one objective at the expense of others. This is likely because some objectives are contradictory. For instance, energy saving by data aggregation introduces considerable communication delays. Moreover, other routing protocols in the literature focus on achieving one or two of these design objectives and ignore the others. For example, [12] is routing protocols with energy eciency as the key design factor; [13] aims to handle dynamic topological variation; [14] aims to handle event detection in heterogeneous networks; [15] aims to provide secure data communication; [16] is designed for issues that are specifically related to topologically linear structure WSNs. To support various computationally demanding applications for large-scale WSNs, such as data visualisation pplications [11], a routing protocol that considers part or all of the main design objectives (listed in Section ) is needed. This routing protocol is designed generically and targets a variety of application scenarios by balancing the multiple application objectives based on a global optimisation equation.

Table 2: Congurable ROL parameters and the applications objectives they aect Parameter Design objective backo Energy eciency, timeliness Num. of hops Scalability, robustness, timeliness Num. of Robustness, data delivery ratio backup CHs Num. of paths Robustness, data delivery ratio, timeliness, energy eciency NDC Energy eciency, scalability, timeliness

The motivation for developing a new routing protocol that can be specically optimised to a range of applications include: (1) nancial as software is reused and development time decreases; (2) easier maintainability as a common routing protocol can be deployed across a set of dierent applications; (3) simpler modelling of routing requirements; (4) improved applications performance. 4. ROL Operation In this section we present the relevant details of the ROL algorithm and its parameters, which allow ROL to be congured. Optimisation in ROL refers primarily to the conguration of its routing parameters, which is achieved by setting their values according to application priorities. Table 2 summarises the ROL parameters and their impact on various routing design objectives. In the following, we briey justify the chosen parameters and their relationship with the specic applications: 1. Backo: The backo achieves energy eciency by minimising the cluster setup trac. Each node joins the nearest CH and sends it its data over the path with the minimum number of hops; this results in lower queuing and propagation delays, reduced bandwidth utilisation, and decreased energy consumption. In many WSN applications, there is a logical relationship between adjacent nodes, i.e. nearby nodes represent related data. Associating nearby nodes with a particular cluster supports intelligent data aggregation/fusion, which consequently can reduce energy consumption and improves the quality of extracted information [17]. 2. Number of hops: Data packets are transmitted indirectly through multi-hops from the source node to the destination node. As the number of hops increase, the retransmissions become cumulative and successful communication becomes more unlikely [18]; the increased transmission range will inevitably cause higher interference, which results in lower throughput. Multi-hop communication can be used to avoid long range transmission to reduce the transmission power. Moreover, end-to-end delay often can be reduced by reducing the number of hops in a path. Multi-hop routing is particularly useful in large-scale applications, such as target tracking over large geographic 4

region, where data sinks can not be reached by nodes directly. 3. Number o backup CHs: Sensor nodes can switch to backup CHs when the current CH fails. This avoids complete re-clustering when re-assigning an interrupted CH. Moving to the alternative CH incurs short disruptive period, i.e. rapid CH healing reduces the amount of data loss and network availability time. Failure-prone WSN applications, e.g. where nodes are deployed in harsh environments, can improve applications performance by utilising backup CHs. 4. Number of paths: Multi-path routing yield a variety of benets such as fault tolerance and increased bandwidth. It provides better transmission performance, fault tolerance and load balancing. Path failure starts a path discovery process to discover new routes, which introduces communication delays. Delay can be reduced in multi-path routing, as backup routes can be recognised immediately with minimum service interruption transparently to the application. In time critical applications, splitting data to the same destination into multiple streams where each stream is routed through a dierent path can reduce data delivery delay makes the paths are more fully utilised. 5. NDC: NDC is an eective reconguration algorithm to increase the network lifetime by fairly distributing nodes across clusters. Balanced clusters lead to fair energy consumption of the CHs. Clustering is specifically practical for applications that need scalability to hundreds or thousands of nodes. Scalability in this perspective means the need for load balancing and ecient resource utilisation. Applications requiring ecient data aggregation (e.g., calculating the average temperature in an area) are likely candidates for clustering. A CH can aggregate the data collected by the nodes in its vicinity and thus decrease the number of forwarded packets. Clustering can reduce communication interference. The rst step in implementing an application is primarily setting the routing parameters according to specic guidelines provided by the routing protocol vendor. The most dicult part in this process is making the required application-related decisions. Conguring those decisions into the routing protocol is a relatively simple process. ROL provides robustness through a multi-path routing. Multiple paths can provide fault-tolerance, load balancing, and higher aggregate bandwidth. When a path fails, an alternative path can be immediately used, which allows the protocol to dynamically adapt to failures without delays. Load balancing can be achieved by multiplexing the trac along multiple routes. When multiple paths are used simultaneously, the aggregate bandwidth of the paths may satisfy the bandwidth requirement of the application. Therefore, since there is more bandwidth available, a smaller end-to-end delay may be achieved.

CH1

d1

CH2

d2

Figure 1: The lled nodes are CHs. Horizontal and vertical bars forming L shape are obstacles. The solid lines are path from node n1 to CH-1 and the dashed lines are path from node n1 to CH-2.

advertisement messages. When the backo delay reaches zero, the node transmits the advertisement message(s) with the smallest hop count. This helps in blocking advertisement ooding from CHs that are farther away from unnecessarily reaching neighbouring nodes. During the cluster set-up phase, one or more nodes are chosen as CH backup node(s). When the current CH decides to hand its role to the backup node, it noties the respective backup node and forwards to it necessary information, such as the backup nodes list, to avoid a complete cluster set-up round. 4.1. ROL Algorithm Details

Multi-hop communication is an essential property of any scalable routing protocol such as ROL. Besides reducing the radio transmission power, multi-hop communication also has the following benets [19]: 1. Spatial reuse: simultaneous communication sessions are possible for node pairs that are out of range of each other 2. Obstacle conciliation: a multi-hop path can go around an obstacle that obstructs direct radio connection between two nodes as shown in Figure 1 3. Distributed processing: a multi-hop topology allows the local processing of sensor data among nearby nodes In some WSN deployments, e.g. in build areas, there may be obstacles blocking parts of the transmitters signal, such as walls, which will attenuate the signal seen at the receiver. Wireless networks designers have traditionally used multi-hop relaying to bypass obstacles, thereby gaining improved radio channel conditions [20]. As a result, multi-hop relaying provides an opportunity for performance improvements in WSN applications. The authors of this work proposed a solution in [21] to manage obstacles between nodes: Given a detour of length b[P, D] perpendicular to the line between nodes P and D, the eective distance between the two points is dened as: di = {(d[P, D])2 + (b[P, D])2 } 2
1

The operation of ROL can be split into two phases: the setup phase and the data transmission phase. Set-up Phase During the set-up phase, CHs are selected and clusters are formed. The sink randomly selects 5% of the nodes as CHs and oods the network with this information. Every node that receives the sinks discovery message changes its state from waiting to discovered and examines the message to check whether it has been selected as CH or not. If yes, it starts a new cluster by broadcasting an advertisement message. Otherwise, it broadcasts the original discovery message to its neighbours. The sink ooding step can be compared to the seeking of a single route in Dynamic Source Routing (DSR) [22], but every node knows only the next hop not the complete hop-by-hop route to the sink, and no node knows a route to any other node. Every CH broadcasts an advertisement message with the hop count set to 0. Upon receiving an advertisement message, a node does the following: (1) If it already belongs to a cluster, it ignores the received message. (2) Else, if the received message carries a smaller hop count than the stored one, the latter is deleted and the former is retained and it continues listening for new advertisements. After the backo delay expires, the node re-broadcasts the message with the smallest hop count after incrementing it by 1. A node remembers the node from which it received the message as the nearest neighbour to its CH. Then, the node calculates a value vc based on its available energy to represent its desire to become a CH in the next clustering round. vc is included in the join request message that the node sends back to register with the chosen CH. The CH registers the node as a member of the cluster and adds the node s with the highest vc to its CH backup list. Compounding dierent functions into a single multipurpose message reduces set-up communication overhead. The cluster formation messaging is illustrated in Figure 2. When the cluster round ends, the current CH hands its role to the rst node in the backup list. With a single local ood, the new CH continues its predecessors role without the need of further communications. The CH role will also be handed to the backup node when a fault occurs in the current CH or when its energy level approaches a certain 5

(1)

where b[P, D] is the strength of the barrier. ROL, denes the hop count metric to measure how far the sensing node is from its CH. As the hop count in a particular routing path increases, the message delivery delay and the power consumption within the network increases due to the higher number of transmissions. The hop count metric allows nodes to: (1) Select the nearest CH, which saves energy by reducing messaging needed to bridge the distance between the node and its CH. (2) Find the shortest path to its CH. ROL implements a metric called the backo delay. This metric is used to minimise clusters set-up overhead and to aid the formation of more geographically uniform clusters. During the backo interval, nodes receive several CH

Sink

n1
2 2 a b 2 Collision 4 4 4 3 2 2 2

n2
2 2 a 3 b 2 3 4 4

n3
2 2

n4

a 3 2 b c

(CDMA) codes to avoid interference with trac generated by other clusters. Figure 3, illustrates data transmission from nodes to their CH. It also illustrates how the aggregated data is sent from the CH to the sink through multi-hop path. Energy Ecient Sleep/Wake Scheduling This paper implements a simplied and modied version of S-MAC [23]. S-MAC is a complex medium-access control protocol for WSNs, which aims to reduce energy consumptions and support self-conguration. Inspired by PAMAS [24], S-MAC sets idle nodes to sleep during transmissions of other nodes. The design of S-MAC expects that applications will have long idle periods and can tolerate some latency. The implemented MAC protocol diers from the S-MAC protocol in the following aspects: 1. For simplicity, our implementation does not require periodic synchronisation among neighbouring nodes to remedy their clock drift 2. Our implementation utilises the formed real communication clusters, while S-MAC forms nodes into a at topology or vitrual clusters 3. In S-MAC neighbouring nodes are free to talk to each other no matter what listen schedules they have. In our implementation, nodes can only talk during their allocated time slot. In the following we present some of the details of our implementation, particularly the sleep/wake schedule. Idle nodes consume signicant amount of energy [25]. An eective approach to preserve energy is to set the radio to sleep during the idle times and wake it up precisely before message transmission/reception. In a network that involves multi-hop communication, this requires precise synchronisation between sending and receiving nodes. In the design of this sleep/wake scheduling method, we ignore the eect of synchronisation errors. We assume that a network-wide time synchronisation protocol maintains a consistent notion of time between various nodes in the networks. Time synchronisation has been extensively investigated and several implementations (e.g. [26, 27]) can achieve synchronisation within microsecond. A related assumption we make is that nodes always have data of xed length to send. In ROL, all nodes communicate with their CH through a TDMA. ROL upgrades the TDMA method used in LEACH to make it suitable for multi-hop communication. The TDMA is created by each CH node based on the number of nodes in the cluster. The time domain is divided into several periodic time slots of xed length, one for each node. The sleep/wake scheduling is integrated with the TDMA schedule to achieve greater energy savings (TDMA protocols avoid energy waste due to contention); the radio is turned o during idle times and wakes up just before message transmission/reception. To sustain a connected graph, nodes sleep times should be appropriately synchronised. If a node is in the path of transmission of other 6

4 4

a b c
2 3

: Open arrow represents creating a message : Filled arrow represents forwarding a message : backoff time : random transmission time : time the CH waits before it creates and advertise a TDMA schedule : ImCH(ch_id, numHop), an advertisement message sent by the CH to declare its new role. It contains the CH ID and the number-of-hops to reach it. : Wish(ch_id, wish_value), this is a join request sent by a sensing node to a CH. It contains the respective CH ID and a wish value representing its desire to become a CH in the next round. : ADV_SCH(order), an advertisement message sent by the CH to all its member nodes. It contains the TDMA schedule that specifies the order of data transmission for each node.

Figure 2: In this scenario, node n3 was chosen to be a CH. It broadcasts an advertisement message. Receiving nodes wait for time a before they choose the message with the minimum hop count and send a join request message to the corresponding CH. After random delay b, nodes re-broadcast the received advertisement. The CH waits for a time, c, to receive all potential join request messages before it creates and broadcast the TDMA schedule. Note the collision that happened when nodes n1 and n2 forward the advertisement messages at the same time. Sub-section 4.1 on page 6 describes how this type of collisions is managed.

threshold. In the case of faults, such as physical damage or fatal internal errors in the CH, the nodes will transmit directly to the sink until a new cluster round is due. Data Transmission Phase During this phase, nodes transmit data to their CH. The CH aggregates the received data before transmission to the sink or immediately multiplexes messages over multiple lines in time critical applications. Each member node transmits data on its assigned time slot scheduled by the TDMA schedule. Furthermore, each cluster communicates with the sink using unique Code Division Multiple Access

Sink

n1
d 5

n2
d 5 5 6 6

n3

n4
d 5

d : data transmission time assigned in the TDMA 5 : Data(data), data message sent by sensing node to its CH. It contains raw data collected by the node. 6 : ToS(AGdata), a message sent by the CH to the sink. It contains aggregated data.

Figure 3: The CH n3 aggregates all received data messages and sends them to the sink.

nodes, it must not sleep before it sends its own data and forwards its children data. Sensing nodes make up their children set while forwarding the join request messages during the cluster setup phase. The proposed sleep/wake schedule aims to reduce the sleep latency by having a periodic receive-send-sleep cycle. This is achieved through level-by-level oset schedules, in which data ows in step by step from the leaves of the tree towards the CH, with nodes going to sleep once they send their packets to their parents, and waking up just in time to receive the next round of packets. In this design, we assume that the number of slots available to the cluster is xed. This in eect denes the duration of the periodic sleep cycle, and the wake cycle, which are assumed to be determined a priori by many factors including: 1. Application-specic requirements for energy eciency, e.g. end-to-end delay 2. The size and type of the collected data, e.g. numerical, image, or video data 3. The packet generation rate 4. Limitations on sleep/wakeup times of the radio hardware involved 5. The processing time, especially in systems that involve complex patterns of in-node processing (e.g. lossy data aggregation) 6. The average distance between a node and its parent (propagation delay) 7. Manufacturing imprecision and aging, the clock frequency is aected by environmental factors including temperature, pressure, and voltage [28] In the absence of a network-wide synchronisation protocol, a guard interval can be added to the slot to compensate for synchronisation errors. The sleep/wake schedule will result in every node having a path on which all intermediate nodes have sequentially increasing slots. The node wake up time is calculated as the transmission interval plus the number of hops between the leaf node times a single slot length. For instance, if nodes send their data every m minutes and the slot length is sl sec, then, a node that is nh hops from the leaf node will wake up at time t = m + ( sl nh ). In large scale WSNs, multiple nodes should be allowed to transmit at the same time slot if their receivers are in non-conicting parts of the network, i.e. a receiver of a specic transmission is also within the radio range of another transmission intended for another node. If a node communication may interfere with another node communication, these nodes should not transmit simultaneously. To avoid interference and unnecessary communication delay, each sensor node obtains the slot assignments of its neighbours. Then, the two nodes can synchronise to wake up at dierent times. This sleep/wake pattern is similar to that of the S-MAC protocol. In S-MAC each node follows a periodic active/sleep schedule, synchronised with its neighbouring nodes. 7

Figure 4: ROL interactive tool

As in LEACH and S-MAC, ROL also uses CDMA to minimise interference between clusters such that each cluster uses a dierent set of CDMA codes. When a node is in the multi-hop path for transmitting the aggregated data coming from the CH to the sink, it has to schedule carefully to participate in each communication. One way to achieve this is by creating a secondary sleep/wake schedule. The secondary schedule is created sequentially starting at the CH. Since the CH knows the next hop towards the sink node, it synchronises with that node to wake up at time tCH = m + ot ( sl nhmax ) where nhmax is the longest path between the CH and a leaf node and ot is a xed time oset. This allows the CH to collect and aggregate data from all of its member nodes. Then, each node on the path to the sink increments the tCH by sl and forwards it to the next hop in the path. This process terminates at the sink node. For the duration of the network setup phase, CH advertisement communication is not guaranteed collision-free as TDMA schedules are only created after clusters are established. S-MAC handles collisions resulting from interference with other signals by having nodes backo for a random duration before transmission. The full SMAC implementation also deals with collisions through the use of traditional mechanisms such as RTS/CTS exchange and virtual listening according to a network allocation vector. In delay sensitive applications or in applications that involve heavy bidirectional trac, i.e. frequent network querying, all nodes in the network wake up at the same time according to a simple periodic pattern with a xed period such as the IEEE 802.11. 4.2. A tool for Performance Optimisation To nd values for the routing parameters that are best for a particular application, system designers are provided with an interactive tool (see Figure 4). This tool, aids in resolving the performance dierentiation of applications by incorporating the congurability of the ROL parameters. It can be used by system designers, who have advance knowledge of application requirements, to order dierent

routing design objectives according to their importance for the application and automatically calculates the routing parameters values. System designers can also use the tool to change dierent parameter values to manually optimise ROL performance. As the user changes the values, the impact of these changes on the various protocol performance areas is visually reected on a scale as a percentage from 0 to 100. Theoretically, nding the best routing parameter values is a global optimisation problem. According to [29], the global optimisation is to nd the best possible element x from a set X according to a set of criteria F = { f1 , f2 , .., fn }. These criteria, called objective functions, are expressed as functions. An objective function can be expressed as f : x Y with Y R. Objective functions can be simple mathematical expressions as well as complex algorithms. Global optimisation covers all methods that can be used to nd the best element x in X such that f F . Because the relation between the various routing parameters and their eect on the routing performance is clear, routing optimisation can be solved using deterministic algorithms. Such deterministic algorithms use problem dependent heuristics based on a model of some natural phenomenon or physical process. In this work, global optimisation is applied to sets F (many criterion) consisting of n = |F | objective functions fi , each representing one design objective to be optimised. F = fi : X Yi : 0 < i n, Yi R (2)

of interest. The new n objective functionals is f ( x) = L ( x (z)) dz,

where L is a set of operators on the vector eld x. The weights are given by the vector , such that the overall cost function is e( , x) = T f ( x). The minimum cost solution for a given set of weights is x ( ), resulting in a total cost of e ( ) = minz e ( , x) = e ( , x ( )). The weight function must be convex, regardless of the convexity of individual objective functions. The above weight function is convex in . The proof is as follows: Proof: Let e ( 1 ) = e 1 and e ( 2 ) = e2 .e ( ) is convex if for any [0, 1], e ( 1 + (1 ) 2 ) e 1 + (1 ) e2 . e (
1

+ (1 )

2)

= min e x ( = minz ( minz = e 1


T 1 1

+ (1 )
2) T

2,

x)

+ (1 )

f ( x)

f ( x) + (1 ) e 2

Sensor network designers can choose the congurations that best suit their application requirements. If the default values of the parameters are used, ROL/NDC attempts to achieve a good level of the following main design objectives: energy eciency, timeliness, and robustness. 5. Optimal Cluster Balancing In this section we propose an optional cluster balancing plug-in called Nutrient-ow-based Distributed Clustering, NDC. This plug-in can be used with any clustering algorithm. The aims of the NDC algorithm are: (1) To equalise, so far as is possible, the diameter of the clusters. (2) To equalise, so far as is possible, the membership of the clusters. The distributed model described here is based around a metaphor of nutrient ow supporting some simple life-form, such as a mould. The concept is to provide a limited supply of nutrient and allow the nodes to ally themselves with a CH which will provide the largest nutrient supply. If properly regulated, this should lead to clusters broadly equalising their membership. In order to minimise the radius of a cluster, it is arranged that some of the supply of nutrient is lost in transit between nodes the further the distance travelled, the more is lost. It is important that some advantage be given to nodes that join in a cluster, rather than communicating directly with the sink. For this reason, it is necessary to provide some advantage associated with clustering, as opposed to direct communication. The simplest way to do this is to make the loss of nutrient super-proportional to the distance of a link. Given that in real life, radio propagation obeys an inverse square law, it seems reasonable to make the loss of nutrient proportional to the square of the distance travelled. Like many distributed route discovery algorithms, NDC operates in distinct phases with the network reconguring 8

This class of optimisation algorithms is usually named with the prex multi-objective. ROL achieves optimisation by computing a weighted sum g ( x) of all functions fi ( x) F . Each objective fi is multiplied with a weight wi corresponding to its priority. Weighted sum seeks Pareto optimal solutions [30] by systematically changing the weights among the objective functions, i.e. trading-o conicting objectives. Signed weights can be used to give some objectives more weight or inuence on the routing performance than other objectives in the same set. An example from [29] assumes that a weight wa = 1 is applied to an objective function fa and the weight wb = 1 to the objective function fb . Decreasing g ( x), results in reducing the inuence of fa and increasing that of fb and vice versa. In this way, multi-objective problems can be simplied to singleobjective ones. In [29], g ( x) is presented as:
n

g ( x) =
i=1

wi fi ( x) =
fi F

wi fi ( x)

(3)

and x X g x g ( x) x X (4) To generalise to an arbitrary number of objective and any dimensionality state space, we replace the scalar x by a vector eld x (z) dened over domain x. The choice of a vector eld for x allows modelling more than one quantity

itself from phase to phase. During each phase, nodes try to improve the amount of nutrient available to them. They do this by contacting a local node at random and if clustering with that node will oer a better supply than that which is currently available, then the node changes allegiance. Nodes receiving requests for nutrient from other nodes make an oer back to that node, giving an estimate of the nutrient that would have been available had that node been a member of its cluster. The estimate depends both on the amount of nutrient available, and the number of nodes dependent on that CH. Another consideration is that the algorithm has to give encouragement for clusters to grow, that is that the amount of nutrient available becomes greater as nodes join the network. To eect this in each phase the sink has an available amount of nutrient proportional to the total number of connected nodes. The starting conditions are as follows: (1) Some initial store of nutrient available at the sink, n sink . (2) Current state of all other nodes is to have no nutrient, nav = 0. From the initial state, some nodes (Nc ) will by chance have direct contact with the sink. These become the initial CHs, and each is given an equal share of the nutrient availsink able nav = n |Nc | , which is available to them as attenuated by the square of the distance from the sink. Across the network the sequence of events in each phase is as follows: Nutrient allocation: Each node transmits to its dependents (if any) the total amount of nutrient available to that cluster and the current number of members (including the CH) at that level of the hierarchy. Each dependent calculates its share of nutrient, S , for this phase, which is n m k d2 where n is the total nutrient available to the cluster, m is the number of members, k is a constant of proportionality for the distance adjustment and d is the distance between the node and the CH. CH advertisement: Each node which has a supply of nutrient selects another node (or set of nodes, to speed up the evolution of the system) at random and forwards the above information, along with the identity of the CH. Nutrient estimation: The receiving node calculates the amount of nutrient, S , it could have received in this phase as a member of that cluster. If the amount is greater than its actual allocation in this phase it communicates with the CH and joins the cluster (also communicates with its old CH to leave that cluster). CH propagation: CHs propagate upward through the network the number of members. The sink calculates the amount of nutrient available to each clustered for the next phase using the formula nn = no mn mo

Algorithm 1 NDC cluster balancing


1. some nodes become initial CHs 2. the sink gives each CH nutrient share nav 3. each CH sends the values of n and m 4. nodes receiving the CH message do the following: 5. calculate S 6. forward current CH id & the received n and m values 7. nodes receiving the forwarded message do the following: 8. calculate S 9. IF S > S THEN 10. leave current CH 11. join the CH in the forwarded message 12. END IF 13. all CH send their m value to the sink 14. the sink calculate nnext 15. the sink broadcast nnext value

Figure 5: DAG based on nutrient transfer.

where nn is the nutrient available for the next phase, no 9

is the nutrient available this phase, mn is the membership reported, mo is the membership reported for the previous phase. The eect of this re-distribution of nutrients is to advantage CHs gaining members, in order to avoid cyclical movement of members between clusters. The operation of the NDC clustering is summarised in Algorithm 1. From the viewpoint of theory, the resource allocation policy of a communication link can be depicted by a Directed Acyclic Graph (DAG) [31] with a single root representing the sink and leaf nodes representing individual trafc streams. Middle nodes represent organisational entities. Each node gets resources from its parent and identies how its resources are distributed to its children. Examples of policies include fair resource sharing at various granularities, trac priorities, and communications distances. DAGs can be used by various applications to specify how trac streams or groups of nodes should share bandwidth. By merging sub-graphs, the management policies of various routing resources (e.g. timeliness) can be characterised simultaneously. NDC lends itself naturally to dealing with failure recovery in an integrated mode during the resource distribution process. For instance, applications can prepare for a quick response to the failure of nodes and links during the formation of the graph, e.g. use another subgraph with highest resource availability. Figure 5 (a) shows a simple 2-cluster network scenario modelled as a DAG

based on the received nutrient values. In Figure 5 (b), the optimised DAG based on the highest nutrient availability is shown. To accommodate nutrient ow in the network scenario, the problem of local maxima need to be solved. This means that NDC has to ensure that there exists a path from any node to its CH and the nutrient levels of all nodes along the path are strictly increasing towards the CH, i.e. there exists a neighbour of i , j , and S i < S j . This is achieved by normalising the node to CH distance (d). When d > 1, the probability of local maxima is 0. Therefore, the original function is modied to use dNorm 0, 1). By negation, assume that there is no neighbour with S i < S j , for every node j , S i S j . Then, from the iterative calculation of the nutrient, S i , we can write: nParent SjSj Si = 2 mParent k dNorm Thus nParent S j & dNorm 1 2 mParent k dNorm

delay taken by the rst copy of a packet from the source node, S i , to the sink is denoted as T (S i ). T (S i ) includes all possible delays that are caused by queuing in the interface queue, retransmission at the MAC layer and the propagation through the environment. The average delay of all n nodes, denoted as T N , is given by: 1 TN = n
n

(ta t s )
i=1

(7)

where ta is the time a packet arrives at the sink and t s is the time a packet sent at the source. The delay depends also on the scale of the network [33]. The average network delay is the total delay divided by the number of connection pairs throughout the simulation to eliminate the eect of the network scale. Then timeliness is measured as follows [33]: T Network = TN = n i=1 h(S i )
n i=1 T (S i ) n i=1 h(S i )

1 n

1 n

n i=1

T (S i ) h(S i )

(8)

which contradicts the previous assumption that dNorm 0, 1). Therefore, for every sensor node connected to the network, there exists at least one link from that node to the CH. 6. Evaluation Metrics In this section, the performance of ROL is to be evaluated via simulations with respect to the following metrics: Data Delivery Ratio Data Delivery Ratio (DDR) is a service level parameter that indicates the network eectiveness in transmitting oered data in one direction of virtual connection [32]. It is considered as one of the prime measures of robustness. DDR is a ratio of successful distinct payload octets received to attempted payload octets transmitted [32]. When calculating DDR, the packets which arrived late at the destination are considered ineective. The DDR for a single node S i is denoted as DDR(S i ) and dened as: DDR(S i ) = data delivered to the sink 100% data oered by S i (5)

where h(S i ) is the minimum hop count from S i to the sink. T Network is the average time it takes a packet to be delivered. When T Network = 1, it means that the packets have an equivalent average delay of the same packets delivered through the shortest paths with a delay of 1 on each hop. Energy Eciency Since radio communication is the most power hungry operation [35], the cost that ROL imposes on the networks is considered in terms of number of messages sent. This measure also gives an indication of the bandwidth usage besides the energy consumption. Recall that all messages, including the ones originating from the CHs and carrying aggregated data, have a xed data length. In this work, we are only interested in studying the eect of using the backo time metrics on the cluster setup trac. Therefore, the setup trac for a single cluster formation round, T rRound is calculated as: T rRound = number of sent messages Cli f e (9)

where data delivered is successfully delivered payload octets and data oered is the attempted payload octets transmitted. The overall DDR of a network with a number of nodes n, denoted as DDRN , is the average DDR of all nodes: n 1 DDRN = DDR(S i ) (6) n i=1 Timeliness Timeliness is measured as the time normalised against the average time for a single-hop along the shortest path from a node to the sink [33]. Recent studies in WSNs focus on timeliness as a QoS metric (e.g., [34]). The average 10

where Cli f e is the time spanning from the moment the CH sends the rst advertisement message to the moment all cluster members receive the TDMA schedule. 7. Simulation Experiments As ROL is derived from LEACH, we adopt the same network and energy model for better comparison. We use the specication of MICAz [36], a popular sensor node prototype, to make the simulation adhere to the real hardware parameters of WSNs. Random graphs were dispersed in a 100m 100m region such that no two nodes share the same location and the transmission range of each node is bound to 75m. The bandwidth of the channel was set to 250kbps, each data message was 50 bytes long, and the

Figure 6: CH advertisement trac vs backo delay

packet header for various message types was xed to 30 bytes. A simple model for radio hardware energy dissipation is also assumed. All the nodes were given an initial 0.5J supply of energy. For the experiments described here, both the free space (d2 power loss) and the multipath nding (d4 power loss) channel models were used. The processing delay for transmitting a message is randomly chosen between 0 and 5ms. Using this network conguration, we simulated in the Dingo WSN simulator [37] the ROL/NDC, Mires++, and LEACH with 5% of the nodes being CHs. 7.1. Energy Consumption This experiment studies the eect of the ROL/NDC parameters on the energy consumption. ROL/NDC was simulated with various backo delay values. Figure 6 plots the total number of setup messages versus the backo delay. When the backo delay is set to 0 the behaviour of ROL/NDC will be similar to LEACH. The gure shows that as the backo delay increases, the number of setup messages decreases until the time becomes large enough for nodes to receive advertisements from all CHs. The optimal backo delay is calculated from Figure 6 to be around 20ms. Using this value, the total number of set-up messages is reduced by up to 65%. Figures 7 shows ROL/NDC, Mires++, and LEACH network life. The network life is studied as the number of rounds until the rst node dies (Figures 7 (a)) and the number of rounds until the last node dies (Figures 7 (b)). ROL/NDC achieves energy gains by reducing the clustering overhead, load balancing across clusters, and using shortest multi-hop communication paths. In Mires++ and LEACH the network life trend was at and considerably lower than ROL/NDC. Mires++ incurs high energy consumption due to heavy setup communication. Often adapting synchronous communication, such as the publish/subscribe style used in Mires++, is computationally intensive process. Mires++ also spend a signicant amount of energy on updating nodes topics subscription. In LEACH, the long range radio transmission results in nodes energy depletion. Also, LEACH requires nodes 11
(a) Number of rounds until the rst node dies

(b) Number of rounds until the last node dies.


Figure 7: Energy performance analysis.

to continuously listen to the channel, which results in considerable energy waste. Generally, clusters formed based on the shortest distance will consume minimum communication energy at the beginning, but energy consumption will eventually increase due to the re-clustering overhead. 7.2. Load-balancing This experiment covers network load-balancing oered as a main design objective of ROL/NDC. We study the effect of the hop count, the backo delay, and the use of NDC on clusters formation (geographic span and population). LEACH, Mires++, and ROL/NDC were respectively applied on randomly generated network topologies. Due to the eect that nodes distribution have on the results, multiple simulation runs are combined to estimate uncertainties in the simulations. In other words, to demonstrate that the load is balanced for any setup we ran the same experiments for 5 dierent distributions. This makes our simulation a Monte Carlo simulation, as repeated sampling from a distribution is performed. Also, to accommodate to the eect of CH locations on nodes distribution, CH locations were kept xed in all runs (original location were determined nondeterministically). In each protocol run, randomly distributed nodes are organised into ve clusters (optimial percentage of CH as calculated in LEACH). Then, node distribution between dierent clusters is studied. In ROL/NDC the backo delay were set to 20ms and the hop count initially set to 0. Figure 8 shows nodes distribution among clusters formed using LEACH, Miress++, and ROL/NDC. The population density (the number of nodes per unit area) of various LEACH generated clusters varies largely (see Figure 8 (a); the rst and fth clusters hosted over 65% of the total number of nodes on 62.5% of the application area, while the other three clusters hosted less than 35% of the total network population on the rest of the application area. LEACH poor performance is mainly due to dening network regions by inconsistent wireless connectivity. It does not deploy any mechanism that manages the span or the membership of clusters. In Miress++ (Figure 8 (b)), nodes were distributed more fairly among clusters when compared to LEACH. However, two of its clusters were underpopulated (hosted 10% of the total population). This is possibly due to nodes distribution. Miress++ ignores the location and distance between nodes when forming its clusters. The unfair cluster population is critical as Miress++ relies only on rotating CH to acheive load balancing, i.e. without balanced cluster membership it will be load unbalanced. ROL/NDC formed energy ecient clusters by reducing the bridging distance between nodes and their CH (see Figure 8 (c)). The number of nodes at every cluster maintained a maximum of 7% dierence from the optimal population (20%). Proportional non-overlapping clusters of physically close nodes reduce the cluster management overhead and therefore the total network energy consumption. The average variance, from the optimal, of the coverage 12

(a) Cluster geographic span and population in LEACH

(b) Cluster geographic span and population in Mires++

(c) Cluster geographic span and population in ROL/NDC


Figure 8: Load-balanced cluster formation.

(a) DDR against network density

(b) Average end-to-end delay against netwrok density


Figure 9: Robustness comparison in terms of DDR and average endto-end delay.

polygon of the 10 clusters in ROL/NDC networks is 3.1075. This variance is approximately 3 times smaller than that of LEACH (11.818). 7.3. Robustness This experiment aims to measure ROL/NDCs ability to maintain a high DDR within a given timeliness constraint in the presence of communication failures. This evaluation scenario simulates permanent communication failures caused due to hardware failure or energy depletion. In Dingo, node attributes include the expected time of node failure and failure type (e.g. PHY D indicates physical node damage by an external event). These attributes is used to break communication links during the simulation at a given times. During simulations, faulty nodes are selected randomly based on their node ID (an integer value between 1 and n), where n is the total number of nodes in the network. The selection of nodes is not correlated with the node location. Failures occur during the rst data transmission phase; after the node sends its data, its energy level drops to 0 J , consequently its radio will be switched o. Other nodes continue to function normally according to their assigned TDMA slot. Figure 9 (a) shows the DDR for ROL/NDC, Mires++, and LEACH. The DDR of the three protocols decreases as the node density increases. ROL/NDC maintains very 13

high DDR, close to 1, in all tested network densities. In ROL/NDC, nodes know multiple paths to their CH. If the primary path fails, one of the standby paths will be used. Moreover, CH failures can be quickly recovered without incurring large data loss. The short distance between nodes and their CH helps in localising trac, which results in less congestion and data loss. LEACH, however, oers lower DDR, rst is ROL/NDC. The long range communication increases the potential for collisions. Additionally, if the sink is out of nodes communication range, data will not be delivered. Mires++ does not dene any mechanism to deal with node or communication paths failures, it only focuses on CH failures. Moreover, excessive delay due to heavy innetwork processing, data aggregation and fusion, signicantly reduced the DDR. Figure 9 (b) plots the average end-to-end delay for the ROL/NDC, Mires++, and LEACH at dierent node densities. At each point, the end-to-end delay of ve runs was averaged. ROL/NDC has lower average end-to-end delay than Mires++ and LEACH. There are several factors accounting for this outcome. First, ROL/NDC forwards data on the shortest path to the CH, therefore, reduces propagation and queuing delays. Second, in time critical applications ROL/NDC multiplexes data over multi-paths to avoid congested paths. However, in LEACH, nodes can only transmit their data according to a TDMA schedule that includes the entire network due to the single hop communication. Major delays can be caused by the time period during which failed or lost paths can be recovered. In Mires++, the publish/subscribe communication and the message handling process introduces considerable delays. First, incoming messages has to be validated by examining several header elds. Then, valid messages are sent to the corresponding message handler based on the message type. After parsing the message payload, the message handler updates the state of the node and respond accordingly. To reduce raw data transmissions, cHs and sensor nodes run sophisticated computing algorithms, such as data aggregation and fusion, which introduces considerable message delivery delays. 7.4. Selection According to Application From the discussion above, it can be seen that ROL/NDC outperforms the other protocols with regard to energy consumption, load balancing and robustness. Thus, there are few WSN applications for which it would not produce a better functioning system than the others, so long as they are based on a set of nodes with reasonably similar resource, since ROL/NDC is based around distribution of the workload. For systems based on a powerful network controller and small, computationally weak nodes, a simpler centralised protocol such as MESTER would be appropriate. Networks using more fully resourced nodes will tend to be those using nodes carrying a diverse sensor

load, including sensors requiring extensive data processing by the node. This type of network will also tend to produce a greater volume of data, favouring the higher DDR and lower end-to-end delay that ROL/NDC oers. The dierences in performance are also less pronounced for small networks, below a few hundred nodes. So, while ROL/NDC is advantageous for all non-centralised networks, it comes into its own for very large networks, composed of relatively powerful nodes, in which each node generates substantial amounts of data. WSN of this type are still relatively rare in practice, with most consisting of a few tens of nodes. However, in many applications networks are installed incrementally, and may be expected to grow to a considerable size over a few years. For instance a recent application [38] known to the authors places a small sensor network, of around ten nodes in a vineyard as part of a food quality traceability system. Each node carries temperature, humidity, sunlight and leaf wetness sensors, and currently transmits data to a single base station. In its present conguration, any of the protocols discussed here would be adequate. But, the vineyard in which it is installed has a number of similar elds, so if this installation is successful in returning on investment, the network will grow to over a hundred nodes quite quickly. This is about the size where the advantages of ROL/NDC become apparent. Furthermore, this vineyard is a member of a cooperative, and if all members adopt the same system then the network will grow to over a thousand nodes, and an ROL/NDC system will outperform one based on the other protocols. Particularly, the longer life due to lower energy usage and the greater robustness would be expected to translate directly to a lower cost of ownership, and this an increased return on investment. 8. Conclusion This paper presented a distributed clustering protocol, called ROL/NDC. This protocol groups nodes into clusters and build routing paths based on localised metrics that are linear in the number of nodes and linear in the number of links, which makes ROL energy and computationally ecient. This work, distinguishes itself from current state of the art solutions in three respects. First, it uses a combination of optimisable routing metrics to build energy ecient clusters at low cost. These parameters can be congured and managed to allow user applications to perform better and coexist with each others. Second, it denes a new cluster balancing method. Third, unlike existing work that focuses on one design goal, ROL/NDC can achieve comparable results in all of the above design aims. In future we intend to test the proposed algorithms with other applications and network topologies. Most importantly, we will consider the inclusion of more design objectives into ROL/NDC and research more sophisticated methods to optimise it for specic applications. An interesting extension of this work would be designing 14

a sleep/wake scheduling algorithm that considers variable size messages. This is particularly useful for applications where a node may have considerably more data to send than some other nodes, e.g. aggregated data or image of detected event. In this case per-hop MAC level fairness is not important as long as application-level performance is not degraded.

References
[1] W. Heinzelman, A. Chandrakasan, H. Balakrishna, Energyecient communication protocol for wireless microsensor networks, Proceedings of the 33rd International Conference on System Sciences (2000). [2] P. Nie, Z. Jin, Y. Gong, Mires++: a reliable, energy-aware clustering algorithm for wireless sensor networks, in: Proceedings of the 13th ACM international conference on Modeling, analysis, and simulation of wireless and mobile systems, ACM, 2010, pp. 17886. [3] P. Kulkarni, D. Ganesan, P. Shenoy, The case for multi-tier camera sensor networks, Proceedings of the 13th annual ACM international conference on Multimedia (2005) 22938. [4] Y. Yang, M. I. Fonoage, M. Cardei, Improving network lifetime with mobile wireless sensor networks, Comp. Com.. 33 (2010) 40919. [5] J. Zhang, V. Varadharajan, Review: Wireless sensor network key management survey and taxonomy, J. Net. Comput. Appl. 33 (2010) 6375. [6] G. Smaragdakis, I. Matta, A. Bestavros, Sep: A stable election protocol for clustered heterogeneous wireless sensor networks, in: Second International Workshop on Sensor and Actor Network Protocols and Applications (SANPA 2004). [7] O. Younis, S. Fahmy, Heed: A hybrid, energy-ecient, distributed clustering approach for ad hoc sensor networks, IEEE Transactions on Mobile Computing 3 (2004) 36679. [8] Y. Yang, H. Wu, W. Zhuang, Mester: minimum energy spanning tree for ecient routing in wireless sensor networks, in: Proceedings of the 3rd international conference on Quality of service in heterogeneous wired/wireless networks, ACM, 2006, pp. 17. [9] S.Lindsey, C. Raghavendra, Pegasis: Power ecient gathering in sensor information systems, in: Proceedings of the IEEE Aerospace Conference. [10] T. Abdelzaher, T. He, J. Stankovic, Feedback control of data aggregation in sensor networks, in: Decision and Control, 2004. CDC. 43rd IEEE Conference on, volume 2, pp. 14905. [11] M. Hammoudeh, R. Newman, S. Mount, C. Dennett, A combined inductive and deductive sense data extraction and visualisation service, in: Proceedings of the 2009 international conference on Pervasive services, pp. 15968. [12] S. Chun-yan, Z. Hua-zhong, Z. Xiu-yang, Clustering hierarchy tree routing algorithm based on leach, Journal of Computer Applications 28 (2008) 2594 . [13] X. Wei, T. Ya-qing, X. Hua, M. Yu-wen, Hierarchical routing protocol to handle topological variety for wireless sensor network, Chinese Journal of Sensors and Actuators 21 (2008) 1635 9. [14] D. Kumar, T. C. Aseri, R. B. Patel, Eehc: Energy ecient heterogeneous clustered scheme for wireless sensor networks, Comput. Commun. 32 (2009) 6627. [15] M. Tubaishat, J. Yin, B. Panja, S. Madria, A secure hierarchical model for sensor network, SIGMOD Rec. 33 (2004) 713. [16] I. Jawhar, N. Mohamed, K. Shuaib, N. Kesserwan, An ecient framework and networking protocol for linear wireless sensor networks, Ad Hoc & Sensor Wireless Networks 7 (2009) 321. [17] M. Hammoudeh, T. Alsboui, Building programming abstractions for wireless sensor networks using watershed segmentation, in: Smart Spaces and Next Generation Wired/Wireless

[18]

[19]

[20]

[21]

[22]

[23]

[24]

[25]

[26]

[27]

[28]

[29] [30]

[31]

[32] [33]

[34]

[35] [36]

[37]

[38]

Networking, volume 6869 of Lecture Notes in Computer Science, 2011, pp. 58797. H.-N. Dai, Throughput and delay in wireless sensor networks using directional antennas, in: Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP), 2009 5th International Conference on, pp. 421 6. C. Gui, Routing Performance And Power Conservation In Ad Hoc and Sensor Networks, Ph.D. thesis, Computer Science, 2005. Y. Liu, R. Hoshyar, X. Yang, R. Tafazolli, Integrated radio resource allocation for multihop cellular networks with xed relay stations, Selected Areas in Communications, IEEE Journal on 24 (2006) 2137 46. M. Hammoudeh, R. Newman, C. Dennett, S. Mount, Interpolation techniques for building a continuous map from discrete wireless sensor network data, Wireless Communications and Mobile Computing 2 (2011) 4160. D. B. Johnson, D. A. Maltz, Dynamic source routing in ad hoc wireless networks, in: Imielinski, Korth (Eds.), Mobile Computing, volume 353, Kluwer Academic Publishers, 1996. W. Ye, J. Heidemann, D. Estrin, An energy-ecient mac protocol for wireless sensor networks, in: INFOCOM 2002. TwentyFirst Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, volume 3, pp. 1567 76. S. Singh, C. S. Raghavendra, Pamas - power aware multi-access protocol with signalling for ad hoc networks, SIGCOMM Comput. Commun. Rev. 28 (1998) 526. Y. Wu, S. Fahmy, N. B. Shro, Energy ecient sleep/wake scheduling for multi-hop sensor networks: Non-convexity and approximation algorithm, in: 26th IEEE International Conference on Computer Communications, pp. 156876. J. Elson, L. Girod, D. Estrin, Fine-grained network time synchronization using reference broadcasts, SIGOPS Oper. Syst. Rev. 36 (2002) 14763. S. Ganeriwal, R. Kumar, M. B. Srivastava, Timing-sync protocol for sensor networks, in: Proceedings of the 1st international conference on Embedded networked sensor systems, SenSys 03, ACM, New York, NY, USA, 2003, pp. 13849. J. R. Vig, Introduction to Quartz Frequency Standards, SLCET-TR 92-1, Army Research Laboratory, 1992. Available at http://www.ieee-uc.org/freqcontrol/quartz/vig/vigtoc.htm. T. Weise, Global Optimization Algorithms - Theory and Application, second edition, 2009. O. Cord on, A historical review of evolutionary learning methods for mamdani-type fuzzy rule-based systems: Designing interpretable genetic fuzzy systems, International Journal of Approximate Reasoning 52 (2011) 894 913. N. Christodes, Graph theory: An algorithmic approach (Computer science and applied mathematics), Academic Press, Inc., Orlando, FL, USA, 1975. J. Dunn, C. Martin, Terminology for frame relay benchmarking, in: Internet informational RFC 3133. P. Sun, W. K. Seah, P. W. Lee, Ecient data delivery with packet cloning for underwater sensor networks, in: Symposium on Underwater Technology and Workshop on Scientic Use of Submarine Cables and Related Technologies, pp. 3441. M. Caccamo, L. Y. Zhang, L. Sha, G. Buttazzo, An implicit prioritized access protocol for wireless sensor networks, in: RTSS 02: Proceedings of the 23rd IEEE Real-Time Systems Symposium, IEEE Computer Society, 2002, pp. 39. G. J. Pottie, W. J. Kaiser, Wireless integrated network sensors, Commun. ACM 43 (2000) 518. Crossbow, Micaz datasheet, http://bullseye.xbow.com: 81/Products/Product_pdf_files/Wireless_pdf/MICAz_ Datasheet.pdf, 2012. [Online; accessed 6-November-2012]. S. Mount, Dingo wireless sensor networks simulator, http: //code.google.com/p/dingo-wsn/, 2012. [Online; accessed 12March-2012]. F2F, Rd from farm to fork, http://www.rfid-f2f.eu/, 2012. [Online; accessed 23-October-2012].

15

Potrebbero piacerti anche