• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Traffic Management in Sensor Networks with a Mobile Sink

Traffic Management in Sensor Networks with a Mobile Sink



For more projects feel free to contact us @ www.nsrcnano.com

For more projects feel free to contact us @ www.nsrcnano.com



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds


Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Traffic Management in Sensor Networks with a Mobile Sink Traffic Management in Sensor Networks with a Mobile Sink Document Transcript

    • Traffic Management in Sensor Networks with a Mobile Sink Kyriakos Karenos, Member, IEEE, and Vana Kalogeraki, Member, IEEE Abstract—The imminent growth of user-centric, pervasive sensing environments promotes sink mobility in an increasing number of event-based, sensor network applications including rescue missions, intrusion detection, and smart buildings. In these settings, one of the most critical challenges toward supporting quality of service, is effective distributed congestion avoidance. Congestion control techniques have been proposed in sensor networks mostly in the context of a static sink. In our work, we study the problem of traffic management in the context of sensor networks with a mobile sink. Under sink mobility, various new challenges arise that need to be effectively addressed. Adaptation to sink mobility requires agile as well as effective load estimation techniques. In addition, unlike static networks, path reliability often fluctuates due to path reconfigurations. Thus, injecting traffic during transient periods of poor path quality might wastefully detain network resources. In this work, we first study the effect of sink mobility on traffic load in sensor networks. We then propose adaptive routing as well as load estimation techniques that effectively adapt to sink relocations. A novel aspect of our approach is that it jointly considers the network load as well as path quality variations to facilitate intelligent, mobility-adaptive rate regulation at the sources. We provide a thorough study of the trade-offs induced due to persistent path quality variations and conduct extensive real MICA2-based testbed experiments to study the performance of the sensor network under sink mobility. Index Terms—Sensor networks, congestion control, reliability, mobile sink. Ç 1 INTRODUCTION AS sensor network applications become increasingly more pervasive, an inherent need or requirement for mobility of the event-collecting sink becomes apparent. The benefits of sink mobility can be showcased in several user- centric application scenarios and include extensive cover- age, inspection, and evaluation of reported events, facilitat- ing task-specific mobile patrols as well as receiving proximity-based personalized reports. However, in such event-based applications, events can appear in unpredictable spatiotemporal coordinates and have to be delivered to an observer whose location varies in time. Examples of this class of applications include rescue missions (where, e.g., the rescuer or a robot roams the disaster site while receiving sensor reports of activity in the area) and intrusion detection (where, e.g., a guard moves around a camp periphery while receiving reports of movements within or outside the periphery). In event-based sensor network applications, high throughput and reliable delivery of events is essential to correct operation. However, the initiation of multiple concurrent flows that utilize common resources (such as channel and queue buffers) can spawn regional hot spots, resulting in large delays and wasteful packet drops; a problem widely termed as congestion. These effects are exacerbated in sensor networks due to the limited channel capacity, small buffer sizes, and the fact that many flows are funneled toward the same destination [17], [41]. Thus, although congestion control techniques have been studied in the sensor network literature under the assumption of a static sink, mobility introduces a number of additional challenges listed next. First, when the sink is moving, the rate of path reconfigurations becomes considerably higher compared to a static network. Previous techniques such as [8], [17], [34] have assumed a static, tree-like routing structure that is not significantly skewed. Modifying these routing techni- ques to efficiently accommodate sink relocations is a nontrivial task. Second, path reconfigurations can result in sudden load changes along the paths. This may happen during a transition of the sink between areas with different node density. For example, traffic routed through a sparser region may increase the load of the intermediate nodes. On the other hand, traffic redirected in a denser area may eventually result to increased contention. These effects call for agile and effective load estimation techniques. Third, throughout the sink’s itinerary, alternating paths may experience considerable reliability fluctuations over small periods of time, in contrast to fixed networks, where significant changes are less likely to occur. This is due to the varying quality of the wireless links which, due to mobility, is considerably affected by effects such as multipath and doppler. With varying link, and consequently, varying path quality we are faced with an important trade-off: Packets injected during transient periods of reduced path quality might unnecessarily detain critical channel resources before they are eventually lost. On the other hand, however, lower quality flows should be allocated higher rates to compen- sate for lost packets. Thus, an interesting trade-off appears between global and local (per flow) utilization. While, to the best of our knowledge, congestion control has not been explicitly studied in sensor networks in the context of a mobile sink, mobility itself has been studied in the sensor network literature and shown to extend the lifetime of the network through intelligent mobility schemes IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 1515 . K. Karenos is with IBM TJ Watson Research Center, 19 Skyline Dr., Hawthorne, NY 10595. E-mail: kkarenos@us.ibm.com. . V. Kalogeraki is with the Department of Informatics, Athens University of Economics and Business, 76 Patision St., PO Box 104 34, Athens, Greece. E-mail: vana@aueb.gr. Manuscript received 6 Mar. 2009; revised 7 Sept. 2009; accepted 13 Nov. 2009; published online 24 Dec. 2009. Recommended for acceptance by M. Ould-Khaoua. For information on obtaining reprints of this article, please send e-mail to: tpds@computer.org, and reference IEEECS Log Number TPDS-2009-03-0103. Digital Object Identifier no. 10.1109/TPDS.2009.172. 1045-9219/10/$26.00 ß 2010 IEEE Published by the IEEE Computer Society
    • [4], [18], [27], [35]. These techniques control the mobility to adapt to the traffic while they do not consider the effects of congestion. Contrary to these techniques, our goal is to control the traffic to adapt to the mobility, consider the effects of congestion, and exploit relocations when possible to assist in diffusing the load. Summary of Contributions: In this paper, we study the problem of congestion avoidance via traffic management in sensor networks with a mobile sink. Our work has several contributions that collectively comprise “CoSMoS” (COn- gestion avoidance for Sensors with a MObile Sink), a joint routing and congestion control framework. . We motivate the need for explicit congestion control in a mobile sink environment based on the mobility effects on the flows’ routes via a series of ns2-based simulations. . We propose a low cost, low complexity routing scheme based on online measurements of the Received Signal Strength Indicator (RSSI) which effectively considers the paths’ dynamic reliability variations during sink mobility. . We design a novel regional load collection technique to estimate the maximum sustainable load of each node within a region and along a path. . We design a distributed rate-limiting technique termed CoSMoS-Greedy (CoSMoS-G) that avoids congestion by propagating the load information to the sources. . We, then, propose two novel mobility-adaptive rate regulation algorithms using joint routing and load collection. To avoid network throttling from low quality flows—thereby, maximizing the global net- workutilization—we propose CoSMoS-Proportional (CoSMoS-P) which is inspired by the premises of multiuser diversity. To address the local versus global network utilization trade-off, we propose CoSMoS- Threshold (CoSMoS-T) that effectively allows lower quality flows to compensate for lost packets by receiving higher rate, while ensuring at the same time that the global utilization will not be severely degraded. We test the performance and feasibility of our proposed approaches by implementing our algorithms on Mica2 sensor nodes operating in a small-scale testbed. Further- more, we test our schemes on a large-scale network using ns2 simulations. Our experimental results demonstrate the trade-offs induced from sink mobility and the performance as well as benefits of our algorithms. We show that variation in flow qualities due to sink mobility can be exploited via intelligent rate control to achieve better network utilization. 2 RELATED WORK The effects of mobility on congestion control techniques have initially been studied in IP networks with the central goal of avoiding end-to-end losses when the location changes. Proposals included the modification of TCP congestion control to deal with the new requirements [26]. Furthermore, end-to-end rate assignment and ad hoc routing protocol extensions to support QoS in mobile networks have been studies in this contexts as in [23]. In sensor networks in particular, it was shown that sink mobility can be exploited to increase the network lifetime or reduce congestion [22] and applied in a number of novel applications [27], [35]. Different techniques have been proposed such as a using mobile sink to pick up traffic from near by sensors as it moves (also termed data mules) [4], [18], [35]. These techniques are more suitable for delay tolerant networks. Unlike these works, we are not interested in producing an optimal sink itinerary but instead to capture the transitional effect of sink relocations and dynamically regulate the traffic. In [19], we propose a mobility-aware congestion control technique that targets to improve the global network utilization by favoring sources with high quality paths to the sink. While this approach favors increased throughput from the sum of all sources, it may result in some sources being underrepresented due to lower path quality. In this paper, we extend our original work to provide analytical study, design, implementation, and evaluation of a new algorithm that targets to improve both the global as well as the local, individual per source throughput by allowing the application to balance the trade-offs induced by mobility. In applications where constraining the delay is a concern, techniques utilizing multiple mobile sinks or multiple mobile relays have been proposed assuming one-hop communications to these sinks or relays [11], [45]. The multihop, single sink alternative was also studied, concen- trating on developing algorithms for adaptive mobility to increase the network lifetime [28], [29], [39] or meet report deadlines [36]. The techniques above usually assume noncongested net- works while the problem of increasing the network lifetime, though relevant, is in principle different from congestion control. However, congestion control has extensively been studied in the context of a static sink. Backpressure-based rate control has been extensively utilized in the most recent works. Such per node, hop-by-hop techniques have been utilized in [44] and [41], [20], while [21] proposes a cluster- based approach. Closed-loop rate control has been pro- posed in [2]. Effective techniques that additionally con- sidered fairness and the channel effects in sensor networks have been developed in [8], [17], [34], and [6]. These techniques require a tree-based network structure to control the forwarding rates or alternatively require that the routing tree is not significantly skewed. In [16], congestion is handled by rerouting packets to avoid hot spots while packet-dropping is implemented otherwise. Siphon [42] proposes diffusing the traffic to avoid hot spots around the sink via the utilization of virtual sinks, taking advantage of multiradio overlay communications among them. Further- more, [15] considers multiple sinks. Reliability in sensor networks has also been studied extensively in the context of transport layer protocols (e.g., [33], [9] for related surveys). Protocols such as PQFS [40] and RMST [10] have been proposed to guarantee the delivery of packets from unreliable sensor paths in an end- to-end manner. Also blacklisting techniques proposed in [12] can be used to select reliable paths. We note that these techniques are concerned with reliable transfer and the use of acknowledgment mechanisms but do not specifically consider either congestion or mobility although they emphasize the need for congestion control techniques. Furthermore, these techniques in essence, consider static paths, and thus, it is not clear whether they can remain efficient with rapidly and simultaneously fluctuating path reliabilities while maintaining some required congestion level. RCRT [32] is more relevant to our approach as it considers the effects of congestion in addition to reliable 1516 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010
    • transport. In that paper, the rate allocation is sink regulated although the sink itself is static. Congestion estimation and control are based on packet delay recovery. This end-to-end approach, while providing several benefits with a static sink, in the case of mobile sink, it may not be effective as paths and congestion levels change frequently, suggesting a more reactive, localized technique. Finally, at the MAC layer, Ali et al. [3] propose a mobility-adaptive protocol that, in essence, regulates the frame time by predicting the mobility pattern. MAC layer solutions target the scheduling problem to avoid collisions, unlike our work in which we tackle the rate regulation problem at the transport/application layer [43], [5]. Thus, mobility-aware MAC layer protocols can further improve the performance of higher layer protocols such as CoSMoS. 3 ASSUMPTIONS AND OBJECTIVES In this work, we concentrate on the class of dynamic and unpredictable event-based sensor networks where the sink is assumed to move continuously with constant speed within the deployment area. Example application scenarios include disaster recovery, smart buildings, and military patrolling as illustrated in Fig. 1. A central case that we target to handle is that the sink itinerary is not predefined, i.e., the sink can freely relocate within the sensor network area as long as the roaming area is fully covered by sensor devices. In particular, we assume that there always exists a path from a source sensor to the sink. Furthermore, the sink itinerary, though random, is still uniform within the mobility time interval. More precisely, we assume that the mobility pattern of the sink will cover most of the area within a reasonable amount of time. Rate adaptation in our work will be done at the application layer. We assume that applications are initially assigned a predefined maximum sending rate which may have to reduce in order to adapt to the overall load of the network. Addressing congestion avoidance in these scenarios presents several new challenges. We summarize next, the objectives of our approach toward addressing these challenges. 3.1 Mobility-Aware Routing In a multihop scenario, routes need to be established between the sources and the sink while it relocates in order to maintain reliable packet delivery. The two challenges that the routing scheme needs to address are 1) keeping up with the high degree and often unpredictable movement of the sink and 2) consider the variability of the link quality due to mobility. Several routing protocols have been presented for ad hoc mobile networks [1]. These techniques were designed for general applications and entail high control overhead. Thus, they are an overkill and rather unsuitable with respect to our target scenario which is limited to sink mobility. Our primary objective is to construct a practical, sensor-suited packet forwarding technique that is adaptive to changing link state in order to effectively maintain reliable packet delivery. By responding to sink relocations in real time, the routing protocol should allow for a node to estimate the relative proximity of the sink in order to further assist in intelligent forwarding decisions. 3.2 Collective Load Estimation Congestion level estimation is central to effective congestion control. Techniques that rely on local, atomic load estima- tion might not reflect the congestion state of the path amid dynamic flow redirections caused by the moving destina- tion. Our objective is to design a load estimation technique that considers the observed conditions of nodes collectively in a region. By collectively considering the conditions in the regional proximity of the sink (which should take a reasonable time to traverse), can provide a more accurate indication of the current congestion condition. 3.3 Intelligent Rate Control Finally, rather than striving to minimize the effects of mobility, we can instead exploit mobility to the benefit of traffic control by learning from previous theoretical analyses. Research works have reported throughput im- provements attributed to mobility based on the premises of multiuser diversity [13]. In a nutshell, fading effects cause nodes to experience transient periods of extremely good channel quality as well as periods of severe decay. By scheduling transmission at nodes during the peak periods, an overall capacity improvement is possible. Inspired by these concepts, we target the construction of a joint congestion aware as well as reliability aware rate allocation approach in the presence of changing conditions. Ideally, when the sink location is beneficial in terms of reliability and resource availability, the sources should be encouraged to boost the event fidelity. On the other hand, transmissions should be further suppressed as network responsiveness becomes poor. 4 ROUTING UNDER SINK MOBILITY Our first step toward designing our routing scheme is to identify the performance issues that are caused by mobility and the effect of routing on the traffic load. This study will allow us to underline the explicit requirement for congestion control when the sink is mobile and subsequently influence the design choices of our congestion control techniques. In Section 4.2, we will describe the technique selected to architect the routing layer and justify our design choices. 4.1 Mobility and its Effects on Network Flows In order to quantify the requirements and effects of the routing layer, we performed a set of simple, yet insightful simulations. This study serves as a motivation and a driving force behind our proposed scheme. We have constructed a dense 100 Â 100 m sensor network of 140 nodes, randomly placed. The resulting network used for the obtained results is illustrated in Fig. 2a. Node parameters where chosen to match those of Micaz devices. We then introduced eight flows in the network sending first with 1 and then with 8 packets per second (pps). For these simulations, we considered an omniscient routing protocol based on the link KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1517 Fig. 1. Event-based network paths with a mobile sink.
    • quality to the sink (in terms of the expected transmissions) [46] where all the reception probabilities at a given time are known and the best path is centrally computed before each transmission. Clearly, this is used for illustration purposes only since, as we discuss later, in a dynamic environment, measuring the link quality to the sink may not be possible. To illustrate the various effects of static versus mobile sink scenario, two cases where considered: 1) a case where the sink is static in locations Loc.1, Loc.2, and Loc.3 and 2) a case where the sink moves from Loc.1 toward Loc.3 on a straight line with speed of 4 m/s for 25 seconds. Fig. 2b shows the average per-hop delay at each case for all packets. Our observations where the following: First, in higher rates, the per-hop delay was measured to be generally higher, implying a more loaded network due to the need for longer back offs and collisions. Second, we found that, as expected, the network congestion varies for different locations of the sink. In fact, we observed that for Loc.2 the delay was almost an order of magnitude less than the other locations although the average length of the paths was about the same. One possible reason for this large difference might be that the traffic funnels toward the edges (Loc.1 and Loc.3) that are denser in the sense that they contain a high number of contending nodes. Funneling in denser would result in higher service times as argued also in [14]. This is in contrast to Loc.2 where the available forwarding area is larger, thus contains a higher number of nodes available for routing and transmission. A final reason for these variances, might be that the collective path quality was the best for Loc.2. To illustrate the need for dynamic route adaptation, we show in Fig. 2c, actual number of path changes with different speeds of the sink when sensors transmit at a relatively low rate for a fixed time. We should reiterate that the routing algorithm is omniscient and generates optimal paths at each transmission. As the destination sink relocates, and differ- ent path becomes available, a new route is established. We record the end-to-end path used for every packet received at the sink and signify a route change when two consecutive paths are different. We illustrate that in order to consis- tently maintain a high quality path to the sink, a large number of reconfigurations may be required, generally increasing with speed. These effects underline the require- ment for both adaptive routing as well as effective load estimation techniques. 4.2 Proposed Routing in CoSMoS Static routing techniques (such as routing trees) are designed for a nonmobile sink thus it is an open problem how they should or could be modified to adapt efficiently to sink relocations. In particular, since in most sensor applications the sink is static, the routing tree is constructed by establish- ing explicit links between parent and child nodes. A node from a source toward the sink is termed a downstream node whereas a node away from the sink toward the source is termed an upstream node. Downstream nodes are chosen based on a routing metric which can be as simple as the hop count as in MultiHopRouter [38]. However, the lossy channel requires a dynamic, yet simplistic forwarding technique [12]. In MintRoute [46], downstream nodes are chosen based on their link qualities (expected number of transmissions including retransmissions (ETX)). Extracting the ETX metric requires the nodes to perform a weighted averaging within a periodic time window, usually in the order of a few tens of seconds. Unfortunately, this is a rather large interval with respect to our application assumptions. Furthermore, when the sink is within the connected region of a node [47], the ETX variance is small, making it difficult to estimate, during that period, whether the sink is moving away or approaching a node. In fact, for actual wireless multihop networks, it has been observed via extensive experimental studies, that ETX cannot handle mobility well in practice [7]. In [25], Lee et al. recognized the need for more reactive routing and proposed “solicitation” as a means for selecting the best next hop without periodic updates. While more reactive, this techni- que will require frequent selection hadshakes when the sink relocates and the link quality fluctuates. Our objective is to identify a simple routing metric which can reactively capture variations due to mobility within a small time window (in the order of few seconds) while doing so using an extremely small number of updates. 4.2.1 RSSI-Based Routing Recent studies found that the RSSI value is a good bidirectional link quality metric when its values are above a sensitivity threshold (usually between À92 and À87 dbm for MICA2 and MICAz) [37]. These observations constituted the basis for the construction of our cost metric. More specifically, for a received RSSI value, a parameterized metric can be used to approximate the bidirectional cost, the 1518 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 Fig. 2. The sink (black node in (a)) moves on a straight line between the X-marked locations. (a) Simulation network. (b) Average Per-hop delay at different sink locations, static versus mobile. (c) Number of Path changes versus Speed of the sink.
    • validity of which is decided with respect to the sensitivity threshold. As the measured value falls below the sensitivity threshold, higher cost is assigned since it is more likely that this value is a bad indicator of the bidirectional link quality. In the context of a mobile sink, frequent changes are extremely likely to happen. An expensive bidirectional approach is less likely to be much more accurate. In addition, frequent beacon exchanges would increase the control overhead even further contributing to congestion. Thus, based on our empirical observation and the studies presented in [37], we adopt this simplistic technique, choosing to sacrifice some accuracy for reduced overhead, less complexity, and faster estimation. 4.2.2 Link Cost Metric Experimental and analytical works have shown that the link quality reduces approximately exponentially with distance [47], [24]. More specifically, Zuniga and Krishnamachari [47] found that that “signal strength decays exponentially with respect to distance” while a more accurate modeling found that the value is approximated by adding a log-normally distributed variation around the distance-dependent mean. Below, we define a function that captures this exponential behavior when mapping a measured RSSI to a cost value. Note that, as long as the mapping between the RSSI and the cost is exponential, effectively, any exponential mapping would suffice. Thus, we will utilize an exponentially increasing cost metric with reducing RSSI. More precisely the cost function is defined as cðRÞ ¼ e
    • R Ä Å ; ð1Þ where R is the normalized value: R ¼ RSSImax À RSSIv RSSImax À RSSImin : ð2Þ RSSIv is the measured RSSI value and
    • > 1. The values RSSImax and RSSImin are provided in the platform manuals, e.g., for Mica2 they are À50 and À105 dbm, respectively. The “floor” function is used to produce integer cost values and smooth out minor variances (as will be discussed in Fig. 5). The value of
    • can be determined empirically, since it does not critically affect the operation of the cost metric. To provide a good value for
    • , we take a closer look at the properties of the link quality as the distance increases. Studies in [47], [24] classify the link quality regions into a high reception rate, well connected region, a disconnected region, and an intermediate transitional region where the reception ratio exhibits large variances. Thus, when obser- ving values around the beginning of the transitional region, we should be alert in assigning a cost. When the RSSIv measurement approximates this transition point (denoted RSSItrans), it is unsure whether the sink will move within the connected region or move deeper into the transitional region. Therefore, we define the cost at that point to be exactly half of the maximum cost to separate the two regions at this point, i.e., e
    • =2. Based on the above empirical observations, the beginning of the transitional region RSSItrans (about À92 to À87 dbm [37]) can be used to calculate Rtrans. Solving e
    • =2 ¼ e
    • Rtrans for
    • provides us with the required approximation. In our implementation, we used
    • ¼ 2:932 plotted in Fig. 3. 4.2.3 Next Hop Selection Utilizing the above link cost metric, a node k can calculate its minimum cost to the sink sk iteratively. sk is calculated as sk ¼ minfci þ sig for all neighbors i, where ci is the measured cost of the link from node i to node k. The next hop of k is set to node i that produced the minimum value ci þ si. Finally, the sink has zero cost. Along with the value sk, nodes also include hk, the number of hops from the sink, or in other words, their tree depth. When a node has selected its downstream hop, it increases the hop count by one with respect to the hop count of the downstream node. This is used to avoid cycles and also later we will use this value for rate allocation in Section 6. To verify the correspondence of this technique to a real mobility scenario, we recorded the RSSI values at a node received from a moving sink. These results for a sink moving away from the nodes in an indoor environment are plotted in Fig. 4. The plot illustrates a single representative node; however, we observed similar results for other nodes. We find that the measured values exhibited sharp drops occasionally due to effects such as Doppler as well as signal strength changes due to obstacles during mobility. We reiterate that our link cost metric is characterized by exponential sensitivity to varying RSSI. This, in essence, means that variations at high values of the RSSI are “absorbed” and will affect the cost less significantly as seen in Fig. 5. Low, unstable RSSI values, as stated above, signify a bad link with high probability, resulting to higher cost and therefore,will belesslikelychosenaspartoftheselectedpath. 4.2.4 Sink Updates One central assumption that we made was that the mobility path is not predefined. Thus, in order to estimate the current location of the sink it must periodically send advertisements facilitating in this way, regular paths updates. While sensor nodes other than the sink generate updates periodically and select their next (closest-to-sink) hop based on the value of sk, the sink performs a slightly different operation. We have KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1519 Fig. 3. Plot of the link cost metric. Fig. 4. RSSI as Mica2 node moves away.
    • introduced a very low complexity update generation technique, operating in synergy with our proposed routing scheme: Since the speed of the sink is relative to the location of each static sensor node, we attempt to decouple the requirement of adjusting the update interval based on the relocation frequency. Instead, the sink sends an indepen- dent update at a fixed interval ; however, it further maintains the ID of its closest neighbor, i.e., the node with the highest received RSSI metric (ci). As soon as the closest neighbor changes, a routing update is additionally gener- ated. This simple approach assures that updates will be generated on an “as-needed” basis reducing the need for explicit update interval adjustment. Initially, a reasonable (not necessarily accurate) interval  can be chosen based on the expected mobility pattern (pedestrian, robot movement, etc.) and the node communication range. We find that the closest neighbor approach performed quite well as illu- strated in our experiments in Section 8. 5 CONGESTION AVOIDANCE By far, the most popular technique for rate allocation in congestion control techniques has been Additive Increase/ Multiplicative Decrease (AIMD) which was implemented extensively in real research and testbed deployments [34], [41], [8]. One important issue regarding these techniques is that they assumed a static sink. In particular, they use local node information such as queue size. Queue size was shown to be rather accurate congestion indications due to generally long or constant traffic persistence along a path. Unfortu- nately, this is not the case when path rate changes are high under a mobile sink scenario. Furthermore, changes to the path’s reliability is a consideration that has not been addressed in previous rate control schemes. In this section, we present our rate allocation technique implemented at the sources, stemming from the intuitions of rate-limiting schemes [17] to avoid congestion. While securing congestion avoidance, we will then attempt to distribute the available resources in a way that exploits beneficial sink locations. 5.1 Region-Based Load Estimation Congestion is an artifact of the interferences between multiple nodes, potentially belonging to multiple flows. Thus, observing the traffic traversing a spatial region within which flows interfere, can provide a better understanding of the congestion level in a dynamic environment [21]. When the sink moves, it is expected that it will be within a region of its neighboring nodes for sufficient time to allow information exchange for estimating the traffic conditions. We have chosen to utilize a technique following the paradigm of rate limiting by considering state information from nodes within a region. Our goal is to estimate a maximum aggregate regional rate that can be sustained without causing congestion. We describe below a simple analysis to compute the load within a region. We approximate each node i as an M/M/1 queue and a region as a network of queues. Let i be defined as the average incoming packet rate into the region’s network of queues (including locally generated traffic) and ti the average service time as observed at the region’s local queues. Let N be the number of nodes in the region. Let M the average service rate of the queuing network or, equivalently, T ¼ 1=M be the expected service time for a packet in a region. Finally, let à denote the average total incoming rate in the region. Then, we have T ¼ PN i¼1 ti N and à ¼ XN i¼1 i: ð3Þ We define the region’s resulting load P as the product: P ¼ ÃT ¼ 1 N XN i¼1 ti Á XN i¼1 i: ð4Þ From (4), to maintain stability, it must hold that P < 1, thus: XN i¼1 i < N PN i¼1 ti : ð5Þ Equation (5) provides us with an upper bound on the total traffic in a region of N competing nodes. The final goal is to rate limit an individual node. To achieve rate limiting for each node, both source nodes as well as forwarding nodes must be involved. The former are responsible for actually regulating the sending rate which affects the traffic injected in the network. The rate- limiting operation is, thus, broken down into two steps: an initialization/sustainable rate estimation taking place with- in each node’s region independently of the routing layer and a second, routing-aware step after path construction (and reconstruction). The goal of combining these two steps is to take into consideration both the contention between adjacent nodes as well as dynamic routing tree updates as described in detail next. With respect to the first step, i.e., the initial rate allocation, we adopt a rather conservative rate-limiting method in which contending nodes attempt to equally utilize the assessed resources. Formally, if the total offered load is shared equally, the rate k at a node k should be no higher than PN i¼1 i N : Dividing the right side of (5) with N, we get: k < 1 PN i¼1 ti : ð6Þ The initialization step attempts to regulate the utilized resources among N contending nodes. However, a finer grain regulation is required upon routing tree construction since the actual traffic along a path is, in fact, shared between tree children and their forwarding parents. Thus, after the routing protocol has constructed the complete paths from the sources to the sink, a forwarding node further adjusts k among itself and its direct children. In 1520 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 Fig. 5. Cost as Mica2 node moves away.
    • particular, let the number of a node’s children be M À 1 (i.e., the total contending nodes including the parent, is M). Note that generally M N. A parent should be allowed higher rate to be able to forward equal traffic from all its children while maintaining the aggregate rate at the stability level as computed above. Therefore, it can be easily shown that each source should transmit with rate no higher than 0 k ¼ PM k¼1 k 2ðM À 1Þ : An immediate observation is that 0 k k. This value is computed at forwarding nodes only and propagated upstream via a broadcasting procedure, more details of which are discussed next. 5.2 Propagating Rate Regulation Updates to the Sources Once computed, 0 k is piggybagged periodically along with routing updates. A node receiving routing updates from its (one-hop) neighbors, extracts the value 0 k and computes the minimum value among all received values including its local value. This minimum value is termed min. min is then propagated to its upstream nodes toward the sources. In essence, min is the achievable rate at the path’s bottleneck. When a source node eventually receives the value from its downstream node, it rate limits itself to min, if its rate is higher, else maintains its current rate. 6 MOBILITY-AWARE RATE ALLOCATION Once the feasible sending rates for source nodes have been computed, the next critical step is to assign appropriate fraction of the assessed resources (as per (5)) to each of the active flows. The basic approach is to assign at each source rate equal to the maximum assessed rate along the path, more particularly, min. This is a greedy approach that does not consider the quality of the paths for each flow (we will refer to it as CoSMoS-Greedy henceforth). Thus, if we follow the CoSMoS-Greedy approach, source nodes with low quality paths may inject traffic that throttles the network while not contributing to the eventual overall number of received packets. We will show that variations in flow qualities due to sink mobility can, in fact, be exploited via intelligent rate control to achieve better network utilization. In what follows, we study two general cases for mobility- aware traffic management; more specifically, we address the question of how to assign rates given variations in the quality experienced by different flows during sink mobility. The first case is concerned with the maximization of the overall throughput from the total number of sources that need to transmit. This case pertains to scenarios where many sensors observe a common physical phenomenon (e.g., fire) and the more information is received from all nodes combined, the better, independently of which node even- tually delivers. We reiterate here that we assume that the sink will be moving across the entire sensor area, thus, sensor nodes will have periods of both high and low quality. Our goal is to decide how to assign rates to maximize the total volume of packets received from the network. The second case is concerned with the maximization of both the total throughput as well as the local (individual flow) throughput. This case pertains to scenarios where nodes observe different aspect of a phenomenon or different phenomena (e.g., tracking moving vehicles). Thus, both total network as well as individual throughputs are important. The challenge in the above scenarios is to provide a rate allocation that achieves the objectives while accounting for quality fluctuations. In particular, the allocation should consider the fact that nodes experiencing bad quality at some interval, may inject traffic that is eventually not delivered, thus, throttling the remaining flows that may potentially have good quality links. In the following sections, for each of the above cases we: . Construct simple linear optimization problems to model our objectives. . Extract insights on the study of the behavior of the models. . Based on the observed insights, we propose dis- tributed, low complexity rate allocation techniques that we term CoSMoS-Proportional and CoSMoS- Threshold, respectively. All techniques are evaluated via real implementation on a MICA2 testbed in Section 8. 6.1 Global Network Utilization 6.1.1 Study The overall network throughput optimization problem is relatively simple and many insights on good solutions can be extracted from previous research. Particularly interesting to our problem are works that have studied the phenomenon of multiuser diversity. While multiuser diversity has been traditionally employed in the field of study of cellular networks (GSM, etc.), researchers in the wireless ad hoc networking field in the past few years have studied and exploited this phenomenon as well [13]. Due to the fading effect of wireless transmissions, nodes can experience transient periods of extremely good channel quality as well as periods of severe decay. In the aforementioned works, it has been shown that assuming a slotted time schedule, the optimal policy is to allow, at each slot, the node with the best link quality to the receiving base station, to transmit. Furthermore, in cases of mobility, it has been shown that by scheduling transmission at nodes during periods where this link quality is very high, an overall capacity improve- ment is possible. We model the network throughput maximization pro- blem as a simple linear optimization problem. Definitions: We will assume that the scheduling time interval is broken into S time slots. Within the time period 1 . . . S a number of M flows concurrently transmit. We define C as the network capacity, i.e., the maximum data rate that can be introduced to the channel at any one time. The sum of all flows’ rates should not exceed C. We also define path quality as the probability that a packet will successfully reach the destination. At each time slot s, s 2 f1; 2 . . . Sg, each flow m, m 2 f1; 2 . . . Mg experiences path quality qms, where 0 qms 1. Given the rate of flow m at time s, rms packets per unit time, then the flow delivers rms Á qms packets in that time slot. Given C, our goal is to decide the values rms such that the sum of all delivered packets is maximized. In particular, Maximize : XM m¼1 XS s¼1 rms Á qms; ð7Þ KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1521
    • Subject to : XM m¼1 rms C; 8s 2 f1; 2 . . . Sg; ð8Þ rms ! 0: ð9Þ As discussed above, the solution to the above optimiza- tion problem turns out to be assigning at each time slot, rate C (i.e., the maximum feasible capacity) to the flow that has the highest quality. Thus, the insight is that we must try, given the available information in the network, to assign as higher rate as possible to the flow with the best quality while assigning as low rate as possible to the remaining nodes. 6.1.2 Distributed Approximation Algorithm: CoSMoS-Proportional In the sensor network, the main problem with implement- ing the optimal scheduling produced by the linear program is that each source cannot know the qualities of the remaining flows in order to decide whether it should transmit or not. Without a central arbiter, such information may be costly to disseminate. In addition, distributed synchronization may not be easy to achieve every time. Our goal is to allow a source to locally decide whether it is beneficial to transmit, considering both the available capacity as well as path reliability, attempting to advance toward an optimal state. The key idea of our distributed algorithm is that a source observes its end-to-end link quality and adapts its local rate proportionally to the observed quality. In this way, high quality flows will quickly acquire more resources while flows with lower quality will, in contrast, relinquish resources. As a con- sequence, as this process progresses, good quality flows will consume the relinquished resources, as the optimal solution suggests. The path quality can be easily represented using local information. As indication of the path quality, we chose to utilize the average link cost normalized RSSI "R, i.e., the normalized RSSI for the average link cost along the path. Note that this value does not necessarily reflect the success probability of a transmission along the path. The value is used a comparison metric among the various nodes to allow for rate allocation among them. For node k, in synergy with the routing layer, a source calculates "R, denoted as "Rk by setting the cost to the average value, sk hk , and solving (1) for R: "Rk ¼ ln À sk hk Á
    • : ð10Þ sk is the cost of the route (Section 4.2) and hk is the number of hops from the sink, included in the routing updates as discussed in Section 4.2. As stated above, we can then assign rates to the flows according to "Rk. Recall that in Section 5 we extracted the value of min that rate limits each flow periodically to avoid congestion. min is the portion of the overall network capacity assigned to each flow according to the congestion experienced along its path. To coerce low quality flows into relinquishing resources (correspondingly, good quality flows to acquire more resources), each source k further regulates its rate k as: k ¼ ð1 À "RkÞ Á min: ð11Þ 6.1.3 Enhancements Due to lack of global flow quality knowledge, the above technique will only divert from the optimal when all flows have quality values that fall deep in the transitional region. As discussed in our proposed routing approach such nodes will be penalized (as per the exponential nature of the routing cost calculation), giving preference mostly to higher quality flows. Thus, modest and low quality flows, will be coerced into reducing their rate. However, a case might appear when every flow experiences very low quality at the same time. To address this case, we employ a simple sink operation: As stated previously, the sink also monitors its area load. When the incoming traffic is zero or very low (e.g., a lower percentage of the maximum estimated incoming rate from (5)), then a rate-reset bit is set in the update packets that propagates all the way to the sources.1 When this bit is set, any receiving source resets its rate to min (as with CoSMoS-G). On the other hand, too high a rate from a low quality flow is also critical to efficient network utilization. We will specifically deal with this case in the next section. 6.2 Combined Local and Global Network Utilization 6.2.1 Study We now proceed to study the second case of rate assign- ment where we attempt to optimize both the individual flow throughput as well as the overall throughput. Clearly, this problem is more complex. Intuitively, in order to allow lower quality flows to deliver packets, higher proportion of the available capacity needs to be allocated to those flows to allow for retransmissions. On the other hand, if lower quality flows are assigned high rates, they will constraint the overall network utilization since they do not contribute significantly to the useful throughput (or goodput). Let us assume that each flow is associated with a utility function that increases according to the assigned rate. A first approach is setting the utility equal to the total assigned rate for a flow. In this approach, the utility is maximized for each flow when rates are assigned equally. Thus, it pertains to the greedy approach (CoSMoS-G). As discussed previously, the greedy approach does not consider path quality variations, and may cause under- utilization of the network resources. A second approach, which considers path qualities, is to set the utility equal to the amount of useful packets delivered by each flow, i.e., the goodput. The intuition behind this approach is that flows with low quality should be assigned higher rate to recover from packet losses. The solution to this problem should result to all flows eventually delivering the same amount of packets. However, a consequence of such an attempt is that the network utility will be limited by the minimum utility. In particular, to maximize the per flow utility, a small number of unreliable flows will be assigned the bulk of the channel’s resources. This will significantly restrain good quality flows. In a more comprehensive approach, the utility should account for both the assigned sending rate as well as the resulting goodput. A flow’s utility should be an increasing function of these two quantities. These two quantities are of different scale since the goodput is affected by the quality while the assigned rate is not. With this approach, we need to decide an appropriate scaling parameter m, which enables balancing the utility for varying quality and 1522 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 1. Observe that the reset-rate bit is complementary to the widely used congestion notification bit and, in some sense, similar to the TCP fast retransmit algorithm.
    • assigned rate. As discussed in the previous section, any assignment other than the one extracted in Section 6.1 (the global optimal) will result in reduced throughput. The use of m, represents the additional revenue, or the utility gain (denoted below as U) per unit of network resources assigned to a lower quality flow. More formally: Maximize : U þ XM m¼1 XS s¼1 rms Á qms; ð12Þ Subject to : XM m¼1 rms C; 8s 2 f1; 2 . . . Sg; ð13Þ m Á XS s¼1 rms þ XS s¼1 rms Á qms ! U; 8m 2 f1; 2 . . . Mg; ð14Þ rms ! 0; U ! 0: ð15Þ The objective function is represented in (10) and requires the maximization of two components; the utility gain (U) and the total throughput. Constraint (12) ensures that the total capacity C is not exceeded. Constraint (13) is used to maximize U in (10) with respect to each node. Finally, constraint (14) bounds the rates and utility gain to positive values. Solving the above problem provides the optimal rates for each time slot and for arbitrary quality functions. However, to illustrate the central insight of the solution, we provide next a simplified version of the assignment problem. We consider two competing flows and a single time slot (therefore, we drop the subscript s). Also, for simplicity, set C ¼ 1. We then vary the quality q1 of the first flow while the second flow is assigned a fixed quality value. In Fig. 6, we plot the objective function for different cases of  for varying q1. In this manner, we can visualize the different utility gains over the original global optimal assignment (Section 6.1), i.e., which is simply computed as maxðq1; q2Þ. We can see that between specific values of q1 the utility gain is positive (and the objective is greater than the global optimal). However, beyond the quality threshold values the gain is negative. The reason is that when the difference between the maximum and minimum quality is large, then in order to maximize the local utility, large part of the resources is assigned to the lower quality flow. The consequence of this is that the utility gain is too small while at the same time the overall global utility is also reduced. Thus, in this case, the objective function is maximal when it is equal to the maximum global utility. 6.2.2 Distributed Approximation Algorithm: CoSMoS-Threshold We will describe next a distributed technique that attempts to maximize the minimum number of packets delivered by any individual flow, however, incorporating the insights from the solution of the optimization problem to avoid severe global network performance degradation. We do this by revisiting our congestion avoidance algorithm. We call the new technique CoSMoS-Threshold (CoSMoS-T) as we will explain shortly. In CoSMoS-T, we attempt to allocate the rates at a per- region basis as in the congestion avoidance case. Recall that in our congestion avoidance technique, we assume that the maximum incoming rate (5) is assigned equally to all competing nodes; thus, the assessed share pk of a node k in a region was pk ¼ 1=N for N nodes. Recall that each node sends, in periodic updates, its cost to the sink to allow the creation of the minimum cost route. Thus, a node can overhear this cost announced by neighboring nodes in its region. By collecting the RSSI values, a node can then estimate the flow quality of its neighbors via the use of the normalized RSSI R to its downstream node as in (2). To simplify the equations, let R0 ¼ 1 À R. We will require the nodes to be assigned a rate that achieves delivery of the same amount of packets (i.e., maximizes the minimum goodput) within that specific estimation interval. More specifically: j Á sj ¼ p Á sp; 1 j; p N; XN i¼1 i ¼ N PN i¼1 ti : By solving the above system of equations, the individual (maximum) share (and consequently the maximum rate) for a node can be computed using the equation in Line 4 of Algorithm 1. As an example, the solution for three nodes competing in a region, s1 for node 1, is simplified to R0 2R0 3 R0 1R0 2 þ R0 1R0 3 þ R0 2R0 3 : To ensure that enough packets are received from every flow along the complete path and at each time interval, each node transmits the value of the lowest quality link Rmin that it has received so far from its downstream node including its local value (Algorithm 1, Line 3). The node will use this minimum value to compute the share for its region and extract the maximum rate that the region can support as we discussed in the previous paragraph (Algorithm 1, Line 4). As soon as the nodes have computed their share of the resources based on the link quality, they investigate whether the current assignment might potentially throttle the global goodput. This is achieved as described next (Algorithm 1, Lines 5 and 6). Algorithm 1. CoSMoS-T rate allocation algorithm at a node k. 1: Let d; 1 d N, an upstream or downstream node of k. 2: Let Rmin, received minimum quality indicator from d. 3: Rmin ¼ minðRmin; R0 kÞ. 4: pk ¼ 2Á Q i R0 i R0 minÁ P j;l R0 jR0 l ; 1 i; j; l N; j 6¼ l, for i ¼ k, use KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1523 Fig. 6. Objective function values for different . The utility gain is minimal for some threshold values of the quality causing the global optimal to offer higher utility.
    • R0 k ¼ R0 min. 5: if pkÁR0 min maxfR0 ig < " then 6: pk ¼ 1=N 7: end if 8: return k ¼ minðpk Á NPN i¼1 ti ; dÞ 9: Broadcast fRmin; kg Clearly, assigning all available resources to the flow with the highest quality will result to the maximum possible goodput that can be routed through that particular region. However, as discussed in the previous section, the overall goodput is severely reduced if the difference between the maximum and minimum qualities is large enough. Thus, each individual node k can locally compute the ratio between its own achievable local goodput (given the share pk) and the maximum achievable goodput in the region. If the ratio is below a threshold ", then the node will refrain from acquiring share pk to the benefit of the global goodput. In this case, all nodes set their share to 1=N as in CoSMoS-G. Assigning equal share benefits, the good quality flows and, thus, favors the global goodput over throttling the network and potentially delivering no packets or extremely few. Finally, each node collects the rate values from its (one- hop) region nodes including its downstream and upstream nodes. The node then computes and broadcasts the minimum value between its local assigned share (consider- ing its quality as computed above) and the rate that the neighboring nodes along the same path have advertised (Algorithm 1, Lines 8 and 9). Eventually, this process will propagate all the way to the source nodes. Effectively, the rate value assigned at the sources will be the estimated maximum rate that can traverse the bottleneck quality link. 6.2.3 Discussion The goal of our approach is not to enforce equal goodput from all flows (fairness) but instead to achieve good local and global utilization. Quantitatively, this means regulating the trade-off between maximizing the minimum local goodput and the reduction in global goodput that the former consequently entails. This is a central difference from fairness-based approaches (such as [8], [17]). In particular, as already illustrated in our congestion avoidance study, the load may vary from one region to another according to the number of nodes competing. Thus, the bottleneck rate for different end-to-end paths may differ significantly. There- fore, the assigned rates (and the resulting utilization) depend on both the congestion along a path and the quality of that path. An optimal utilization is one that allows all flows to deliver packets even if their quality is reduced while at the same time respecting the bound imposed by the congestion level en route the sink. This is particularly important in the mobile sink scenarios where both the quality and congestion level may change frequently. 7 IMPLEMENTATION We have implemented our mechanism on motes [31], primarily to study practical issues in a realistic setting. We have implemented routing and rate control over MantisOS [30], a multimodal operating system that nicely fits the real- time computation requirements of our approach. In parti- cular, MantisOS allowed for transparent load measurement even when interrupts occur in separate threads such as receptionortransmission.Datapacketsgeneratedorreceived are stored in an application level FIFO queue buffer of size 10 (packets) before forwarded to the MAC layer. 7.1 Practical Load Measurement We clarify below some practical issues regarding the actual implementation. First, the M/M/1 assumption might seem to be a rather inaccurate approximation. However, by per- forming the load estimation within a relatively small update interval, , the arrival and service processes can be very closely approximated by the Poisson assumption. A second issue is that it might be difficult to measure the average service times since the sensor may be performing various operations at any given time, possibly interrupting the packet servicing process. However, we can easily measure the queue utilization instead. Our implementation is based on a nonblocking queuing operation where packets are dequeued—in a while loop—as long as the queue is not empty; this is usually referred to as the active queue state.2 We can measure the utilization as the fraction of  during which the queue was active. This requires starting and stopping a timer once before and once after an active state period and smoothening out the measurements through exponentially weighted moving averaging. 7.2 RSSI and Congestion Since the RSSI metric is used for routing, we need to have an understanding of the effects of congestion on its value. In Fig. 8 we have measured the received signal value at a node from another node when multiple interfering transmissions are taking place in the same region. Although the MAC scheme is based on a simple back off technique, still the signals seem to interfere, causing the average RSSI to drop and its variability to increase. Since the minimum path cost is considered, this effect is mitigated. However, a lower RSSI in a congested region does not necessarily impede our technique. These effects are further studied in Section 8.2. 8 EXPERIMENTS 8.1 Regional Load Collection The simulation setting and scenario is as described earlier in Section 4.1. Briefly, we placed 140 nodes parameterized with the characteristics of Micaz motes in a 100 Â 100 field. A node acts as a sink and is either static or moving from Loc.1 to Loc.3 as shown in Fig. 2a. A total of eight random nodes are used as event sources. For this experiment, we utilized a centralized routing protocol based on the instantaneous best link quality path to the sink in order to reduce the effects of the unreliable channel and study the performance of the load collection technique in isolation. In addition, at the MAC layer we used CSMA with RTS/CTS. Confidence intervals shown are 95 percent. Our main goal in this experiment is to illustrate how well the load collection (rate adjustment using min) technique can measure the load and adjust to congestion with a static as well as a mobile sink. To do this, we identify the “optimal” rate; the rate at which throughput is maximized. Beyond this rate, the throughput degrades [2]. The “optimal” rate can be identified using the techniques of [2] or by simply incrementally assigning rates to all sources. Note that for 1524 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 2. The active state includes the transmission time as well as delays caused by preemption due to packet reception and sensing operation interrupts.
    • this technique all source rates are the same and will be used as a baseline indicator (since optimal rate allocation is difficult to extract experimentally as well as analytically). 8.1.1 Macroscopic Results WefirstperformamacroscopicanalysisoftheresultsofFigs.9 and 10. We plot the average rate and average throughput correspondinglywithincreasingsinkspeedasitmovesbetween Loc.1 and Loc.3 in Fig. 2a. We plot the results for the optimal point versus using min to adjust the rate throughout the simulation. We observe that our regional load collection technique does not considerably depart from the results obtained from the optimal point even as the sink speed increases. Thus, although relatively conservative, it does not considerably degrade performance and for the selected baseline technique it performs well. Furthermore, the conservative rate allocation resulting to relatively less collisions, explains the lower average delay of the min technique seen in Fig. 11. 8.1.2 Microscopic Results To provide deeper insights on the rate allocation using min, we further provide a set of indicative rate traces where we run a simulation without regulating the rate but having the sources compute the “recommended rate” according to the current conditions (in essence, this being min) without actually setting it. Our goal is to see whether and how our technique reacts to different load levels of the network. In Figs. 12a and 12b, we show the actual rate () and suggested rate (min) in a low traffic (5 pps) and high traffic (10 pps) static sink scenario for the cases of two different sources: one that simply sends traffic while another sends and forwards traffic; the latter being effectively more loaded. We illustrate that in a moderately loaded network our technique generally estimates a higher rate since more resources are available. In contrast, when the load is high, min indicates drastic rate reduction as shown in Fig. 12b. We further observe the estimated rate when the sink is mobile in Fig. 12c. The sink moves according to the same scenario simulated in Section 4.1, Fig. 2b and the maximum source rate is set to 10 pps. It was observed in the initial simulation set that when the sink was located at the two edges of the network, the performance seemed to degrade. As seen in Fig. 12c, our technique is able to identify and adapt the rate at the “problematic” locations (near the beginning and end of the simulation) while allowing increased rate otherwise. 8.2 CoSMoS Evaluation: Mica2 Testbed In the remaining of our evaluation section, we test the techniques of CoSMoS in concert. This part is further broken down into tests pertaining to our routing technique, CoSMoS-G and finally CoSMoS-T where we attempt to demonstrate the benefits of the joint congestion and reliability rate regulation. In the remaining of the experiments, results are obtained from the real Mica2 deployment, with the CoSMoS imple- mentation as described in Section 7. The nodes were set up on a floor at our institution (indoor environment) as shown in Fig. 13. A total of 10 nodes were used covering the floor. The sink was a Mica2 node affixed to a mobile RC car (Fig. 7) which we utilized in order to be able to have more control over the mobility as well as to avoid irregular antenna disturbances due to mobility. The mobility of the RC car approximates that of a robot or a human. The mobility pattern was as shown in Fig. 13; the sink moves along the building corridors in the direction indicated by the line, from the KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1525 Fig. 7. The sink on a mobile RC car. Fig. 8. Congestion affects the RSSI. Fig. 9. Average rate allocated at the sources. Fig. 10. Average per flow throughput. Fig. 11. Average per-hop delay for all flows.
    • proximity of sensor 1 toward sensor 10. We also performed the reverse route for our reported measurements. Since the speed is relative to each sensor, we used our sink carrier (RC car) to maintain relatively constant speed and report the average as the total distance (about 200 m) over the total experiment time (of about 200 and 100 seconds, one way to correspond to low and high mobility, respectively). Event packets are 38 bytes (with header) while control packets are 6 bytes. Finally, for the MAC layer we used CSMA with a simple scheme (implemented in MantisOS) where a node checks whether the channel is “clear” before attempting to transmit else it back off a bounded random time. Note that unlike the simulation experiments we did not include RTS/ CTS exchanges. 8.3 Routing Performance The update exchange interval among nodes and the sink is an important parameter of our approach because it allows for path update but also because the rate is adapted between intervals. Our first task was to study the effect of different intervals with a rapidly moving sink. We use one source (node 1) to transmit packets and compare, in Fig. 14, the delivery ratio when sending packets to a moving sink using a fixed interval as well as using the closest-neighbor-change heuristic described in Section 4.2. We found that too high an update rate, in fact, resulted in a reduced delivery ratio due to the fact that the sink was spending considerable amount of time attempting to transmit updates on the expense of receiving data packets. Increasing the update interval too much causes nodes to forward packets along stale paths, which are, thus, never delivered. However, using the automatic updates heuristic in concert with the fixed interval updates, the delivery is considerably improved. Henceforth, we use a 2.5 s update interval (for any speed) along with the closest neighbor heuristic. In Fig. 15, we compare our routing technique versus a simple approach, where the minimum hop path is chosen for routing [38]. Among multiple paths with the same hop count, a node will choose the downstream node with the best received signal. We measured the delivery ratio of the two approaches under the same static scenario and a mobile scenario with low (averaging about 1 m/s) and high mobility (about 2 m/s on average). Minimum hop routing suffers from the fact that path changes cannot be intelligently updated during mobility, i.e., the number of hops will change only if the sink moves out of the range of the last hop. During this time, link quality can become quite worse, an effect captured by our cost metric, especially as the speed of the sink is increased. A side effect is that more reliable paths tend to be longer, however, increasing the contention using more hops is generally preferable to packet misses. 8.4 Evaluation of CoSMoS-P In Fig. 16, we attempt to provide an intuition with respect to the operation of our approach. Using the joint "Rsmin metric, we present a time trace of the assigned rates to each source in an experiment at the high mobility level. Due to the fact that 1526 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 Fig. 12. Responsiveness and accuracy of regional load collection. (a) and (b) Static scenarios. min is compared against the actual rate  for (a) low congestion (5 pps) and (b) high congestion (10 pps). (c) The rate adaptivity of the technique under mobility (4 m/s) for two different sources (10 pps). Fig. 13. Indoor node layout. Fig. 14. Update interval (one source, 4 pps). Fig. 15. Delivery ratio with variant mobility.
    • experiments were carried out along corridors, obstructions, walls, and direction changes affected the link quality. At the interest of space, we elaborate on some initial observations next. One can observe how source 1 reduces its rate as the sink moves away during the first 20 seconds. After that, source 1 starts relaying traffic and, thus, the average link cost decreases. The sink is in the transitional region of source 5; thus, it uses node 2 initially to relay traffic. This is the reason that its rate is initially reducing. The reduced rate of 1 and 2 allowed for source 9 (that relayed traffic through longer but apparently more reliable path) to maintain overall higher rate during the same interval. 8.4.1 Throughput and Delivery Ratio In Fig. 17, we present the delivery ratio and average throughput with low mobility. CoSMoS-G only uses the congestion level to regulate the rate, while CoSMoS-P jointly utilizes congestion level and path quality informa- tion. We observe that at low rates, reducing the rate is marginally beneficial. In fact, the higher delivery ratio is an artifact of reduced packet transmissions as can be seen from the resulting average throughput in Fig. 17b. An immediate observation is that, as the rate is increased, the base technique (i.e., no congestion control) collapses due to both congestion and channel drops. While collisions still occur at low rates, their effect is less obvious on the resulting traffic load. Although the rate-limiting technique can maintain higher throughput via traffic regulation, packets are still dropped due to the lossy channel. Thus, in this scenario, CoSMoS delivers less throughput as it may occasionally reduce the rate at sources reacting to bad link quality. The importance of considering jointly reliability and congestion for rate control is showcased in the higher mobility tests of Fig. 18. Packets lost due to channel drops, would have traversed a path partially, thus, contributing to congestion before being eventually dropped. CoSMoS-P manages to balance congestion and reliability to achieve higher delivery ratios without hurting throughput. An interesting observation is that at higher mobility, CoSMoS-P seems to achieve higher throughput than at low mobility. As per our observations in Fig. 16, when the path cost is perceived high (due to frequent relocations) at some sources, that source’s rate is dropped dramatically. This allows the sources with good quality to opportunistically transmit at high rates with virtually no interference, resulting eventually in an average increase in throughput. 8.5 Evaluation of CoSMoS-T Our evaluation of CoSMoS-T is broken down into two parts. In the first part, we study the operation of the rate allocation algorithm within a region of nodes. Our algorithm operates based on two dimensions, congestion level and path quality. Thus, we further break down the first set of experiments to study how rate allocation decisions are made for each of the two dimensions in isolation. In the second part, we study the operation of CoSMoS-T when the per-region rate allocation decisions are propagated even- tually through multiple regions to the sources toward improving the end-to-end performance. 8.5.1 Operation of CoSMoS-T within a Region We first study the effect of congestion on rate allocation decisions. We set up a group of four Mica2 that are within each others range so as to create a common region. One of the nodes acts as the receiver (we will call this node, the KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1527 Fig. 16. CoSMoS-P operation: source rate trace. Fig. 17. Low mobility experiments, speed % 1 m=s. (a) Average delivery ratio. (b) Average throughput. Fig. 18. High mobility experiments, speed % 2 m=s. (a) Average delivery ratio. (b) Average throughput.
    • sink). We start to introduce traffic in the region by increasing the sending rate of each node and show the results in Fig. 20. We record the rate that the sink computes to be propagated to the sending, upstream nodes. This is effectively min as described in Section 5). Note that the rate is computed at the sink but not enforced at the senders so as to illustrate the varying value as we increase the rates. We observe that CoSMoS-T attempts to reduce the assigned rates to cope with increasing congestion. We also measure the link quality via the Normalized RSSI. We observed that, while the link quality is reduced, its effect is not too significant. This is consistent with our experiment in Fig. 8. In Fig. 21, we study the effect of quality on rate assignment. The traffic load is low so as to not cause congestion (2 pps). Since we cannot deterministically control the link qualities, we hard-code various link qualities at the nodes. Again note, that the rate is computed but senders do not adjust their rate. We set a high quality value of 0.9 at two nodes while for the third node, we vary its quality between 0.9 all the way down to 0.1 (the sink does not send thus no quality needs be set). We record the rates assigned at one of the high quality nodes and at the varying quality node. CoSMoS-P gives preference to high quality flows so as to maximize the global goodput as we have shown in Section 6.1. Thus, while initially the nodes received equal rates (due to equal qualities), quickly the high quality node receives higher share and rate. For CoSMoS-T, we set " to 0.3. Observe that, when the varying quality reaches around 0.6, the share falls below the threshold and rates are equally assigned according to Algorithm 1, in order to allow the low quality node to deliver packets. In Fig. 22, we allow nodes to adjust their rate according to the value broadcasted by the downstream sink. We compare the delivery ratio between CoSMoS-T and no control over the rate as traffic is injected into the network. In the next section, we will study the throughput achieved end-to-end over multiple sources and over multiple regions for the two CoSMoS approaches. 8.5.2 Operation of CoSMoS-T End-to-End In this section, we evaluate the performance of CoSMoS-T when varying the value of the threshold ". Our goal is to quantify the trade-off between reducing the global goodput to increase the local per-time slot goodput of each individual flow. For the remaining of the following experiments, the maximum rate is set to 10 pps for all tests (to stress the systems and enforce rate regulation according to the congestion avoidance algorithm, see Figs. 17 and 18) and the sink speed is 2 m/s. The experiment was repeated five times and the averages are reported when noted. As discussed in Section 6.2, when the quality varies, the local utilization is maximized when equating the rates. However, this comes at the cost of reduced global utilization. First, we illustrate the operation of CoSMoS-T through an example run. We maintain the same testbed and route as the previous experiments. In Fig. 19a, we plot the observed normalized path qualities for the three sources throughout the experiment. Then, in Fig. 19b, we show how the rate is assigned to flow from source number 9 with respect to the qualities of the remaining flows. We test the two extreme cases of CoSMoS-T; with " ¼ 0 and " ¼ 1, the latter always sharing the assessed resources at each region, equally. It can be observed that CoSMoS-T, compared to the 1528 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010 Fig. 19. CoSMoS-T operation by observing all quality traces (a) and the resulting assignment for a specific source (b) for different ". (a) Qualities trace for all sources. (b) Rate trace for Source 9. Fig. 20. Congestion effect on rate allocation: CoSMoS-T at the receiver attempts to rate limit the senders. Fig. 21. Quality effect on rate allocation: CoSMoS-P the high quality sender while CoSMoS-T assigns equal rates when the share threshold is not met. Fig. 22. Delivery ratio at the sink in the region.
    • greedy approach of CoSMoS-G, allows a lower quality flow with respect to the other flows, to receive higher rate, such as between 20 and 40 seconds into the experiment. The goal of CoSMoS-T is to ensure that, if resources are available, as many flows as possible will receive a share that will allow them to deliver packets at any time. This, as discussed extensively, will unavoidably cause reduced global goodput. In the final two figures, we show the trade-off between these two cases. In Fig. 23, we plot the average minimum goodput throughout the mobility period. Observe that, since the goal of CoSMoS-T is to attempt to maximize the minimum assigned rate, this results in a better representation of each flow at any given time compared to the case where " > 0:33, effectively represent- ing CoSMoS-G. We reiterate that this does not guarantee fairness among the flows (i.e., equal number of packets delivered by each flow). This is because the quality and congestion along different paths may vary significantly, thus, causing some flows to be unable to deliver packets from a practical perspective. We note that we did not employ retransmissions at each hop as this is beyond the scope of this work (also see [10], [40]). However, we do note that the maximum rate computed at each region can be utilized by a further transport layer protocol that utilizes retransmissions to improve reliability. In that case, the rate of retransmissions will be limited per region by the maximum congestion capacity (5) and shared according to the local link quality at each hop (Algorithm 1, Line 4). Finally, in Fig. 24, we show the average global goodput of CoSMoS-T with variable ". It is clear that as " increases, the flows that have good quality are able to deliver far more traffic per second than flows with lower quality. This is an expected result also if we consider the experiments in the evaluation of CoSMoS-P and the analysis of the maximiza- tion of the total goodput. The more rate we assign to the best quality flow, the closer to the optimal goodput the result will be. However, the representation of each flow at each time slot may suffer (Fig. 23). 9 CONCLUSION We have presented CoSMoS, a set of techniques to address the challenges of congestion and rate allocation under the assumption of a mobile sink. We conduct extensive studies of the effects introduced by mobility and the need for explicit and intelligent rate control. We provide a new routing alternative that is adaptive to fast reliability fluctuations. We identify the trade-off between global and local goodput maximization with variant path quality and congestion and propose two algorithms that attempt to optimize each case via joint congestion and reliability aware rate allocation. Via our experimental observations throughout our work, we expose challenges pertaining to sink mobility and illustrate that our techniques can be applied in practice to achieve effective congestion avoidance and significantly improve the network utilization under sink mobility. ACKNOWLEDGMENTS This research has been supported by the European Union through the Marie-Curie RTD IRG-231038) Project, the US National Science Foundation (NSF) CNS-0627191 Award, and a gift from Nokia. REFERENCES [1] M. Abolhasan, T.A. Wysocki, and E. Dutkiewicz, “A Review of Routing Protocols for Mobile Ad Hoc Networks,” Ad Hoc Networks, vol. 2, no. 1, pp. 1-22, 2004. [2] B. Akan and I.F. Akyildiz, “ESRT: Event-to-Sink Reliable Trans- port in Wireless Sensor Networks,” IEE/ACM Trans. Networking, vol. 13, no. 5, pp. 1003-1016, 2005. [3] M. Ali, T. Suleman, and Z.A. Uzmi, “MMAC: A Mobility- Adaptive, Collision-Free Mac Protocol for Wireless Sensor Net- works,” Proc. IEEE Int’l Performance, Computing, and Comm. Conf. (IPCCC), pp. 401-407, 2005. [4] A. Chakrabarti, A. Sabharwal, and B. Aazhang, “Using Predict- able Observer Mobility for Power Efficient Design of Sensor Networks,” Proc. IEEE Int’l Workshop Information Processing in Sensor Networks (IPSN), pp. 129-145, 2003. [5] L.-J. Chang, “Hybrid Congestion Control Protocol in Wireless Sensor Networks,” Master thesis, Nat’l Central Univ., 2006. [6] S. Chen, Y. Fang, and Y. Xia, “Lexicographic Maxmin Fairness for Data Collection in Wireless Sensor Networks,” IEEE Trans. Mobile Computing, vol. 6, no. 7, pp. 762-776, July 2007. [7] R. Draves, J. Padhye, and B. Zill, “Comparison of Routing Metrics for Static Multi-Hop Wireless Networks,” Proc. ACM SIGCOMM Conf. Applications, Technologies, Architectures, and Protocols for Computer Comm., pp. 133-144, 2004. [8] C.T. Ee and R. Bajcsy, “Congestion Control and Fairness for Many-to-One Routing in Sensor Networks,” Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys), pp. 148-161, 2004. [9] P.R. Pereira et al., “End-to-End Reliability in Wireless Sensor Networks: Survey and Research Challenges,” Proc. Wireless Sensor Networks (WSN), 2008. [10] J.F. Stann and J. Heidemann, “RMST: Reliable Data Transport in Sensor Networks,” Proc. First IEEE Int’l Workshop Sensor Network Protocols and Applications, pp. 102-112, 2003. [11] S. Gandham, M. Dawande, R. Prakash, and S. Venkatesan, “Energy Efficient Schemes for Wireless Sensor Networks with Multiple Mobile Base Stations,” Proc. IEEE Globecom, pp. 377-381, 2003. [12] O. Gnawali, M. Yarvis, J. Heidemann, and R. Govindan, “Interaction of Retransmission, Blacklisting, and Routing Metrics for Reliability in Sensor Network Routing,” Proc. First IEEE Conf. Sensor, Mesh and Ad Hoc Comm. and Networks (SECON), pp. 34-43, 2004. [13] M. Grossglauser and D.N.C. Tse, “Mobility Increases the Capacity of Ad Hoc Wireless Networks,” IEEE/ACM Trans. Networking, vol. 10, no. 4, pp. 477-486, Aug. 2002. KARENOS AND KALOGERAKI: TRAFFIC MANAGEMENT IN SENSOR NETWORKS WITH A MOBILE SINK 1529 Fig. 23. Minimum average goodput of CoSMoS-T over time for different ". For " > 0:33, the operation is essentially that of CoSMoS-G. Fig. 24. Global goodput of CoSMoS-T with varying ". For " > 0.33, the operation is essentially that of CoSMoS-G.
    • [14] P. Gupta and P.R. Kumar, “The Capacity of Wireless Networks,” IEEE Trans. Information Theory, vol. 46, no. 2, pp. 388-404, Mar. 2000. [15] B. Han and G. Simon, “Fair Capacity Sharing among Multiple Sinks in Wireless Sensor Networks,” Proc. IEEE Int’l Conf. Mobile Adhoc and Sensor Systems Conf., pp. 1-9, 2007. [16] T. He, J.A. Stankovic, C. Lu, and T.F. Abdelzaher, “SPEED: A Stateless Protocol for Real-Time Communication in Sensor Net- works,” Proc. Int’l Conf. Distributed Computing Systems, pp. 45-55, 2003. [17] B. Hull, K. Jamieson, and H. Balakrishnan, “Mitigating Congestion in Wireless Sensor Networks,” Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys), pp. 134-147, 2004. [18] A. Kansal, A.A. Somasundara, D.D. Jea, M.B. Srivastava, and D. Estrin, “Intelligent Fluid Infrastructure for Embedded Networks,” Proc. Second Int’l Conf. Mobile Systems, Applications, and Services, pp. 111-124, 2004. [19] K. Karenos and V. Kalogeraki, “Facilitating Congestion Avoidance in Sensor Networks with a Mobile Sink,” Proc. 28th IEEE Int’l Real- Time Systems Symp. (RTSS ’07), pp. 321-332, 2007. [20] K. Karenos, V. Kalogeraki, and S.V. Krishnamurthy, “A Rate Control Framework for Supporting Multiple Classes of Traffic in Sensor Networks,” Proc. IEEE Int’l Real-Time Systems Symp. (RTSS), pp. 287-297, 2005. [21] K. Karenos, V. Kalogeraki, and S.V. Krishnamurthy, “Cluster- Based Congestion Control for Sensor Networks,” ACM Trans. Sensor Networks, vol. 4, no. 1, Feb. 2008. [22] M.I. Khan, W.N. Gansterer, and Gu¨nter Haring, “Congestion Avoidance and Energy Efficient Routing Protocol for Wireless Sensor Networks with a Mobile Sink,” J. Networks, vol. 2, no. 6, pp. 42-49, 2007. [23] J.N. Kim, K.J. Kim, and K.J. Han, “A Congestion Control Scheme for Supporting Differentiated Service in Mobile Ad Hoc Net- works,” Proc. Fourth Int’l Conf. Networking (ICN), pp. 810-817, 2005. [24] B. Krishnamachari, Networking Wireless Sensors. Cambridge Univ. Press, 2005. [25] S.-B. Lee, K.J. Kwak, and A.T. Campbell, “Solicitation-Based Forwarding for Sensor Networks,” Proc. Third Ann. IEEE Conf. Sensor, Mesh and Ad Hoc Comm. and Networks (SECON), pp. 90-99, 2006. [26] J. Liu and S. Singh, “ATCP: TCP for Mobile Ad Hoc Networks,” IEEE J. Selected Areas in Comm., vol. 19, no. 7, pp. 1300-1315, July 2001. [27] C. Lu, G. Xing, O. Chipara, C.-L. Fok, and S. Bhattacharya, “A Spatiotemporal Query Service for Mobile Users in Sensor Net- works,” Proc. IEEE Int’l Conf. Distributed Computing Systems (ICDCS), pp. 381-390, 2005. [28] J. Luo and J.-P. Hubaux, “Joint Mobility and Routing for Lifetime Elongation in Wireless Sensor Networks,” Proc. IEEE INFOCOM, pp. 1735-1746, 2005. [29] J. Luo, J. Panchard, M. Pio´rkowski, M. Grossglauser, and J.-P. Hubaux, “Mobiroute: Routing towards a Mobile Sink for Improv- ing Lifetime in Sensor Networks,” Proc. IEEE Int’l Conf. Distributed Computing in Sensor Systems (DCOSS), 2006. [30] MantisOS, “Multimodal Networks for In-Situ Sensors,” mantis.cs. colorado.edu, 2009. [31] Crossbow Mica Motes, www.xbow.com, 2010. [32] J. Paek and R. Govindan, “RCRT: Rate-Controlled Reliable Transport for Wireless Sensor Networks,” Proc. Fifth Int’l Conf. Embedded Networked Sensor Systems (SenSys ’07), pp. 305-319, 2007. [33] Q. Pang, V. Wong, and V. Leung, “Reliable Data Transport and Congestion Control in Wireless Sensor Networks,” Int’l J. Sensor Networks, vol. 3, no. 1, pp. 16-24, 2007. [34] S. Rangwala, R. Gummadi, R. Govindan, and K. Psounis, “Interference-Aware Fair Rate Control in Wireless Sensor Net- works,” Proc. ACM SIGCOMM, pp. 63-74, 2006. [35] R. Shah, S. Roy, S. Jain, and W. Brunette, “Data Mules: Modeling a Three-Tier Architecture for Sparse Sensor Networks,” Proc. IEEE Int’l Workshop Sensor Network Protocols and Applications (SNPA), pp. 215-233, 2003. [36] A.A. Somasundara, A. Ramamoorthy, and M.B. Srivastava, “Mobile Element Scheduling for Efficient Data Collection in Wireless Sensor Networks with Dynamic Deadlines,” Proc. IEEE Int’l Real-Time Systems Symp. (RTSS), pp. 296-305, 2004. [37] K. Srinivasan and P. Levis, “RSSI is Under Appreciated,” Proc. Workshop Embedded Networked Sensors (EmNets), 2006. [38] TinyOS, “Operating Environment for Embedded Networked Sensors,” www.tinyos.net, 2010. [39] Z. Vincze, D. Vass, R. Vida, A. Vida´cs, and A. Telcs, “Adaptive Sink Mobility in Event-Driven Multi-Hop Wireless Sensor Net- works,” Proc. Int’l Conf. Integrated Internet Ad Hoc and Sensor Networks, p. 13, 2006. [40] C.-Y. Wan, A.T. Campbell, and L. Krishnamurthy, “PSFQ: A Reliable Transport Protocol for Wireless Sensor Networks,” Proc. ACM Int’l Workshop Wireless Sensor Networks and Applications (WSNA), pp. 1-11, 2002. [41] C.-Y. Wan, S.B. Eisenman, and A.T. Campbell, “CODA: Conges- tion Detection and Avoidance in Sensor Networks,” Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys), pp. 266-279, 2003. [42] C.-Y. Wan, S.B. Eisenman, A.T. Campbell, and J. Crowcroft, “Siphon: Overload Traffic Management Using Multi-Radio Virtual Sinks in Sensor Networks,” Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys), pp. 116-129, 2005. [43] C. Wang, M. Daneshmand, B. Li, and K. Sohraby, “A Survey of Transport Protocols for Wireless Sensor Networks,” IEEE Network, vol. 20, no. 3, pp. 34-40, May/June 2006. [44] C. Wang, K. Sohraby, and B. Li, “SenTCP: A Hop-By-Hop Congestion Control Protocol for Wireless Sensor Networks,” Proc. IEEE INFOCOM ’05, pp. 107-114, 2005. [45] W. Wang, V. Srinivasan, and K.C. Chua, “Using Mobile Relays to Prolong the Lifetime of Wireless Sensor Networks,” Proc. ACM MobiCom, pp. 270-283, 2005. [46] A. Woo, T. Tong, and D.E. Culler, “Taming the Underlying Challenges of Reliable Multihop Routing in Sensor Networks,” Proc. Int’l Conf. Embedded Networked Sensor Systems (SenSys), pp. 14-27, 2003. [47] M. Zuniga and B. Krishnamachari, “Analysing the Transitional Region in Low-Power Wireless Links,” Proc. IEEE Conf. Sensor, Mesh and Ad Hoc Comm. and Networks (SECON), pp. 517-526, 2004. Kyriakos Karenos received the PhD degree from the University of California, Riverside, in 2008. He is currently a postdoctoral researcher at the Messaging Systems Lab at IBM T.J. Watson Research Center in New York. His research interests include large-scale distributed systems, real-time systems, wireless sensor networks, and mobile computing. He is also working on intelligent connectivity middleware and provisioning of quality of service in hetero- geneous system such as smart grids. He has served as a reviewer at several conferences and journals including RTSS, DSN, IEEE TMC, and IEEE TPDS. He served in the technical committee of SENSAPPEAL 2009. He is a member of the IEEE. Vana Kalogeraki received the PhD degree from the University of California, Santa Barbara, in 2000. She has held positions at Hewlett-Packard Labs in Palo Alto, California, the Department of Computer Science at the University of California, Riverside, and the Department of Informatics at Athens University of Economics and Business. Her research interests include distributed and real-time systems, peer-to-peer systems, and distributed sensor systems. She has published numerous technical papers, including coauthoring the Object Manage- ment Group (OMG) CORBA Dynamic Scheduling Standard. She has delivered tutorials and seminars on peer-to-peer computing. She has served as the general cochair of SEUS 2009, the general cochair of WPDRTS 2006, and as a program cochair of ISORC 2009, ISORC 2007, ICPS 2005, WPDRTS 2005, and DBISP2P 2003. She was awarded the Marie Curie Fellowship, two best paper awards at IPDPS 2009 and SAINT 2008 and a research award from HP Labs. She is currently an associate editor for the Ad Hoc Networks Journal, the Computer Standards & Interfaces Journal, and the Peer-to-Peer Networking and Applications Journal. Her research has been supported by the US National Science Foundation (NSF) and gifts from SUN and Nokia. She is a member of the IEEE. . For more information on this or any other computing topic, please visit our Digital Library at www.computer.org/publications/dlib. 1530 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 10, OCTOBER 2010