Facilitating Congestion Avoidance in Sensor Networks ... - CiteSeerX

13 downloads 159221 Views 399KB Size Report
mobility requires agile as well as effective load estimation techniques. ..... this value is a bad indicator of the bi-directional link qual- ity. In the context of a mobile ...
Facilitating Congestion Avoidance in Sensor Networks with a Mobile Sink Kyriakos Karenos and Vana Kalogeraki Computer Science and Engineering Department University of California, Riverside {kkarenos,vana}@cs.ucr.edu Abstract

For the aforementioned class of applications, achieving high throughput, real-time and reliable delivery of events becomes essential. However, the initiation of multiple concurrent flows that utilize common resources (such as channel and queue buffers) can spawn regional hotspots, 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 [11, 28]. Congestion control techniques have been studied in the sensor network literature under the assumption of a static sink. However, sink mobility introduces a number of additional challenges. First, in order to achieve reliable packet delivery, the rate of path reconfigurations would need to become considerably higher compared to a static case. Previous techniques such as [5, 11, 22] have assumed a static, tree-like routing structure that is not significantly skewed. Modifying these techniques to efficiently accommodate sink relocations is a non-trivial 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, therefore, 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 during relatively small durations event flows. Packets injected during transient periods of reduced path quality might unnecessarily detain critical channel resources before they are eventually lost. Therefore, it would be desirable to proactively prevent this situation in order to avoid inaccurate load estimation which could potentially lead to poor rate allocation. 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 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 congestion avoidance 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. Our approach jointly considers the network load and path quality variations to facilitate intelligent, mobility-adaptive rate regulation at the sources. We implemented our techniques over a Mica2 testbed and through extensive experimental results, we demonstrate the working and benefits of our approach.

1

Introduction

In an increasing number of pervasive, user-centric sensor network applications, the sink is intended or required to move within the sensor network field. Sink mobility is required in multiple cases such as allowing for more extensive coverage, inspecting and evaluating reported events, carrying out task-specific patrols and receiving proximity-based personalized reports. In particular, in such event-based applications, events appear in unpredictable spatiotemporal coordinates and have to be delivered to an observer whose location varies in time. Specific examples of this class of applications include rescue missions (where, e.g., the rescuer or a robot roams the disastersite 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). 1

transitional effect of sink relocations and dynamically regulate the traffic. For applications where delay is an issue, techniques utilizing multiple mobile sinks or multiple mobile relays have been proposed assuming one-hop communications to these sinks or relays [6, 31]. The multihop, single sink alternative was also studied, concentrating on developing algorithms for adaptive mobility to increase the network lifetime [18, 19, 27] or meet report deadlines [24]. As we mentioned, increasing the network lifetime, though relevant, is a different problem from controlling congestion and the techniques above usually assume noncongested networks. Congestion control has been studied, however, in the context of a static sink. Rate control using backpressure notification has been extensively utilized in the most recent works. Such per node, hop-by-hop techniques have been utilized in [30] and [28, 13], while [14] proposes a cluster-based approach. Closed-loop rate control has been proposed in [2]. Effective techniques that additionally considered fairness and the channel effects in sensor networks have been developed in [5, 11, 22]. 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 [10] congestion is handled by rerouting packets to avoid hotspots while packetdropping is implemented otherwise. Siphon [29] proposes diffusing the traffic to avoid hotspots around the sink via the utilization of virtual sinks, taking advantage of multi-radio overlay communications among them. Finally, at the MAC layer, [3] proposes a mobilityadaptive 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. Thus, mobility-aware MAC layer protocols can further improve the performance of higher layer protocols such as CoSMoS.

Figure 1. Event-based network paths with a mobile sink.

the lifetime of the network through intelligent mobility schemes [4, 12, 17, 23]. These techniques control the mobility to adapt to the traffic in order to increase the network lifetime 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. We study the problem of congestion avoidance via traffic management in sensor networks with a mobile sink. We first motivate the need for explicit congestion control in a mobile sink environment based on the mobility effects on the flows’ routes. We propose “CoSMoS” (COngestion avoidance for Sensors with a MObile Sink), based on a joint routing and congestion control approach. Our scheme consists of (1) a low cost, low complexity routing scheme that effectively considers the paths’ dynamic reliability variations during sink mobility (2) a regional load collection technique to estimate the maximum sustainable load of each node within a region and along a path. Inspired by the concepts of multiuser diversity, we jointly utilize the routing and load collection techniques to facilitate mobility-adaptive rate regulation at the sources. We test the performance and feasibility of our proposed approach by implementing our algorithms on Mica2 sensor nodes operating in a small scale testbed. Furthermore, we test our approach on a large-scale network using ns2 simulations. Our experimental results demonstrate the performance and benefits of our approach.

2

3

Objectives

Our application scenarios pertain dynamic and unpredicatble event-based sensor networks where the sink is assumed to move continuously with constant speed within the deployment area. Such scenarios include disaster recovery, smart buildings and military partrolling (Fig. 1). The itinerary of the sink is not predefined. We consider that rate adaptation is to be done at the application layer. In particular, the application is assigned a predefined maximum sending rate which, however, might have to be reduced to adapt to the 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: Mobility-aware Routing: As the sink moves, in a multihop scenario, routes need to be established between the

Related Work

Mobility in sensor networks, has been introduced in a number of new applications as in [17, 23] to increase the network lifetime. 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, 12, 23]. 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 2

180

30

High Rate (8 pps) Low Rate (1 pps)

Average Routing Path Changes

Avg Per Hop Delay (ms)

160 140 120 100 80 60 40 20

20 15 10 5 0 0

0 Loc. 1

(a) Simulation network.

25

Loc. 2

Loc. 3

Mobility

0.5

1

1.5

2

2.5

3

3.5

4

Speed (meters/second)

(b) Average Per-hop delay at different sink lo- (c) Number of Path changes Vs Speed of the cations, static versus mobile. sink.

Figure 2. The sink (black node in (a)) moves on a straight line between the X-marked locations. 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, while when the network responsiveness becomes poor, transmissions should become more conservative.

sources and the sink and periodically reconfigured to maintain reliable packet delivery. In such cases the routing scheme must be able to keep up with the high degree and often unpredictable sink mobility. Several routing protocols have been presented for ad hoc mobile networks [1]. These techniques were designed for general applications with relatively high control overhead and are rather an overkill 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. Collective Load Estimation: Due to dynamic flow redirections caused by the moving destination, local, atomic load estimation techniques might not reflect the congestion state of the path. Therefore, our goal is to design a load estimation technique that considers the observed conditions of a group of nodes collectively in a region. Our observation is that 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 load conditions. Intelligent Rate Control: Our final objective is to exploit mobility to the benefit of traffic control rather than striving to minimize its effects. Recent research works have reported throughput improvements attributed to mobility based on the premises of multiuser diversity [8]. In brief, due to fading effects, nodes in such environments experience transient periods of extremely good, above average 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

4

Routing Under Sink Mobility

In this section we first perform a study of the performance issues when sink mobility is in place and the effect of rouging on the traffic load. These effects underline the requirement for explicit congestion control when the sink is mobile and subsequently influence the design choices of our congestion control techniques. Then, in Section 4.2, we describe the technique selected to construct the routing layer and justify these 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 100x100m sensor network of 140 nodes, randomly placed as illustrated in Figure 2(a) with node parameters closely matching those of Micaz. We then introduced eight flows in the network sending first with 1 and then with 8 packet per second (pps). For these simulations, we considered an omniscient routing protocol based on the link quality to the sink (in terms of the expected transmissions) [32] where all the reception probabilities at a given time are known and the best path is centrally recomputed before each transmission. Clearly, this is used for illustration purposes only since, as we discuss later, in a dynamic 3

without periodic updates. While more reactive, this technique will require frequent selection hadshakes when the sink relocates and the link quality fluctuates. Our objective, therefore, is to identify a simple 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. RSSI-based Routing: Recent studies [25] found that the Received Signal Strength Indicator (RSSI) value is a rather good bi-directional link quality metric when its values are above a sensitivity threshold (usually between -92 to -87 dbm for MICA2 and MICAz). 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 bi-directional cost, the 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 bi-directional link quality. In the context of a mobile sink, frequent changes are extremely likely to happen. An expensive bi-directional 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 [25], we adopt this simplistic technique, choosing to sacrifice some accuracy for reduced overhead, less complexity and faster estimation. Link Cost Metric: It has been shown experimentally and analytically [33, 15] that the link quality reduces approximately exponentially with distance. Thus, we will utilize an exponentially increasing cost metric with reducing RSSI. More  precisely the cost function is defined as C(R) = eβR , where R is the normalized value1 :

environment, measuring the link quality to the sink may not be possible. We considered two scenarios: A case where the sink is static in locations Loc.1, Loc.2 and Loc.3 and a case where the sink moves from Loc.1 toward Loc.3 in a straight line with speed of 4m/s for 25 seconds (thus reaching Loc.3 at the end of the movement). We measured the average perhop delay at each case for all packets shown in Figure 2(b). In higher rates the per hop delay was measured to be generally also higher, implying a more loaded network due to more collisions. We also found that, as expected, the performance 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 less common nodes where utilized by the flow paths. In the simulated scenario, the area at the edges of the network is more dense (in terms of nodes per square meter) resulting in higher service times [9]. A final reason for these variances, might be that the collective path quality was the best for Loc.2. In Figure 2(c) we measured the number of path changes with different speeds of the sink when sensors transmit at a relatively low rate for a fixed time. A path change occurs when the route of a packet is different from the route of the previous packet. Even with this simple example we observe that maintaining a good path to the sink may require relatively large number of reconfigurations, increasing as the speed increases. These effects underline the requirement for both adaptive routing as well as load estimation techniques.

4.2

Proposed Routing in CoSMoS

Given this dynamic nature resulting from sink mobility, it is rather unclear how static routing techniques (such as routing trees) can be modified to adapt efficiently to sink relocations. Since in most sensor applications the sink is static, the routing tree is constructed by establishing explicit links between parent and child nodes. Downstream hops are chosen based on a routing metric which can be as simple as the hop count as in MultiHopRouter[26]. However, the lossy channel requires a dynamic, yet simplistic forwarding technique [7]. In MintRoute [32] 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 [33], the ETX variance is small, making it difficult to estimate, during that period, whether the sink is moving away or, in fact, approaching a node. In [16] the authors recognized the need for more reactive routing and proposed “solicitation” as a means for selecting the best next hop

R=

RSSImax − RSSIv RSSImax − RSSImin

RSSIv is the measured RSSI value and β > 1. The value of β can be determined empirically. To do this, we take a closer look at the properties of the link quality as the distance increases. Studies in [33, 15] 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 observing 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, i.e. eβ /2. Based on the above empirical observations, the beginning of the transitional region RSSItrans (about -92 to 1 The values RSSI max and RSSImin are provided in the platform manuals, e.g., for Mica2 they are -50 and -105 dbm respectively.

4

20

-50

18

-55

16

-60

12 10

12 10

-65 Cost

RSSI (dbm)

Cost

14

14

-70

8

-75

6

6

-80

4

4

-85

2

2

-90

8

0

0.2

0.4

0.6

0.8

1

0 0

10

20

30

R

Figure 3. Plot of the Link Cost Metric.

40

50

60

Time

0

5

10

15

20

25

30

35

40

Measurement number (2sec intervals)

Figure 4. RSSI as Mica2 node moves away.

-87 dbm [25]) 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. Utilizing the above link cost metric, a node k can maintain its minimum cost to the sink Sk iteratively. Sk is calculated simply as Sk = min{Ci + Si } for all neighbors i, where Ci is the measured cost of the link i to k. The next hop of k is, then, set to i. Finally, the sink has zero cost. We tested this technique under mobility by having a node, recording the RSSI values received from a mobile sink. In Figure 4 we plot representative results for a sink moving away from the nodes in an indoor environment. 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 less likely affect the cost 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 will be less likely considered as part of the selected path. Sink Updates: In this work we attempt to adapt the traffic to the mobility pattern, thus we assumed that the mobility path is not predefined. The sink, therefore, must periodically send advertisements from its current location so that the paths can be updated. We introduce a very low complexity technique aligned 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 independent update at a fixed interval τ ; however, it further maintains the ID of its closest neighbor by means of the RSSI metric. As soon as the closest neighbor changes, an update is automatically generated. The receiving nodes propagate the update immediately. 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

70

Figure 5. Cost as Mica2 node moves away.

the expected mobility pattern (pedestrian, robot movement, etc) and the node communication range. Extensions of this technique can be realized by considering the relative location given received signals from more than one neighbors. However, we find that the closest neighbor approach performed quite well as illustrated in our experiments in Sec. 6.

5

Joint Mobility and Congestion Aware Rate Allocation

Rate allocation techniques in sensor networks are tightly bound to congestion control. Additive Increase/Multiplicative Decrease (AIMD) has been widely used in real implementations [22, 28, 5]. However, these techniques assumed a static sink. In such a case, local node conditions such as queue size were shown to be rather accurate congestion indications due to longer traffic persistence along a path. Unfortunately, this is not the case when path rate changes are higher. Furthermore, changes to the path’s reliability is a consideration that has not been addressed in previous rate control schemes. We design a rate allocation technique implemented at the sources stemming from the intuitions of rate-limiting schemes [11] to avoid congestion. While securing congestion avoidance, we simultaneously attempt to distribute the available resources in a way that exploits beneficial sink locations. 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 [14]. Extending this idea, when the sink moves, it can be expected to be within a region of its neighboring nodes (e.g. between two different locations along its itinerary) for sufficient time to allow information exchange that will allow us to better estimate 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 5

ls ≤ λmin . If the source is also forwarding packets, it needs to transmit λmin − ls . We now extend our discussion to extracting the joint congestion and reliability rate regulation metric. Ideally, we would like to define a metric that allows a source to decide whether it is beneficial to transmit, considering both the congestion state as well as path reliability. We chose ¯ i.e. the averto utilize the average normalized RSSI R, age value R measured at each hop along a path as indication of the path reliability. In synergy with the routing ¯ locally as layer, a source node s can easily calculate R Cs ln( M ) s ¯s = R , where Cs is the cost of the route and Ms

causing congestion. We describe below a simple analysis that attempts to provide insights as to the representation of the load within a region. We approximate each node i as an M/M/1 queue. Let λi be defined as the average incoming packet rate (including locally generated traffic) and ti the average service time as observed at the local queue. Let us assume that a group of N nodes transmit within the same region. Let T be the expected service time for a packet in a region, calculated as the average of the service times of the nodes in the region, and Λ denote the average total traffic introduced in the region, calculated as the sum of all average rates, i.e., N  ti N  i=1 T = N and Λ = λi

β

the distance of the source (number of hops from the sink). The source rate can then be further regulated by considering the product of congestion and approximated reliability as λs ≤ (1 − R¯s ) · λmin . This is a rather pessimistic estimation of the maximum rate while, since R¯s is based on the RSSI, it is a less accurate metric than those based, say, on ETX. However, we reiterate that our idea is that by pessimistically reducing the rate at one source node we, in essence, increase the available capacity for the remaining set of flows. In particular, we favor sources with less average hop cost, thus effectively exploiting the newly released network resource.

i=1

We define the region’s resulting load P as the product: N N  1  P = ΛT = ti · λi (1) N i=1 i=1 From this last relation, to maintain stability, i.e., P < 1, we N  require that: N λi < N (2)  i=1 ti i=1 Equation 2 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. We propose a simple and rather conservative rate-limiting method in which nodes attempt to equally utilize the assessed resources. Formally, if the service rate is shared among all nodes equally, the N 

6. Experiments 6.1

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 100x100 field. A node acts as a sink and is either static or moving from Loc.1 to Loc.3 as shown in Figure 2(a). A total of 8 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. 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 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.) Macroscopic Results: We first perform a macroscopic analysis of the results of Figures 6 and 7. We plot the average rate and average throughput correspondingly with increasing sink speed as it moves between Loc.1 to Loc.3 in

λi

rate λk at a node k should be no higher than 1 λk <  . N

i=1

N

Regional Load Collection: Simulation

, i.e.,

ti

i=1

We note that all nodes including the sink participate in the described procedure. The participation of the sink is important since, as we discuss later, we did not employ RTS/CTS exchanges. Therefore, occurrences of the hidden terminal problem were observed. However, using the sink updates, the nodes become aware of other indirectly competing nodes at the region of the sink. Thus, although not eliminated, the problem is considerably reduced in the critical region of the sink. Source Rate Control: In order to allow for updates to propagate to the sources, each node piggybacks λk in periodic routing updates. In addition, each node collects the values from its (one-hop) region nodes and also includes the minimum value among all received rates including its local value. We term this minimum value λmin . In essence, λmin is the achievable rate at the path’s bottleneck. Thus, nodes along a path consider λmin only if received by a downstream node. Eventually, when a source node, say s, receives the value from its downstream node, it performs a similar operation with the main difference that it can actually reset its rate to the maximum rate level ls that satisfies 6

Optimal λmin

10 8 6 4 2 0 0

0.5

1

1.5

2

2.5

3

3.5

12

8 6 4 2

Optimal λmin

400 300 200 100

0

0 0

4

0.5

1

1.5

2

2.5

3

3.5

4

0

0.5

1

Speed (m/s)

Speed (m/s)

1.5

2

2.5

3

3.5

Figure 7. Average per Flow Throughput.

Figure 8. Average per Hop Delay for all Flows.

80

80

12

50 40 30 20

Source plus Forward: λ 70 Source plus Forward: λmin Forward Only: λ 60 Forward Only: λmin 50 40 30

10

0

0 5

10

15

20 25 Time (s)

30

35

(a) Low Congestion (5pps)

40

45

8 6 4

20

10 0

λmin Source 1 λmin Source 2

10 Rate (packets/s)

Source plus Forward: λ 70 Source plus Forward: λmin Forward Only: λ 60 Forward Only: λmin

4

Speed (m/s)

Figure 6. Average Rate Allocated at the Sources.

Rate (packets/sec)

Rate (packets/sec)

500

Optimal λmin

10

Avg Per Hop Delay (ms)

Avg Throughput (packets/s) per flow

Avg Rate (packets/s) per flow

12

2 0 0

5

10

15

20 25 Time (s)

30

35

(b) High Congestion (10pps))

40

45

0

5

10 15 Time (s)

20

25

(c) Mobility (10pps)

Figure 9. Responsiveness and Accuracy of Regional Load Collection. (a) and (b) are static scenarios. λmin is compared against the actual rate λ for low and high congestion. (c) shows the rate adaptivity of the technique under mobility (4m/s) for two different sources.

when the load is high, λmin indicates drastic rate reduction as shown in Fig. 9(b). We further observe the estimated rate when the sink is mobile in Fig. 9(c). The sink moves according to the same scenario simulated in Section 4.1, Fig. 2(b) and the maximum source rate is set to 10pps. 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. 9(c), 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.

Figure 2(a). 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 is performs well. Furthermore, the conservative rate allocation resulting to relatively less collisions, explains the lower average delay of the λmin technique seen in Figure 8. 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 Figures 9 (a) and (b) 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,

6.2

CoSMoS Evaluation: Mica2 Testbed

We have implemented our mechanism on motes [21], primarily to study practical issues in a realistic setting. We have implemented routing and rate control over MantisOS[20], a multi-modal operating system that nicely fits the real-time computation requirements of our approach. In particular, MantisOS allowed for transparent load measurement even when interrupts occur in separate threads such as reception or transmission. Data packets generated or received are stored in an application level FIFO queue buffer of size 10 (packets) before forwarded to the MAC layer. 7

used CSMA with a simple scheme (implemented in MantisOS) where a node checks whether the channel is “clear” before attempting to transmit else it backoff a bounded random time. Note that unlike the simulation experiments we did not include RTS/CTS exchanges. 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. 12, 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 Sec. 4.2. We found that too high an update rate, in fact, resulted 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.5s update interval (for any speed) along with the closest neighbor heuristic. We first attempt, in Fig. 14, to provide an intuition with respect to the operation of our approach. Using the joint R¯s λmin 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 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. In Fig. 15 we present the delivery ratio and average throughput at lower mobility level. The rate limiting technique only uses the congestion level to regulate the rate, while CoSMoS jointly utilizes congestion level and path quality information. 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. 15(b). An immediate observation is that, as the rate is increased, the base technique 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

10 9 8

5

6 7

4

25m 3

2 1

Figure 10. Indoor Node Layout.

Figure 11. The Sink on a Mobile RC car.

In this second part of our evaluation we test the techniques of CoSMoS in concert. This part is further broken down into tests pertaining to our routing technique and a part where we attempt to demonstrate the benefits of the joint congestion and reliability rate regulation proposed with CoSMoS. The nodes were set up on a floor at our institution (indoor environment) as shown in Figure 10. A total of 10 nodes where used covering the floor. The sink was a Mica2 node affixed to a mobile RC car (Fig. 11) 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. 10; the sink moves along the building corridors in the direction indicated by the line, from the 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 200m) 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 8

1

1

Fixed Interval Neighbor Update Heuristic

0.9

0.6

0.6 0.4

0.5 0.2 0.4

6 5 4 3 2 1

0.3

0 1

1.5

2

2.5

3

3.5

4

Static

Low Mobility

High Mobility

Update Interval (sec)

Figure 12. Update Interval (One source, 4pps).

0 0

20

40

60

80

100

Time (s)

Figure 13. Delivery Ratio with Variant mobility.

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. 16. Especially at higher rates, packets lost due to channel drops are still traverse a path partially. Thus, most of these packets contribute to congestion before being eventually lost. CoSMoS manages to balance congestion and reliability to achieve higher delivery ratios without hurting throughput. An interesting observation is that at higher mobility, CoSMoS seems to achieve higher throughput than at low mobility. As per our observations in Fig. 14, when the path cost is perceived high (due to frequent relocations) at some sources the rate is dropped dramatically. This allows the for sources with good quality to opportunistically transmit at high rates with virtually no interference, resulting eventually in an average increase in throughput.

7

Source ID 1 Source ID 5 Source ID 9

7 Max Rate (packets/sec)

Delivery Ratio

Delivery Ratio

0.8 0.7

8

Hop-Count CoSMoS Router

0.8

Figure 14. CoSMoS Operation: Source Rate Trace.

Networks, 2(1):1–22, 2004. [2] B. Akan and I. F. Akyildiz. Esrt: event-to-sink reliable transport in wireless sensor networks. IEE/ACM Trans. on Networking, 13(5):1003– 1016, 2005. [3] M. Ali, T. Suleman, and Z. A. Uzmi. MMAC: A mobilityadaptive, collision-free mac protocol for wireless sensor networks. In Proc. IEEE IPCCC, pages 401–407, Phoenix, Arizona, USA, 2005. [4] A. Chakrabarti, A. Sabharwal, and B. Aazhang. Using predictable observer mobility for power efficient design of sensor networks. In Proceedings of IEEE IPSN, pages 129–145, Palo Alto, CA, 2003. [5] C. T. Ee and R. Bajcsy. Congestion control and fairness for many-to-one routing in sensor networks. In SenSys, pages 148–161, Baltimore, MD, 2004. [6] S. Gandham, M. Dawande, R. Prakash, and S. Venkatesan. Energy efficient schemes for wireless sensor networks with multiple mobile base stations. In IEEE Globecom, pages 377–381, San Francisco, CA, 2003. [7] O. Gnawali, M. Yarvis, J. Heidemann, and R. Govindan. Interaction of retransmission, blacklisting, and routing metrics for reliability in sensor network routing. In Proc. IEEE SECON, pages 34–43, Santa Clara, CA, 2004. [8] M. Grossglauser and D. N. C. Tse. Mobility increases the capacity of ad hoc wireless networks. IEEE/ACM Trans. Netw., 10(4):477–486, 2002. [9] P. Gupta and P. Kumar. The capacity of wireless networks. IEEE Trans. on Information Theory, 46(2):388–404, 2000. [10] T. He, J. A. Stankovic, C. Lu, and T. F. Abdelzaher. SPEED: A stateless protocol for real-time communication in sensor networks. In Proc. of Int’l Conf. on Distributed Computing Systems, pages 45–55, Providence, RI, 2003. [11] B. Hull, K. Jamieson, and H. Balakrishnan. Mitigating congestion in wireless sensor networks. In SenSys, pages 134– 147, Baltimore, MD, 2004. [12] A. Kansal, A. A. Somasundara, D. D. Jea, M. B. Srivastava, and D. Estrin. Intelligent fluid infrastructure for embedded networks. In Proc. of 2nd Int’l conference on Mobile systems, applications, and services, pages 111–124, Boston, MA, 2004. [13] K. Karenos, V. Kalogeraki, and S. V. Krishnamurthy. A rate control framework for supporting multiple classes of traffic in sensor networks. In Proc. IEEE RTSS, pages 287–297, Miami, FL, 2005.

Research Opportunities and 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 presented extensive studies of the effects introduced by mobility and the need for explicit and intelligent rate control. We provide a new routing alternative and a joint congestion and reliability aware rate allocation metric that favors good paths and releases resources from unreliable paths. Via our experimental observations throughout our work, we have intensively attempted to expose new challenges and to motivate further research efforts. Further research opportunities lie at studying stochastic mobility patterns, multiple sinks, rate control techniques and novel routing and MAC layer protocols. While we concentrated on the experimental aspect, analytical bounds are also of great interest.

References [1] M. Abolhasan, T. A. Wysocki, and E. Dutkiewicz. A review of routing protocols for mobile ad hoc networks. Ad Hoc

9

1

Average Throughput (packets/sec)

0.8 Delivery Ratio

3.5

Basic Min Rate COSMOS

0.6 0.4 0.2 0

3

Basic Min Rate COSMOS

2.5 2 1.5 1 0.5

1

2

4

6 7 8 Rate (packets/sec)

9

10

1

(a) Average Delivery ratio.

2

4

6 7 8 Rate (packets/sec)

9

10

(b) Average Throughput.

Figure 15. Low mobility experiments, Speed ≈ 1m/s 1

Average Throughput (packets/sec)

0.8 Delivery Ratio

3.5

Basic Min Rate COSMOS

0.6 0.4 0.2 0

3

Basic Min Rate COSMOS

2.5 2 1.5 1 0.5 0

1

2

4

6 7 8 Rate (packets/sec)

9

10

1

(a) Average Delivery ratio.

2

4

6 7 8 Rate (packets/sec)

9

10

(b) Average Throughput.

Figure 16. High mobility experiments, Speed ≈ 2m/s [14] K. Karenos, V. Kalogeraki, and S. V. Krishnamurthy. Cluster-based congestion control for sensor networks. ACM TOSN, 2007, to appear. [15] B. Krishnamachari. Networking Wireless Sensors. Cambridge University Press, New York, NY, 2005. [16] S.-B. Lee, K. J. Kwak, and A. T. Campbell. Solicitationbased forwarding for sensor networks. In Proc. IEEE SECON, pages 90–99, Reston, VA, 2006. [17] C. Lu, G. Xing, O. Chipara, C.-L. Fok, and S. Bhattacharya. A spatiotemporal query service for mobile users in sensor networks. In IEEE ICDCS, pages 381–390, Columbus, Ohio, 2005. [18] J. Luo and J.-P. Hubaux. Joint mobility and routing for lifetime elongation in wireless sensor networks. In INFOCOM, pages 1735–1746, Miami, FL, 2005. [19] J. Luo, J. Panchard, M. Pi´orkowski, M. Grossglauser, and J.-P. Hubaux. Mobiroute: Routing towards a mobile sink for improving lifetime in sensor networks. In IEEE DCOSS, San Francisco, CA, 2006. [20] MantisOS. Multimodal networks for in-situ sensors. Available at mantis.cs.colorado.edu. [21] Crossbow mica motes. Available at www.xbow.com. [22] S. Rangwala, R. Gummadi, R. Govindan, and K. Psounis. Interference-aware fair rate control in wireless sensor networks. In ACM SIGCOMM, pages 63–74, Pisa, Italy, 2006. [23] R. Shah, S. Roy, S. Jain, and W. Brunette. Data mules: Modeling a three-tier architecture for sparse sensor networks. In Proc. of IEEE SNPA, pages 215–233, Seattle, WA, 2003. [24] A. A. Somasundara, A. Ramamoorthy, and M. B. Srivastava. Mobile element scheduling for efficient data collection in

[25] [26] [27]

[28] [29]

[30]

[31]

[32] [33]

10

wireless sensor networks with dynamic deadlines. In Proc. IEEE RTSS, pages 296–305, Lisbon, Portugal, 2004. K. Srinivasan and P. Levis. Rssi is under-appreciated. In Proc. EmNets, Cambridge, MA, 2006. TinyOS. Operating environment for embedded networked sensors. Available at www.tinyos.net. Z. Vincze, D. Vass, R. Vida, A. Vid´acs, and A. Telcs. Adaptive sink mobility in event-driven multi-hop wireless sensor networks. In Proc. of Int’l conf. on Integrated internet ad hoc and sensor networks, page 13, Nice, France, 2006. C.-Y. Wan, S. B. Eisenman, and A. T. Campbell. CODA: congestion detection and avoidance in sensor networks. In SenSys, pages 266–279, Los Angeles, CA, 2003. C.-Y. Wan, S. B. Eisenman, A. T. Campbell, and J. Crowcroft. Siphon: overload traffic management using multi-radio virtual sinks in sensor networks. In Proc. of SenSys, pages 116–129, San Diego, CA, 2005. C. Wang, K. Sohraby, and B. Li. Sentcp: A hop-by-hop congestion control protocol for wireless sensor networks. In IEEE INFOCOM 2005 (Poster), pages 107–114, Miami, FL, 2005. W. Wang, V. Srinivasan, and K. C. Chua. Using mobile relays to prolong the lifetime of wireless sensor networks. In Proc. of MOBICOM, pages 270–283, Cologne, Germany, 2005. A. Woo, T. Tong, and D. E. Culler. Taming the underlying challenges of reliable multihop routing in sensor networks. In SenSys, pages 14–27, Los Angeles, CA, 2003. M. Zuniga and B. Krishnamachari. Analysing the transitional region in low-power wireless links. In Proc. IEEE SECON, pages 517– 526, Santa Clara, CA, 2004.