It is often not known beforehand how an ad-hoc or mesh network will be used after deployment or network use may change during the life time of a network. Further, many different users or applications may use the same network simultaneously, each with its own unique QoS requirements. The majority of existing routing protocols use only one or two fixed QoS metrics for route selection (e.g., in a survey of over 40 routing protocols for ad-hoc networks, we found only 10% that use three or four QoS metrics).
Toward this end, CMR (Configurable Ad-hoc and Mesh Router) is a toolkit that allows users/applications to specify the required QoS metrics during route discovery. Our research is concerned with ease-of-use, efficiency, extensibility, and resource management. CMR is available as Linux middleware toolkit that can easily be deployed and used. Our group has used CMR on Linux-based Crossbow Stargate mesh routers and laptops.
Our ongoing and future work will implement and study numerous routing protocols using the CMR toolkit. We believe that CMR is an excellent tool for rapid prototyping of new routing algorithms, but also a great tool to teach concepts and differences of routing layer protocols. Further, our work studies resource management (including admission control) algorithms for CMR-based ad-hoc networks. Finally, CMR will be extended to cover other protocol layers besides the routing layer.