The performance evaluation methodology of a large number of routing protocols for cognitive radio networks (CRNs) suffers from two main limitations: (i) the majority of the proposed protocols have not been evaluated against each other but only against some "strawman" protocol without sensing capabilities. Moreover, each protocol has been evaluated using a different evaluation methodology tailored to its specific design goals. As a result, little is known about the relative performance of all these protocols, let alone the tradeoffs among their different design goals. (ii) Most of these protocols have only been evaluated in wireless simulators. While the use of simulators allows for rapid and large-scale evaluation, it has also lead to a number of unrealistic assumptions (e.g., multiple channels available on every node, availability of an always-on control channel for coordination, perfect spectrum sensing capabilities, perfect timing synchronization, etc.).
We are interested in the design and implementation of practical CRN routing protocols that can be deployed over off-the-shelf hardware. As a first step towards this direction, we conducted the first empirical performance study of three state-of-the-art CRN protocols using both a simulator (ns-2) and a testbed based on the USRP2 platform, under the same realistic set of assumptions. Our study demonstrated the need for self-adaptive protocols that choose different link/path routing metrics in different scenarios, in an online manner; we are currently working towards this direction. Our design will also be guided by the new 802 standards on cognitive wireless networking (802.22 for wireless regional area networks and 802.11af for white space WiFi).