In this paper, we propose a distributed congestion control algorithm for tree based communications in wireless sensor networks, that seeks to adaptively assign a fair and efficient transmission rate to each node. In our algorithm, each node monitors its aggregate output and input traffic rate. Based on the difference of the two, a node then decides to increase (if the output rate is more) or decrease (if the input rate is more) the bandwidth allocable to a flow originating from itself and to those being routed through it. Since the application requirements in sensor network follow no common trait, our design abstracts the notion of fairness, allowing for the development of a generic utility controlling module. Such separation of the utility and fairness controlling modules enable each one to use a separate control law, thereby portraying a more flexible design. The working of our congestion control is independent of the underlying routing algorithm and is designed to adapt to changes in the underlying routing topology. We evaluate the performance of the algorithm via extensive simulations using an event-driven packet level simulator. The results suggest that the proposed protocol acquires a significantly high goodput of around 95% of the actual transmission rate, converges quickly to the optimal rate, and attains the desired fairness.
- Congestion control
- Distributed algorithms
- Sensor networks
ASJC Scopus subject areas
- Computer Networks and Communications