You are on page 1of 6

Congestion Control in Vehicular Ad Hoc Networks

Lars Wischhof and Hermann Rohling


Department of Telecommunications Hamburg University of Technology Hamburg, Germany Email: {l.wischhof, rohling}@tu-harburg.de
Abstract Vehicular Ad hoc Networks (VANET) play an important role in future car-to-car communication systems and related applications like Self-Organizing Trafc Information Systems (SOTIS), which are based on broadcast/geocast transmission schemes. Congestion control for VANETs has not been studied thoroughly so far but this feature will be extremely necessary for VANET applications and network performance. Due to the high mobility and the resulting highly dynamic network topology, congestion control will need to be performed in a decentralized and self-organized way, locally in each VANET node. This paper presents a novel concept for utility-based congestion control and packet forwarding in VANETs. The control algorithm uses an application-specic utility function and encodes the quantitative utility information in each transmitted data packet in a transparent way for all users within a local environment. A decentralized algorithm then calculates the "average utility value" of each individual node based on the utility of its data packets and assigns a share of the available data rate proportional to the relative priority. For performance evaluation, the proposed decentralized Utility-Based Packet Forwarding and Congestion Control (UBPFCC) is implemented on top of the IEEE 802.11 MAC protocol. Network simulations including vehicular mobility models demonstrate that UBPFCC avoids the typical starvation of some nodes inside the network and shows a signicant increase of efciency in information dissemination and fairness.

in which a driver assistance system can acquire information can be extended far beyond the range of individual sensors (such as radar or lidar). A. Characteristics of VANETs The main challenge for communication in VANETs is the high mobility, the resulting high rate of topology changes, and the high variability in node2 density. Therefore, typical MANET protocols are hard to apply, e.g. table driven routing protocols suffer from outdated neighbor information [4]. While the dominant form of communication in the wireline Internet and conventional MANETs is unicast end-to-end communication, in VANETs the dominant form of communication is broadcast/geocast3 : Most applications in VANETs aim to provide information on the local neighborhood, which has been sensed by vehicles nearby. Since the specic addresses of the potential communication partners are unknown and irrelevant, most approaches use a form of broadcast [5]. Furthermore, if a low market penetration of only 2-10% is assumed, broadcast based data dissemination approaches can distribute the relevant information in an extremely large area orders of magnitude larger than conventional network routing approaches [6]. A challenging issue in VANETs is congestion control: The Internet is based on an end-to-end paradigm, where the transport protocol (e.g. TCP) instances at the endpoints detect overload conditions at intermediate nodes. In case of congestion, the source reduces its data rate. However, in VANETs the topology changes within seconds and a congested node used for forwarding a few seconds ago might not be used at all at the point in time when the source reacts to the congestion. Thus, in this paper a scheme is proposed where each node locally adapts to the available bandwidth. The remainder of the paper is organized as follows: In Section II, a simple problem example illustrates the need for congestion control in a VANET. Next, a brief overview of related work is presented and we outline why existing solutions for congestion control are not sufcient for VANETs. The system model assumed in this paper is explained in Section IV. Section V describes the proposed congestion control and forwarding concept for VANETs, called Utility Based Packet Forwarding and Congestion Control (UBPFCC). Afterwards, a network layer implementation of UBPFCC on top of the IEEE 802.11 CSMA MAC is presented. Section VII introduces the simulation environment used for performance evaluation and presents selected simulation results.
2 The 3 geocast:

I. I NTRODUCTION An emerging application area for Mobile Ad hoc Networks (MANET) is the automotive sector: In a Vehicular Ad hoc Network (VANET), vehicles equipped with an ad hoc capable air interface, e.g. the IEEE 802.11a like future IEEE 802.11p/WAVE standard [1] in the 5.9 GHz band, exchange information for increasing passenger safety and comfort. Since VANETs do not require any communication infrastructure, communication is available free of charge. A large number of comfort and safety applications can be implemented based on VANETs; a popular example are trafc information systems, e.g. the Self-Organizing Trafc Information System (SOTIS) [2]: In these systems, the vehicles act directly as a sensor which measures the trafc condition at their current location. This information is analyzed and disseminated within the VANET in a large area and allows each vehicle to keep track of the local trafc situation. The approach is not restricted to trafc information many other types of relevant information can be distributed, e.g. gas prices, parking space information, weather data and tourist information. Due to the fact that all vehicles can communicate directly in the local area, even emergency applications [3] are possible.1 By communication in a VANET, the horizon
1 In this paper, the focus is on comfort applications of VANETs. Safety applications, which have very stringent delay and reliability requirements, will not be considered in detail.

terms equipped vehicle and (mobile) node are used synonymously. transmission of data in a specic geographic region

R R
T X

C S

= 2 0 0 0 m 8 m

= 1 0 0 0 m

7 0 0 m

section includes an overview of these techniques and outlines why they are not suitable for VANETs. III. R ELATED W ORK
N o d e 0

N o d e 5

N o d e 4

N o d e 3

N o d e 2 N o d e 1

Fig. 1.

Simple deterministic street scenario.


9 3 7

1 0 0 0 8 0 0 k b it/s 6 0 0 4 0 0 2 0 0 0

3 3 7 1 2

3 3 9

3 3 9

Fig. 2. Transmitted data rates in the considered deterministic scenario (without UBPFCC).

II. P ROBLEM E XAMPLE It is well-known that the Carrier-Sense Multiple Access (CSMA) approach of the IEEE 802.11 protocols can lead to severely unfair conditions in multi-hop wireless ad hoc networks [7]. If communication occurs mainly in form of endto-end data ows, this unfairness can partly be mitigated by the RTS/CTS protocol in combination with per-ow fair scheduling [8]. These mechanisms cannot be applied in VANETs, since in this case broadcast communication is dominating. A typical example for the resulting fairness problem is illustrated in Fig. 1, where a group of three closely located vehicles (Nodes 0-2) is followed by three other vehicles with a mutual distance of 700 m. It is assumed that all nodes constantly have broadcast packets to transmit. Transmission range RT X was set to 1000 m, carrier sense range RCS was 2000 m.4 The results illustrated in Fig. 2 demonstrate the unfair situation resulting from a purely CSMA based approach and the starvation of Nodes 3 and 4, which are only allowed to transmit 1-2 kb/s. The reason is that both nodes need to compete with two adjacent groups inside their carrier sense range, which are not aware of each other. Therefore, most of the time Node 3 and Node 4 sense a busy medium due to an ongoing transmission of Node 5 and/or one node in the group of Nodes 0 to 2. Furthermore, the data rates, which are available for the individual nodes, depend solely on their position and local environment the utility of the transmitted data for the network does not have an inuence. For example, although Node 3 might have data to transmit that is of high use for the other nodes in the local neighborhood, it could be starved. The fairness problem illustrated in this scenario is well known and several techniques have been proposed to improve the bandwidth allocations in CSMA ad hoc networks. The next
4 There is a known tradeoff between spacial reuse and interference when determining the carrier sense range. It can be shown that a ratio of 23 of carrier sense range to transmission range is optimal [9]. Most approaches in literature assume RCS = 2 RT X , which is also the case in this paper.

Due to the wide use of the IEEE 802.11 protocols in ad hoc networks [7], there has been large interest in improving its fairness in multi-hop scenarios. A common approach is to use decentralized fair queueing algorithms [8], which can guarantee a fair rate for each individual data ow. Utility based scheduling in wireless networks has been investigated by several authors, e.g. in [10], [11]. The general approach is to assume a strictly concave utility function u(r) of the transmit rate r available for an individual data ow. The data rates are then assigned in a way that the total utility of the system is maximized. However, these two approaches cannot be applied in the VANET scenario. As mentioned in Section I-A, communication in VANETs will mainly be (1-hop) broadcast, therefore, individual data ows, which can be assigned specic data rates, do not exist. In contrast to [10], the utility functions u( p) used in this paper are thus not a function of the data rate r but of an individual data packet p. Specialized broadcast protocols for (multi-hop) data dissemination in VANETs are proposed, e.g., in [5], [12]. These protocols increase the efciency of data dissemination by various strategies: [5] uses a layered data structure where information irrelevant at larger distances from the source is discarded during the forwarding process. In [12], a Request to Broadcast (RTB)/Clear to Broadcast (CTB) handshake is used in order to select the furthest node for data forwarding. A similar effect is achieved by the broadcast scheme in [6], which adapts the inter-transmission interval (at the application layer) considering the distance of the node to the information source. While the protocols presented in [5], [6], [12] could be used in addition to UBPFCC to facilitate a more efcient dissemination process, to our knowledge, none of the existing approaches guarantees a (utility-)fair allocation of bandwidth for the individual nodes. In the implementation of UBPFCC, the utility functions u( p) are actively interpreted at a forwarding node in order to estimate the utility of transmitting a data packet at a specic point in time. This execution of a function stored in the packet header is similar to the active networks [13] concept. However, the utility and update functions of UBPFCC have a very restricted functionality due to the fact that their sole purpose is the calculation of a utility in the interval [0,1]. Thereby, difculties and security issues of the more general active networks concept are avoided. IV. S YSTEM M ODEL The system model assumed in this paper is as follows. The VANET is formed of N vehicles equipped with an air interface, a digital map and a GPS receiver. In order to achieve a large information range, a combination of broadcast data transmissions and a store-and-forward approach is used [6]: The roads on the digital map are divided into segments of a standardized length (e.g. 500 m). Vehicles act as sensors and measure the conditions at their current road segment.

5 4 3 2

od e

od e

od e

od e

od e

od e

A VANET application disseminates one data value and a time-stamp per segment (typical e.g. for a trafc information system [2]). Applications transmit the currently available information in form of broadcast packets containing the information for multiple road segments. The received information values are stored on-board the vehicle and continuously updated. If a newer information value (i.e. with a higher time stamp) is received for a road segment, it replaces the previously stored one. Per node, one or multiple applications can be active. Applications are assumed to be independent of each other. Therefore, data values sensed by different applications are uncorrelated. Data packets are stored in a packet queue at the network layer before transmission. A CSMA MAC is assumed: A node senses that the medium is busy in the carrier sense range RCS and can receive data from nodes within the transmission range RT X . In the following, we assume that RCS = 2RT X . For simplicity, link adaptation is not considered in this paper all nodes constantly use the same PHY mode for transmitting/receiving data.

assigning the same rate to each node, it is much more efcient to assign data rates based on the (average) utility of data packets transmitted by a vehicle. Thereby, nodes transmitting information with a high utility for the VANET will be allowed to consume a larger share of the available bandwidth. Therefore, a relative priority i,k of a packet pi,k queued at node i can be calculated as a function of packet utility and size si,k : uTX ( pi,k ) i,k = . (2) si,k The relative priority i of node i is the maximum priority of all K data packets currently in its queue: i = max (i,k ) .
k=1...K

(3)

Since the locally available bandwidth for a node j depends on the number of nodes in carrier sense range, for a utilityfair rate assignment, the following condition must hold: For 2hop all N j nodes in carrier sense range of a node j, the instantaneous rate ri is proportional to priority i : ri = const. i i 1, N j
2hop

(4)

A. Utility For each enqueued data packet p, the node can calculate a utility value uTX ( p) [0, 1] corresponding to the utility of transmitting the data packet at the current point in time. The utility function is provided by the application and encoded in the packet header. For example, in a trafc information system based on inter-vehicle communication, a data packet with new information on the trafc status would be assigned a higher utility value than a data packet with information already known in the local area. A possible utility function in this case is shown in Equation (1). uTX ( p) = updated segment values total number of segment values (1)

The optimal fair assignment additionally maximizes i ri . B. Determining the Instantaneous Data Rate For transmitting its highest priority packet, each node claims a rate ri calculated locally ri =
1hop

i min E {} j=1...N 2hop


i

Beff, j 1hop N j

(5)

V. U TILITY-BASED PACKET F ORWARDING AND C ONGESTION C ONTROL The proposed Utility-Based Packet Forwarding and Congestion Control (UBPFCC) consists of four parts: 1) Each node claims a specic data rate based on the utility of transmitted/forwarded data packets. 2) Whenever a new data packet needs to be chosen for transmission, the data packet with the maximum utility per byte is dequeued from the packet queue. 3) The packet queue has a limited maximum length of K data packets. If the queue length exceeds K upon enqueueing a new data packet, the data packet with the lowest utility per byte is dropped. 4) Received broadcast data packets which cannot be delivered to an application at the node (i.e. respective application is not active) are stored in a separate queue and re-broadcasted as long as capacity is available and the packets time-to-live value is not expired. A. Relative Priority and Objective for Rate Assignment Due to the CSMA mechanism, a node shares the available transmission bandwidth with all nodes within a distance of RCS . The basic idea of UBPFCC is that, instead of simply

j where N denotes the estimated number of nodes in transmission range and Beff, j the effective bandwidth at node j.5 Due to the fact that E {} and the calculated minimum are constant within transmission range, the calculated rate assignment fullls the UBPFCC fairness condition in Equation (4).6 C. Estimating E {} Each node locally calculates an estimate of E {}. For simplicity, a recursive estimation (n) = k (n 1) + (1.0 k ) (6) is proposed, which updates the estimated value whenever a new data packet with utility per byte is received or sent at a node. The exponent k takes the packet size s p and the effective data rate Beff into account and guarantees an adaptation speed independent of packet size and data rate. s p Bmax k= (7) smax Beff Here, smax is a constant for the maximum packet size, Bmax is the maximum effective bandwidth of the considered system.
5 In Beff, j 1hop N
j

order enable all nodes to calculate ri , each node j includes his own as well as the one hop minimum in the data packet. Note also, that

since the Beff, j is determined by observation of transmissions in 1-hop range (Section V-D), it analogously needs to be normalized by the number of nodes in 1-hop (and not 2-hop) range. 6 By calculating i ri , it can also be shown that the assignment is optimal. This step is omitted here due to space limitations.

A 1

A 2

A 3

A p p lic a tio n L a y e r (T ra n s p o rt L a y e r) U B P F C C Im p le m e n ta tio n

(N e tw o rk L a y e r)

E n v ir o n m e n t V a r ia b le s E A p p . s p e c ific
E E E E E
N 1 ,1

U tility u a(E ,D )

,E : ,E

1 ,2

,..

E
1

: : ,..

k ,1

k ,2

E
k

U p d a te E a = c a(E ,D )

S o rte d P a c k e t Q u e u e ( o u tg o in g p a c k e ts )

u a(E ,D ) c a(E ,D ) P a y lo a d
L o a d , S N R

IP h e a d e r

D
i

S h a re d

T im e

L o a d

s h

In s t. R a te HE

D a ta L in k L a y e r P h y s ic a l L a y e r

B. Environment Variables For calculating the utility of a data packet, the UBPFCC scheduler requires state information on the current local context of the vehicle. This information is stored in form of environment variables which are regularly updated by applying a so-called update function (see Section VI-D). Two classes of environment variables exist in UBPFCC: Application Specic Environment Variables (Ea ) are created, updated and read by an individual application a. Shared Environment Variables (Esh ) are created and updated by the UBPFCC scheduler itself and can be read by all applications. Examples are: time, position, number of nodes in single hop communication range, local network load, and average signal to noise ratio. C. Utility Function An utility function uTX ( pk ) is used to determine the utility Ua,k of transmitting a data packet pk of application a at the current point in time. The utility Ua,k depends on the shared environment variables Esh , the application specic environment variables Ea and the descriptors Da,k encoded in the header of the data packet. Ua,k = uTX ( pk ) = ua (Esh , Ea , Da,k ) Ua,k [0, 1] (10) D. Update Function Update functions are used to update the knowledge on the local area (i.e. environment variables) based on received and transmitted data packets. Upon reception/transmission of data packet pk with descriptor Da,k , the new value of the environment variables E a is the result of the update function ca () E a = ca (Esh , Ea , Da,k ) (11) where Ea and E a denote the set of environment variables before and after sending/receiving the data packet, respectively. E. Function Encoding For encoding the update and utility functions in the packet header, a simple Type-Length-Value (TLV) encoding was implemented. A small interpreter then reads and evaluates the utility and update function in the packet header. (For the sake of brevity, the specication of the used data format is omitted here. Typical overhead per packet is 3-20 bytes.) F. Packet Scheduling The UBPFCC scheduler becomes active if one of the following four events occurs (Algorithm 1): a) a new packet is enqueued b) the schedulers send timer expires c) the lower layer (MAC/PHY) indicates that it is able to send the next data packet d) the lower layer indicates the reception of a data packet Whenever a new data packet pa,k is handed down by application a on the node, its relative priority (Eqn. 2) is calculated and the packet is enqueued in the utility sorted packet queue. Based on the instantaneous fair rate ri , an instantaneous delay di for the head of line packet is calculated at the node. Using the procedure outlined in Algorithm 1, the packet pa0 ,k0 with the maximum utility per byte is afterwards scheduled for transmission.

Fig. 3.

Overview of the UBPFCC implementation in a node.

D. Monitoring the Effective Data Rate In order to determine the effective data rate which is currently available at a node, a simple monitoring concept is used. In constant time intervals of TMON , the times Ti during which the MAC was transmitting, receiving or sensing a busy medium are determined. Furthermore, the number of bytes si successfully sent/received during each interval Ti is recorded. The estimated effective data rate in period TMON is K i=1 si , K N. (8) K i=1 Ti VI. UBPFCC I MPLEMENTATION For an implementation of UBPFCC, the main challenge is to allow the calculation of the utility function uTX ( p) for any data packet at any forwarding node. In this section, a possible implementation (Figure 3) is outlined.7 For each data packet generated at the application layer, a small UBPFCC header is added consisting of two application specic binary encoded functions: an utility function and an update function. Both are composed of descriptors, environment variables and (mathematical) operators. Using the utility and update functions in the packet header, the application specic utility of a data packet can be calculated at any point in time, even if the respective application is not active at an individual node that is forwarding the data packet. Beff = A. Descriptors A descriptor is an abstract description of the data in the data packet. It is either a single data value directly inserted in the UBPFCC header or a reference8 to data in the payload. A single UBPFCC header can contain multiple descriptors. For simplicity, the n descriptors in the kth packet received from application a will be denoted by Da,k with Da,k = {d1 , d2 , . . . , dn }. (9)

7 Since here the implementation at a specic node is considered, the node index i is omitted in the following. 8 Therefore, a descriptor could also be described as a pointer to a specic position in the packet payload.

Algorithm 1: Basic UBPFCC Algorithm


1 blocked f alse, tT X now; 2 while 1 do 3 update Esh ; 4 if upper layer has packet then insert packet in utility-sorted queue, head pa0 ,k0 ; 5 6 if blocked then 7 continue ; 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 di 0 ri ; if no send timer pending then tT X now;

TABLE I S IMULATION PARAMETERS . Parameter Total road length Number of lanes pnoise for CA trafc model Cell length for CA trafc model Constitution of trafc Desired velocity Trafc density Mean velocity Road segment size [low , high ] MAC data rate BMAX Transmission range RT X Carrier sense range RCS Packet size s p
1 4 0 1 2 0 1 0 0 8 0 6 0 4 0 2 0 0 1 2 1 1 3 0 1 1 6 1 1 6 1 1 6

sa ,k

set send timer to expire at tT X + di ; if send timer expired then tT X now; update , E a; Send( pa0 ,k0 ); if lower layer nished sending then if utility-sorted queue empty then blocked f alse; continue ;
0 di 0 ri ; if now tT X di then tT X tT X + di ; Send( packeta0 ,k0 );

Value 120 km 2 per direction 0.4 7.5 m 15% slow, 85% regular 108 km/h (slow), 142 km/h (reg.) 10 veh./lane/km 104 km/h 500 m 0.95 [0.6, 0.9] 0.1 MBit/s 1000 m 2000 m 1072 Bytes
2 0 0 1 5 0 1 8 6

1 1 1

sa ,k

k b it/s

k b it/s

1 0 0 5 0 0

7 5

6 9

6 3

6 3

6 3

blocked f alse; set send timer to expire at tT X + di ; if lower layer has packet then update , E a; if packets in queue and not blocked then sa ,k0 di 0 ; ri set send timer to expire at tT X + di ;

(a) using UBPFCC and equal utility per packet for all nodes Fig. 4.

(b) using UBPFCC and high utility of data sent by Node 3

Transmitted data rates in the static example (Fig. 1)

VII. P ERFORMANCE E VALUATION For performance evaluation of the proposed UBPFCC, a stochastic model of a typical highway scenario was implemented in the network simulator ns-2. By network simulations, the performance of a VANET using UBPFCC is compared with an identical reference system (REF) without UBPFCC. A. Simulation Environment In order to use a realistic mobility model, a microscopic trafc simulation has been implemented in the ns-2 simulation environment, using a Cellular Automaton (CA) approach [14]. Arrival times are assumed to be Poisson distributed, initial time gaps between adjacent vehicles are therefore chosen from an exponential distribution. An overview of the relevant simulation parameters is given in Table I. For each node, a standard network protocol stack consisting of a) the application (conforming to the model described in Section IV), b) User Datagram Protocol (UDP), c) Internet Protocol (IP), and d) IEEE 802.11 MAC/PHY was simulated. Additionally, the proposed UBPFCC mechanism was integrated in the simulated node using the implementation concept outlined in the previous section. The reference system (REF) was identical except for the fact that no UBPFCC was used. B. Results 1) Static Scenario: Firstly, the static example (Section II, Fig. 1) is revisited. The simulation parameters are identical to

those listed in Table I, except for the fact that as in Sec. II no mobility is present and the standard rate of 1 Mbit/s is used for the IEEE 802.11 MAC. Fig. 4(a) shows the achieved data rates, if all applications at every node transmit data packets with a utility of uTX ( p) = 0.1 per packet. Compared to Figure 2, the starvation of nodes 3 and 4 is avoided and all nodes transmit with approximately the same data rate. In order to illustrate the utility-fairness, a second scenario was evaluated, where the applications at Node 3 were modied to send packets with a constant utility of 0.3. As expected, in this case Node 3 transmits about three times as much as the other nodes (Figure 4(b)). 2) Stochastic Scenario: The second scenario presented is a stochastic scenario consisting of a 120 km highway section. The simulation parameters are listed in in Table I. For the simulated applications, the expected value of the expired time Tchange between two changes of a segments data value indicates how long the knowledge on a segment is valid. The time between two changes was chosen randomly according to a uniform distribution in the interval [0, 2Tchange ]. At each node, three different applications were active: For application a1 , a value of E{Tchange,1 } = 600 s was used (typical, e.g., for a trafc information system), for a2 a value of E {Tchange,2 } = 300 s and for a3 a value of E{Tchange,3 } = 60 s. Data values were integer values chosen from a uniform distribution in the interval [0, 255].9 A network layer packet queue with a maximum queue length of 5 data packets was assumed. All nodes were constantly backlogged.
9 A PHY data rate of only 0.1 MBit/s was assumed in order to increase the load on the network without simulating a large number of applications.

N od e N od e N od e N od e N od e N od e

od e

od e

od e

od e

od e

od e

else

100 90 80 70 60 50 40 30 20 10 0 0 5 10 Penetration [%] 15 20 E{Tchange}=600s (UBPFCC) E{T E{T E{T E{T E{T
change change change change change

100 }=600s (REF) }=300s (UBPFCC) }=300s (REF) }=60s (UBPFCC) }=60s (REF) 90 80 70 60 50 40 30 20 10 0 0 5 10 Penetration [%] 15 20 distance 2.5 km (UBPFCC) distance 2.5 km (REF) distance 5.0 km (UBPFCC) distance 5.0 km (REF) distance 12.5 km (UBPFCC) distance 12.5 km (REF)

7 6 Drop Rate [bit/s] 5 4 3 2 1

x 10

REF UBPFCC

0 0

10 Penetration [%]

15

20

(a) Comparison of performance for the three applications (b) Distance dependent performance for Application 1, for a road segment 5 km ahead. E{Tchange,1 } = 600 s.

(c) Average drop rate.

Fig. 5. Comparison of a VANET implementing Utility-Based Packet Forwarding and Congestion Control (UBPFCC) with the conventional reference system (REF) in the stochastic scenario.

The application specic utility function ua ( p) was set in the following way, which is suitable for example for trafc information systems [6]: Each data packet included two descriptors a eld of time stamps Da,1 and a eld of segment data values Da,2 . The value of ua ( p) was calculated by comparing D1 and D2 with the corresponding environment variables Ea,1 and Ea,2 according to Eqn. 1, already known from Section IV-A. A constant number of 201 segment values per data packet was used. A segment value is considered to be updated if the respective value in Da,2 differs from the value in Ea,2 and has a higher time stamp. A simple update function ca () sets the environment variables to the respective descriptor values (Ea,1 is set to Da,1 and Ea,2 to Da,2 ). For performance comparison, the effect of the UBPFCC scheduling needs to be evaluated at the application layer: For each application at every node, the available segment data was compared to the true current values every 500 ms of simulation time. A segment info was considered to be correct in the case that the value available at a node was identical to the true current value. Based on the ratio of the time during which correct information was available to the total simulation time, an availability value was calculated for each segment, which is the metric for performance comparison. Fig. 5(a) compares the performance of the utility-fair UBPFCC with the reference system (REF) for a segment 5 km ahead. With increasing ratio of equipped vehicles (penetration), the utility-fair approach clearly outperforms the reference system, in particular if E{Tchange } is low. In Fig. 5(b), the distance dependent performance for Application 1 is illustrated. Even for this application, which has a high value of E{Tchange } = 600 s, UBPFCC is superior for segments at a large distance. Furthermore, UBPFCC congestion control drastically reduces the average drop rate (Fig. 5(c)), particularly in cases of high penetration. VIII. C ONCLUSION Congestion control is a topic of high relevance for future vehicular ad hoc networks. Due to the mainly broadcast/geocast oriented communication and the highly dynamic network topology, conventional mechanisms such as per-ow fair queueing are difcult to apply. Therefore, a Utility-Based Packet Forwarding and Congestion Control (UBPFCC) is proposed in this paper, which uses a utility function encoded in the packet header for estimating the utility of transmitting

an individual data packet at each node. Based on the estimated utility of its data packets for the network, each node adapts its data rate to the local situation. In case of congestion, packets with a low utility for the network are dropped. Network simulations demonstrate that UBPFCC avoids the starvation of individual nodes and signicantly increases the efciency of information dissemination. R EFERENCES
[1] J. Zhu and S. Roy, MAC for dedicated short range communicatins in intelligent transport system, IEEE Commun. Mag., vol. 41, Dec. 2003. [2] L. Wischhof, A. Ebner, H. Rohling, M. Lott, and R. Halfmann, SOTIS a self-organizing trafc information system, in Proc. 57th IEEE Semiannual Vehicular Technology Conference, vol. 4, (Jeju, South Korea), pp. 24422446, Apr. 2003. ISSN: 1090-3038. [3] Q. Xu, T. Mak, and R. Sengupta, Vehicle-to-vehicle safety messaging in DSRC, in Proc. 1st ACM Workshop on Vehicular Ad Hoc Networks (VANET 2004), (Philadelphia, PA, USA), Oct. 2004. [4] J. J. Blum, A. Eskandarian, and L. J. Hoffman, Challenges of intervehicle ad hoc networks, IEEE Trans. Intell. Transport. Syst., vol. 5, pp. 347351, Dec. 2004. [5] L. B. Michael, Adaptive layered data structure for inter-vehicle communication in ad-hoc networks, in Proc. 8th World Congress on Intelligent Transportation Systems (ITS 2001), (Sydney, Australia), Oct. 2001. [6] L. Wischhof, A. Ebner, and H. Rohling, Information dissemination in self-organizing intervehicle networks, IEEE Trans. Intell. Transport. Syst., vol. 6, pp. 90101, Mar. 2005. [7] S. Xu and T. Saadawi, Does the IEEE 802.11 MAC protocol work well in multihop wireless ad hoc networks?, IEEE Commun. Mag., vol. 39, pp. 130137, June 2001. [8] H. Luo, P. Medvedev, J. Cheng, and S. Lu, A self-coordinating approach to distributed fair queueing in ad hoc wireless networks, in Proc. INFOCOM 2001, 2001. [9] X. Yang and N. H. Vaidya, On the physical carrier sense in wireless ad hoc networks, in Proceedings of the IEEE INFOCOM 2005, (Miamy, Florida, USA), Mar. 2005. [10] X. Gao, T. Nandagopal, and V. Bharghavan, Achieving application level fairness through utility-based wireless fair scheduling, in Proc. of GLOBECOM 2001 - IEEE Global Telecommunications Conference, pp. 3257 3261, Nov. 2001. [11] G. Bianchi, A. T. Campbell, and R. R.-F. Liao, On utility-fair adaptive services in wireless networks, in Proc. 6th International Workshop on Quality of Service (IEEE/IFIP IWQOS98), (Napa Valley, California, USA), May 1998. [12] G. Korkmaz, E. Ekici, F. zgner, and U. zgner, Urban multihop broadcast protocol for inter-vehicle communication systems, in Proceedings of the rst ACM workshop on Vehicular ad hoc networks, pp. 7685, ACM Press, 2004. [13] T. M. Chen, A. W. J. (editors), J. H. Saltzer, D. P. Reed, and D. D. Clark, Commentaries on active networking and end-to-end arguments, IEEE Network, vol. 12, pp. 6671, May 1998. [14] K. Nagel, D. E. Wolf, P. Wagner, and P. Simon, Two-lane trafc rules for cellular automata: A systematic approach, Tech. Rep. LA-UR 974706, Los Alamos National Laboratory, Los Alamos, NM, USA, 1997.

You might also like