Abstract
The literature on programming sensor networks has focused so far on providing higher-level abstractions for expressing local node behavior. Kairos is a natural next step in sensor network programming in that it allows the programmer to express, in a centralized fashion, the desired global behavior of a distributed computation on the entire sensor network. Kairos’ compile-time and runtime subsystems expose a small set of programming primitives, while hiding from the programmer the details of distributed-code generation and instantiation, remote data access and management, and inter-node program flow coordination. In this paper, we describe Kairos’ programming model, and demonstrate its suitability, through actual implementation, for a variety of distributed programs—both infrastructure services and signal processing tasks—typically encountered in sensor network literature: routing tree construction, localization, and object tracking. Our experimental results suggest that Kairos does not adversely affect the performance or accuracy of distributed programs, while our implementation experiences suggest that it greatly raises the level of abstraction presented to the programmer.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Elson, J., Girod, L., Estrin, D.: Fine-grained network time synchronization using reference broadcasts. In: OSDI (2002)
Savvides, A., Han, C., Srivastava, S.: Dynamic Fine-Grained localization in Ad-Hoc networks of sensors. In: MOBICOM (2001)
Woo, A., Tong, T., Culler, D.: Taming the underlying challenges of reliable multihop routing in sensor networks. In: SenSys (2003)
Xu, N., Rangwala, S., Chintalapudi, K., Ganesan, D., Broad, A., Govindan, R., Estrin, D.: A wireless sensor network for structural monitoring. In: SenSys (2004)
Mainwaring, A., Polastre, J., Szewczyk, R., Culler, D., Anderson, J.: Wireless sensor networks for habitat monitoring. In: WSNA (2002)
Cerpa, A., Elson, J., Estrin, D., Girod, L., Hamilton, M., Zhao, J.: Habitat monitoring: application driver for wireless communications technology. In: SIGCOMM Comput. Commun. Rev. (2001)
Whitehouse, K., Sharp, C., Brewer, E., Culler, D.: Hood: a neighborhood abstraction for sensor networks. In: MobiSys (2004)
Welsh, M., Mainland, G.: Programming sensor networks using abstract regions. In: NSDI (2004)
Madden, S., Franklin, M.J., Hellerstein, J., Hong, W.: TAG: A tiny AGgregation service for ad-hoc sensor networks. In: OSDI (2002)
Madden, S., Franklin, M.J., Hellerstein, J.M., Hong, W.: The design of an acquisitional query processor for sensor networks. In: SIGMOD (2003)
Fung, W.F., Sun, D., Gehrke, J.: Cougar: the network is the database. In: SIGMOD (2002)
Adve, S.V., Gharachorloo, K.: Shared memory consistency models: A tutorial. IEEE Computer 29(12), 66–76 (1996)
Gummadi, R., Gnawali, O., Govindan, R.: Macro-programming Wirless Sensor Networks using Kairos, USC CS Technical Report Number 05-848 (2005), http://www.cs.usc.edu/Research/ReportsList.htm
Reich, J., Liu, J., Zhao, F.: Collaborative in-network processing for target tracking. In: EURASIP (2002)
Liu, J., Chu, M., Liu, J., Reich, J., Zhao, F.: State-centric programming for sensor and actuator network systems. IEEE Perv. Computing (2003)
Cheong, E., Liebman, J., Liu, J., Zhao, F.: Tinygals: a programming model for event-driven embedded systems. In: SAC (2003)
Abdelzaher, T., Blum, B., Cao, Q., Chen, Y., Evans, D., George, J., George, S., Gu, L., He, T., Krishnamurthy, S., Luo, L., Son, S., Stankovic, J., Stoleru, R., Wood, A.: Envirotrack: Towards an environmental computing paradigm for distributed sensor networks. In: ICDCS (2004)
Bakshi, A., Ou, J., Prasanna, V.K.: Towards automatic synthesis of a class of application-specific sensor networks. In: CASES (2002)
Bakshi, A., Prasanna, V.K.: Algorithm design and synthesis for wireless sensor networks. In: ICPP (2004)
Kumar, R., Wolenetz, M., Agarwalla, B., Shin, J., Hutto, P., Paul, A., Ramachandran, U.: Dfuse: a framework for distributed data fusion. In: SenSys (2003)
Newton, R., Welsh, M.: Region streams: Functional macroprogramming for sensor networks. In: DMSN (2004)
http://www.cs.berkeley.edu/projects/parallel/castle/split-c/
Boulis, A., Han, C., Srivastava, M.B.: Design and implementation of a framework for efficient and programmable sensor networks. In: MobiSys (2003)
Greenstein, B., Kohler, E., Estrin, D.: A sensor network application construction kit (SNACK). In: SenSys (2004)
Hui, J.W., Culler, D.: The dynamic behavior of a data dissemination protocol for network programming at scale. In: SenSys (2004)
Levis, P., Culler, D.: Maté: a tiny virtual machine for sensor networks. In: ASPLOS-X (2002)
Liu, T., Sadler, C.M., Zhang, P., Martonosi, M.: Implementing software on resource-constrained mobile sensors: experiences with impala and zebranet. In: MobiSys (2004)
Terry, D.B., Theimer, M.M., Petersen, K., Demers, D., Spreitzer, M.J., Hauser, C.: Managing update conflicts in Bayou, a weakly connected replicated storage system, December 1995, pp. 172–183 (1995)
Levis, P., Patel, N., Culler, D., Shenker, S.: Trickle: A self-regulating algorithm for code propagation and maintenance in wireless sensor networks. In: NSDI (2004)
De Couto, D.S.J., Aguayo, D., Bicket, J., Morris, R.: A high-throughput path metric for multi-hop wireless routing. In: Proceedings of the 9th ACM International Conference on Mobile Computing and Networking (MobiCom 2003), San Diego, California (September 2003)
Rossum, G.v., Drake Jr, F.L. (eds.): Extending and embedding the python interpreter, http://docs.python.org/ext/ext.html
Elson, J., Bien, S., Busek, N., Bychkovskiy, V., Cerpa, A., Ganesan, D., Girod, L., Greenstein, B., Schoellhammer, T., Stathopoulos, T., Estrin, D.: Emstar: An environment for developing wireless embedded systems software. CENS-TR-9 (2003)
Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D., Pister, K.: System architecture directions for networked sensors. SIGOPS Oper. Syst. Rev. (2000)
Ye, W., Heidemann, J.: Medium access control in wireless sensor networks. ISI-TR-580 (2003)
Heidemann, J., Silva, F., Estrin, D.: Matching data dissemination algorithms to application requirements. In: SenSys (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gummadi, R., Gnawali, O., Govindan, R. (2005). Macro-programming Wireless Sensor Networks Using Kairos . In: Prasanna, V.K., Iyengar, S.S., Spirakis, P.G., Welsh, M. (eds) Distributed Computing in Sensor Systems. DCOSS 2005. Lecture Notes in Computer Science, vol 3560. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11502593_12
Download citation
DOI: https://doi.org/10.1007/11502593_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26422-4
Online ISBN: 978-3-540-31671-8
eBook Packages: Computer ScienceComputer Science (R0)