5
CDMA Bus Lane: Build Constant Routes for Real-time Traffic in Ad Hoc Networks Lin Xiao and Eliane Bodanese Department of Electronic Engineering Queen Mary, University ofLondon tlin.xiao, eliane. bodanese}@elec. qmul. co. uk Abstract QoS support for mobile ad hoc networks. It is inspired from the "BUS LANES" concept used in road traffic With the growing interest of mobile ad hoc control in UK, which keeps interference-free routes for networks, one of the major challenges faced by the buses from the contention with other vehicles. designers is to support Quality-of-Service (QoS) in The resource calculation and allocation algorithm such networks. Especially for real time services, how for the CDMA Bus Lane have been proposed in [14] to issue routes with sufficient and constant bandwidth by the same authors. This paper presents the Bus Lane is a key problem. The CDMA Bus Lane routing QoS routing protocol which combines an on-demand protocol proposed in this paper is a novel solution for resource calculation, allocation and reservation along CDMA based ad hoc networks. It combines the the route discovering stage. Firstly, the model and network and the MAC layers to dynamically set up and assumptions of the network are described briefly in the reserve an interference-free path for each real-time paper. Then the QoS routing protocol for the CDMA flow according to its bandwidth requirements. Bus Lane is proposed in detail. Finally, the simulations and results are discussed. 1. Introduction 2. Network model and assumptions With the increasing use of multimedia applications, quality of service (QoS) support is necessary in ad hoc An ad hoc network is represented by a graph G with networks. Most routing protocols (AODV [1], DSR [2] a set of nodes N and a set of links L, G = (N, L). A and TORA [3]) are designed only for best effort node ni has a set of neighbouring nodes NBi. The link routing. Some proposed QoS routing protocols between two nodes is symmetric. Two sets of (CEDAR [4], TBA [5] etc.) are not implemented above transceivers are implemented to separate the data any specific MAC layer. However, the ability in signal and real-time sessions. Any collision between providing QoS is heavily dependent on how well the links can be avoided by a set of orthogonal spreading resources are managed at the MAC layer. The MAC codes C = {cl, c2, ... cm], except when two sessions layer protocol in IEEE802.11 is not suitable for ad hoc cross the same node, where the transmission should be networks [6], and some proposed TDMA schemes [7], scheduled in time. A set of time slots S = ts], S2, ...}, sn [8], [9] only make slot reservations within the are used to schedule the transmissions or receptions neighbourhood of the nodes, but the scheduling along a from different sessions. whole path is not considered. The routing protocols The codes in set C are generated by an OVSF tree proposed in [10], [11] can offer better QoS support, with different length according to an n-codes-remain which combine the network layer and a TDMA MAC scheme. This means there are n codes left in each level layer. However, CDMA is a more widely implemented on the OVSF tree to generate codes for the next level technology than TDMA in today's wireless The code allocation algorithm proposed in [14] communications and allows all terminals to use the gives a method to assign codes on an existing path with entire channel bandwidth at the same time through the respect of code interference and time slot different spreading codes. Some researches focus on scheduling. In order to assign a code for a link from using CDMA as MAC layer ([12], [13]), which do not node ni to node nt , all the transmission (TQ and consider the routing issues as well. receptions (RC) from the two nodes and their So far, a QoS routing protocol based on CDMA neighbours should be considered. With an abuse of MAC and PHY layers has not been proposed. CDMA notation, TC and RC refer to both links and codes used Bus Lane is a cross-layer design, which offers better on the links. I1-4244-0574-2/06/$20.OO (0)2006 IEEE

[IEEE 2006 Asia-Pacific Conference on Communications - Busan (2006.8.31-2006.8.31)] 2006 Asia-Pacific Conference on Communications - CDMA Bus Lane: Build Constant Routes for Real-time

  • Upload
    eliane

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

CDMA Bus Lane: Build Constant Routes for Real-time Traffic in Ad HocNetworks

Lin Xiao and Eliane BodaneseDepartment ofElectronic EngineeringQueen Mary, University ofLondon

tlin.xiao, eliane. bodanese}@elec. qmul. co. uk

Abstract QoS support for mobile ad hoc networks. It is inspiredfrom the "BUS LANES" concept used in road traffic

With the growing interest of mobile ad hoc control in UK, which keeps interference-free routes fornetworks, one of the major challenges faced by the buses from the contention with other vehicles.designers is to support Quality-of-Service (QoS) in The resource calculation and allocation algorithmsuch networks. Especially for real time services, how for the CDMA Bus Lane have been proposed in [14]to issue routes with sufficient and constant bandwidth by the same authors. This paper presents the Bus Laneis a key problem. The CDMA Bus Lane routing QoS routing protocol which combines an on-demandprotocol proposed in this paper is a novel solution for resource calculation, allocation and reservation alongCDMA based ad hoc networks. It combines the the route discovering stage. Firstly, the model andnetwork and the MAC layers to dynamically set up and assumptions of the network are described briefly in thereserve an interference-free path for each real-time paper. Then the QoS routing protocol for the CDMAflow according to its bandwidth requirements. Bus Lane is proposed in detail. Finally, the simulations

and results are discussed.1. Introduction

2. Network model and assumptionsWith the increasing use of multimedia applications,

quality of service (QoS) support is necessary in ad hoc An ad hoc network is represented by a graph G withnetworks. Most routing protocols (AODV [1], DSR [2] a set of nodes N and a set of links L, G = (N, L). Aand TORA [3]) are designed only for best effort node ni has a set of neighbouring nodes NBi. The linkrouting. Some proposed QoS routing protocols between two nodes is symmetric. Two sets of(CEDAR [4], TBA [5] etc.) are not implemented above transceivers are implemented to separate the dataany specific MAC layer. However, the ability in signal and real-time sessions. Any collision betweenproviding QoS is heavily dependent on how well the links can be avoided by a set of orthogonal spreadingresources are managed at the MAC layer. The MAC codes C = {cl, c2, ... cm], except when two sessionslayer protocol in IEEE802.11 is not suitable for ad hoc cross the same node, where the transmission should benetworks [6], and some proposed TDMA schemes [7], scheduled in time. A set of time slots S = ts], S2,...},sn[8], [9] only make slot reservations within the are used to schedule the transmissions or receptionsneighbourhood of the nodes, but the scheduling along a from different sessions.whole path is not considered. The routing protocols The codes in set C are generated by an OVSF treeproposed in [10], [11] can offer better QoS support, with different length according to an n-codes-remainwhich combine the network layer and a TDMA MAC scheme. This means there are n codes left in each levellayer. However, CDMA is a more widely implemented on the OVSF tree to generate codes for the next leveltechnology than TDMA in today's wireless The code allocation algorithm proposed in [14]communications and allows all terminals to use the gives a method to assign codes on an existing path withentire channel bandwidth at the same time through the respect of code interference and time slotdifferent spreading codes. Some researches focus on scheduling. In order to assign a code for a link fromusing CDMA as MAC layer ([12], [13]), which do not node ni to nodent , all the transmission (TQ andconsider the routing issues as well. receptions (RC) from the two nodes and their

So far, a QoS routing protocol based on CDMA neighbours should be considered. With an abuse ofMAC and PHY layers has not been proposed. CDMA notation, TC and RC refer to both links and codes usedBus Lane is a cross-layer design, which offers better on the links.

I1-4244-0574-2/06/$20.OO (0)2006 IEEE

exchange the information among neighbours. TheRCi TCy Hello Message is broadcast every HELLO INTERVAL

time, which allows the node to keep the latesttTci /./J v information from its neighbours. A node updates the

corresponding entries of its Neighbouring informationRCx*O A .N. RCJ B. i table, when receiving a hello from its neighbour.RCxr ,Nsi*t RCj g TCj RREQ_B and RREP B are the two types of

messages transmitted at the routing discovering stage.Similar to the RREQ packet in AODV protocol, itcontains the IP address, source and destinationsequence number, a TTL value to limit the hops of the

In Figurel all the links represented by solid arrows dsied rutean a broadcastI Bidesthehse, itaaffec the ode llocaion rom n to j. Le RCi

desired route and a broadcast ID. Besides these, it alsoaffect the code allocation from ni to nj. Let RCi otisterqie aart,telclcdrepresents the set of links received by ni from its ionfaion and thesln.T nodewinformation and the slot scheduling. The node whoneighbours NBi, and TCi is the set of links transmitted receives a RREQ_B will calculate the bandwidth andby node ni. Obviously, the transmission code for the allocate a valid code and slots for the link from wherelink (i, j) can be neither in RCi nor in TCj, but the codes the RREQ_B was sent. The RREP_B is sent back fromin TCi or RCj (presented by dashed links) can be reused the destination to the source and it confirms thebecause these links are scheduled in time. reservation in each node on the reverse path.

The affection from the NBi and NBj need to beconsidered as well. From the view of source node ni,the transmissio from n, to nj hould avoid th 3.1. The code assignment along route discoverythe transmission from ni to nj should avoid theinterference with the receptions of the nodes in NBi. When allocating codes and slots at the route requestLet's collect all the receptions from NBi into a setcalled RCx. Obviously, not all of them affect the code tae, theio tionkiserely ta allocateallocation for link (i, j). We can ignore those receptions the node ingthe netw. theroefre,uhow toalcaststarting at the node ni, which belong to TCi, and all the thE_code t her te rreceptions from the special neighbour node nj, which (rREQB) vis ewnge' ~~From the view of an RPREOQB sender, all thehas been presented by RCj. So the interference code set neighbouring nodes could be the next hop on the route.from the NBi can be presented by NCi, where only code It is impossible for the PREQB sender to do thevalues are recorded to identify for each element: calculation and allocation for all these links before the

NCi = RCx - TCi - RCj (1) request packet is sent out to its neighbours. However,By the same way, the interference code set from the the node who received a PREQB can get enoughNB1 can also be presented by:

NCjTCyc-aTCio-RCj (2) information from one unique last hop node, whichmakes the calculation simpler. Therefore, theTherefore, the available code set ACi9 , which canbe..Therefore, the available code set A04j, which can be decisions of the code for any hop should be done in theused for transmission from ni to nj is described by: nodes who received the RREQB.ACi j = RCi U TCj u NCi u NC1 (3) Assume the path to be set up is represented by P

Also, the selected codes must have a reasonable SF tnO 4 nli 4 ... nif ... 4 nm-i - nm}, In order to(Spreading Factor) to satisfy the bandwidth assign a code for the link from ni to the next hop ni+±,requirement of the session [14]. according to the equations (1), (2) and (3), the

RREQ_B should take all the useful information of RCi,3. QoS routing and resource reservation RCx, TCi. Also it should take the pre-allocated

transmission codes for the node ni-l (TCP1) and ni-2The CDMA Bus Lane routing protocol implements P

the code allocation algorithm together with an on- T -2 )demand routing protocol to find a route with sufficient allocation. However simply appending them on thebandwidth by the route request broadcasting RREQ_B RREQ_B would make the packet very large. An arrayand reserves the codes and slots along the route by the called Fecode[codeID] is used to simply record theroute reply packet RREP_B. It combines the network availability of the code according to the informationlayer and the MAC layer to better support the QoS for from the sender. That means part of the job should bereal-time communications in ad hoc networks. done by the RREQ_B sender (ni). The index codeID

Hello Messages used in the Bus Lane routing represents the ID of the code in code set C, and theprotocol help nodes maintain the active links as well as value of the element in the array represents the

availability of the corresponding code. There are three 3.2. QoS CDMA Bus Lane establishmenttypes of values which represent the availability code inthe array (0, 1 and 2). The routing protocol is purely on demand and

F_code[x] = 0 means the code cx is available as far follows a route request/reply discovery cycle. Eachas the node ni knows. node in an ad hoc network is independent, which can

Value "1" means only one neighbour of ni uses this be simulated as an event driven system. Each action ofcode as a reception code, and the transmitting source of a node is triggered by an inside or outside event. Thethis reception is not node ni. event could be a packet event (a packet arrives from

The element is set to "2" if at least one of the the upper or lower layers) or a time event (a timerconditions below is true: expires). The route setting up and reservation process* There is more than one neighbour of node ni using can be described in detail as follow.

this code as a reception code, and none of these 1) Event: A data packet is received from thereceptions are due to transmissions node ni. application layer to a given destination with a

* The code is in the set RCi, which is forbidden for specific bandwidth requirement.the code allocation. Actions:

* The code is either TCP or TCP . The node checks its routing table. If there is no1-1 i-2 active route for the session, a new route isFor an element with value "2", the corresponding required.

code is not allowed to be allocated.Whena neghbor nde n±] rceies te RRQB, * If a routing for such a session iS in discoveryTWhen a neighbour node ni+l receives the RREQ___B, prces it jutpt h aktit hit firstly eliminates all the matching codes with the proess,nit just put wth cet intl th

RCi+± (its reception codes) by subtracting one from the Orreso in buffeand a fRE reply.corresponding element in the array whose value is not .Othis it must create a req_Brwhi~~~ g y ~~~~~contain the bandwidth requirement,zero (according to Equation (1)). In this way, node ni+± F_code[codelD] and time slot scheduling. Aftertakes the share back from the corresponding element t twhich was counted as a reception code of a neighbour n eih ours anodeb sts upac toimeby node ni. After that, the elements of the array whose (RREP WAITING TIME) to wait for a reply.values are still not zero are the ones totally forbidden 2) Event:e RREQBin the code allocation because of node ni or its nih our.neighbours NBi (except ni+]). They can be described neighbour.

Actions:

as:UTC" * The node firstly checks whether the request forNC1URCi tJJTCi_1 JT--1 (4) this session has been handled. If so (it has been

Then the forbidden codes from node ni+± and its forwarded or replied), the node silently discardsneighbours (NCi+1 u TCi+l) are easy to be found. The the packet. Otherwise, it resets its Pre-reserved

. . ~~~~~~~~table(which temporarily records the allocatedforbidden codes for this link can be collected by a code code and tsmaoroute request), allocatesset FC P from the array F code. The code set is code and calculatesthebandwidth.represented by: * If the node can not find a suitable code or enoughFC[ = NC uRC uNCH1 uTCQ1 uTC[Plu TCP2 (5) time slots, the request packet is just discarded.

ltACP beI+Otherwise, it writes them into the Pre-reserved

Therefore the available code set AC[ can be table. After a successful code allocation, the noderepresented by: records the request for the session in the Seen

ACP = FC7 (6) requests table to avoid another request for thei same session to be processed during the same

The code with smaller ID is selected to be the route discovering period.reception code of ni+], because a smaller SF takes less * If the node (ni) is not the destination of theslots that allow more sessions across in this node. session, it needs to update the PREQ_B packet and

The RREQB also contains the time slot forward it to the next hop. It firstly reads theinformation of ni. Node ni+± who received this requestpacket can find out all the available slots. If the node RC 7 (the pre-reserved reception code by the lastfli±] find there is enough time slots to implement the hop node, which also presents the TCP2 ) from theselected reception code, both the code and the time 1slots are recorded into the Pre-reserved table, received RREQ_B, update the slot attributes andotherwise the node refuses to forward RREQ_B. the F code[codelD] array in the RREQ_B. Also it

puts its pre-reserved reception code RCP into the In this way, a CDMA Bus Lane is set up for a real-/ time session and with the unicast of RREP_B, the

RREQ_B packet for the code allocation on the link Transmission (Reception) code tables and(ni+± i ni+2). Then it forwards the request packet Transmission (Reception)s ot e arew nbtoheMAClaer

Transmission (Reception) slots tables are written byto is MAC layer. the routing protocol. However, the channel reservation

* If the node itself is the destination for the and the scheduling are actually performed by the MACrequested session, it puts all the pre-reserved layer. It partitions the bandwidth into time slots forinformation into the Bus Lane routing table and transmission or reception, assigns a code for each slotreserves the code and slots by updating the according to the tables maintained by the networkReception code table and the Reception slots table. layer.Then it creates a reply packet RREP_B.

* In addition to the same attributes of the AODV 4. Simulation and resultsRREP message (source and destination addresses,current sequence number, hop count of zero and The performance of the CDMA Bus Lane routinglifetime of the route), the RREP B also contains protocol in a static ad hoc network is simulated usingthe reception code reserved for the session and the the OPNET Modeler [15]. The MAC layer iscorresponding reserved time slots. Finally, it sends implemented to allocate codes and separate the channelthe reply to the MAC layer. in time slots (called BusLane in the simulation). The

3) Event: A node receives a RREP B reply packet. comparison is done between the BusLane and a pureActions: CDMA scheme that only sets up code channels without

* If an intermediate node receives the RREP_B, it time scheduling (represented by PureCD). Thesets up the next hop path in the corresponding BusLane is also compared to a RouteOL protocolentry in the Bus Lane routing table. The reserved which only implements the routing protocol to find acode in the packet is recorded as the transmission route, but without code and slots allocation. Thatcode of the node for the session in both the Bus means all the transmissions in the RouteOL share aLane routing table and the Transmission code common channel like classic AODV.table. The slots are also reserved in the The allocation of the spreading codes was a 4-Transmission slots table which is useful to codes-remain code set. The SF changes in the range (8schedule the transmissions in the MAC layer. - 128), which are between level 3 and 7 of an OVSF

* The intermediate node then updates the RREP_B code tree. The transmission rate of the channel is 5.4packet by changing the attributes of the reserved Mbps. There are 32 slots in a frame, and each slot isreception code and slots previously recorded in its 1.5625 ms, which carries 8.4kbit information. A packetPre-reserved table. After increasing the hop count is lkbit, and the minimum length of a packet after codeby 1, it sends the packet to its previous link node spreading is 8kbit. Hello Messages broadcast every Is,which is recorded in its Pre-reserved table. and the NEIGHBOUR_EXPIRE_TIME is 2s.

* If the node is the source of the session, it sets up A static ad hoc network of 30 nodes is generated inthe route entry and reserves the code and slots for an area of 1000mx1000m. The transmission range isthe session. Now, a CDMA Bus Lane with QoS is 250m. There are up to 30 real time sessions issuedset up with constant bandwidth. The node then from the 30 nodes. The destination of the session fromstarts to transmit the data. each node is selected randomly. The simulation time is

4) Event: The RREP_WAITING_TIME has expired 120s. User traffic is generated with CBR sources,before a valid reply packet arrives which generates 20 packets per second. Five differentActions: traffic patterns are generated and their simulation

* If retries count is smaller than RREQ_RETRIES, results are averaged. The number of packets receivedwhich records the maximum times that a RREQ B by the destinations is measured. A session is calledis allowed to be rebroadcast, it renews a request. "served" if at least 90% packets are received by theOtherwise, it drops the data in the buffer and destination.terminates the discovering process. Figure 2 shows the throughput under different

* If it needs to continue a request, it increases the traffic load, which is decided by the number ofTTL, the broadcast ID and the sequence number of concurrent sessions. All the route request and channelitself, as well as resets the sequence number of the allocation are performed successfully before the datadestination. After creating a new RREQ_B with transmission. It shows that, once the routes are builtthese attributes, it resets the timer to successfully, BusLane can offer a 1000% throughput inRREP_WAITING_TIME and broadcasts the a static ad hoc network following the modelrequest packet to its neighbours again.

assumptions. There are a lot of collisions under layer is very important in the route request, channelPureCD and RouteOL, which decrease the throughput reservation and data transmission stages.of the network. The further research is still required on route

Figure 3 shows the ratio of successfully received maintenance in a dynamic network scenario. In ordersessions, under different concurrent number of real to realise the CDMA Bus Lane for real time services intime sessions (10 to 30). All the sessions can be ad hoc networks, the ability to handle the routereceived under protocol BusLane in a static ad hoc breakage and the channel collision due to mobility isnetwork. However, the other two schemes perform very important.badly without the effective support from the MAClayer. References

The results show that the CDMA Bus Lane routingprotocol can give each session a protected route from [1] C. E. Perkins and E. M. Royer, "Ad Hoc On-Demandthe source to the destination without any interference. Distance Vector Routing," Proceedings of IEEE WorkshopThe support from the MAC layer is very important in on Mobile Computing Systems and Applications 1999,the route discovery, channel reservation and data pp.90-100, February 1999.transmission stages. The BusLane implementation can [2] D. B. Johnson and D. A. Maltz, "Dynamic Source

perform pc tRouting in Ad Hoc Wireless Networks," Mobile Computing,perform 1000 packet throughput in a staic ad hoc Kluwer Academic Publisher, vol. 353, pp. 153-181, 1996.network scenario. [3] V.D. Park and M.S. Corson, "A Highly Adaptive

Distributed Routing Algorithm for Mobile Wireless7x 104 Networks," Proceedings of IEEE INFOCOM 1997, pp.1405-

BusLane T r1413, April 1997.6 -ur-PueOD [4] Sivakumar, R., Sinha, P., Bharghavan, V. "CEDAR: a

core-extraction distributed ad hoc routing algorithm",5 / Communications, IEEE Journal on Volume 17, Issue

8, Page(s): 1454 - 1465, Aug. 1999.[5] Shigang Chen, Klara Nahrstedt, "Distributed quality-of-service routing in ad hoc networks", Communications, IEEEJournal on Volume 17, Issue 8, Page(s):1488 - 1505, Aug.1999.

2 [6] Shugong Xu and Tarek Saadawi, "Does the IEEE 802.11__________l MAC Prorocal work well in Multihop Wireless Ad Hoc

1 2 3 4 5 6 7 Networks?" IEEE ComnctoMagazine June2004Number of packets transmitted CommunicationxJune

[7] C. Zhu and M. Scott Corson, "A Five-Phase ReservationFigure 2. Packet throughput under different Protocol (FRRP) for Mobile Ad-Hoc Networks",traffic load Proceedings ofINFOCOM'98, 1998.

[8] Z. Tang and J. J. Garcia-Luna-Aceves, "Hop ReservationBusLane Mulitple Access (HRMA) for Ad Hoc Networks",PureCD INFOCOM'99, 1999.RouteOL

[9] Z. Tang and J. J. Garcia-Luna-Aceves, "A Protocol foro100 Topology Dependent Transmission Scheduling in Wireless

2 80 Networks", WCNC'99, 1999[10] C.R. Lin and M. Gerla, "Asynchronous Multimedia

" 60 Multihop Wireless Networks", IEEE INFOCOM 1997.

40 [11] Chenxi Zhu and M. Scott Corson, "QoS routing for0O mobile ad hoc networks". IEEE INFORCOM 2002.O 20 _ [12] Amit Butala and Lang Tong, "Dynamic Channel

o Allocation and Optimal Detection for MAC in CDMA Ad5 10 15 20 25 30 35 hoc Networks", 2002 IEEE.

Number of acti\,e sessions

[13] R. Fantacci, A. Ferri and D. Tarchi, "Medium AccessFigure 3. Ratio of successfully received control protocol for CDMA ad hoc networks",sessionls ELECTRONIC LETTERS 2nd Sptember 2004 vol. 40

No.18.5. Conclusion [14] Lin Xiao, Eliane Bodanese, "CDMA Bus Lane: a novel

QoS solution for real-time traffic in ad hoc networks", ITCThe QoS routing protocol for the CDMA Bus Lane 19, pp. 97-106, 2005.

has been proposed in this paper. It can find and reserve [5 PE oee otae vial ta privieged rote fro the sorce tothe desinatio http://www.opnet.com/ product / modeler/home/html

without any interference. The support from the MAC