IEEE COMMUNICATIONS LETTERS, VOL. 9, NO. 3, MARCH 2005
285
Peer-to-Peer Middleware for Bandwidth Allocation in Sensor Networks Luca Caviglione and Franco Davoli, Member, IEEE
Abstract— In sensor networks, both bandwidth allocation and Bandwidth on Demand (BoD) schemes may be adopted, on top of a generic multiple access protocol, for the purpose of differentiating various categories of devices that produce nonhomogenous data flows. At the same time, the modern Internet exhibits a trend toward an even more distributed architectural approach; decentralized architectures are gaining more and more popularity, and middleware solutions are widely adopted. Among them, the peer-to-peer (p2p) networking paradigm allows obtaining a redundant architecture that reacts well against failure. Starting from p2p principles, this letter introduces a novel middleware-based algorithm for configuring and managing bandwidth in a sensor network. Index Terms— Peer-to-peer, sensor networks, distributed resource allocation, overlay network.
I. I NTRODUCTION
M
ANYof the applications adopted in the modern Internet rely on a client-server framework. Usually, a centralized entity manages requests, processes them by applying some kind of policy, and then sends back an answer to the original requestor. This approach is simple and easy to understand, but centralized architectures introduce many hazards: there is a single point of failure and the architecture does not scale well. The antithetical approach is the distributed one: there are no centralized entities, but the functionalities are spread among all the network participants. The exasperation of this concept brings to p2p networking [1], [2], where all the hosts have the same capabilities and the same responsibilities. However, p2p networking introduces some problems: the topology is quite trivial, and the lack of a hierarchical organization brings to major difficulties in developing any kind of algorithms. One of the key problems in modern device-networks concerns the management of the bandwidth available at the physical level. This is not the classical Quality of Service (QoS) problem. QoS techniques are powerful, but resource intensive, and rely on a well-organized network infrastructure. Conversely, sensors are usually equipped with low computational resources and sophisticated resource reservation policies are often not applicable. Sensor networks are based on wireless technology: among others, the most adopted one seems to be the IEEE 802.11 [3] family. Sensors are added or removed “on the fly,” and might stop working properly at any time. Also, Manuscript received May 17, 2004. The associate editor coordinating the review of this letter and approving it for publication was Carla-Fabiana Chiasserini. This work was supported by the Italian National Research Council (CNR) under the IS-MANET project. The authors are with D.I.S.T. University of Genoa, Italy (e-mail:
[email protected],
[email protected]). Digital Object Identifier 10.1109/LCOMM.2005.03006.
sensors often rely on battery power supply and, consequently, battery life is a critical issue. Since a particular device might stop working due to power shortage at any time, distributing BoD functionalities among all the sensors will improve fault tolerance and distribute complexity. Furthermore, wireless sensor networks are being adopted for a variety of applications and an appropriate middleware must be developed. There is the need of a powerful system abstraction to develop and maintain services on top of such infrastructure. In this perspective, [4] presents many innovative solutions and guidelines for middleware development. The proposed algorithm solves the problem of bandwidth reservation and utilization, allowing coordinated bandwidth usage and releasing resources when they are no longer needed. In addition, the bandwidth brokering is presented as a “distributed service”: the application layer might “look down” and “see” a BoD service. The letter is structured as follows: Section II introduces the operative scenario and the protocol architecture. Section III reports simulation results and, finally, Section IV contains the conclusions and indications for future work. II. O PERATIVE S CENARIO AND P ROTOCOL A RCHITECTURE As previously stated, the proposed algorithm is deployed and tested in a scenario concerning a wireless sensor network. In this perspective, a “static,” sensor network is assumed: the node mesh will not change its topology during its lifetime (nodes may turn on and off, but no roaming through multiple service areas is considered). In particular, the algorithm relies on information routability: a proper routing algorithm is assumed (e.g., Ad hoc On-demand Distance Vector, AODV [5]), that allows delivering proper control information. A sensor, which is a node of the networked infrastructure, may be added or removed during the network lifetime. Sensors are usually simple devices: an end-to-end bandwidth reservation or signaling strategy a la RSVP is difficult to implement on devices with limited resources and capabilities (e.g., limited computational resources for scheduling and limited storage for flows state). In addition, there are many concerns about configuration issues. The Bandwidth Allocation middleware offers only a bandwidth allocation service, more details of which can be found in [6]. Each node that uses the proposed algorithm implements a bandwidth marshal that checks for the correct bandwidth usage. The overall architecture could be assumed as a distributed bandwidth shaper, without any central point of coordination. Moreover, the algorithm acts on the application layer independently of the actual Medium
c 2005 IEEE 1089-7798/05$20.00
286
IEEE COMMUNICATIONS LETTERS, VOL. 9, NO. 3, MARCH 2005
BMP
(a) Client-server
Fig. 1.
BMP
(b) Hybrid phase
BMP
(c) Pure p2p
Different snapshots of the overlaid network.
Access Control (MAC) resulting in a “loose QoS,” support, but without any real-time guarantee (as instead provided by other distributed algorithms, such as Virtual Clock [7]). The proposed algorithm deals with a virtual topology layout, i.e., with “overlaid networks,” rather than with the actual physical network infrastructure. The resulting network infrastructure could be established without any external help. Some useful parameters must be known before starting the algorithm, according to the fact that the total amount of bandwidth manageable by the algorithm must be known apriori. First, there is the need of individuating each host in an unambiguous way. Each sensor must be identified with a unique ID, randomly selected from an ID pool. After the IDs’ generation phase, a master Bandwidth Mediation Point (BMP) must be established. Each host broadcasts its ID within the local link: the host with the lowest ID is elected as BMP. To minimize the traffic and the latency introduced by the election phase of the BMP, a snoop-based protocol is proposed, whereby a node does not propagate its ID if it has already received a lower one. Actually, the BMP is employed only to kickstart the network, allowing each sensor to build the virtual topology. At this stage, the BMP “owns,” all the available bandwidth, except the fraction allocated for the signaling traffic. Each node asks the BMP for bandwidth. After some cycle, the bandwidth will be distributed among the sensors. The core of the algorithm is as follows. If a node asks for more bandwidth, it will generate a query to all the nodes: basically the architecture resembles a file-sharing system, but instead of exchanging files it exchanges bandwidth. Each node will send back some bandwidth according to availability or a well-defined traffic plan. The p2p paradigm is then applied both to the communication phase (i.e., no central authority mediates the interaction between two sensors) and to the bandwidth ownership relation (i.e., a centralized controller owns the bandwidth). As depicted in Fig. 1, the overlaid network organization evolves during the algorithm’s lifetime; the very first snapshot, depicted in (a), shows that the virtual network acts on a client-server basis (where the BMP acts as a server). Later, as shown in (b), the bandwidth becomes distributed among quite a few sensors in the network. The BMP still plays a role, because a relevant amount of the resource is under its supervision. Both in (a) and (b) there is a server-like entity that “owns,” the resource (after the election): the key difference between (a) and (b) is that (a) represents a fully centralized approach, while (b) represents a hybrid scenario or a mediated p2p-network. The BMP delivers bandwidth, but normal sensors could directly manage
TABLE I OVERALL TRAFFIC STATISTICS FOR “ OVERLAY ” MANAGEMENT. N. of Nodes [unit]
Peak [kbit/s]
PwR [kbit/s]
5 10 15 20 25
6.1 10.3 12.4 20.3 22.7
18.2 15.4 60.7 79.8 100.1
a fraction of bandwidth. Finally, in (c) all the bandwidth has been distributed among all the requestors: each node now can act as a client (consuming bandwidth and asking for more) and server (delivering bandwidth); the resulting organization is without any unique central point and each sensor should be intended as “bandwidth peer.” The network kick-start phase is introduced to establish who is the very first owner of the bandwidth resource when the algorithm starts. Bandwidth policies are not strictly related to the proposed algorithm and some constraints are needed to avoid starvation and uncontrolled bandwidth usage. III. S IMULATION RESULTS In order to investigate the effectiveness of the proposed solution, a software simulator built from scratch is adopted. The simulator relies on a discrete time paradigm and the time step is equal to 250 ms. To perform the simulation analysis, we adopted the following parameter values. For the sake of clarity only five minutes of the overall simulation is presented. For the MAC layer an IEEE 802.11b standard is assumed. To obtain a realistic simulation we have limited the available bandwidth, according to the fact that, in most cases, the 802.11b standard is unable to keep a sustained speed of 11 Mb/s, but rather tends to stabilize around a maximum 5 Mb/s, as reported in [8]. In addition, sensors are usually deployed in outdoor environments, where limiting effects are present: multi-path effects, shadowing, electromagnetic noise and attenuation introduced by environmental characteristics, such as water content present in the “green vegetation,” The sensors’ deployment is assumed static: sensors will never change their spatial location, and so a typical, end-to-end, constant delay, equal to 150 ms is assumed, computed as the sum of the propagation delay and the time latencies introduced by the devices. The algorithm acts at the application level and, in this perspective, a simplified model is adopted; the channel is modeled as a “delay*bandwidth” pipe. Moreover, this model is suitable with the proposed architecture: actually, the presence of a buffer hierarchy from the application level to the physical interface buffer tends to hide possible fluctuations introduced by the CSMA/CA multiple access protocol. The behavior of each sensor is then modeled with two traffic patterns: one representative of the traffic generated by the BoD algorithm and one related to the actual data transfer. The latter is assumed as 1 MB file transfer: this is representative of a high end, mission critical sensor that collects a big amount of data with a good on-board storage capacity. Only a data transfer at a time can be active at each sensor, and no other requests are generated during the entire transmission. Transfers may
CAVIGLIONE and DAVOLI: PEER-TO-PEER MIDDLEWARE FOR BANDWIDTH ALLOCATION IN SENSOR NETWORKS
Overall signaling traffic 120
Overall signaling traffic Signaling traffic [kbit/s]
100
80
60
40
20 0 1
61 121 181 241 301 361 421 481 541 601 661 721 781 841 901 961 1021 1081 1141
Time step [250 ms]
Fig. 2.
values over a total of 70 runs. Fig. 2 shows the background traffic due to the signaling flows to keep the overlay “up and running” when 25 nodes populate the network: it represents the temporal evolution of a single realization. The signaling appears as latent traffic, due to state information and BoD requests. Note that the signaling traffic is equal to 3.5 kbit/s and the peaks are about 100 kbit/s, owing to reconfiguration operations on the overlay. Fig. 3, which also depicts a temporal evolution, illustrates the bandwidth sharing among three different traffic classes with increasing priority from 3 to 1, with 25 sensors: five of Class 1, 15 of Class 2, and five of Class 3. In addition, Class 1 sensors usually wait only about 500 ms to obtain the requested resource.
Background traffic used to maintain the “overlay.”
IV. C ONCLUSION
Bandwidth sharing [three classes] 70
Class 1 Class 2 Class 3
60
Bandwidth percentage
287
50 40
In this letter, we have presented a BoD algorithm that allows obtaining some QoS-like bandwidth reservation mechanism on a simple sensor network. Future developments aim at extending the approach to multi-clustered and multiple overlaid network, to obtain an efficient priority management.
30
R EFERENCES
20 10 0 0
61 121 181 241 301 361 421 481 541 601 661 721 781 841 901 961 1021 1081 1141
Time step [250 ms]
Fig. 3.
Bandwidth sharing when three classes are present.
be generated at “free,” sensors at each time step, following a Bernoulli process, with generation parameter p=0.5. Table I depicts worst-case results. “Peak” is the maximum peak of the signaling traffic and “PwR” is the “peak when recovering” traffic, which is the maximum resource usage by the signaling flow when reconfiguration operations on the overlay (e.g., a node crashes or exhausts its battery, the BMP relinquishes the role, ) are performed. These columns contain the worst-case
[1] A. Oram, Ed., Peer-to-Peer: Harnessing the Power of Disruptive Technologies, O’Reilly, March 2001. [2] L. Caviglione, “The ’Dark Side’ and the ’Force’ of the peerto-peer computing saga,” p2p Journal, pp. 1-11, Jan. 2004 (http://www.p2pjournal.com). [3] IEEE 802.11 Working Group, http://grouper.ieee.org/groups/802/11/. [4] IEEE Network, special issue on “Middleware technologies for future communication networks,” vol. 18, Jan.-Feb. 2004. [5] C. Perkins, E. Belding-Royer, and S. Das, “Ad hoc On-demand Distance Vector (AODV) routing,” IETF, RFC 3561, July 2003. [6] L. Caviglione, F. Davoli , “A peer-to-peer bandwidth allocation scheme for sensor networks,” presented at Internat. Symp. on Performance Evaluation of Computer and Telecommun. Syst. (SPECTS04), San Jose, CA, July 2004. [7] L. Zhang, “VirtualClock: a new traffic control algorithm for packet switching networks,” ACM Trans. Comput. Syst., vol. 9, pp. 101-124, May 1991. [8] M. Heusse, F. Rousseau, G. Berger-Sabbatel, and A. Duda, “Performance anomaly of 802.11b,” in Proc. IEEE INFOCOM 2003, San Francisco, CA, March 2003.