SLEDS: A DSL for Data-Centric Storage on Wireless Sensor Networks (original) (raw)
Related papers
ProSe - A Programming Tool for Rapid Prototyping of Sensor Networks
2007 2nd IEEE Workshop on Networking Technologies for Software Define Radio Networks, 2007
We focus on application of abstract network protocols towards prototyping sensor networks. Such abstract programs exist for several applications, e.g., routing, tracking, dissemination, etc. These programs are often specified in terms of event-driven actions where the program responds to actions in the environment or previous actions taken by the program. Hence, they are easy to specify, verify and manipulate. However, they cannot be applied directly in sensor networks as the computation model in sensor networks (write all with collision) differs from that (read/write or shared memory) used in abstract programs. Towards this end, we propose ProSe, a programming tool that enables the designers to (1) specify protocols in simple, abstract models, (2) reuse existing fault-tolerant/self-stabilizing protocols from the literature, and (3) automatically generate and deploy code. ProSe hides the deficiencies of existing programming platforms that require the designers to explicitly deal with buffer management, stack management, and flow control. As a result, we expect that ProSe will enable rapid prototyping and quick deployment of protocols.
Publish/subscribe in wireless sensor networks based on data centric storage
Proceedings of the 1st International Workshop …, 2009
The rapid development of Wireless Sensor Networks (WSN) technologies gave rise to the need for abstraction mechanisms that can simplify the data management tasks. Under this respect, the publish/subscribe paradigms play an important role since they can be used to abstract the WSN in terms that are closer to applicative needs. On the other hand, Data Centric Storage systems (DCS) can provide a low-level support to the implementation of publish/subscribe systems in WSN. In this paper we consider different implementations of publish/subscribe systems, based either on DCS or basic network primitives and we compare the resulting approaches in terms of functionalities and performance.
A Walk through Sensor Network Programming Models
Theoretical Frameworks and Practical Applications, 2012
The widespread use of sensor networks in a range of applications has given rise to various programming approaches. It is a long standing concept that the application programmer of a sensor network should be shielded, as much as possible, from the questions of communications and systems architecture, that is, the low level details. In this chapter, the authors survey existing programming models for sensor networks and classify them by following a layered approach, based on their level of abstractions. With their approach they endeavor to lay out a clear guideline to choose the right approach for programming sensor networks for application development, thus potentially alleviating the heavy burden for programmers.
CRIMESPOT: Language Support for Programming Interactions among Wireless Sensor Network Nodes
An emerging breed of wireless sensor network applications tasks nodes not only with sensing, but also with reacting to sensor readings. Event-based middleware lends itself to implementing such applications. It offers developers finegrained control over how an individual node interacts with the other nodes of the network. However, this control comes at the cost of event handlers which lack composability and violate software engineering principles such as separation of concerns. In this paper, we present CRIMESPOT as a domain-specific language for programing WSN applications on top of eventdriven middleware. Its node-centric features enable programming a node's interactions through declarative rules rather than event handlers. Its network-centric features support reusing code within and among WSN applications. Unique to CRIMESPOT is its support for associating application-specific semantics with events that carry sensor readings. These preclude transposing existing approaches that address the shortcomings of event-based middleware to the domain of wireless sensor networks.
Reliable and efficient programming abstractions for wireless sensor networks
ACM SIGPLAN Notices, 2007
It is currently difficult to build practical and reliable programming systems out of distributed and resource-constrained sensor devices. The state of the art in today's sensornet programming is centered around a component-based language called nesC. nesC is a node-level language-a program is written for an individual node in the network-and nesC programs use the services of an operating system called TinyOS. We are pursuing an approach to programming sensor networks that significantly raises the level of abstraction over this practice. The critical change is one of perspective: rather than writing programs from the point of view of an individual node, programmers implement a central program that conceptually has access to the entire network. This approach pushes to the compiler the task of producing node-level programs that implement the desired behavio. We present the Pleiades programming language, its compiler, and its runtime. The Pleiades language extends the C language wit...
Building up to macroprogramming: an intermediate language for sensor networks
2005
There is widespread agreement that a higher level programming model for sensor networks is needed. A variety of models have been developed, but the community is far from consensus. We propose an intermediate language to speed up the exploration of this design space. Our language, called the Token Machine Language (TML) can be targeted by compilers for higher level systems. TML provides a layer of abstraction for a lower-level runtime environment, such as TinyOS.
Programming models for sensor networks: A survey
ACM Transactions on Sensor Networks, 2008
Sensor networks have a significant potential in diverse applications some of which are already beginning to be deployed in areas such as environmental monitoring. As the application logic becomes more complex, programming difficulties are becoming a barrier to adoption of these networks. The difficulty in programming sensor networks is not only due to their inherently distributed nature but also the need for mechanisms to address their harsh operating conditions such as unreliable communications, faulty nodes, and extremely constrained resources. Researchers have proposed different programming models to overcome these difficulties with the ultimate goal of making programming easy while making full use of available resources. In this article, we first explore the requirements for programming models for sensor networks. Then we present a taxonomy of the programming models, classified according to the level of abstractions they provide. We present an evaluation of various programming models for their responsiveness to the requirements. Our results point to promising efforts in the area and a discussion of the future directions of research in this area.
Oasis: A programming framework for service-oriented sensor networks
2007
Wireless sensor networks consist of small, inexpensive devices which interact with the environment, communicate with each other, and perform distributed computations in order to monitor spatio-temporal phenomena. These devices are ideally suited for a variety of applications including object tracking, environmental monitoring, and homeland security. At present, sensor network technologies do not provide off-the-shelf solutions to users who lack low-level network programming experience. Because of limited resources, ad hoc deployments, and volatile wireless communication links, the development of distributed applications require the combination of both application and system-level logic. Programming frameworks and middleware for traditional distributed computing are not suitable for many of these problems due to the resource constraints and interactions with the physical world.
Programming wireless sensor networks
ACM Computing Surveys, 2011
Wireless sensor networks (WSNs) are attracting great interest in a number of application domains concerned with monitoring and control of physical phenomena, as they enable dense and untethered deployments at low cost and with unprecedented flexibility.