Sample menu:



Md. Arafatur Rahman

Assistant Professor
Faculty of Computer Systems & Software Engineering
University Malaysia Pahang

Formar Postdoctoral Research Fellow
Dept. of Biomedical Electronics and Telecommunications Engineering
University of Naples Federico II

D2CARP Protocol

The Dual Diversity Cognitive Ad-hoc Routing Protocol (D2CARP) is a routing protocol designed for Cognitive Radio Ad-hoc Networks, which takes into account the local observations of PU activity. The main feature of D2CARP is to jointly exploit the path and spectrum diversity in routing. This feature allows CUs to switch dynamically among different paths and channels accounting for the local route decisions during the data forwarding time. As a consequence, D2CARP is able to adapt to dynamic scenarios caused by PU activity.

A slightly version of this protocol has been used in the following pubblication:

Md. Arafatur Rahman, Marcello Caleffi and Luigi Paura, "Joint path and spectrum diversity in cognitive radio ad-hoc networks", EURASIP Journal on Wireless Communications and Networking, in press. doi:10.1186/1687-1499-2012-235

For further information, we also refer the the following reference:

A. S. Cacciapuoti, C. Calcagno, M. Caleffi, L. Paura, "CAODV: Routing in Mobile Ad-hoc Cognitive Radio Networks", Proc. of IEEE IFIP Wireless Days 2010, Venice, Italy, October 20-22, 2010.

Implementation of D2CARP in Ns-2

This protocol is implemented inside the AODV routing protocol using the Ns-2 version 2.34. For implementation, Please do the follwoing steps.

First, we extend ns-2 for multi-radio multi-channel environments according to R. A. Calvo and J. P. Campo, "Adding multiple interface support in ns-2." For that, we need to open a bash shell and type at prompt (assuming that ns-2 has been installed in /usr/share/ns-2.34 folder):

cd /usr/share/ns-2.34
make clean
patch -p0 < ./Multi-Channel.diff

Then D2CARP is addopted inside AODV Code. For that, type at prompt:

cd /usr/share/ns-2.34
patch -p0 < ./D2CARP.diff

Then you have to recompile ns, opening the bash shell and typing at prompt:

cd /usr/share/ns-2.34/
make clean
make install

You could use the following tcl file in order to simulate a network of 16 nodes with a random data pattern:


I don't provide any support for D2CARP code, so please avoid to mail me.