Improved Ant Routing Algorithm in Cognitive Radio Networks 1
1,2
1
Zhaoxia Song , Bin Shen , Zheng Zhou , Kyung Sup Kwak
2
1
Key Lab of Universal Wireless Communications, MOE Wireless Network Lab, Beijing University of Posts and Telecommunications Beijing 100876, China E-mail:
[email protected],
[email protected] 2 UWB ITRC, Inha University, Incheon, 402-751, Korea Email:
[email protected] such as applying AODV[5] in multi-hop cognitive radio network. The AODV is on-demand routing protocol and it establish a route between the two nodes only when they have data traffic need to exchange. The secondary node in the route need to broadcast the routing request packet to all of its neighbor nodes. Accordingly, all neighbor nodes of this secondary node need to receive the routing request packet on corresponding channel. So the overhead rises rapidly with the nodes in the CRN. Swarm intelligence is a powerful tool to solve large scale optimization problems in a distribute way. It is inspired from the collective behaviors of social insects. An ant is a simple creature, but a colony of ants can present a highly structured social organization. As a result of this organization, ant colonies can accomplish complex tasks that in some cases far exceed the individual capabilities of a single ant, such as discovering the shortest path to a food source and sharing that information with other ants[6][7]. Recently, the swarm intelligence has been widely applied to routing algorithm in communications networks [8] [9]. In this paper, the well-known pilot channel based cooperation routing strategy [10] is not been employed. A new routing algorithm based on the principle of the swarm intelligence is proposed and it does not need common control channel. A routing cost function that takes into account many factors is introduced and acts as important criteria to choose route. The route from source node to destination node will be discovered through cooperation among secondary nodes in CRN. Comparing with AODV routing protocol, the improved ant routing algorithm proposed in this paper can reduce the routing cost overhead and cumulative delay evidently. The rest of this paper is organized as follows. In section Ⅱ, we describe the network model and assumptions. In section Ⅲ, an improved ant routing algorithm based on swarming intelligence is proposed in cognitive radio networks. In section Ⅳ a series of simulations are made and the results were analyzed. In section Ⅴ the conclusions are discussed.
Abstract—Cognitive radio (CR) is a revolution in radio technology. Cognitive radio networks (CRN) is featured by the dynamic spectrum sharing of the secondary nodes coexisting with the primary nodes. Secondary nodes in cognitive radio networks (CRN) need the ability to work on different frequency bands and intelligently adjust their configuration to changes in the communication environment. It is a complicated and challenge task. So the routing protocol of CRN is different from that of traditional wireless network. In this paper, we propose a new routing protocol which does not need common control channel in CRN. This scheme applies swarm intelligence into CRN routing protocol. It can find out the route , which has minimum delay from source to destination , utilizing a routing cost function. The cost function takes into account many kinds of delay simultaneously. Simulation result shows that the proposed routing algorithm can effectively reduce the cumulate delay. Keywords- cognitive radio network; Routing; Ant colony algorthim;
I.
INTRODUCTION
Cognitive Radio Networks (CRN) [1] based on cognitive radio are addressing a revolutionary technology aiming at remarkably improving efficiency of spectrum usage. It will fundamentally change the way radio spectrum is regulated and used. In cognitive radio network, the unlicensed users (secondary users) have the potential to utilize the large amount of unused spectrum in an intelligent way while not interfering with other licensed users (primary users) on specific frequency bands[2]. Each secondary node has the ability to sense the spectrum holes and get the available frequency bands (named as Spectrum Opportunities (SOP)) [3]. Each SOP may contain one or multiple channels, which are assigned to the secondary user dynamically [4]. The available channels of secondary nodes are different from each other and vary with time. So the routing algorithm in multi-hop cognitive radio network is different from the existing multi-channel multi-radio (MCMR) network. Much research work in this aspect has been done
II.
This work was supported by NSFC (60772021), National 863 Program (2009AA01Z262),Important National Science &Technology Specific
The source node in multi-hop cognitive radio network will send routing request when it has data to transmit. An effective route to destination can be found only when all nodes know
Projects(2009ZX03006-006/009) and Korean Ministry of Knowledge Economy Project(IITA-2009-C1090-0902-0019).
978-1-4244-4522-6/09/$25.00 ©2009 IEEE
NETWORK MODEL
110
ISCIT 2009
node a and is also within the transmission range of node c. We can say that the node b is the availably neighbor node of node a and node c. When node a has a data traffic want to transmit to node c , the node b acts as intermediate node to communicate with node a using channel 1 and communicate with node c using channel 2. So the node b will switch from channel 1 to channel 2 in the course of transmitting data and the switching between channels will bring switching delay[12]. The tuning delays could be of the order of 10ms for a 10MHz
about available channels and position information about itself and its neighbor nodes. To do this, we propose additonal assumptions as follows, but the detail of these process is out of the scope of this paper. 1) Each secondary node has the ability to detect spectrum holes accurately. 2) Each secondary node can exchange information with its neighbor nodes periodically in multi-hop CRN. 3) Each secondary node has a wide working frequency range (e.g. several hundred MHz) and works on a limited and smaller range (e.g. several tens of MHz) at a specific time. Under these assumptions, it is unfeasible to use common control channel to interchange routing protocol message. That is because the IEEE 802.11 DCF cannot provide a synchronization mechanism to make all nodes in CRN tune to a common channel at a specific time. For this reason, the routing algorithm proposed in this paper should not be control channel based [11]. The multi-hop CRN is composed of primary nodes and secondary nodes. When the primary node uses the licensed spectrum, it will broadcast “HELLO” packets periodically so that the secondary nodes within its radio transmission range can sense that the corresponding spectrum is being used. Each secondary node in CRN has a wide working frequency range that can be divided into many channels. They will monitor by turns on each working channel. If there has a primary user broadcasting “HELLO” packet on its licensed channel, the secondary nodes within its transmission range can detect the “HELLO” packet on corresponding channel. In ideal circumstance, the secondary nodes in multi-hop CRN can get its available channel set after turning on all working channels one time. For example, the wide working frequency of each secondary node can be divided into three channels. The secondary node will monitor information by turns in the three channels repeatedly. If there has no “HELLO” information which be broadcasted by primary nodes in the specific channel, the secondary node will write the channel into its available channel set. In order to avoid the “HELLO” packet losing, it should be noted that the time which secondary node monitoring in each channel is two times bigger than that of primary node sends “HELLO” packet. Thus, the secondary node can receive two “HELLO” packets in every monitoring period. Even if in the course of the secondary node sending data traffic, it should monitor in this specific working channel. The secondary node will give up corresponding channel as soon as it finds the primary node want to use the licensed channel. Secondary node will broadcast periodically the information including its available channel set on all its avalible channels . Accordingly, the other secondary nodes within its transmission range will receive the information. The two secondary nodes are availably neighbor nodes if they are not only within the transmission range of each other, but also they have same available channels in their available channel sets. As figure 1, the node a has available channel set {1}, the node b has available channel set {1,2} and the node c has available channel set {2}. The node b is within the transmission range of
step in the spectrum range 20MHz3GHz[13].
Figure 1 An example of cognitive network scenario
III.
DESCRIPTION OF ROUTING ALGORITHM
As emphasized before, the routing problem in multi-hop CRN is a stochastic distributed multi-objective problem. Routing decisions can only be made on the basis of information about the current and the future network states. In our proposed routing protocol, we want to apply swarm intelligence in multi-hop CRN routing protocol. This routing scheme needn’t common control channel and it is an ondemand routing protocol. When the source node has data to transmit, it will produce ant colony and create routing request packet (RREQ). The symbol N0 denotes the number of ants in ant colony that source node produces and it is determined by the network demands. In other words, more ants will be released in more difficult satisfied network environment. The intermediate nodes between source node and destination node can’t produce ant colony, so the total number of ants in the CRN is no more than N0. After producing ant colony, the source node will calculate the number of ants that will be sent to its neighbor nodes and sends out the RREQ on its avalible channels. Each secondary node will monitor information by turns on each channel repeatedly, so it can receive the RREQ packet on corresponding channel which wants to transmit to itself. After receiving RREQ packet, the intermediate secondary node will examine its routing request table. The secondary node will drop it while the information of this routing request has been included in its routing request table. Otherwise, the secondary node will write corresponding information of this RREQ into its routing request table and transmits this request to the available next hop after receiving and dealing with it until the RREQ packet arrives in its destination node. Simultaneously, the intermediate secondary node will add the id of itself into route table fields in RREQ. In order to store the information
111
be transmitted towards the direction of destination. The node set satisfying condition (1) is denoted as conn _ table . Step 3) In the case that the node i receives RREQ packet and the node j is one of nodes in its conn_ table , the received RREQ packet will be sent to node j and node j will receive it accurately only when the node j isn’t included in route table fields of RREQ. If the node j has included in route table of RREQ, we think this RREQ packet has ever arrived node j before. In this circumstance, the node i will not transmit this RREQ to node j even if the node j is its neighbor node. This measure can avoid circle route. On the contrary, if the node j has not ever received this RREQ packet and the id of node j isn’t included in route table of this RREQ, we will calculate the number of ants which are sent to node j according to cost function. First of all, we define the cost function as follows.
mentioned in previous section, the data structure of routing request packet shows in TABLE I. TABLE I.
THE
STRUCTURE OF ROUTING REQUEST PACKET TABLE
Destination address Node identity which sends out ant colony
destaddr k
Route table
path
Receiving ant colony channel Sending ant colony channel Number of ants
channel 1 channel 2
Path delay
delay
N(P)
Furthermore, each secondary node stores a routing request table. It includes the information of RREQ that has ever been received by this secondary node as follows: TABLE II.
THE
Mi, j (Dswitching)k1 ( postponei, j ) k2 (Dbackoff) k3
INFORMATION ELEMENT IN ROUTING REQUEST TABLE
Destination address of routing request
Node identity which sending ant colony
the parameters
Number of ants
(2) 0 , 0 , 0 , k1 0 , k 2 0 ,
k3 0 . The postponei , j denotes the delay transmitting data
A. Route Discovery The route discovery process works as follows: Step 1) When the source secondary node has data to transmit, it will initiate a route discovery process by sending routing request (RREQ) packets on its available channels. These RREQ packets include ant colony information and the total number of ants is N0. Step 2) Each secondary node stores a routing request table. The secondary node i could receive the RREQ packet twice and will drop the last one if the two received RREQ packets have same information including: destination of routing request, node identity which sending out ant colony and the number of ants in the ant colony. Additionally, the secondary node will also drop the packet when the number of ants in RREQ packet equals zero (i.e.N(p)=0). Conversely, the secondary node i will receive and deal with the RREQ packet if the RREQ packet has not ever been received and the number of ants in it is bigger than zero. While the secondary node i receives RREQ packet, which the value of ‘number of ants’ fields is N(p), and it isn’t destination node of this RREQ packet, it works as follows: Firstly, the secondary node i will write the corresponding information which gained from received RREQ packet into its routing request table. Secondly, the secondary node i finds out the nodes which satisfying the condition (1) in its available neighbor node table. dist j (d ) dist i (d ) dis (1)
packet from node i to node j. The
Dswitching denotes the
switching delay when the neighbor nodes transmit data in different channel. It can be calculated as follows:
Dswitching (10ms / 10MHz) (bandi band j )
(3)
The band i is the frequency band that node i receives RREQ packet and the band j is the frequency band that node i sends RREQ packet to node j. In other words, whether the times switching on different channels is increased or the distance between band i and band j is increased, the switching delay will increased. It will reach the minimum value if all nodes in the route table use same channel. Nevertheless, if many secondary nodes work on the same channel, they will contend the spectrum resource. It will bring the backoff delay[13] which can be calculated as follows:
Dbackoff ( Num j )
1
1 (1 Pc )1 1 Pc Numi 1
W0
(4) Where Pc denotes the probability that a contending node experiences collision, and W0 represent the minimum contention window size[14]. In other words, the backoff delay will increased if many nodes in route table use same channel. It is conflicting with switching delay. So we utilize the cost function to choose next hop in the course of finding the path to destination node, it will consider switching delay and backoff delay simultaneously. We defined the mi , j as follows:
The disti (d ) indicates the distance between node i and
destination node. The dis is a constant which is bigger than zero. The node j indicates the availably neighbour node of node i .The distj (d ) indicates the distance between node j and destination node. The condition (1) makes the RREQ packet to
112
mi , j M i , j /
M
kconn _ table
i ,k
IV.
(5)
SIMULATION RESULT
We have conducted experimental simulations using OPNET to evaluate the performance of our routing protocol in CRN. The goal of our experiment is focus on cumulate delay effect of the routing protocol to react to network topology change while successfully delivering routing request (RREQ) packets to their destination node.
The number of ants in RREQ packet which node i transmits to node j is determined by: (6) N ( p j ) mi , j N ( p ) Step 4) The node i writes the corresponding information (including the number of ants N ( p j ) , receiving RREQ packet channel and sending RREQ channel) into RREQ packet and transmit it to availably neighbor nodes on corresponding channels periodically until the node i receives corresponding routing reply (RREP) packet. Step 5) To execute step 2),step 3),step 4) repeatedly until the route from source node to destination node is found. Step 6) When the destination node receives the RREQ packet, it will produce routing reply (RREP) packet. The RREP packet will be transmitted to source node along the opposite path of route table in RREQ packet. When the intermediate secondary node receives the RREP packet, it will transmit it to next-hop and delete this routing request which saved on its routing request table. Finally, the routing reply packet reaches the source node that had originated the request packet. According to the path recorded in the RREQ and RREP packet, data path could be established. If the route discovery timer is expired, and the source node does not receive any response after sending out a request packet, it will retransmit the same routing request packet.
A. Simulation Environment The simulation scenario is 300 * 300 m 2 district and there are two operate channels. Two primary nodes and some secondary nodes are distributed randomly in it. Primary node 1 is working on channel 1 and primary node 2 is working on channel 2. Each node in this scenario has 50m transmission range. The primary channels should not be used by secondary nodes in primary node’s transmission range. In our simulation, the number of primary nodes and their operating channel are fixed. But the number of secondary nodes in CRN is changeable. The cumulate delay will increase with the numbers of secondary nodes.. In order to enable fair comparisons between protocols, we need to challenge different protocols with identical environmental conditions. We pre-generated 5 different scenario files with varying network topology, and then ran AODV routing protocol and improved ant routing algorithm against each of these scenario files. B. Result comparision The simulation results are shown in figure 2. It is clearly that the cumulate delay will increase with the number of secondary nodes increasing. At the same time, we can find that the cumulate delay using the routing protocol proposed in this paper is increased slowly than that of AODV routing protocol.
B. Route Maintenance After the source node receives a RREP packet, a route discovering process has been completed. Every intermediate secondary node has a counter to calculate the time interval that the path was used. Once this path is used, the counter will restart to count. This path will be deleted if it has not been used in limited time period. Because the topology of network is changeable with time, the route that can be used at this time and may not be able to be used any more at next time. So the data traffic that wants to transmit is divided into some small data traffics. We assume that the network topology is static in the course of sending the small data traffic. The path will be examined before transmitting small data traffic every time. The route repair procedure is initiated if the route is disabled. For example, one source secondary node has data traffic to transmit to destination node. At first, the data traffic is divided into some small data traffics. The first small data traffic is successfully transmitted to destination node along the path discovered previously. While the second small data traffic wants to transmit, the network topology is changed, and the intermediate node transmits failure some times after it receives this data traffic. At this time, the intermediate node thinks that this route is disabled. It will produce route error (RERR) packet and transmit it to the source node along the opposite path of route table. Afterwards, a new route discovery process will be initiated from source node.
0.04 ant AODV
0.035
delay (s )
0.03 0.025 0.02 0.015 0.01 0.005
4
5
6 7 8 the number of nodes in CRN
9
10
Figure 2 Cumulate delay of different routing schemes with the number of secondary nodes increasing in CRN
In AODV routing protocol, the secondary node must broadcast RREQ packet to all its available neighbor nodes on
113
[7] J. L. Deneubourg, S. Aron, S. Goss, and J. M. Pasteels, “The self-organizing exploratory pattern of the argentine ant,” J. Insect Behav., vol. 3, pp. 159–168, 1990. [8]Bonabeau E., Dorigo M., and Theraulaz G. “Swarm Intelligence: from Natural to Artificial Systems”, Oxford University Press, 1999. [9] Kassabalidis M. A., El-Sharkawi R. J., Marks II P, et al (2001). “Swarm Intelligence for Routing in Communication Networks”. IEEE Globecom 2001, Nov 25-29, 2001, San Antonio, Texas. [10]K. Bian and J. Park, “Segment-Based Channel Assignment in Cognitive Radio Ad Hoc Networks,” CROWNCOM 2007, Orlando, USA, Aug, 2007. [11] Huisheng Ma, Lili Zheng, Xiao Ma “Spectrum Aware Routing for Multi-hop Cognitive Radio Networks with a Single Transceiver”, Dept. of State Key Laboratory of Integrated Service. Cognitive Radio Oriented Wireless Networks and Communications,2008. CrownCom 2008. 3rd [12] R. Draves, J. Padhye, and B. Zill, “Routing in MultiRadio, Multi-Hop Wireless Mesh Networks,” ACM Mobicom, 2004. [13] TCI 8067 Spectrum Processor Data Specification, Webpage http://www.tcibr.com/PDFs/8067webs.pdf, 2000.
its all available channels, so the switching delay and backoff delay is longer than the improved ant routing algorithm proposed in this paper. Since the cost function proposed in this paper has taken into account both switching delay and backoff delay, it can seek a balance between assigning new channels to allow simultaneous transmission and accommodating some nodes on one channel to avoid expensive switching, thus achieves an overall optimal cumulative delay. V.
CONCLUSION
In this paper we analyzed the problem of optimal choice of multi-hop route in a Cognitive Radio Network. We propose an on-demand routing protocol based on swarming intelligence. It needn’t common control channel and every secondary node must monitor by turns in every working channel. Routing cost function that takes into account many kinds of delay simultaneously can act as criterion to select route to destination node. That is, the intermediate nodes can choose next hop and its working channel according to the current situation of itself and its neighbor nodes. On the other hand, unlike broadcasting RREQ packet to all neighbor nodes in AODV, the secondary node only transmits the RREQ packet to limited available neighbor nodes on corresponding channel in the improved ant routing protocol. At the same time, the intermediate nodes can select next hop according to cost function which takes into account switching delay and backoff delay synthetically. So the cumulative delay is reduced contrast to AODV protocol in the process of route discovery. REFERENCES [1] Mitola, J., III, “Cognitive Radio: An Integrated Agent Architecture for Software Defined Radio,” Thesis (PhD), Dept. of Teleinformatics, Royal Institute of Technology (KTH), Stockholm, Sweden, 2000. [2] CARLOS CORDEIRO, BABAK DANESHRAD.et al..” Guest Editorial Adaptive, Spectrum Agile and Cognitive Wireless Networks”. Selected Areas in Communications, IEEE Journal on, vol. 25, no. 3, pp. 513–516, 2007. [3] C. Xin, B. Xie and Shen, “A Novel Layered Graph Model for Topology Formation and Routing in Dynamic Spectrum Access Networks,” IEEE DySPAN, 2005 [4] Tao Chen, Honggang Zhang, Marcos D. Katz, and Zheng Zhou. “Swarm Intelligence Based Dynamic Control Channel Assignment in CogMesh”. IEEE Communications workshops, 2008. ICC workshops May 2008 Page(s):123 - 128 [5] Geng Cheng, Wei Liu, Yunzhao Li, Wenqing Cheng. “Joint On-demand Routing and Spectrum Assignment in Cognitive Radio Networks” Communications,2007.ICC’07. IEEE International Conference on June 2007 Page(s): 64996503. [6] M. Dorigo, G. D. Caro, and L. M. Gambardella, “Ant algorithms for discrete optimization,” Artif. Life, vol. 5, no. 2, pp. 137–172, 1999.
114