Skip to Main Content
Sensor networks are usually designed and optimized for a specific functionality, and the nature of tasks on different nodes and the pattern of communication between nodes is known at design time. We are investigating a design approach for sensor networks that involves the creation of robust and energy-efficient protocols for a library of general communication primitives. Such a library will hide low-level networking details and provide building blocks for the end user who can then focus on high level design of the application. In this paper, we consider single hop sensor networks with multiple data channels, and define and evaluate the performance of a simple and energy-efficient protocol for a general and powerful primitive called (N, p, k1, k2) routing. This primitive denotes the transfer of N packets among p nodes with each node transmitting at most k1 packets and each node expecting to receive at most k2 packets. One-to-all (broadcast), all-to-one (gather), many-to-many, etc., are special cases of (N, p, k1, k2) routing. We use a separate low-power control channel for coordination among nodes. Simulation results show that our protocol leads to very high utilization of the available data bandwidth, and is also energy balanced. Fault-tolerant extensions of the protocol are also discussed.