Reliable Broadcast of Safety Messages in Vehicular Ad hoc ......tions, that the proposed protocol...
Transcript of Reliable Broadcast of Safety Messages in Vehicular Ad hoc ......tions, that the proposed protocol...
Reliable Broadcast of Safety Messagesin Vehicular Ad hoc Networks
by
Farzad Hassanzadeh
A thesis submitted in conformity with the requirementsfor the degree of Master of Applied Science
Graduate Department of Electrical and Computer EngineeringUniversity of Toronto
Copyright c© 2008 by Farzad Hassanzadeh
Abstract
Reliable Broadcast of Safety Messages in Vehicular Ad hoc Networks
Farzad Hassanzadeh
Master of Applied Science
Graduate Department of Electrical and Computer Engineering
University of Toronto
2008
Broadcast communications is critically important in vehicular networks. Many safety
applications need safety warning messages to be broadcast to all vehicles present in an
area. In this thesis, we propose a novel repetition-based broadcast protocol based on
“optical orthogonal codes.” Optical orthogonal codes are used because of their ability
to reduce the possibility of collision. We present a detailed mathematical analysis for
obtaining the probability of success and the average delay. Furthermore, we propose to
use coding to increase network throughput, and “adaptive elimination” of potentially
colliding transmissions to further increase reliability. We show, by analysis and simula-
tions, that the proposed protocol outperforms existing repetition-based ones and provides
reliable broadcast communications and can reliably deliver safety messages under load
conditions deemed to be common in vehicular environments. We also show that the
proposed protocol is able to provide different levels of quality of service.
ii
Dedication
To my beloved sister,
Farnaz
iii
Acknowledgements
I wish to express my sincerest thanks to my supervisor, Prof. Shahrokh Valaee, whose
support made this work possible. His knowledge, guidance, and encouragement has been
of invaluable help to me in producing this work.
I would also like to thank my colleagues at Wireless and Internet Research Laboratory
(WIRLab) for their constructive comments.
This work was supported by AUTO21 Network of Centres of Excellence and in-kind
contributions of Mark IV Industries.
iv
Contents
1 Introduction 1
1.1 Motivation and Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Infrastructure Networks and Ad Hoc Networks . . . . . . . . . . . . . . . 5
1.3 Collision Avoidance Operation: A Map of the Neighbourhood . . . . . . 8
1.4 Delay Requirement of Vehicular Communication . . . . . . . . . . . . . . 10
1.5 Overview of Vehicular Communications Standards . . . . . . . . . . . . . 11
1.6 Scope and Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2 Background 16
2.1 CSMA/CA-based Broadcast Protocols . . . . . . . . . . . . . . . . . . . 18
2.1.1 IEEE 802.11 Wireless LAN . . . . . . . . . . . . . . . . . . . . . 18
2.1.2 Broadcast Support Multiple Access (BSMA) . . . . . . . . . . . . 19
2.1.3 Broadcast Medium Window (BMW) . . . . . . . . . . . . . . . . 19
2.1.4 Batch Mode Multicast MAC (BMMM) . . . . . . . . . . . . . . . 21
2.1.5 Location Aware Multicast MAC (LAMM) . . . . . . . . . . . . . 23
2.1.6 TRAcking DEtection (TRADE) . . . . . . . . . . . . . . . . . . . 23
2.1.7 Distance Defer Transfer (DDT) . . . . . . . . . . . . . . . . . . . 24
2.1.8 Urban Multihop Broadcast (UMB) . . . . . . . . . . . . . . . . . 25
2.2 Reliable Reservation ALOHA (RR-ALOHA) . . . . . . . . . . . . . . . . 26
v
2.3 Repetition-based Broadcast Protocols . . . . . . . . . . . . . . . . . . . . 28
2.3.1 Synchronous p-Persistent Repetition (SPR) . . . . . . . . . . . . 29
2.3.2 Synchronous Fixed Repetition (SFR) . . . . . . . . . . . . . . . . 29
2.4 Other Protocols and Chapter Summary . . . . . . . . . . . . . . . . . . . 30
3 OOC-based Broadcast Protocol 31
3.1 Broadcast using Optical Orthogonal Codes . . . . . . . . . . . . . . . . . 31
3.1.1 CDMA, Positive Optical Systems, and OOC . . . . . . . . . . . . 33
3.2 Distributed Code Assignment . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2.1 Code Information Response Window . . . . . . . . . . . . . . . . 36
3.3 Frame-Synchronous and Frame-Asynchronous . . . . . . . . . . . . . . . 39
3.4 OOC Code Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4 Analytical Performance Study 45
4.1 Probability of Success . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.1 Probability of Success for SPR . . . . . . . . . . . . . . . . . . . . 47
4.1.2 Probability of Success for SFR and OOC . . . . . . . . . . . . . . 47
4.1.3 Probability of Success and Interference Probabilities . . . . . . . . 49
4.2 Average Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.1 SPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.2.2 SFR and OOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3 Numerical Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5 Adaptive Elimination, Coding, and QoS Provisioning 68
5.1 Adaptive Elimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.2 Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.2.1 Probability of Success with Coding . . . . . . . . . . . . . . . . . 71
5.3 Quality of Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.4 Appendix: Proof of Proposition 5.2.1 . . . . . . . . . . . . . . . . . . . . 75
vi
6 Simulation Results 78
6.1 Channel Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.2 Protocol Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2.1 Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2.2 Probability of Success . . . . . . . . . . . . . . . . . . . . . . . . 81
6.3 Performance versus Distance . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.3.1 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.3.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7 Conclusions and Future Work 95
7.1 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Bibliography 97
vii
List of Tables
4.1 Possible codewords and their probabilities for one interfering user . . . . 53
4.2 Sample values of p1 obtained by generating OOC codes for various L and w 56
viii
List of Figures
1.1 Fatalities per 100 million vehicle-miles . . . . . . . . . . . . . . . . . . . 3
1.2 US Department of Transportation ITS architecture . . . . . . . . . . . . 4
1.3 Obstacle causes abnormal road situation . . . . . . . . . . . . . . . . . . 6
1.4 Chain collision avoidance . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Intersection collision avoidance . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 Broadcast ad hoc medium access control protocols . . . . . . . . . . . . . 17
2.2 BMW protocol under ideal conditions for transmitting one data packet . 21
2.3 BMMM protocol under ideal conditions for transmitting one data packet 21
2.4 Blocking: N7 becomes blocked because N6 is not able to transmit CTS . 22
2.5 Far nodes are in yield state, only node B receives the broadcast message 26
2.6 Division of time into frames and timeslots for repetition-based broadcast 28
2.7 A transmission pattern and its binary representation. . . . . . . . . . . . 29
3.1 CDMA, OOC-based optical CDMA, and, OOC-based broadcast . . . . . 35
3.2 Network association phase . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 CIQ and CIR transmissions . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.4 Timeline of CIQ and CIR transmissions of Fig. 3.3 . . . . . . . . . . . . 38
3.5 Circular and linear representation of a transmission pattern . . . . . . . . 40
3.6 Frame-synchronous and frame-asynchronous transmissions . . . . . . . . 40
3.7 Distribution of ‘1’s in a sample OOC . . . . . . . . . . . . . . . . . . . . 44
ix
4.1 Approximate and sample values of p1 for OOC . . . . . . . . . . . . . . . 57
4.2 Probability of failure of SPR . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3 Optimum average number of transmissions, w, for SPR . . . . . . . . . . 64
4.4 Probability of failure of SFR . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.5 Probability of failure of OOC . . . . . . . . . . . . . . . . . . . . . . . . 65
4.6 Optimum number of transmissions, w, for SPR and OOC . . . . . . . . . 65
4.7 Optimum probability of failure for OOC, SFR, and, SPR . . . . . . . . . 66
4.8 Delay of successful transmissions for OOC, SFR, and, SPR . . . . . . . . 67
5.1 Both u1 and u2 are scheduled to transmit in the third timeslot . . . . . . 69
5.2 u2 disables its transmission in the third timeslot . . . . . . . . . . . . . . 70
5.3 Probability of success of SPR for different r’s, L = 64, N = 31, w = 6 . . 73
5.4 Probability of success of SFR for different r’s, L = 64, N = 31, w = 6 . . 74
5.5 Probability of success of OOC for different r’s, L = 64, N = 31, w = 6 . . 74
5.6 High and low priority messages with different number of transmissions . . 75
6.1 Map of roadway and cars. . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.2 Probability of failure versus w, for µp = 0.2. . . . . . . . . . . . . . . . . 82
6.3 Probability of failure for r = 2 versus w, for µp = 0.2. . . . . . . . . . . . 83
6.4 Probability of failure for r = 3 versus w, for µp = 0.2. . . . . . . . . . . . 83
6.5 Average delay versus w, for µp = 0.2. . . . . . . . . . . . . . . . . . . . . 84
6.6 Probability failure versus average delay . . . . . . . . . . . . . . . . . . . 84
6.7 Probability of success versus average load, for w = 7. . . . . . . . . . . . 86
6.8 Throughput versus average load, for w = 7. . . . . . . . . . . . . . . . . . 86
6.9 Providing different QoS levels with OOC. . . . . . . . . . . . . . . . . . . 87
6.10 Effect of Adaptive Elimination. . . . . . . . . . . . . . . . . . . . . . . . 88
6.11 Comparison of analytical and simulation results: Ps . . . . . . . . . . . . 88
6.12 Comparison of analytical and simulation results: Ps with coding . . . . . 89
x
6.13 Comparison of analytical and simulation results: Delay . . . . . . . . . . 90
6.14 Probability of success vs. distance from the receiver for L = 64 . . . . . . 91
6.15 Probability of success vs. distance from the receiver for L = 94 . . . . . . 92
6.16 Probability of success vs. distance from the receiver for different QoS levels 92
6.17 Simulation with and without capture . . . . . . . . . . . . . . . . . . . . 93
xi
Chapter 1
Introduction
1.1 Motivation and Purpose
According to the World Health Organization (WHO), road accidents annually cause
approximately 1.2 million deaths and 50 million injuries worldwide [1]. If preventive
measures are not taken, traffic accident death is likely to become the third cause of the
loss of disability-adjusted life years (DALY) 1 in 2020 from ninth place in 1990 [2].
However, fatalities caused by car crashes are, in principle, avoidable. 21,000 of the
annual 43,000 road accident deaths in the US are caused by roadway departures and
intersection related incidents [3]. This number can be significantly lowered by deploy-
ing local warning systems enabled by vehicular communications. Departing vehicles can
inform other vehicles of their intention to exit the highway and arriving cars at intersec-
tions can send warning messages to other cars traversing that intersection. Studies show
that in western Europe a mere 5km/hr decrease in average vehicle speeds could result in
25% decrease in deaths [1]. Policing speed limits will be notably easier and more efficient
using wireless communication technologies.
Governments and manufacturers have been increasingly investing to find new ways
1DALYs are the sum of the years of life lost due to premature mortality and the years lost due todisability.
1
Chapter 1. Introduction 2
to improve the safety of drivers, occupants, and pedestrians. Until recently, these efforts
have generally been following a passive and non-cooperative approach. A passive safety
system tries to minimize the casualties and cost of a collision by using devices such as air
bags and shock absorbers but it is not able to prevent collisions. Many manufacturers
have been deploying non-cooperative digital technologies into their vehicles wherein each
vehicle tries to reach maximum possible safety by making decisions based on information
that it has obtained individually. These systems include advanced braking systems and
cruise control systems.
In the United States, from 1960 to 2005, the rate of fatalities per vehicle-miles de-
creased from 5.1 fatalities per 100 million vehicle-miles (MVM) 2 to 1.5 [4]. As observed
from Fig. 1.1, in spite of a sharp decline form 1965 to 1995, this rate has been roughly
constant from 2000 to 2005. This may indicate that, although passive/non-cooperative
safety systems have been effective in decreasing fatalities, these approaches alone are no
longer capable of significantly reducing fatalities beyond the current state. Therefore,
we are urged to move from passive/non-cooperative safety systems to active/cooperative
safety systems, which can prevent accidents.
Active/cooperative safety systems are part of a broad range of emerging communica-
tions, electronics, and informatics technologies, unified under Intelligent Transportation
Systems (ITS), being developed to fundamentally enhance safety and productivity in sur-
face transportation. ITS technologies are designed to significantly improve road travel by
preventing accidents, decreasing congestion and gridlock, and enhancing traffic manage-
ment and enforcement. ITS development relies, at its core, on a communication platform
enabling fast and reliable communication in vehicular environments. Dedicated Short
Range Communication (DSRC) standard, adopted by IEEE and ASTM International3
(ASTM E 2213-03 [5]), provides the communication platform required by ITS [6]. The
2Vehicle-miles: Miles of travel by all types of motor vehicles as determined by the states on the basisof actual traffic counts and established estimating procedures.
3Originally known as the American Society for Testing and Materials
Chapter 1. Introduction 3
1960 1965 1970 1975 1980 1985 1990 1995 2000 20051
1.5
2
2.5
3
3.5
4
4.5
5
5.5
Year
Fat
aliti
es p
er 1
00 m
illio
n ve
hicl
e−m
iles
Fig. 1.1: Fatalities per 100 million vehicle-miles
importance of DSRC can be observed in ITS architecture illustrated in Fig. 1.2: DSRC
is the enabling technology for supporting both vehicle to vehicle (V2V) and vehicle to
roadside infrastructure (V2R) communication.
To accommodate the need of ITS for communication infrastructure, in 1999, the
U.S. Federal Communication Commission (FCC) allocated 75MHz bandwidth at 5.9GHz
[8] to public and private vehicular communication applications based on DSRC. The
75MHz bandwidth is divided into seven 10MHz channels. Among the seven designated
channels, one is assigned to V2V public safety communication (ch 172), one is assigned
to intersection public safety (ch 184), four channels are assigned to public safety and/or
private applications (ch 174, ch 176, ch 180, ch 182), and one channel is the control
channel (ch 178) used mainly for broadcast traffic. Our goal in this work is to provide a
Medium Access Control (MAC) protocol in ad hoc mode for broadcast communication.
Such a MAC protocol must be able to reliably deliver safety-critical messages. Due to
stringent delay requirements of safety traffic, transmission delay of a protocol designed
for vehicular communication must be very low. Furthermore, a vehicular MAC must be
capable of supporting mobility and effectively coordinating tens of sources of broadcast
traffic.
Chapter 1. Introduction 4
Remote Traveler Support
Personal Information
Access
Traffic Management
Information Service Provider
Emergency Management
Emissions Management
Toll Administration
Fleet and Freight Management
Commercial Vehicle
Administration
Maintenance and Construction Management
Transit Management
Archived Data
management
Fixed-Point to Fixed-Point Communication
Wid
e Ar
ea W
irele
ss (M
obile
) Com
mun
icat
ion
Vehicle to Vehicle Communication
Ded
icat
ed S
hort
Ran
ge C
omm
unic
atio
n
Vehicle
Emergency Vehicle
Commercial Vehicle
Transit Vehicle
Maintenance and Construction Vehicle
Roadway
Security Monitoring
Toll Collection
Commercial Vehicle Check
Parking Management
Centers
FieldVehicles
Travelers
Fig. 1.2: US Department of Transportation ITS architecture [7]
The rest of this chapter is organized as follows. In Section 1.2 we consider the choice
between infrastructure and ad hoc communication for safety systems. Characteristics
of the communication traffic of cooperative safety systems are presented in Section 1.3,
noting that knowledge of a relative map of neighbouring vehicles is effective in collision
prevention. Delay requirements of safety messages are described in Section 1.4. An
overview of vehicular communication standards is given in Section 1.5. The scope and
objectives of this work are presented in Section 1.6 and the main contributions of this
thesis are listed in Section 1.7.
Chapter 1. Introduction 5
1.2 Infrastructure Networks and Ad Hoc Networks
One of the main questions that must be explored for designing a MAC protocol is the need
for and the possibility of using infrastructure in the network. In this section, we identify
situations in which a vehicular network requires infrastructure and situations that can
be handled in ad hoc mode by considering some of the envisioned safety applications.
Line-of-Sight Collision Prevention
In this situation, all the vehicles, bikes, and pedestrians involved in a dangerous situation
are within line-of-sight of others. This has two consequences. First, drivers usually
identify the danger but in cases that result in accidents, recognition of dangerous situation
is so late that preventive actions taken by drivers are not effective in preventing a collision.
Therefore, safety systems must be capable of warning drivers noticeably faster than their
own ability to identify a dangerous situation. Second, the possibility of line-of-sight
communication alleviates the need for infrastructure. We provide two examples of line-
of-sight crash prevention in the following.
Obstacle Information Dissemination Fig. 1.3 shows a sample scenario in which part
of a road is closed due to an obstacle. Although in some cases, such as constructions,
(visual or radio) warning signals, set up in advance, inform the drivers to decelerate,
in many situations, such as a piece of fallen freight being in the road, warning signals
are absent. In the latter case, vehicular communication can be used to disseminate
information about abnormal road conditions. In Fig. 1.3 car 2 transmits a warning
message to all cars traveling behind it and within its communication range. It can be
observed that an ad hoc communication system is capable of delivering the warning
message and roadside units are not necessary.
Chapter 1. Introduction 6
Obstacle
1
2
3
4
5
6
1
2345
Fig. 1.3: Obstacle causes abnormal road situation
Preventing Chain Collisions A similar but more dangerous situation occurs when a
car is forced to stop due to a sudden event such as abnormal behavior of another vehicle
or an accident as illustrated in Fig. 1.4. Sudden deceleration in a highway may result in
a collision or even a chain of collisions. To avoid rear-end collisions, drivers rely on brake
lights of the car ahead of them to be able to stop in time. Needless to say, close distance,
high speed, slow driver reaction, poor visibility, and/or poor road condition may, and
occasionally do, prevent appropriate stopping and lead to accidents. Warning messages
can be useful in informing drivers faster than they would recognize the danger without
receiving warning messages. Warning messages can be particularly effective in avoiding
chain collisions because drivers’ reaction usually depends on the physical reaction of the
car immediately in front of them, i.e., a driver does not recognize the danger until the
car immediately ahead brakes. Radio warning messages, on the other hand, are free from
this limitation and, hence, can prevent chain collisions.
Non-Line-of-Sight Collision Prevention
An example of non-line-of-sight collision prevention is an intersection collision warning
system. Intersection collisions constitute a major category of traffic collisions that are
largely preventible. As illustrated in Fig. 1.5, however, line-of-sight communication is
Chapter 1. Introduction 7
Obstacle
1
2
3
4
5
6
1
2345
Fig. 1.4: Chain collision avoidance
not usually possible especially in more dangerous cases in which visual recognition is
difficult. In this situation, the warning message should be relayed from one vehicle to
another one by an intermediate node. In cases with high traffic density, relaying can
be done by another vehicle in the line-of-sight of the vehicles entering the intersection.
However, in most cases, a relaying vehicle is not present and a roadside unit is needed to
relay the warning message.
Fig. 1.5: Intersection collision avoidance
In situations that a roadside unit is not necessary, vehicular ad hoc network can pro-
vide effective and inexpensive networks to support ITS safety applications. Furthermore,
vehicular ad hoc networks can provide communication with lower delay by delivering mes-
Chapter 1. Introduction 8
sages from vehicle to vehicle, eliminating the delay caused by transmitting messages to
infrastructure and back to vehicles. Because vehicles moving in the same direction have
lower speed relative to each other than to roadside units, problems caused by mobility
are also alleviated in ad hoc networks.
Nevertheless, in cases in which line-of-sight communication is not possible and one
cannot rely on the presence of other vehicles to relay critical messages the presence of
roadside units is necessary. From the above discussion, we conclude that a hybrid solution
in which vehicular ad hoc networks provide the communication platforms in highways
and rural areas, and roadside units are utilized in intersections and urban areas, is best
suited to enable ITS safety message delivery.
1.3 Collision Avoidance Operation: A Map of the
Neighbourhood
In this section, we study the characteristics of the communication traffic in a vehicular
network in a channel dedicated to safety communication. We assume that safety systems
installed on each vehicle require a map of relative position of neighbouring vehicles. If
positions of neighbouring vehicles are known to the safety systems, many collisions can
be avoided. The distances to neighbouring vehicles being known, a safety system can
appropriately warn the driver of potentially dangerous situations. The map can be used
by the safety system to assist the driver in changing lane, entering and exiting highways
and main roads, avoiding unsafe close distance to the vehicle immediately in front, and
many other operations a driver needs to perform. If the velocity of the neighbours is
also known, each vehicle can predict future positions and avoid possible collision-prone
situations.
Building a local map in each vehicle requires that: 1) each vehicle be able to discover
its own absolute or relative position, and 2) vehicles be able to communicate position
Chapter 1. Introduction 9
information. Discovering the position of a vehicle can be done via GPS [9], radio rang-
ing techniques [10], and/or, radar. Our focus in this thesis is on providing the second
requirement, i.e., the design of a medium access protocol that is capable of delivering
position information messages, as well as other data.
At 100km/hr, a vehicle moves 6m (approximately the accuracy of GPS) in 216ms.
Therefore, update frequency of approximately 5 messages/second guarantees accurate
and up-to-date maps. However, if vehicles can accurately estimate their velocity, position
prediction can be used to alleviate the need for update and lessen the number of update
messages required. A well-designed medium access control layer must be capable of
successfully delivering messages with said frequencies.
Since vehicular update messages need to deliver limited information such as vehi-
cle ID, message ID, position, velocity, road condition, warning, etc, the size of these
messages is under a few hundred bytes. Location information, on the Earth’s sur-
face, in a spherical system with fixed r coordinate and 1 cm resolution can be deliv-
ered with log2(2π6.4× 106 m/10−2 m) + log2(π6.4× 106 m/10−2 m) = 62.81 ≤ 63 bits
where 6.4 × 106m is the Earth’s radius. Relative location information within 100m (in
a 200m×200m square centered at the reference point) in a Cartesian system with 1 cm
resolution can be delivered with 2 log2(200 m/10−2 m) = 28.6 ≤ 29 bits. Assuming each
vehicle transmits its position in absolute form and its velocity and the positions and
the velocities of vehicles immediately in front, behind, left, and right in relative to the
absolute position, 63 + 29 + 4(29 + 29) = 324 bits or 41 bytes need to be transmitted.
Adding 2 bytes for the ID of each vehicle, in total 51 bytes is needed. If about 49 bytes
are allocated for other uses, such as obstacle and its position, emergency car and its
position, emergency braking, etc, the length of the safety message is about 100 bytes.
Therefore, in vehicular communications, safety messages are short compared to data or
multimedia messages.
Assuming 30m separation between adjacent cars traveling in the same lane, in 300m of
Chapter 1. Introduction 10
one lane of a road, there are approximately 10 cars. If the radius of the neighbourhood
for which vehicles construct a local map is considered to be 300m, depending on the
number of lanes, tens of vehicles are within the communication range of a vehicle. Any
protocol designed for vehicular communication must be able to support tens of nodes in
the network.
Whether or not a map is used for collision avoidance, any medium access control
protocol must be scalable and flexible. A vehicular communication system in a crowded
highway spans hundreds of kilometers and thousands of cars. Although communication
is local and vehicles far from each other need not communicate for safety reasons, vehicles
that are physically close to each other must always be able to communicate regardless of
the logical structure of a protocol.
1.4 Delay Requirement of Vehicular Communication
An automatic safety system is successful if it can recognize a dangerous situation before
the driver of a vehicle does. For example, if the car immediately ahead suddenly stops,
the driver needs to detect the brake lights, decide that the brakes should be applied, and
move the appropriate muscles to apply the brakes. The mental processing time, i.e. , the
time from the moment an event occurs until the moment a decision is made, is between
500ms to 1.2s, depending on how unexpected the event is [11]. Noting that the warning
message alerting a driver, itself needs to be processed, we conclude that communication
delay must not exceed 100-200ms. This value is, henceforth, called the lifetime of a safety
message. Note that the lifetime value assumed here is in agreement with 5 messages per
second update frequency explained in the previous section.
Chapter 1. Introduction 11
1.5 Overview of Vehicular Communications Standards
IEEE 802.11a is adopted as the base MAC/PHY layer standard for DSRC [12]. The
modification to 802.11a, to make it suitable for vehicular communications and capable
of supporting ITS applications, is called IEEE 802.11p standard for Wireless Access in
Vehicular Environments (WAVE) [13]. WAVE is based on testing and analyses of wireless
communications in a mobile environment published in [5]. Draft 3.05 of 802.11p WAVE
is the most recent version [14].
According to IEEE 802.11p, a compliant vehicular communication network supports
both vehicular on-board units (OBU) and roadside units (RSU). An RSU is similar to
a wireless LAN access point and can provide communications with infrastructure [13].
Also, if required, an RSU must be able to allocate channels to OBUs. There is a third
type of communicating nodes called Public Safety OBU (PSOBU) which is a vehicle
with capabilities of providing services normally offered by RSUs. These units are mainly
utilized in police cars, fire trucks, and ambulances in emergency situations.
DSRC provides several channels (seven 10 MHz channels in North America) for com-
munications which are divided into two categories: a control channel and service channels.
The control channel is reserved for broadcasting and coordinating communications which
generally takes place in other channels. Although DSRC devices are allowed to switch
to a service channel, they must continuously monitor the control channel. There is no
scanning and association as in the conventional 802.11. All such operations are done via
a beacon sent by RSUs in the control channel. While OBUs and RSUs are allowed to
broadcast messages in the control channels, only RSUs can send beacon messages.
The complement of WAVE in higher layers is IEEE 1609 which is a family of standards
dealing with issues such as management and security of the networks [15]:
• 1609.1 Resource Manager: This standard provides a resource manager for WAVE,
allowing communication between remote applications and vehicles.
Chapter 1. Introduction 12
• 1609.2 Security Services for Applications and Management Messages.
• 1609.3 Networking Services: This standard addresses network layer issues.
• 1609.4 Multi-channel Operation: This standard deals with communications through
multiple channels.
1.6 Scope and Objectives
In this thesis, we propose and analyze a reliable medium access control protocol with
low delay for supporting safety message broadcasting in a vehicular network. We aim
at developing a protocol that is capable of satisfying low delay requirements of safety
messages while being able to deliver messages with high reliability.
A major difference between an ad hoc network in vehicular environment and a con-
ventional ad hoc network is that in vehicular networks, as discussed earlier, traffic is of
broadcast type; routine safety messages are issued from all vehicles several times per
second and are intended for all their neighbours. Transmission of safety messages must
be reliable and with very low delay. Conventional MAC protocols for ad hoc networks are
not designed to handle broadcast traffic from many nodes in the network. For example,
as explained in more detail in Chapter 2, in IEEE 802.11 no mechanism exists to reduce
the probability of collision for broadcast traffic. In IEEE 802.11, Request To Send (RTS)
and Clear To Send (CTS) packets are transmitted before unicast communications to
avoid collisions. It may seem straight forward to add RTS/CTS handshake to broadcast
communications as well. However, in vehicular communication, the length of broadcast
messages is short and comparable to that of RTS. Therefore, the probability of collision
is not significantly lower for RTS packets. The short length of messages also contributes
to inefficiency since the payload (safety message) is not significantly larger than the over-
head (RTS+CTS). Furthermore, RTS/CTS handshake needs to be performed with more
than one receiver to obtain the same reliability as that of unicast communication.
Chapter 1. Introduction 13
A solution to reliable delivery of safety broadcast messages is repetition-based broad-
cast. In repetition-based broadcast, the safety message is transmitted several times
according to a transmission pattern. While repetition increases the probability of suc-
cessful delivery compared to the ALOHA approach of IEEE 802.11, previously proposed
transmission patterns are random and have no mechanism for avoiding collision among
users.
In this work, after reviewing the literature in Chapter 2, we propose a new protocol
based on Optical Orthogonal Codes (OOC) to decrease collisions in Chapter 3. Opti-
cal orthogonal codes, originating from optical code division multiple access, have good
properties which, as we show with analysis and simulations, decrease the probability of
collision when used as transmission patterns in a repetition-based broadcast protocol. We
present a code assignment mechanism that assigns a transmission pattern to each user
which is unique within its two-hop neighbourhood. The generation of optical orthogonal
codes is also discussed.
A detailed analytical performance study is provided in Chapter 4, resulting in ex-
pressions for the probability of success and the average delay. The analysis is valid for
previously proposed repetition-based broadcast protocols, OOC-based repetition broad-
cast, and other repetition-based broadcast protocols with fixed number of transmissions.
Numerical results, obtained from the analysis, provide performance evaluation for dif-
ferent protocols and indicate that repetition broadcast based on OOC exhibits higher
probability of success and similar delay compared to other repetition-based protocols.
Following the analytical performance study, in Chapter 5, improvements to the pro-
tocol are presented. Adaptive elimination is introduced to further increase the reliability
of the protocol by eliminating potential collisions. Furthermore, the use of coding in
the proposed protocol is explained. Coding helps increase the throughput of the net-
work. Since QoS provisioning is a desirable feature of vehicular networks, a method for
providing different QoS levels is also introduced.
Chapter 1. Introduction 14
In Chapter 6, simulation results are presented to show the performance of the pro-
posed protocol, in an environment with a traffic load similar to that required by the ITS
safety applications, and compared to the performance of other repetition-based protocols.
Simulation results demonstrate the superior performance of OOC-based broadcast and
show that its performance is improved by adaptive elimination and coding.
Finally, in Chapter 7, we end this work with our concluding remarks and provide
directions for future work.
1.7 Contributions
The main contribution of this work is the design of a novel medium access control pro-
tocol for broadcast communication in vehicular communication networks. The proposed
protocol is suitable for transmission of short routine safety messages issued by vehicles
to inform others of their position and other useful information. The protocol makes use
of good correlation properties of optical orthogonal codes to avoid collisions.
The following lists the contributions of this work, the chapter in which they were
presented, and any publication reporting them.
• MAC Design based on OOC: Introduced and studied OOC-based repetition
protocols for broadcast communications (Chapter 3 and [16], [17])
• Performance Study: Developed a generalized analytical framework not only ca-
pable of analyzing OOC-based broadcast but also previously proposed repetition-
based broadcast protocols and any repetition-based broadcast protocol with a fixed
number of repetitions (Chapter 4 and [16]) and presented simulation results (Chap-
ter 6 and [16], [17])
• Coding, QoS, and Adaptive Elimination: Introduced and studied methods
to improve reliability, throughput, and quality of service provisioning in repetition-
Chapter 1. Introduction 15
based broadcast (Chapter 5 and [16], [17])
Chapter 2
Background
In this chapter, we look at previous works focusing on the reliability of broadcast commu-
nication in ad hoc networks (vehicular or otherwise). Protocols applicable to vehicular
communications can be divided into five categories as shown in Fig. 2.1. Among these
categories we discuss protocols from the first three categories: Carrier Sense Multiple
Access/Collision Avoidance (CSMA/CA)-based protocols, reservation-based protocols,
and repetition-based protocols.
CSMA/CA-based protocols are modifications of IEEE 802.11 that extend the use of
Collision Avoidance (CA) mechanism, which in IEEE 802.11 is used only for unicast
communications, to broadcast and are discussed, along with IEEE 802.11, in Section 2.1.
These modifications incorporate RTS/CTS/ACK handshake into IEEE 802.11 broadcast
to force hidden terminals into yield state in order to avoid collisions. They may require
the handshake to be performed with all receivers, a subset of receivers, or only one
receiver.
Reliable Reservation ALOHA (RR-ALOHA), a slot reservation protocol suggested
for vehicular networks [18], is discussed in Section 2.2. In RR-ALOHA users reserve a
timeslot in a frame for transmission.
Synchronous p-Persistent Retransmission (SPR) and Synchronous Fixed Retransmis-
16
Chapter 2. Background 17
Broadcast Ad hoc MAC protocols
Reservation-based protocols
BTMA-based protocols
Cluster-based protocols
RR-ALOHA
Repetition-based protocols
CSMA/CA-based protocols
SPR SFR OOC
IEEE 802.11
LAMM
BMWBSMA BMMM
DDTTRADE UMB
Fig. 2.1: Broadcast ad hoc medium access control protocols
sion (SFR) [19], repetition-based protocols proposed to solve broadcast problems, are
discussed in Section 2.3. The proposed protocol in this thesis is also a repetition-based
protocol. Analytical and simulation results are presented for SPR and SFR along with
the proposed protocol in later chapters.
The main challenge in cluster-based protocols is not the medium access control pro-
tocol but the formation of stable clusters. Therefore, these protocols are not considered
here. Also, Busy Tone Multiple Access (BTMA) protocols, such as [20], cannot be used
in the single control channel of DSRC and, therefore, not discussed in this chapter.
For each protocol described in this chapter, we discuss its suitability for broadcast in
vehicular environments.
Chapter 2. Background 18
2.1 CSMA/CA-based Broadcast Protocols
2.1.1 IEEE 802.11 Wireless LAN
In IEEE 802.11, Request To Send (RTS)/ Clear To Send (CTS) handshake is the main
means of combating the hidden terminal problem. However, broadcasting nodes do not
generally use RTS/CTS packets [21]. The lack of RTS/CTS handshake for broadcast
communication results in unreliable and inefficient communication. The situation is worse
in vehicular environments when there are tens of nodes within single-hop communication
range.
For unicast communications, acknowledgement (ACK) packets are transmitted by
receiving nodes to ensure recovery if transmission has not been successful. For broadcast
communication, however, acknowledgement is not required in IEEE 802.11 [22]. This
increases the unreliability of transmission of safety broadcast messages.
Lack of acknowledgements also increases the risk of network instability. Since the
transmitting node cannot detect an unsuccessful transmission, it fails to change the size
of its Contention Window (CW) [23]. Therefore, under heavy load, the size of contention
window is not increased to reduce the probability of collisions and the possibility of
instability is increased.
Although WAVE is built upon 802.11 wireless LAN, the requirements for reliable and
low delay communication, especially broadcast, are not achieved by using the current
standard without appropriate modification and enhancements as commonly observed in
the literature [6], [8], [20], [24]– [32].
Furthermore, unicasting such short messages as in vehicular safety communications
(see Section 1.3), with 802.11 approach is very inefficient. According to a model devised
by Bianchi [33], the maximum bandwidth utilization of 802.11a with RTS/CTS hand-
shake, at 54 Mb/s, with payload size of 100 bytes is less than 7% [8]. Multiple RTS/CTS
handshakes, as proposed by some of the protocols discussed in this chapter, will further
Chapter 2. Background 19
decrease the efficiency.
2.1.2 Broadcast Support Multiple Access (BSMA)
A simple extension to IEEE 802.11 which adds RTS/CTS signaling to broadcast packets
is presented in [34]. The protocol works as follows. After going through carrier sensing
and a contention phase, the source node broadcasts an RTS packet and waits a certain
time for a CTS, which, if received, triggers DATA transmission. With this approach,
however, the collision of CTS packets is very likely. To solve the problem of collision of
CTS packets, the authors suggest:
• Using a radio with capture capability so that one CTS packet is successfully re-
ceived. In this case, it is assumed that one of the CTS packets is sufficiently stronger
than others and can be received with a capture-enabled radio. This assumption,
however, is unrealistic since CTS packets are likely to have similar received power.
• The source node’s radio detects the busy period resulting from a collision as a CTS
and starts transmitting if it detects a busy period in the channel after transmitting
RTS. In this case the main purpose of CTS packets, which is to force hidden
terminals to yield, is overlooked. Hidden terminals cannot distinguish a busy period
resulted from colliding CTS packets from any other collision.
In Broadcast Support Multiple Access (BSMA) [35], NAK signaling is added to the above
protocol. The collision of control packets, however, remains unresolved.
2.1.3 Broadcast Medium Window (BMW)
The fundamental idea behind Broadcast Medium Window (BMW) [27] is to increase
the reliability of broadcast transmission by transmitting the broadcast packet to every
neighbour using RTS/CTS/ACK transmissions in a round robin fashion. If a neighbour
Chapter 2. Background 20
has already received the packet, the data packet is not transmitted. All transmissions in
BMW also follow CSMA/CA rules.
In BMW, each node maintains a list of its neighbours. Consider a node wishing to
broadcast a queue of packets to its neighbours. The broadcasting node chooses one of its
neighbours as the current receiver and transmits an RTS to that node. The receiving node
transmits a CTS in which it includes the sequence number of the packet up to which all
packets are received successfully. Then, the broadcasting node transmits packets starting
from the sequence number indicated in the CTS packet using DATA/ACK transmissions.
Meanwhile, all other nodes, other than the current receiver, are also receiving the packets
and store all successfully received packets. The packet transmission to the current receiver
continues until a new packet, which has not previously been transmitted to any other
node, is transmitted to the receiver. At this point the broadcasting node chooses another
neighbour and continues this process until all packets are transmitted.
BMW is only efficient when the transmission queue contains several packets. There-
fore, it is only suitable for burst traffic, or delay insensitive traffic which can be shaped
into bursts of packets. When traffic arrives in the form of single packets in the presence of
n neighbours, in ideal channel with no collision, as illustrated in Fig. 2.2, there are n con-
tention periods, n RTS transmissions, n CTS transmissions, n ACK transmissions, and
one DATA transmission. High number of control packets and contention periods induce
unacceptably high delays, which is increased, even more, in realistic channel conditions
with collisions, with back-offs, and retransmissions. Since traffic arrival in vehicular en-
vironments is in form of single packets with low delay requirements (in the range of
100ms) and there are tens of nodes in the network, BMW is not suitable for vehicular
communications.
Chapter 2. Background 21
Contention Phase
Contention Phase
Contention Phase
Contention Phase
CTS1RTS1 DATA
RTS1CTS1
ACK1 CTS2RTS2
RTS2CTS2
ACK2 CTSnRTSn ACKn...
RTSnCTS2
CTS1RTS1 DATA
RTS1CTS1
CTS2RTS2
RTS2CTS2
CTSnRTSn ...... ACK1RAK1 ACK2RAK2 ACKnRAKn...
...RTS2
CTS2
Fig. 2.2: BMW protocol under ideal conditions for transmitting one data packet
Contention Phase
Contention Phase
Contention Phase
Contention Phase
CTS1RTS1 DATA
RTS1CTS1
ACK1 CTS2RTS2
RTS2CTS2
ACK2 CTSnRTSn ACKn...
RTSnCTS2
CTS1RTS1 DATA
RTS1CTS1
CTS2RTS2
RTS2CTS2
CTSnRTSn ...... ACK1RAK1 ACK2RAK2 ACKnRAKn...
...RTS2
CTS2
Fig. 2.3: BMMM protocol under ideal conditions for transmitting one data packet
2.1.4 Batch Mode Multicast MAC (BMMM)
Batch Mode Multicast MAC (BMMM) [31] is a protocol that decreases the number of
contention periods of BMW. This is done by sequentially transmitting a RTS to all neigh-
bours and receive a CTS. DATA is transmitted after receiving the last CTS packet. After
transmitting the DATA packet, the broadcasting node sequentially requests acknowledge-
ments from the receivers via Request for Acknowledgement (RAK) packets. The ideal
operation of the protocol, where channel is perfect and none of the receiving nodes are
in yield state, is illustrated in Fig. 2.3.
By decreasing the number of contention periods from n to 1, BMMM decreases the
delay. However, BMMM does not decrease the significant overhead produced by control
packets. Furthermore, note that the yield duration indicated in CTS packets is signif-
icantly increased. For example, receiving node 1 in Fig. 2.3 forces all its neighbours
to yield state for the whole duration of transmissions to all nodes while its neighbours
need to be in yield state only for the duration of DATA and RAK1. This unnecessary
increase in yield state duration results in increased inefficiency. Probability of blocking
and blocking propagation [36], also, increases because of long yield states. Blocking is
illustrated in Fig. 2.4. N7 becomes blocked due to the following events:
Chapter 2. Background 22
• At t1, N1 transmits an RTS to N2. N3, N4, and N5 yield upon reception.
• At t2, N2 transmits a CTS to N1. N6 yields upon reception.
• At t3, N7 transmits an RTS to N6. N8, N9, and N10 yield upon reception.
• At t4, N7 does not receive a CTS and goes into exponential back-off.
While transmission from N7 would not interfere with any ongoing transmissions, N7 is
prohibited from transmission. Other nodes in yield state may also result in blocking of
other nodes. Longer durations indicated in RTS and CTS packets cause longer yield
states and, therefore, the probability that a node in yield state becomes the recipient of
an RTS is increased and so is the probability of blocking of the node transmitting the
RTS.
N1
N9
N7N6
N3
N5
N2N4
N10
N8
t2:CTS
t1:RTS
t2:CTS t3:RTS
Fig. 2.4: Blocking: N7 becomes blocked because N6 is not able to transmit CTS
Another problem with long yield durations indicated in CTS/RTS arises from high
mobility in vehicular environments. A node outside the range of a RTS/CTS packet may
move into the transmission range, not having heard the RTS/CTS. This node may po-
tentially start transmission that collides with ongoing transmissions. When the duration
indicated in RTS/CTS is larger, the probability of topology change during that time is
higher and, therefore, the probability of collision due to topology change is also higher.
Chapter 2. Background 23
2.1.5 Location Aware Multicast MAC (LAMM)
Location Aware Multicast MAC (LAMM) [31] improves the performance of BMMM by
introducing cover sets. A cover set of the receivers of a broadcast message, transmitted
by a certain transmitter, is a subset of receivers whose radio coverage, is the same as
the radio coverage of all receivers. Therefore, if only nodes in the cover set send CTS
packets, the effect is the same as when all receiving nodes send CTS. Furthermore, only
nodes in the cover set receive RAK and transmit ACK. Determining the cover set requires
position estimation which can be obtained via GPS. While LAMM decreases the number
of control transmissions, the amount of decrease is not discussed in [31]. The duration
indicated in CTS/RTS control packets is also still larger than that of BMW. It might be
possible to modify LAMM to adapt it to vehicular environment and decrease its overhead
and CTS durations significantly. Exploring this possibility requires further research.
The next three protocols introduce methods of finding one receiver and perform hand-
shake with only that node instead of all the recipients to decrease the overhead caused
by control packets.
2.1.6 TRAcking DEtection (TRADE)
TRAcking DEtection (TRADE) protocol introduced in [37], is a protocol which uses
location information to find the farthest node in each direction to eliminate the broadcast
storm problem [22] caused by flooding in multi-hop broadcast. However, this protocol
can be modified to increase the reliability of single-hop broadcast compared to IEEE
802.11. By modifying a simplified version of TRADE we obtain a protocol that works
as follows. The broadcasting node chooses the farthest node within its communication
range, and unicasts the broadcast packet to that node in each direction on a straight road
using RTS/CTS/ACK handshakes. Approximating the positions of vehicles as being on a
straight line, if the farthest vehicle receives the message without collision, so do all vehicles
Chapter 2. Background 24
between the source and the farthest vehicle. This approach, however, has drawbacks.
• TRADE assumes the positions of vehicles are known by transmitting GPS messages.
This can be problematic since GPS messages also need to be broadcast routinely.
• Since collisions are not the sole reason of packet loss, an intermediate node may
still lose the packet due to noise, fading, or a large vehicle blocking line-of-sight
while the farthest node receives it successfully.
• A broadcast message is of much more importance to the nearest vehicle than it is
to the farthest. Therefore, if the farthest node is in yield state, the message is not
transmitted and its lifetime may expire, while the closet node, which is its more
important target, would be able to receive it without interference.
2.1.7 Distance Defer Transfer (DDT)
Distance Defer Transfer (DDT) [37] is proposed to eliminate the need for a priori position
information in TRADE, which is one of its drawbacks. DDT, similar to TRADE, is
designed to combat the broadcast storm problem. However, it can be modified to increase
the reliability of broadcast communication. In this modification of a simplified DDT
protocol, the source node broadcasts the RTS packet in which the position of the sender
is included. Each of the receiving nodes start a timer whose value is a decreasing function
of their distance from the source. When a node’s timer expires, if no other node has
transmitted a CTS, that node transmits a CTS. This approach solves the first problem
mentioned above, but the second and third problems remain unresolved. Furthermore,
the likely collision of CTS’s (or re-broadcasts in the original protocol) when the distance
of two nodes is roughly the same from the source is ignored.
Chapter 2. Background 25
2.1.8 Urban Multihop Broadcast (UMB)
The design of Urban Multihop Broadcast (UMB) protocol [38] is aimed at finding the far-
thest node without a priori neighbourhood information. This protocol, basically, works
as follows. The broadcasting node sends a Request-To-Broadcast (RTB) packet in which
a desired direction of transmission is indicated. Each receiving node in the correct direc-
tion, transmits a jamming signal (black-burst), duration of which is proportional to its
distance from the source and is an integral number of Short InterFrame Spaces (SIFS).
After transmitting black-burst, each node listens to the channel. If it is the last node
transmitting black-burst, it is chosen as the farthest node and continues to transmit a
Clear-To-Broadcast (CTB) packet. The broadcasting node, then, transmits the DATA
packet and receives an ACK packet from the farthest node. It is possible for two or
more nodes to transmit black-bursts with the same length. In this case, they all trans-
mit CTB packets leading to collision. If the broadcasting node senses the channel to be
busy but is unable to decode the transmission, it assumes that two or more CTB packets
have collided. In this case, it issues another RTB packet. In responding to the second
RTB, only nodes that have transmitted after receiving the previous RTB compete for the
channel by transmitting black-bursts. This procedure is iterated until a node successfully
transmits CTB or a certain number of iterations is reached in which case the nodes that
have transmitted the last CTB packets enter a random resolution phase which, if nec-
essary, is repeated a certain number of times. If random resolution is also unsuccessful,
the broadcasting node restarts the transmission from the beginning. Starting the node
selection from the beginning may happen RETmax times, after which the broadcasting
node enters the 802.11 back-off mode.
While UMB manages to decrease the overhead, it puts too much emphasize on finding
the farthest node while, as mentioned before, in vehicular communications, the closest
node is the most important receiver. By the time the contention between far nodes is
resolved, the life time of the message may have expired.
Chapter 2. Background 26
When far nodes are in yield state and unable to transmit black-bursts, close nodes
respond to RTB packets with CTB and DATA/ACK transmissions follow. In this case,
far nodes, due to ongoing transmissions, are unable to receive the broadcast packet. This
is illustrated in Fig. 2.5. Assume that communication between nodes H and I takes place
first. Nodes C, D, E, and F are unable to reply to the RTB issued by node A. Node B
responds to node A with a CTB packet and DATA/ACK transmission follows. Nodes
C, D, E, and F do not receive the broadcast message due to the ongoing transmission
between H and I. Immediate transmission to node B and not delaying the transmission
for nodes C, D, E, and F is beneficial. However, the problem is that node A assumes it
has successfully transmitted the broadcast message and will not try to reach other nodes
by retransmissions. In spite of the problems mentioned above, UMB is logically a good
option among CSMA/CA-based protocols for transmitting broadcast packets because of
its relatively low overhead and the increase in reliability.
A B C D E F G H I J K L M N O
RTS
CTS
RTB
CTB
H I A
Fig. 2.5: Far nodes are in yield state, only node B receives the broadcast message
2.2 Reliable Reservation ALOHA (RR-ALOHA)
Reliable Reservation Aloha (RR-ALOHA) [30] is a medium access control protocol based
on Reservation ALOHA (R-ALOHA) which works only in an environment where all
nodes are able to receive transmitted signals from all other nodes [29]. To eliminate this
limitation and make R-ALOHA suitable for vehicular environments, in which hidden
terminals exist, RR-ALOHA is devised.
Chapter 2. Background 27
In R-ALOHA time is divided into timeslots, which are grouped into frames with length
N timeslots. If a node’s transmission in a timeslot is successful, that timeslot becomes
reserved for that node in the subsequent frames and is no longer available for other nodes
until it is released. Some mechanism is required to synchronize the information among
all nodes about the status of the transmissions in the last N timeslots, i.e. , being suc-
cessful and hence reserved, collision, or no transmission. Note that while other nodes can
distinguish between successful and collided transmissions, the transmitting nodes cannot
detect collision and hence need feedback, for example piggybacked acknowledgment.
In RR-ALOHA, each node with a reserved timeslot in the frame, transmits a Frame
Information (FI) in its timeslot which indicates the status of each of the N previous
timeslots as observed by that node. A timeslot is indicated in FI as either BUSY or
FREE. It is indicated as BUSY if an FI was successfully received in that timeslot. When
it is indicated as BUSY, the ID of the node transmitting FI in that timeslot is also
included. FI transmitted by a node, say node i, has two purposes. First, consider nodes
j and k, which are within the communication range of node i but are not within each
other’s communication range. If node j transmits in timeslot tj, node k will learn about
that timeslot through the FI transmitted by node i and will not transmit in timeslot tj.
Therefore, a collision at node i in timeslot tj is avoided. Second, since FI includes the
ID of transmitters in BUSY timeslots, it can also act as acknowledgments.
RR-ALOHA only works as intended in good channel conditions. In harsh channel
conditions, such as in vehicular environments, a timeslot may be announced as free while
the transmission may have failed due to noise or fading. In the next frame, the probability
of collision is increased in the timeslot because it is announced as free when it actually
belongs to a node. Furthermore, FIs add significant overhead. In a simulation performed
in [30], with frame length equal to 200 and maximum number of nodes in a two-hop area
equal to 100, the overhead introduced by FIs in each timeslot is 2400 bits. Note that
safety messages in vehicular communication are small (about 100 bytes). Therefore, the
Chapter 2. Background 28
overhead in percentage is very large. Additionally, further study is required to determine
the suitability of RR-ALOHA for mobile environments.
2.3 Repetition-based Broadcast Protocols
The fundamental idea behind repetition-based broadcast is repeating a message several
times in an interval shorter than or equal to its lifetime to ensure high probability of
reception. In repetition-based broadcast protocols, time is divided into frames, the max-
imum length of which must not be greater than the lifetime of a safety message. Each
frame, in turn, is divided into L timeslots with length equal to the transmission time of
a single packet. The division of time into frames and timeslots is shown in Fig. 2.6. Each
packet is transmitted a number of times inside the frame according to a transmission
pattern. In each timeslot, if a node is not transmitting, it switches to the receive mode.
Each pattern can be represented by a binary vector of length L in which a ‘1’ denotes
a transmission and a ‘0’ represents an idle timeslot, as illustrated in Fig. 2.7. Each of
these vectors is called a codeword and the set of all codewords is called a code.
FrameLifetime Timeslot
t
... ...
1 0 010100010 0100
Transmission Pattern
Binary representation
Transmission Idle/Receive Mode
1 2 3 L
Fig. 2.6: Division of time into frames and timeslots for repetition-based broadcast with
L = 15, each time unit is equal to the length of one timeslot.
In the following, we only consider synchronous protocols. In a synchronous protocol,
timeslots are synchronized. Synchronization can be achieved using a variety of methods.
One that is particularly appealing to vehicular communication applications is Global
Positioning System (GPS) [9] because many vehicles are already equipped with GPS
devices and more will be equipped in the future.
Chapter 2. Background 29
FrameLifetime Timeslot
t
... ...
1 0 010100010 0100
Transmission Pattern
Binary representation
Transmission Idle/Receive Mode
1 2 3 L
Fig. 2.7: A transmission pattern and its binary representation.
In this section, we study two random protocols proposed in [39], [40], and [19]. In
random repetition protocols, the transmission patterns are chosen randomly.
2.3.1 Synchronous p-Persistent Repetition (SPR)
In SPR, the source node transmits the packet in each timeslot in a frame with probability
p and remains idle with probability 1−p. Note that a packet may be transmitted L times
or not transmitted at all. In this approach, the total number of possible codewords is 2L.
2.3.2 Synchronous Fixed Repetition (SFR)
In SFR, each packet is transmitted w times in each frame, i.e., w timeslots are randomly
chosen out of the L available timeslots for repeated transmissions of the packet.
It is shown in [19], via simulation, that SFR decreases the probability of failure by
one order of magnitude, compared to IEEE 802.11a. The performance of SPR is worse
than SFR but better than IEEE 802.11a.
The above protocols are able to perform well in harsh channel conditions due to
multiple transmissions and are robust against mobility because they do not rely on the
knowledge of position of nodes in the network, and instead take advantage of the fact
that safety messages are intended for all nodes in the neighbourhood area. Furthermore,
Chapter 2. Background 30
although each message is repeated several times, the overhead is still less than many
of the protocols discussed in the previous sections because of the short length of safety
messages. However, these protocols are not able to combat collision. In SPR and SFR, the
timeslots in which a transmission takes place, i.e., the transmission patterns, are chosen
randomly. Randomly choosing transmission patterns results in relatively high probability
of collision. On the contrary, if transmission patterns are chosen deterministically with
the goal of decreasing collision, we are able to mitigate collision among users. In the next
chapter, we propose a repetition-based broadcast protocol in which transmission patterns
are deterministically chosen using optical orthogonal codes to reduce the possibility of
collision.
2.4 Other Protocols and Chapter Summary
In this chapter, we have discussed previously proposed broadcast protocols. We have not
included protocols that rely on clustering to provide broadcast support since the main
challenge in such protocols is the formation of stable clusters and electing best cluster
heads. Examples of cluster-based protocols can be found in [24] and [41]. Also, protocols
that rely on out of band signaling such as [20], [42], and [43], are not discussed here
because out of band signaling is not compatible with DSRC specification.
We discussed the suitability of the previously proposed protocols considered here for
vehicular communications. Unreliable broadcast service, large overhead and inefficiency
in delivering short safety messages, insufficient support for mobility, and neglecting other
causes of unreliability such as harsh channel conditions by focusing only on collision are
among the problems from which some of the discussed protocols suffer. In the next
chapter we aim at eliminating these issues by introducing OOC-based broadcast.
Chapter 3
OOC-based Broadcast Protocol
In the previous chapter, we reviewed the relevant previously proposed broadcast proto-
cols. In particular, we described two repetition-based broadcast protocols, namely SFR
and SPR, which use random codes as transmission patterns. In this chapter, to decrease
the possibility of collision among users, we introduce the repetition broadcast based
on optical orthogonal codes. We also describe the code assignment procedure, explain
frame-synchronous and frame-asynchronous modes of the protocol, and present the code
generation algorithm.
3.1 Broadcast using Optical Orthogonal Codes
In this section, we give a brief introduction to Optical Orthogonal Codes (OOC) and
describe their use as transmission patterns.
One way to choose the transmission patterns is to make sure that any two patterns
do not collide in more than one timeslot. This is the main idea behind choosing optical
orthogonal codes as transmission patterns.
Assuming vectors x and y are two codewords used as transmission patterns, their
cross-correlation, represented by the inner product 〈x,y〉, is the number of collisions in
an ideal channel which occur if two users transmit with patterns indicated by x and
31
Chapter 3. OOC-based Broadcast Protocol 32
y. Therefore, limiting the correlation of two codewords is equivalent to limiting the
possibility of collisions. A synchronous optical orthogonal code, C, with length L and
weight w is a code whose codewords are binary vectors with length L and the number of
‘1’s in each codeword is w. Furthermore, the codewords satisfy the following condition
〈x,y〉 =L∑i=1
xiyi ≤ λ ∀x,y ∈ C (3.1)
where λ is a fixed integer usually taken to be 1. Choosing OOC with λ = 1 as transmission
patterns guarantees that any two users have at most one common timeslot, while in
random methods, the number of collisions can be up to w for SFR and up to L for SPR.
A synchronous optical orthogonal code, C, with length L, weight w, and maximum
correlation λ is equivalent to a constant weight code with minimum Hamming distance
2δ = 2(w− λ) and same length and weight. The size of the largest constant-weight code
with given values for L, w, and 2δ is unknown in the general case [44]. Johnson [45]
provides an upper bound for the number of codewords in such code
‖C‖ ≤⌊L
w
⌊L− 1
w − 1· · ·
⌊L− w + δ
δ
⌋···⌋⌋
(3.2)
where bxc is the largest integer less than or equal to x. In this work, we only consider
λ = 1. For example, for L = 64 and w = 6, code cardinality is bounded by 128 and
for L = 128 and w = 9, code cardinality is bounded by 233. Lower bounds are usually
obtained by constructing a code with given parameters. Note that strict orthogonality,
i.e., λ = 0, leads to a very low code cardinality, namely, at most L/w.
An example code with L = 13, w = 4, and λ = 1 is shown below
Chapter 3. OOC-based Broadcast Protocol 33
C =
0 0 0 0 0 1 0 0 1 0 1 0 10 1 1 0 0 0 0 0 0 0 0 1 10 0 0 1 1 0 0 0 0 1 0 0 11 0 0 0 0 0 1 1 0 0 0 0 11 0 0 1 0 0 0 0 0 0 1 1 01 0 1 0 0 0 0 0 1 1 0 0 01 1 0 0 1 1 0 0 0 0 0 0 00 1 0 1 0 0 0 1 1 0 0 0 00 0 1 1 0 1 1 0 0 0 0 0 00 0 0 0 0 1 0 1 0 1 0 1 00 0 1 0 1 0 0 1 0 0 1 0 00 0 0 0 1 0 1 0 1 0 0 1 00 1 0 0 0 0 1 0 0 1 1 0 0
(3.3)
Typical values for frame length, L, packet length, Lp, and data rate, R, can be 100,
100B or 800bits, and 10Mbps, respectively. Therefore, a typical value for the duration of
a frame is Tf = LLp/R = 100× 800/10M ≈ 10ms.
3.1.1 Code Division Multiple Access, Positive Optical Systems,
and Optical Orthogonal Codes
Consider a synchronous Code Division Multiple Access (CDMA) system with N users,
in which a user’s message, xi(t), is multiplied by a unique code waveform, ci(t), to obtain
xi(t) = xi(t)ci(t) (3.4)
where xi(t) is an on-off (with values in {0,1}) binary waveform and the duration of ci(t)
is equal to the duration of a bit, denoted by Tb. Bit duration, Tb, is divided into L chips
with length Tc, in each of which ci(t) has a constant value. A waveform ci(t) can be
represented by a vector ci = (ci1, . . . , ciL),
ci(t) = cij for (j − 1)Tc ≤ t < jTc. (3.5)
Chapter 3. OOC-based Broadcast Protocol 34
The waveforms ci(t) and, equivalently, vectors ci are orthogonal, as shown in Fig. 3.1. (a).
Formally
〈ci(t), cj(t)〉 ,∫Tb
ci(t)cj(t)dt =L∑k=1
cikcjk = 0 for i 6= j (3.6)
and
〈ci(t), ci(t)〉 ,∫Tb
‖ci(t)‖2dt =L∑k=1
‖cik‖2 = Pc (3.7)
In this system, the signal received by each receiver is the sum of all transmitted
signals,∑Ni=1 xi(t). Because of the orthogonality of waveforms ci(t), the receiver can
obtain xi(t) from this summation by using correlation detectors.
The principles of the above system can be extended to a positive optical systems. In
a positive optical system [46] signals are non-negative, therefore, waveforms with non-
trivial strict orthogonality, such as c1 = (0, 0, 1, 1) and c2 = (1, 1, 0, 0), are limited in
number. However, we can relax the orthogonality condition of (3.6) to obtain
〈ci, cj〉 =L∑k=1
cikcjk ≤ λ for i 6= j (3.8)
where the elements of the vectors ci are ‘0’ or ‘1’ as illustrated Fig. 3.1. (b).
The above equation, in fact, is the defining equation of optical orthogonal codes and
leads to Optical Code Division Multiple Access (OCDMA) based on optical orthogonal
codes [47]. The received signal can be detected using correlation detectors or chip-level
detectors [48].
In OOC-based OCDMA, ‘1’s at the same position must be avoided as much as possible
because the correlation they produce cannot be canceled out since the waveforms are
positive. Similarly in packet networks, packets transmitted at the same time lead to
collision and must be avoided. Therefore, we use the same criteria as in OOC-based
OCDMA to determine transmission patterns with the goal of minimizing the possibility
of collision. This leads to optical orthogonal transmission patterns defined by (3.1). A
sample of OOC-based transmission patterns is shown in Fig. 3.1. (c) for λ = 1.
Chapter 3. OOC-based Broadcast Protocol 35
user 1
user 2
user 3
(a) (b) (c)
One bit One bit One frameChip Time
slot
Fig. 3.1: (a) A CDMA system in which signal are strictly orthogonal, (b) OOC-based
optical CDMA in which each bit is expanded using optical orthogonal codes, and (c)
OOC-based transmission patterns for a repetition-based broadcast networks
From a different point of view, instead of expanding each bit in time as in spread
spectrum communications, we have expanded each packet in time. This approach has
the benefit that the fine synchronization required for CDMA at bit level is not required.
Instead, we need a much coarser synchronization at timeslot level which is, assuming
each packet is 800 bits, about three orders of magnitude longer than the duration of a
bit.
3.2 Distributed Code Assignment
We assume the set of codewords is decomposed into two subsets. A subset of codewords
in the code is reserved only for network association, denoted by set Ca. Once a vehicle
enters a road, it randomly selects a tentative codeword from the subset reserved for
network association. In the network association phase, the vehicle that wants to join
the network, can start transmitting its data packet as usual. However, it must also
acquire a permanent codeword that is unique within its two-hop communication range.
To obtain information about codewords used in the two-hop neighbourhood the joining
Chapter 3. OOC-based Broadcast Protocol 36
node issues Code Information Requests (CIQ). Every node i receiving a CIQ transmits
Code Information Response (CIR) which contains the index of its codeword and its
ID, the codewords of the node’s one-hop neighbours, and the ID of those neighbours.
The codewords indicated in the CIR received from node i, denoted by Ci, are used by
other nodes and hence unusable by the joining node. After receiving several of these
packets, the node with the tentative codeword chooses a permanent codeword from the
set Cp = C\Ca\∪iCi. While network association is performed only once when the vehicle
enters the road, each node with a permanent codeword also periodically transmits a CIR
with frequency of once every few seconds. This enables the network to adapt to topology
changes. If a node with a permanent codeword discovers that its codeword is being used
by one of its two-hop neighbours, it releases that codeword and chooses another one from
Cp. The detailed flowchart of the network association phase is shown in Fig. 3.2 and is
explained in the next section.
3.2.1 Code Information Response Window
When a joining node issues a CIQ, if all neighbours transmit CIR packets in the next
frame, the additional load caused by several immediate CIR packets results in perfor-
mance degradation. Note that because of the use of optical orthogonal codes several
nodes can transmit in the same frame successfully. However, if all one-hop neighbours
of an entering vehicle transmit CIR packets in the subsequent frame, a large increase in
network load results that must be avoided. To resolve this issue, we introduce the Code
Information Response Window (CIRW). Each node that receives a CIQ, sets a counter
to a random number uniformly chosen between 1 and CIRW. At the end of each frame,
the counter is decreased by one. When the counter reaches zero, CIR is transmitted in
the next frame. The joining node determines its permanent codeword after CIRW frames
have passed, as illustrated in Fig. 3.2. CIRW can be either predetermined or determined
by the node that transmits the CIQ packet. If it is predetermined, it is chosen in a way
Chapter 3. OOC-based Broadcast Protocol 37
Enter road
Transmit CIQ
Cp = C \ Cal = CIRW
l > 0
l = l - 1
Wait until end of frame
CIR received?
For all CIRs received
Cp = Cp \ CIR
Randomly choose codeword from Cp
yes
yes
Fig. 3.2: Network association phase
Chapter 3. OOC-based Broadcast Protocol 38
not to cause a significant load increase assuming a typical (or worst-case) number of one-
hop neighbours. Alternatively, the joining node can monitor the channel for the duration
of several frames and obtain an estimation of the number of its one-hop neighbours and
include the desired CIRW value in the CIQ packet.
1
7
3 54
8
2
9
CIQ
CIQ
CIQ
6 10
CIR4CIR2
CIR8
CIR2
CIR2
CIR4
CIR4
CIR8 CIR8
Fig. 3.3: CIQ and CIR transmissions; node 3 joins the network and transmits CIQ,
nodes within one-hop transmission reply by CIR
Fig. 3.3 shows a sample code assignment process. Node 3 is the newcomer to the net-
work and transmits a CIQ packet. Nodes 2, 4, and 8, receiving the CIQ, select a random
number between 1 and CIRW and transmit their CIR after that number of frames has
passed. A possible scenario is shown in Fig. 3.4. Note that, although CIR2 and CIR8 are
transmitted in the same frame, because of the use of optical orthogonal codes, both pack-
ets will be successfully received with high probability. Through CIR2, CIR4, and CIR8,
node 3 discovers the codewords used by its two-hop neighbours, {c1, c2, c4, c5, c7, c8, c9},
and does not choose those codes.
1 2 3 4 5 6 7
CIQ CIR4CIR2CIR8
CIRW=4
Fig. 3.4: Timeline of CIQ and CIR transmissions of Fig. 3.3
Chapter 3. OOC-based Broadcast Protocol 39
It takes CIRW×Tf seconds for an entering car to switch to a permanent codeword.
Collisions occur with high probability if a second car arrives during this time and chooses
the same tentative codeword. Assume that CIRW=10, Tf = 10ms, and cars entering a
road form a Poisson process with rate λr = 1 cars per second. When a car enters the road,
the probability that another car arrives before CIRW×Tf seconds has passed since the
arrival of the first car is 1−eCIRW×Tf = 1−e−10×0.010 = 0.0952. The probability that both
cars choose the same codeword is 1/‖Ca‖. To make the total probability, 0.0952/‖Ca‖
sufficiently small, ‖Ca‖ must be large. If this is not possible due to the limited cardinality
of the code, more codewords can be added to the code with higher cross-correlation. Since
these codes are in use only for a short time, performance degradation caused by their
higher cross-correlation is minimal.
The number of permanent codewords required depends on the desired communication
range, Rc. The cardinality of Cp must be large enough to support all vehicles in length
4Rc of a road. For example, assuming Rc = 100m and adjacent cars in the same lane are
30m apart, in a four-lane road at least 4 × 4 × 100/30 ≈ 53 permanent codewords are
required.
3.3 Frame-Synchronous and Frame-Asynchronous
In OOC-based broadcast, each node has a pattern for transmission, which is a codeword
denoting the available timeslots in which the node is allowed to transmit. This pattern
has length L and is repeated in time. Therefore, it can be properly represented with a
disk, slices of which are timeslots, as well as linearly, as shown in Fig. 3.5. The starting
point of these patterns are synchronized among all nodes.
When a message arrives at the network interface of a node, there are two options.
The node can wait for the beginning of the next frame or can begin transmitting at
the next available timeslot. The former is called frame-synchronous, where transmis-
Chapter 3. OOC-based Broadcast Protocol 40
10%
10%10%
10%10%
10%
10%
0
t
000
Fig. 3.5: Circular and linear representation of a transmission pattern with L = 10 and
w = 3.
sion is synchronized with frames, and the latter is called frame-asynchronous, where
transmission start independently of frames. In either case the message is transmitted in
available timeslots as indicated by the codeword. Fig. 3.6 show both frame-synchronous
and frame-asynchronous transmission by a user.
000
Message Arrival
00
Message Arrival
0
(a)
(b)
Fig. 3.6: Frame-synchronous and frame-asynchronous transmissions: (a) frame-
synchronous transmission, transmission starts in the next frame after a message arrives,
and (b) frame-asynchronous, transmission starts at the next available timeslot after a
message arrives
The analysis and simulation presented here, both assume frame-synchronous mode of
Chapter 3. OOC-based Broadcast Protocol 41
transmission for simplicity. The delay of frame-asynchronous transmission is less than
that of frame-synchronous because the waiting until the beginning of the next frame is
eliminated.
3.4 OOC Code Generation
One can construct an OOC code by building a graph with(Lw
)vertices, each corre-
sponding to a codeword, connected if their Hamming distance is larger than or equal to
2δ = 2(w − λ), and finding the maximum clique [49]. However, in our case, finding a
large maximal clique results in a sufficiently large code and finding the maximum clique
is not necessary. Therefore, we use a greedy depth first search (DFS) algorithm [50] to
find a maximal clique (code). In this algorithm, in each step a ‘1’ is added to the current
codeword in such a way that it does not cause the Hamming distance between the current
codeword and previous codewords to decrease below the given number. When a codeword
with weight w is obtained, it is added to the code. The algorithm ends when it cannot
find a new codeword. The pseudocode of the algorithms used to generate optical orthog-
onal codes is presented in Algorithm 1 and Algorithm 2. Global variables are initialized
outside the procedures. Procedure FindCode(L,w) starts by randomly choosing the first
timeslot for the current codeword from a set of available positions and calls procedure
DFS until there is no possibility for DFS to find another codeword. Procedure DFS
searches for available timeslots to add to the current codeword and calls itself recursively
to complete the current codeword or become unable to find another available timeslot.
In Fig. 3.7 a histogram of the position of ‘1’s in a sample code is shown. Fig. 3.7
shows the number of codewords in which a given position (timeslot) is occupied by a ‘1’
(indicated in the legend as ‘Total’). It can be observed that ‘1’s are roughly distributed
in a uniform manner. Therefore, all codewords must, more or less, have equal probability
of success. Fig. 3.7 also shows the number codewords whose first occurrence of a ‘1’ is in
Chapter 3. OOC-based Broadcast Protocol 42
a given position (indicated in the legend as ‘First’).
Algorithm 1 Procedure FindCode(L,w) finds an OOC code
1: Code← {}
2: depth← 0
3: found← false
4: Codeword← {}
5: procedure FindCode(L,w)
6: bits = {1, . . . , L} . All bits are available
7: while bits 6= {} do
8: b← random choice from bits
9: Codeword← {b}
10: depth← 1
11: found← true
12: while found = true do
13: found← false
14: DFS
15: end while
16: remove b from bits
17: end while
18: end procedure
Chapter 3. OOC-based Broadcast Protocol 43
Algorithm 2 Procedure DFS recursively searches for more available timeslots
1: procedure DFS
2: tmp = Codeword
3: bits← {1, . . . , L} − Codeword
4: Exclude bits that cause low distance with previous codes
5: while bits 6= {} do
6: b← random choice from bits
7: Codeword← {b}
8: if depth = w − 1 then
9: found← true
10: Add Codeword to Code
11: else
12: depth← depth+ 1
13: dfs
14: if found = true then
15: return
16: end if
17: end if
18: end while
19: depth← depth− 1
20: Codeword← tmp
21: end procedure
Chapter 3. OOC-based Broadcast Protocol 44
0 10 20 30 40 50 60 70 80 900
2
4
6
8
10
12
14
Position in codeword
Num
ber
of o
nes
Total
First
Fig. 3.7: Distribution of ‘1’s in a sample code and the first occurrence of a ‘1’ in codewords
with (L,w) = (90, 7) and λ = 1
Chapter 4
Analytical Performance Study of
Broadcast Protocols in Ideal
Channel
To gain a better understanding of repetition-based broadcast protocols, in this chapter,
we analytically study the performance of such protocols. Although we only consider
SPR, SFR, and OOC, our analysis is general and can also be applied to other repetition-
based protocols. In this chapter, we assume a network that is interference limited and an
ideal wireless channel, which carries signals with no attenuation and no noise. Hence, we
neglect the effect of noise on the performance. As the traffic model, we use the binomial
distribution. However, other traffic models can also be used. Furthermore, we assume
frames and timeslots are synchronized.
4.1 Probability of Success
Transmission in a timeslot is successful if only one node transmits in that timeslot. If two
nodes transmit in the same timeslot, a collision occurs and both transmissions fail. Since
45
Chapter 4. Analytical Performance Study 46
the channel is assumed ideal, all nodes are able to receive a transmission when there is
no collision. In each frame, each node transmits in several timeslots. The message is
successfully transmitted if at least one of the transmissions in the frame is successful.
Probability of success is defined as the number of messages successfully transmitted by
a node divided by the number of messages that the node has attempted to transmit.
Probability of success depends on the number of interfering users, i.e., the number of
users transmitting in the same frame as the desired user.
In order to obtain the probability of success, we introduce the following notations.
Events are denoted by calligraphic letters such as R, and the probability of the event R
is denoted by P (R). The probability of an event R, given that there are M interfering
users, is shown by PM(R). The event R is the complement of R. Boldface capital letters,
such as X, denote random variables, and the expectation of the random variable X is
shown by E(X).
Furthermore, we have the following definitions. S is the event that at least one trans-
mission is successful in a frame. When discussing protocols with exactly w transmissions
in a frame, such as OOC and SFR, Si denotes the event that the ith transmission among
w transmissions is successful and Si denotes the event that the ith transmission is the
first successful transmission. When discussing SPR, Si is the event that the transmission
in the ith timeslot is successful and Si is the event that the first successful transmission
occurs in the ith timeslot.
Assume that the desired user is transmitting a message. The probability of success,
Ps, can be written as
Ps =N−1∑M=0
PM(S)P (M = M) (4.1)
where, M is the random variable denoting the number of interfering users and N is the
total number of users in the network.
The probability mass function of M depends on the traffic model. The traffic model
is discussed in Section 4.3. In this section, we focus on obtaining PM(S).
Chapter 4. Analytical Performance Study 47
4.1.1 Probability of Success for SPR
For SPR, the desired transmitter is successful in the ith timeslot if it transmits in that
timeslot and all other users are silent. Assuming each user transmits with probability p
in each timeslot, the probability of success in a timeslot, s, is
s , PM(Si) = p (1− p)M 1 ≤ i ≤ L. (4.2)
The desired user fails to transmit its packet successfully if it fails in all L timeslots.
The probability of failure in all timeslots is (1−s)L. Therefore, the probability of success,
PM(S), is
P(SPR)M (S) = 1− (1− s)L = 1−
(1− p (1− p)M
)L. (4.3)
4.1.2 Probability of Success for SFR and OOC
In SFR and OOC, since there are exactly w repetitions, different timeslots are not in-
dependent. Therefore, the probability of success cannot be obtained as easily as that of
SPR. SFR and OOC are two special cases of repetition-based broadcast schemes with
exactly w transmissions.
In a repetition-based protocol with exactly w transmissions, the probability that at
least one transmission is successful among i transmissions, PM(S1 ∪ · · · ∪ Si), can be
written as
PM(S1 ∪ · · · ∪ Si) =i∑
k=1
PM(Sk)−∑
{a1,a2}∈(i)2
PM(Sa1 ∩ Sa2)
+∑
{a1,a2,a3}∈(i)3
PM(Sa1 ∩ Sa2 ∩ Si+1) + · · ·
=i∑
k=1
(−1)k+1∑
{a1,...,ak}∈(i)k
PM(Sa1 ∩ · · · ∩ Sak)
(4.4)
where (i)k is the set of all k-subsets of {1, · · · , i}. As we will see, PM(Sa1 ∩ · · · ∩ Sak)
does not depend on a1, . . . , ak but rather only on k. Therefore, by defining
γk = PM(Sak∩ Sak−1
∩ · · · ∩ Sa1), {a1, . . . , ak} ∈ (i)k (4.5)
Chapter 4. Analytical Performance Study 48
we have
PM(S1 ∪ · · · ∪ Si) =i∑
k=1
(−1)k+1
(i
k
)γk (4.6)
The probability of success with M interfering users in a repetition-based protocol with
exactly w transmissions, PM(S) = PM(S1 ∪ · · · ∪ Sw), can be obtained, by substituting i
by w in (4.6), as
PM(S) =w∑k=1
(−1)k+1
(w
k
)γk . (4.7)
Next, we find γk = PM(Sak∩Sak−1
∩ · · · ∩ Sa1) for SFR and OOC and substitute it in
(4.7) to obtain success probability for SFR and OOC.
SFR
The probability that a certain interfering user, i.e., a user that transmits in the same
frame, does not transmit in timeslots ak, ak−1, . . . , a1 with the desired user is equal to(L−kw
)(Lw
) (4.8)
where the transmission pattern of the interfering user can be any of the(Lw
)patterns
with equal probability. Among the possible patterns,(L−kw
)pattern does not include
transmission in the prohibited timeslots ak, ak−1, . . . , a1.
Since the M interfering users are independent,
γk = PM(Sak∩ Sak−1
∩ · · · ∩ Sa1) =
(L−kw
)(Lw
)M (4.9)
Therefore, as claimed earlier, PM(Sak∩ Sak−1
∩ · · · ∩ Sa1) does not depend on a1, . . . , ak
but only on k. Hence,
P(SFR)M (S) =
w∑k=1
(−1)k+1
(w
k
)(L−kw
)(Lw
)M . (4.10)
Chapter 4. Analytical Performance Study 49
OOC
In OOC with λ = 1, by definition, an interfering user may transmit in only one timeslot
in which the desired user also transmits. Consider the ajth transmission of the desired
user. Let p1 be the probability that a certain interfering user transmits in the same
timeslot as the ajth transmission of the desired user. The probability that the interfering
user does not transmit at the same time as any of the transmissions ak, ak−1, . . . , a1 of
the desired user is 1− kp1. Considering M independent interfering users, we have
γk = PM(Sak∩ Sak−1
∩ · · · ∩ Sa1) = (1− kp1)M . (4.11)
Note that PM(Sak∩ Sak−1
∩ · · · ∩ Sa1) only depends on k. Substitution in (4.7) yields
P(OOC)M (S) =
w∑k=1
(−1)k+1
(w
k
)(1− kp1)
M . (4.12)
4.1.3 Probability of Success and Interference Probabilities
In the previous section, we derived the probability of success for SFR and OOC in terms
of the probability that k certain transmissions are successful, i.e., γk. In this section, we
present a method for finding γk in terms of the probabilities that another user interferes
with the desired user in a given j-subset of w timeslots in which the desired user transmits,
called interference probabilities. The interference probabilities can be easily determined
for any generated code. We also find p1, introduced in the previous section, in terms of
L and w.
The desired user is susceptible to interference from other users in w timeslots in which
it transmits. For example, in the following code, shown in a matrix form where each row
Chapter 4. Analytical Performance Study 50
corresponds to a user’s codeword,
1 0 1 0 1 0
0 0 1 1 1 0
1 1 1 0 0 0
0 1 1 0 0 1
1 0 1 0 0 1
(4.13)
assuming u1 (the first row) is the desired user and the other rows are the interfering users
in the current frame, the desired user is only susceptible in its three transmissions, i.e.,
the first, third, and fifth timeslots.
Let Sr be a subset of {1, 2, · · · , w}, where 1 ≤ r ≤ 2w. Sr is called an interference
pattern and its elements determine the transmissions, among w transmissions of the
desired user, with which an interfering user collides. For example, in (4.13), only u4
interferes with the desired user with interference pattern {2}. ΓSr is defined as the
number of users that interfere with the desired user with pattern Sr. Therefore, for
example, Γ{2} = 1. For other interference patterns we have Γ∅ = Γ{1} = Γ{3} = Γ{1,3} =
Γ{1,2,3} = 0, Γ{2,3} = 1, and, Γ{1,2} = 2. Note that∑2w
r=1 ΓSr is equal to the number of
interfering users.
The probability of interference with the specific pattern Sr is shown by pSr and called
an interference probability. SFR and SPR randomly choose the timeslots in which trans-
missions take place and OOC, while not strictly random, shows some random properties.
For example from Fig. 3.7, it can be observed that the total number of transmissions,
from all users, in a timeslot are roughly the same for all timeslots in a frame. Assuming
randomness in the code, pSr only depends on the cardinality of Sr, shown by ‖Sr‖. Hence
pSr = pSt , as long as ‖Sr‖ = ‖St‖. With small abuse of notation, we can write pj = pSr
where j = ‖Sr‖. Therefore, a set of 2w interference probabilities, pSr , 1 ≤ r ≤ 2w, is
reduced to a set of w + 1 interference probabilities, pj, 0 ≤ j ≤ w. It is desirable to find
γk for 1 ≤ k ≤ w in terms of pj.
Chapter 4. Analytical Performance Study 51
The number of interfering users in the timeslot in which the ith (out of w) transmission
takes place is denoted by Zi. We have
Zi =2w∑r=1
ΓSrI ({i} ∩ Sr 6= ∅) (4.14)
where I(.) is the identifier function which is 1 if the condition inside the brackets is true,
and 0 otherwise. For example,
Z1 = Γ{1} + Γ{1,2} + Γ{1,3} + · · ·
+ Γ{1,w} + Γ{1,2,3} + · · ·+ Γ{1,··· ,w}
(4.15)
In code (4.13),
Z1 = Γ{1} + Γ{1,2} + Γ{1,3} + Γ{1,2,3} = 2,
Z2 = Γ{2} + Γ{1,2} + Γ{2,3} + Γ{1,2,3} = 4,
Z3 = Γ{3} + Γ{1,3} + Γ{2,3} + Γ{1,2,3} = 1.
(4.16)
Note that γk can be written in terms of Zi as
γk = PM(Z1 = 0, · · · ,Zk = 0). (4.17)
To find the right-hand-side of (4.17), we first find PM(Z1 = 0). Using (4.14), we can
write
PM(Z1 = 0) = PM
(2w∑r=1
ΓSrI ({1} ⊆ Sr) = 0
)
= PM(Γ{1} = 0,Γ{1,2} = 0,Γ{1,3} = 0, · · · ,Γ{1,w} = 0,Γ{1,2,3} = 0, · · · ,Γ{1,··· ,w} = 0
)=
(1−
[p1
(w − 1
0
)+ p2
(w − 1
1
)+ p3
(w − 1
2
)+ · · ·+ pw
(w − 1
w − 1
)])M(4.18)
To explain (4.18), we reorder the timeslots in a way that all the ‘1’s in the codeword of
the desired user are in timeslots 1 to w and the codeword becomesw←−−−−−→
1111 · · · 11L−w←−−−−→
000 · · · 0.
The codeword of the desired user is shown in the topmost row of Table 4.1. Momentarily,
only consider one interfering user. Only the ‘1’s in the codeword of the interfering user
Chapter 4. Analytical Performance Study 52
that are (after reordering) in timeslots 1 to w cause collision with the desired user. The
interfering user has one of the codewords shown in the center column of Table 4.1. The
possible codewords for the interfering user can be divided into two classes, separated in
Table 4.1, the codewords that collide with the desired user in the first timeslot and the
codewords that do not. These two classes are, in turn, divided into groups based on the
number of timeslots in which they collide with the desired user. The codewords in each
group, which collide in the same number of timeslots with the desired user, are divided
into subgroups based on their specific interference patterns with the desired user. For
example, the codewords in the subgroup 1100 · · · 00xxx . . . x only collide with the desired
user in the first and second timeslots, i.e., Sr = {1, 2}. The probability that the codeword
of the interfering user is in a specific subgroup is shown in front of that subgroup, in the
right column. The number of subgroups in a group, which have the same number of
colliding timeslots with the desired user, is indicated in the left column. The probability
the codeword of the interfering user is in a certain group is the number of subgroups in
that group times the probability of each subgroup. For example, the probability that the
codeword of the interfering user collides with the interfering user in the first timeslot and
one other timeslot is p2
(w−1
1
). We have
P1(Z1 = 0) = 1− P1(Z1 6= 0).
P1(Z1 6= 0), when there is only one interfering user, can be obtained by summing the
probabilities of the groups in the first class (groups that collide with the desired user in
the first timeslot) and is equal to
p1
(w − 1
0
)+ p2
(w − 1
1
)+ p3
(w − 1
2
)+ · · ·+ pw
(w − 1
w − 1
).
Since different interfering users have independent interference patterns we can write (4.18)
by noting that PM(Z1 = 0) = (P1(Z1 = 0))M = (1− P1(Z1 6= 0))M .
Chapter 4. Analytical Performance Study 53
w←−−−−−→1111 · · · 11
L−w←−−−−→000 · · · 0(
w−1
0
)1000 · · · 00 xxx . . . x p1
(w−1
1
)1100 · · · 00 xxx . . . x p2
1010 · · · 00 xxx . . . x p2
· · ·
1000 · · · 01 xxx . . . x p2
(w−1
2
)1110 · · · 00 xxx . . . x p3
1101 · · · 00 xxx . . . x p3
· · ·
1000 · · · 11 xxx . . . x p3
· · · · · ·(w−1
w−1
)1111 · · · 11 000 . . . 0 pw(
w−10
)0000 · · · 00 xxx . . . x p0
(w−1
1
)0100 · · · 00 xxx . . . x p1
0010 · · · 00 xxx . . . x p1
· · ·
0000 · · · 01 xxx . . . x p1
(w−1
2
)0110 · · · 00 xxx . . . x p2
0101 · · · 00 xxx . . . x p2
· · ·
0000 · · · 11 xxx . . . x p2
· · ·(w−1w−1
)0111 · · · 11 xxx . . . x pw−1
Table 4.1: Possible codewords and their probabilities for one interfering user
Chapter 4. Analytical Performance Study 54
We generalize (4.18) to write
γk = PM(Z1 = 0, · · · ,Zk = 0) = PM
(2w∑r=1
ΓSrI ({1, · · · , k} ∩ Sr 6= ∅) = 0
)
= PM
(∧{1,··· ,k}∩Sr 6=∅ ΓSr = 0
)
=
1−w∑j=1
pj
min(j,k)∑i=1
(k
i
)(w − kj − i
)M
=
1−w∑j=1
pj
[(w
j
)−(w − kj
)]M(4.19)
where ∧ is the logical AND operator. Finally, by substituting (4.19) in (4.7), we have
PM(S) =w∑k=1
(−1)k+1
(w
k
)1−w∑j=1
pj
[(w
j
)−(w − kj
)]M (4.20)
The above formula is general and is valid for broadcast communications using packet
repetitions provided 1) in each frame, there are w transmissions, and 2) interference
patterns with same cardinality are equally likely to happen. In the following sections, we
find the interference probabilities pj for SFR and OOC.
Interference Probabilities for SFR
First, we examine SFR to verify that it satisfies the conditions of Eq. (4.20). In SFR,
the desired transmitter, and all other transmitters, transmit in w timeslots. Therefore,
condition 1 is satisfied.
Assume Sr is an interference pattern. Since all codewords are equiprobable, the
probability that an interfering user collides with the desired user with pattern Sr is equal
to the number of codewords with interference pattern Sr divided by the total number of
codewords,
pSr =
(L−w
w−‖Sr‖
)(Lw
) . (4.21)
Since pSr only depends on the cardinality of Sr condition 2 of Eq. (4.20) is also satisfied.
Therefore, we can write
pj =
(L−ww−j
)(Lw
) (4.22)
Chapter 4. Analytical Performance Study 55
and
P(SFR)M (S) =
w∑k=1
(−1)k+1
(w
k
)1−w∑j=1
(L−jw−j
)(Lw
) [(w
j
)−(w − kj
)]M (4.23)
Interference probabilities for OOC
Having w transmissions in each frame, OOC satisfies condition 1 of Eq. (4.20). The only
possible interference patterns for OOC are
Sr = {r} 1 ≤ r ≤ w (4.24)
Since OOC is not a random code, pSr may depends on r. However, random properties
can still be seen in optical orthogonal codes. For example Fig. 3.7 shows that distribution
of ones in a sample code is roughly uniform. Therefore, we assume that condition 2 of
Eq. (4.20) also holds and
p1 = pSr = p{r} 1 ≤ r ≤ w (4.25)
By substituting (4.25) in (4.20) we have
P(OOC)M (S) =
w∑k=1
(−1)k+1
(w
k
)(1− kp1)
M(4.26)
p1 is equal to the number of codewords in the subgroup in the second row in Table 4.1,w←−−−−−→
1000 · · · 00L−w←−−−→xxx · · · x, divided by the total number of possible codewords. Codewords in
this subgroup are common in the first timeslot. Therefore, they cannot have any other
common timeslot among the L − w timeslots denoted by x. Since w − 1 ones must be
placed in the L − w timeslots denoted by x with no overlap, there are at most L−ww−1
codewords in this subgroup. From (3.2), the total number of codewords is at most⌊Lw
⌊L−1w−1
⌋⌋. Therefore, p1 may be approximated by
p1 ≈w(L− w)
L(L− 1). (4.27)
Chapter 4. Analytical Performance Study 56
p1 L=64 L=128
w=2 3.075377e-02 1.580402e-02
w=3 4.504188e-02 2.247906e-02
w=4 5.977387e-02 3.188442e-02
w=5 7.471811e-02 3.780905e-02
w=6 8.622891e-02 4.499162e-02
w=7 9.913148e-02 5.328069e-02
w=8 1.096639e-01 5.966638e-02
w=9 1.104613e-01 6.668362e-02
Table 4.2: Sample values of p1 obtained by generating OOC codes for various L and w
p1 can also be empirically obtained from a sample generated code using
p1 ≈
‖C‖∑i=1
‖C‖∑j=i+1
〈ci, cj〉
w(‖C‖2
) (4.28)
where C is the generated code and vectors ci are codewords. The division by w is because
p1 corresponds only to one transmission among w transmissions. Sample values of p1 are
presented in Table 4.2. Comparison of approximate values and sample values of p1 is
presented in Fig. 4.1. It is observed that approximation given in (4.27) provide values
close to empirical results, especially when w is not too large.
4.2 Average Delay
When a packet is transmitted several times in a frame, the delay, D, is defined as the first
timeslot in which the packet is successfully received. The average delay, Ds, is defined as
Ds , E(D|S) =N−1∑M=0
Ds(M)P (M = M) (4.29)
Chapter 4. Analytical Performance Study 57
2 3 4 5 6 7 8 9 10 11 120
0.02
0.04
0.06
0.08
0.1
0.12
0.14
w
p 1
L=64, sample codeL=64, approximationL=128, sample codeL=128, approximation
Fig. 4.1: Approximate and sample values of p1 for OOC
where Ds(M) is the average delay of a successful transmission when there are M interfer-
ing users. Note that D is not defined when all transmissions in a frame are unsuccessful.
4.2.1 SPR
The average delay for SPR, conditioned on successful transmission when there are M
interfering users, can be obtained as
Ds(M) , EM [D|S] =L∑i=1
iPM(Si|S)
=L∑i=1
iPM(Si ∩ S)
PM(S)=
∑Li=1 iPM(Si)PM(S)
·(4.30)
Timeslot i is the first successful timeslot with probability
PM(Si) = PM(Si ∩ Si−1 ∩ · · · ∩ S1)
= PM(Si)PM(Si−1) · · ·PM(S1)
= s(1− s)i−1
(4.31)
Chapter 4. Analytical Performance Study 58
where we have used (4.2). By substituting (4.31) in (4.30) we obtain
D(SPR)s (M) =
1
s− L(1− s)L
1− (1− s)L. (4.32)
Note that the right-hand-side of (4.32) implicitly depends on M through s.
4.2.2 SFR and OOC
In a repetition-based protocol with exactly w transmissions we have
Ds(M) , EM [D|S]
=w∑i=1
PM(Si|S)EM [D|Si]
=w∑i=1
PM(Si)PM(S)
L−(w−i)∑j=i
jPM(D = j|Si)
(4.33)
where PM(D = j|Si) is the probability that the delay is equal to j when the ith transmis-
sion is the first successful transmission. In other words, this is the probability that the
ith transmission takes place in the jth timeslot given that the ith transmission is the first
successful transmission. To calculate (4.33) we need to find PM(Si) and PM(D = j|Si).
To obtain PM(Si), we first find the probability that “transmission i is not successful
Chapter 4. Analytical Performance Study 59
but at least one previous transmission is successful”, PM(Si ∩ (Si−1 ∪ · · · ∪S1)). We have
PM(Si ∩ (Si−1 ∪ · · · ∪ S1)) = PM(i−1⋃l=1
(Si ∩ Sl))
=∑{a1}∈(i−1)1
PM(Si ∩ Sa1)
−∑
{a1,a2}∈(i−1)2
PM(Si ∩ Sa1 ∩ Sa2)
+ · · ·+ (−1)k+1∑
{a1,··· ,ak}∈(i−1)k
PM(Si ∩ Sa1 ∩ · · · ∩ Sak) + · · ·
+ (−1)i∑
{a1,··· ,ai−1}∈(i−1)i−1
PM(Si ∩ Sa1 ∩ · · · ∩ Sai−1)
=i−1∑k=1
(−1)k+1∑
{a1,...,ak}∈(i−1)k
PM(Si ∩ Sa1 ∩ · · · ∩ Sak)
(4.34)
where (i− 1)k is the set of all k-subsets of {1, · · · , i− 1}. Let
γk , PM(Sak∩ Sak−1
∩ · · · ∩ Sa1)
ηk , PM(Sak∩ Sak−1
∩ · · · ∩ Sa1) .
(4.35)
Therefore,
PM(Si ∩ (Si−1 ∪ · · · ∪ S1)) =i−1∑k=1
(−1)k+1
(i− 1
k
)ηk+1
=i−1∑k=1
(−1)k(i− 1
k
)(γk+1 − γk)
(4.36)
As discussed earlier, because the probability of an interference pattern only depends on
the number of timeslots in which two users transmit simultaneously and not the position
of those timeslots, γk and ηk only depend on k.
Chapter 4. Analytical Performance Study 60
Using (4.36) we can write
PM(Si) = PM(Si ∩ Si−1 ∩ · · · ∩ S1)
= 1− PM(Si ∪ Si−1 ∪ · · · ∪ S1)
= 1− PM(Si)− PM(Si−1 ∪ · · · ∪ S1) + PM(Si ∩ (Si−1 ∪ · · · ∪ S1))
= γ1 −i−1∑k=1
(−1)k+1
(i− 1
k
)γk +
i−1∑k=1
(−1)k(i− 1
k
)(γk+1 − γk)
=i−1∑k=0
(−1)k(i− 1
k
)γk+1 =
i∑k=1
(−1)k+1
(i− 1
k − 1
)γk
(4.37)
where in the fourth step we have used 4.6.
Note that (4.37) can be used to obtain PM(S) since PM(S) =∑wi=1 PM(Si). As seen
below, the result is the same as in (4.7).
PM(S) =w∑i=1
PM(Si)
=w∑i=1
i∑k=1
(−1)k+1
(i− 1
k − 1
)γk
=w∑k=1
(−1)k+1γkw∑i=k
(i− 1
k − 1
)
=w∑k=1
(−1)k+1
(w
k
)γk
(4.38)
Next, we obtain PM(D = j|Si) for SFR and OOC. Let T i be the timeslot in which
the ith transmission takes place.
PM(D = j|Si) = PM(T i = j|Si) = PM(T i = j) (4.39)
The last equality holds because the position of the ith transmission is independent of it
being the first successful transmission.
For SFR, since the position of transmissions in the frame is strictly random, we have
PM(D = j|Si) = PM(T i = j)
=
(j−1i−1
)(L−jw−i
)(Lw
) .(4.40)
Chapter 4. Analytical Performance Study 61
For OOC, PM(T i = j) may depend on the code. Assuming ‘1’s are distributed evenly
in each codeword, we can use an expression identical to that of SFR as an approximation.
Finally, substituting (4.37) and (4.40) in (4.33), for OOC and SFR, Ds(M) is obtained
as
D(SFR)s (M) =
1
P(SFR)M (S)
w∑i=1
i∑k=1
(−1)k+1
(i− 1
k − 1
)(L−kw
)(Lw
)M L−(w−i)∑
j=i
j
(j−1i−1
)(L−jw−i
)(Lw
) (4.41)
and
D(OOC)s (M) =
1
P(OOC)M (S)
w∑i=1
i∑k=1
(−1)k+1
(i− 1
k − 1
)(1− kp1)
ML−(w−i)∑j=i
j
(j−1i−1
)(L−jw−i
)(Lw
) (4.42)
which are substituted in (4.29) to obtain Ds. On average, messages wait L/2 timeslots in
a buffer from their arrival at the network interface until the beginning of the next frame.
If delay is defined from the moment that a packet arrives at the network interface, L/2
must be added to the values obtained above.
4.3 Numerical Results
In this section, we present numerical results for Sections 4.1 and 4.2. Let L and N be
128 and 31 respectively. The value of p1 for OOC is calculated from (4.27). We assume
each vehicle independently makes a local decision, whether or not to transmit its location
to neighbour vehicles. Furthermore, we assume these periodical updates are generated
according to a Bernoulli model in each frame with probability µp. Since the decisions
for data transmission are independent, the number of nodes with an active packet in
each frame is a Binomial random variable with parameters N and µp, where N is the
total number of cars in a (loosely defined) cluster. (4.43) shows the pdf of the number
of interfering users.
P (M = M) =
(N − 1
M
)µp
M (1− µp)N−1−M (4.43)
where µp is the average load in packets per user per frame.
Chapter 4. Analytical Performance Study 62
Fig. 4.2 shows the probability of failure, Pf , defined as 1 − Ps versus the average
number of transmissions, w, for SPR while load ranges from 0.1 to 1 (packets/user/frame)
with step 0.1 calculated with MATLAB using (4.1). Note that for SPR, w is the average
number of transmissions; the probability of transmission in a timeslot is p = w/L.
From Fig. 4.2, for each value for load, there is an optimum probability of transmission.
This probability can also be approximated by minimizing the probability of success for
the average number of interfering users. In (4.3), if M is substituted with the average
number of interfering users, (N − 1)µp, we have
P(N−1)µp(S) = 1−(1− p (1− p)(N−1)µp
)L. (4.44)
By taking the derivative with respect to p and equating it to zero
d
dpP(N−1)µp(S)
= −L(1− p (1− p)(N−1)µp
)L−1 (− (1− p)(N−1)µp + p(N − 1)µp (1− p)(N−1)µp−1
)= 0
(4.45)
We have
(1− p)(N−1)µp = p(N − 1)µp (1− p)(N−1)µp−1
⇒ (1− p) = p(N − 1)µp
⇒ popt =1
(N − 1)µp + 1
(4.46)
Fig. 4.3 shows the approximate value for the optimum number of average transmis-
sions and the result from numerically finding the minimum Pf . From Fig. 4.3, it is ob-
served that the approximation has very good accuracy for µp ≥ 0.5. The approximation
is not accurate for small µp. Note that in the derivation of (4.46), the main approxi-
mation is the substitution of the random variable M with a binomial distribution with
its average value. Therefore, the accuracy of this approximation can be explained by
Chapter 4. Analytical Performance Study 63
5 10 15 20 25 30 35 4010
−4
10−3
10−2
10−1
100
w
Pf
μp increasing
Fig. 4.2: Probability of failure of SPR for N = 31, L = 128, w ranging from 1 to 40 and
µp ranging from 0.1 to 1 (packets/user/frame).
examining the ratio of the standard deviation to the mean,√
Var[M ]/E[M ]. When this
ratio is low, a distribution can be better approximated by its mean. We have
√Var[M ]
E[M ]=
√(N − 1)µp(1− µp)
(N − 1)µp
=
√1− µp
(N − 1)µp
(4.47)
which is a decreasing function of µp. Therefore, the approximation provides better results
for higher values of µp.
Fig. 4.4, and 4.5 show the probability of failure, Pf , for SFR, and OOC, respectively.
For SFR, w ranges from 1 to 40. For OOC, w ranges from 2 to 12. OOC for w = 1 is
a trivial case and the code cardinality for w > 12 is not big enough to accommodate 31
users.
From Fig. 4.4, it can be seen that for SFR, there exists a value for w which results
in the best performance. For OOC, as shown in Fig. 4.5, for high load, there exists an
optimum value for w, but in low load the highest possible w gives the best result. This
Chapter 4. Analytical Performance Study 64
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
5
10
15
20
25
30
35
40
45
μp (packets/user/frame)
w
SPR
SPR approx.
Fig. 4.3: Optimum average number of transmissions, w, and its approximation, for SPR,
versus load, for N = 31, L = 128.
5 10 15 20 25 30 35 4010
−5
10−4
10−3
10−2
10−1
100
w
Pf
μp increasing
Fig. 4.4: Probability of failure of SFR for N = 31, L = 128, w ranging from 1 to 40 and
µp ranging from 0.1 to 1 (packets/user/frame).
is illustrated in Fig. 4.6.
From Fig. 4.2, 4.4, and 4.5, it is observed that the optimum value of Pf of SFR is less
Chapter 4. Analytical Performance Study 65
2 3 4 5 6 7 8 9 10 11 1210
−9
10−8
10−7
10−6
10−5
10−4
10−3
10−2
10−1
100
w
Pf
µp increasing
Fig. 4.5: Probability of failure of OOC for N = 31, L = 128, w ranging from 2 to 12
and µp ranging from 0.1 to 1 (packets/user/frame).
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 12
3
4
5
6
7
8
9
10
11
µp (packets/user/frame)
w
SFROOC
Fig. 4.6: Optimum number of transmissions, w, for SPR and OOC, versus load, for
N = 31, L = 128.
than that of SPR, and the optimum value of Pf of OOC is less than that of SFR. This
is illustrated in Fig. 4.7. Furthermore, a more in-depth analysis of the numerical results
Chapter 4. Analytical Performance Study 66
shown in Fig. 4.2, 4.4, and 4.5, indicates that the optimum value of SFR can be obtained
by using OOC with fewer transmissions. Similarly, the optimum value of SPR can be
obtained by using SFR with fewer transmissions. A small number of transmissions has
the benefit of producing less interference for non-safety data if it is transmitted in the
same channel. From the numerical results we conclude that the performance of OOC is
better than those of SFR and SPR.
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 110
−9
10−8
10−7
10−6
10−5
10−4
10−3
10−2
10−1
100
µp (packets/user/frame)
Pf
SPRSFROOC
Fig. 4.7: Optimum probability of failure for OOC, SFR, and, SPR, versus load, for
N = 31, L = 128.
Fig. 4.8 shows the average delay of successful transmissions calculated using (4.29).
It is observed that the delay is more or less the same for different protocols. This fact
will also be observed in simulation results.
Chapter 4. Analytical Performance Study 67
2 3 4 5 6 7 8 9 10 11 1210
15
20
25
30
35
40
45
50
55
60
w
Del
ay (
times
lots
)
OOC SFR SPR
µp increasing
Fig. 4.8: Delay of successful transmissions for OOC, SFR, and, SPR, for N = 31,
L = 128, w ranging from 2 to 12 and µp = 0.1, 0.4, 0.7, and 1 (packets/user/frame).
Chapter 5
Adaptive Elimination, Coding, and
Quality of Service Provisioning
In this chapter, we describe methods for improving the performance of the broadcast
protocol based on optical orthogonal codes. Adaptive elimination is proposed to further
decrease the probability of collision in Section 5.1. Coding, as a method of increasing
throughput and reliability, is presented in Section 5.2 and Quality of service is discussed
in Section 5.3.
5.1 Adaptive Elimination
Fig. 5.1 shows the transmission pattern of two users with one timeslot in common. It is
seen that both user 1, u1, and user 2, u2, are scheduled to transmit in the third timeslot.
For receiving nodes that are within the range of both users, a collision is likely to happen,
which results in both packets being lost. However, since user 2 receives a packet from
user 1 in the first timeslot, if user 1 includes some information in the transmitted packets
with which user 2 can identify the codeword used by user 1, user 2 can prevent the
collision simply by not transmitting in the third timeslot. We call this method Adaptive
Elimination.
68
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 69
2 3 4 5 6 7
2 3 4 5 6 7
u1
u2
Fig. 5.1: Both u1 and u2 are scheduled to transmit in the third timeslot
Adaptive elimination increases reliability by eliminating transmissions in timeslots
that may potentially result in collision. To enable this, the codebook must be stored
in all nodes and nodes must transmit the index of their codeword and indicate which
timeslots are disabled. Each node adds a codeword indicator field with format (index of
codeword, enabled/disabled timeslots) to the header of its data packets to inform other
nodes of its codeword. Each part of this field has a predetermined length.
In Fig. 5.1 in the same frame, u1 and u2 transmit a packet with codewords c1 =
(1011000) and c2 = (0110010) respectively. In the first timeslot, u1 transmits its data
along with the sequence ‘001111’ where ‘001’ indicates that this user uses the fist code-
word and ‘111’ denotes that all transmissions in this codeword are used. Note that an
indexed codebook is stored on the nodes, which they can use to find the first codeword.
After receiving this packet, u2 disables its second transmission to eliminate the collision
in the third timeslot. Hence, its new codeword becomes c2 = (0100010). In the second
timeslot, u2 transmits ‘010101’ along with its data; ‘010’ denotes that u2 is using the sec-
ond codeword and ‘101’ denotes that the first and third transmissions of c2 are enabled
and the second transmission is disabled. When u1 receives the packet from u2, it realizes
that u2 has already disabled the transmission in the third timeslot. Therefore, u1 does
not need to disable its transmission in the third timeslot. The resulting transmission
patterns are shown in Fig. 5.2.
Since the number of OOC codes is limited (see (3.2)), the length of the index part
of the codeword indicator field is 2-3 bytes. Also, to announce which timeslots have
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 70
2 3 4 5 6 7
2 3 4 5 6 7
u1
u2
Fig. 5.2: u2 disables its transmission in the third timeslot
been eliminated from its codeword, so that other users do not eliminate transmissions in
the same timeslots, each user only needs to transmits w bits. Thus, this method does
not add significant overhead. For example, for L = 64 and w = 6, there are at most
b64/6b63/5cc = 128 codewords. Therefore, log 128+w = 13 bits are required for enabling
adaptive elimination.
Since a local map between the node ID and the codeword, acquired via CIR packets,
is available, an explicit codeword ID in the code indicator may not be required. However,
including codeword IDs in the code indicator field is more reliable.
5.2 Coding
If a packet with length Lp is transmitted w times in a frame, one successful reception
among w transmissions is sufficient. If the probability of successful reception is high, one
can use coding techniques to transmit more than one packet in a frame. Messages, the
units of data arriving at the network interface of a node to be transmitted, with length
Lm = rLp can be divided into r packets, each with length Lp, which can be coded in
the w transmitted packets. Reception of any r, out of w, packets guarantees successful
decoding of the message.
One can generate a matrixW composed of w packets for transmission, W = [w1 · · ·ww],
from data packets R = [r1 · · · rr] using W = R × A, where A is a matrix of dimension
r × w whose elements are chosen from a finite field with a proper size, Fq, and the mul-
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 71
tiplication operation is defined in Fq. Any r columns of A must be linearly independent.
Matrices with this property can be found in the coding literature [51]. If matrix A is
deterministic and made available to nodes in advance, coding can be performed with no
overhead.
Assume that, r packets, Q = [wa1 · · ·war ], are received by the receiver. Matrix B
is formed by choosing only columns a1, · · · , ar from A. Therefore, B is a square and
invertible matrix. The data, R, can be found at the receiver using WB−1. Note that
the index ai of a packet can be found by considering the transmission pattern of the
transmitter and the timeslot in which the packet is received or, alternatively, be explicitly
transmitted in the packet (with negligible overhead).
On the one hand, coding can increase the throughput of the network as presented in
Chapter 6. On the other hand large r can result in low probability of success. When
r = w, for example, loss of only one packet results in the loss of the message. The
throughput versus reliability trade-off provides flexibility in dealing with different types
of traffic. For traffic requiring the highest levels of reliability, repeating a packet w times
is the most suitable. For non-critical applications, whereby it is sufficient to deliver the
message to a subset of nodes in the network, r > 1 can be chosen to increase throughput.
5.2.1 Probability of Success with Coding
In this section we obtain the probability of success when coding is used to transmit a
message larger than one packet. When a message is divided into r packets, at least r
successful transmissions are needed for successful reception of the message. This event
is denoted by Sr.
SPR
For SPR, from (4.2), the probability of success in a timeslot, s, is p (1− p)M . Therefore,
since different timeslots are independent, the number of successful timeslots is a binomial
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 72
random variable and the probability of at least r successful transmissions is given by
PM(Sr) =L∑k=r
(L
k
)sk(1− s)L−k
= 1−r−1∑k=0
(L
k
)sk(1− s)L−k.
(5.1)
For example, if r = 2 we have
PM(S2) = PM(S)− Ls(1− s)L−1 (5.2)
Fig. 5.3 shows the probability of success for different values of r versus average load
for L = 64, N = 31, and w = 6. The traffic load arrives at nodes in messages with certain
length Lm. The messages are divided into r packets with length Lp = Lm/r. Since each
timeslot is long enough to transmit one packet, the duration of timeslots of schemes with
different r are different and, therefore, the duration of frames are different. Time unit
for measuring the average load is the duration of the frame when r = 1, denoted by
T1. Note that, on the horizontal axis, the average load for all schemes is the same, but
the arrival pattern for different r’s is different. The reason is that the traffic model is
binomial and a message arrives at each node with a given probability in each frame. For
example average load equal to 0.5 for r = 1 means a message arrives with probability 0.5
every T1 seconds while for r = 2 it means that a message arrives with probability 0.25
every T1/2 seconds.
It is observed from Fig. 5.3 that, for a wide range of load, r = 2 provides better
performance compared to r = 1. For low load, however, r = 1 performs better. When a
higher r is chosen, per frame load is decreased and, therefore, the number of collisions de-
creases. On the other hand, higher values of r need more successful packet transmissions
to successfully transmit a message. The optimum value of r depends both on average
load and the average number of transmissions.
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 73
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Average load (messages/user/T1)
Ps
r=1r=2r=3r=4r=5r=6
Fig. 5.3: Probability of success of SPR for different r’s, L = 64, N = 31, w = 6
SFR and OOC
Since SFR and OOC have exactly w transmissions, the interference in different timeslots
are dependent. Thus, the derivation of the probability of success is more complicated
than that of SPR. We present the final result here and leave the proof to Appendix 5.4.
Proposition 5.2.1. Probability of a successful message delivery when the message is
divided into r packets with M interfering users in a repetition-based protocol with exactly
w transmissions, such as SFR- or OOC-based protocols, is
PM(Sr) = PM(S)−r−1∑l=1
l−1∑k=0
(w
l
)(l − 1
k
)(−1)kPM(Sw−l+k+1) (5.3)
where Si is the event that the ith transmission in a frame is the first successful transmis-
sion in that frame.
Fig. 5.4 and Fig. 5.5 show the probability of success for different values of r versus
average load for L = 64, N = 31, and w = 6. For both of these protocols, r = 2 provides
the best performance.
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 74
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Average load (messages/user/T1)
Ps
r=1r=2r=3r=4r=5r=6
Fig. 5.4: Probability of success of SFR for different r’s, L = 64, N = 31, w = 6
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Average load (messages/user/T1)
Ps
r=1r=2r=3r=4r=5r=6
Fig. 5.5: Probability of success of OOC for different r’s, L = 64, N = 31, w = 6
5.3 Quality of Service
One of the desired characteristics of a vehicular network is the ability to provide better
service to high priority messages. In repetition-based broadcast using optical orthogonal
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 75
codes, number of transmissions can be varied to provide different levels of Quality of
Service (QoS). Adding more transmission to a frame, or equivalently, increasing the
weight of the corresponding codeword must be done in such a way that does not violate
the cross-correlation bound of (3.1).
Fig. 5.6 shows two users (or applications); one high priority and the other one low
priority. The frame length, L, is 16. The high priority user transmits whigh = 5 times and
the low priority user transmits wlow = 3 times. High priority users can take advantage
of more transmission opportunities in two ways: 1) transmitting with the same r as low
priority users to have increased reliability, and 2) transmitting with higher r to increase
their data rate. This gives the high priority users (or applications) the flexibility to
choose the best mode of operation.
It should be noted that the QoS of the high priority users deteriorates with high total
load. Different classes of service assigned here do not guarantee successful transmission or
high data rate for high priority messages. However, high priority messages are provided
with better service compared to low priority messages.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
High Priority
Low Priority
Fig. 5.6: High and low priority messages with different number of transmissions
5.4 Appendix: Proof of Proposition 5.2.1
Assume A and B are non-overlapping subsets of the w transmissions that take place
in a frame. Let SA,B be the event that, the transmissions in A are successful and the
transmissions in B are not successful. Since the probability of a specific interference
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 76
pattern only depends on the number of timeslots in which interference takes place, similar
to the analyses in Chapter 4, the probability of SA,B only depends on the cardinality of
A and B and not their specific elements. The probability of SA,B given that there are M
interfering users is denoted by ζM(‖A‖, ‖B‖).
Lemma 5.4.1. The probability ζM(a, b) can be found from the summation
ζM(a, b) =a−1∑k=0
(a− 1
k
)(−1)kPM(Sb+k+1) (5.4)
where Si is the event that the ith transmission in a frame is the first successful transmis-
sion in that frame.
Proof. Assume A, B, and {k} are non-overlapping subsets of the w transmission in a
frame. We have
SA∪{k},B ∪ SA,B∪{k} = SA,B (5.5)
Therefore,
PM(SA∪{k},B) + PM(SA,B∪{k}) = PM(SA,B) (5.6)
By setting a = ‖A ∪ {k}‖ and b = ‖B‖, ζM(a, b) satisfies the recursion
ζM(a, b) + ζM(a− 1, b+ 1) = ζM(a− 1, b) (5.7)
with the initial condition
ζM(1, b) = PM(Sb+1) . (5.8)
The initial condition follows from the fact that ζM(a, b) does not depend on the specific
transmissions that are successful or unsuccessful but rather only on the number of suc-
cessful and unsuccessful transmissions, i.e. , a and b. Therefore, ζM(1, b) is equal to the
probability that the first b transmissions are unsuccessful and the b+ 1st transmission is
successful, i.e. , PM(Sb+1).
Since we can find ζM from (5.7), a solution to (5.7) that also satisfies the initial
condition is the unique solution to ζM . We prove that (5.4) satisfies (5.7) and the initial
condition and, therefore, is the solution to ζM .
Chapter 5. Adaptive Elimination, Coding, and QoS Provisioning 77
The equation, obtained by substituting (5.4) in (5.7),
a−1∑k=0
(a− 1
k
)(−1)kPM(Sb+k+1) +
a−2∑k=0
(a− 2
k
)(−1)kPM(Sb+k+2) =
a−2∑k=0
(a− 2
k
)(−1)kPM(Sb+k+1)
(5.9)
holds if and only if
a−1∑k=0
(a− 1
k
)(−1)kPM(Sb+k+1) +
a−1∑k=1
(a− 2
k − 1
)(−1)k+1PM(Sb+k+1) =
a−2∑k=0
(a− 2
k
)(−1)kPM(Sb+k+1)
(5.10)
which is true since (a− 1
k
)=
(a− 2
k
), k = 0,(
a− 1
k
)−(a− 2
k − 1
)=
(a− 2
k
), 1 ≤ k ≤ a− 2,(
a− 1
k
)−(a− 2
k − 1
)= 0, k = a− 1 .
(5.11)
It can be easily verified that the initial condition is also satisfied.
To prove Proposition 5.2.1 we note
PM(Sr) = PM(S)−r−1∑l=1
(w
l
)ζM(l, w − l) (5.12)
where we have subtracted the probability of the cases in which less than r transmis-
sions are successful from the probability that at least one transmission is successful. By
Lemma 5.4.1 we have
PM(Sr) = PM(S)−r−1∑l=1
(w
l
)l−1∑k=0
(l − 1
k
)(−1)kPM(Sw−l+k+1)
= PM(S)−r−1∑l=1
l−1∑k=0
(w
l
)(l − 1
k
)(−1)kPM(Sw−l+k+1) .
(5.13)
Chapter 6
Simulation Results
In Chapter 4 and Section 5.2, we discussed the theoretical performance of our proposed
repetition-based broadcast protocol as well as similar protocols and provided motivation
for coding to increase throughput and enhance reliability. Analytical study, although
insightful and readily available for obtaining numerical results, has shortcomings in pro-
viding a true picture of the behavior of the studied protocols. These shortcoming are
mainly caused by simplifying assumptions made to make an analytical study tractable.
As mentioned earlier, for obtaining analytical results, we have assumed nodes communi-
cate in an ideal channel in which every node receives a signal from every other transmit-
ting node. Furthermore, the capture effect and adaptive elimination are neglected in the
analytical study.
In an ideal channel, all simultaneous transmissions result in collision. In a non-ideal
channel with capture, however, one of the many simultaneous transmissions may be
successful, resulting in better performance. Note that since we are studying a multiple
access system, we neglect the effect of noise in the system. Therefore, collision is the
only contributor to packet loss.
In this chapter, with the goal of providing a more accurate representation, assuming
a Rician channel with capture effect explained in Section 6.1, we present simulation
78
Chapter 6. Simulation Results 79
results for different protocols. We also consider the effect of adaptive elimination in the
performance of the protocol in the simulation.
6.1 Channel Model
In a Rician fading channel, the received signal, V (t), is the sum of a line-of-sight (LOS)
component and a non-line-of-sight (NLOS) component
V (t) = Aejωt + Bej(ωt+φ) =(A+ Bejφ
)ejωt = Rejθejωt (6.1)
in which Aejωt is the LOS component and Bej(ωt+φ) is the NLOS component. Assuming
the transmitted signal is Atejωt we have
A2 =A2t
dn(6.2)
where d is the distance between the transmitter and the receiver and n is the path
loss exponent, a constant between 2 and 4. B, is a random variable with a Rayleigh
distribution
fB(B) =B
σ2e−B
2/2σ2· (6.3)
It can be seen that E[B2] = 2σ2 and, therefore, the power of the NLOS component is
σ2. Since the power of the NLOS component, Pnlos, is proportional to the power of the
LOS component, Plos, we have
Pnlos = σ2 =PlosK
=A2
2K(6.4)
where K is called the Rice factor. Substituting (6.4) in (6.3) gives
fB(B) =2KB
A2e−KB
2/A2
(6.5)
The pdf of R = |V | is (see e.g. [52])
fR(R) =2KR
A2exp
(−K(1 +
R2
A2)
)I0
(2KR
A
)(6.6)
Chapter 6. Simulation Results 80
where I0(.) is the modified Bessel function of the first kind and zeroth order. Therefore,
the pdf of the received power, P = R2
2, is
fP (P ) =2K
A2exp
(−K(1 +
2P
A2))I0
√8K2P
A2
(6.7)
This pdf can be transformed by U = 4KP /A2 to a noncentral chi-square distribution
with 2 degrees of freedom and noncentrality parameter λx = 2K.
In timeslot m, the desired receiver, denoted by u0, receives the power P(m)i from user
ui. In an interference limited network, the desired transmitter, uj, is successful in sending
its packet to u0 in the mth timeslot ifuj ∈ T (m)
u0 /∈ T (m)
P(m)j > 1
β
∑i:ui∈T (m)\{uj}P
(m)i
(6.8)
where T (m) is the set of transmitting users in the mth timeslot and β is the capture ratio.
A message transmitted by uj is successfully delivered if (6.8) is satisfied at least for
one timeslot (or r timeslots, if r packets are coded into w packets) in that frame.
6.2 Protocol Performance
6.2.1 Simulation Setup
In the simulation setup, cars are placed on a three-lane road with 4m lane separation
and the distance between two adjacent cars in the same lane is 30m, as illustrated in
Fig. 6.1. The simulation is performed in MATLAB. The received power by a vehicle
from any other vehicle is randomly driven according to the Rician distribution of (6.7)
with K = 3 and n = 2. The capture ratio, β is 0.2 unless otherwise stated. The number
of cars, N , is 31 which occupy 300m of road. Frame length, L, is 64. Data rate is 5Mbps
and safety message size, after adding the overheads of different layers, is 200 bytes. When
Chapter 6. Simulation Results 81
200B is transmitted in each timeslot, the length of each timeslot is 320µs and each frame
is 20.48ms. In an actual implementation, timeslots must be longer to compensate for
non-ideal synchronization. The traffic model is binomial as shown in (4.43); in each
frame, a message arrives at each node with probability µp.
−150 −100 −50 0 50 100 150−20
−10
0
10
20
Fig. 6.1: Map of roadway and cars.
6.2.2 Probability of Success
An important metric in the simulation results in this work is the probability that more
than 90% of the nodes successfully receive the transmitted message, denoted by P (0.9)s .
Fig. 6.2 shows P(0.1)f = 1 − P (0.9)
s , i.e., the probability that more than 10% of the nodes
in the network fail to receive a transmitted message successfully, for w’s from 2 to 8.
Quadratic curves are fitted to the simulation results using MATLAB’s curve fitting tool-
box. Average load, µp, is 0.2 (messages/user/frame); on average each car produces a 200B
message every 20.48ms/0.2=102.4ms. This figure indicates that by choosing a good value
for w, all protocols are capable of delivering messages reliably while OOC performs better
than the other protocols.
When coding is enabled, nodes can code r packets of data into the w transmitted
packets and, therefore, handle larger messages, namely, 400B and 600B for r = 2 and
r = 3, respectively. In these cases, messages arrive with the same probability in each
frame as in r = 1, however, the messages are larger. Fig. 6.3 and 6.4 show P(0.1)f when r
Chapter 6. Simulation Results 82
2 3 4 5 6 7 8-3
-2.5
-2
-1.5
-1
w
log[Pf(0.1) ]
SPR
SFR
OOC
Fig. 6.2: Probability of failure versus w, for µp = 0.2.
is 2 and 3, respectively. For r greater than 1, throughput is higher but it can be observed
from Fig. 6.3 and 6.4 that probability of failure is also higher. The trade-off between
reliability and throughput can be seen by comparing Fig. 6.2, Fig. 6.3, and Fig. 6.4. The
two latter figures also indicate that the probability that OOC delivers more than one
packet successfully is higher compared to the other protocols.
Fig. 6.5 shows the average delay versus w. As mentioned earlier, the delay is defined
as the first timeslot, in which a packet is received successfully by a certain user. The
average delay, in time and among users, of all protocols is more or less the same, as
previously seen in Section 4.3. For all protocols the average delay is less than 24 timeslots
or approximately 8ms. One may also consider the time that a message is buffered until
the beginning of the frame by adding 20.48/2=10.24ms to the above values.
Next we plot the average delay and the probability of failure together to be able
to further analyze the effect of w on overall performance. This is done in Fig. 6.6 for
µp = 0.3. The probability of failure corresponds to r = 1. The closer the point to the
origin, the lower the delay and the probability of failure. From Fig. 6.6, it is observed that
Chapter 6. Simulation Results 83
2 3 4 5 6 7 8-1.8
-1.6
-1.4
-1.2
-1
-0.8
-0.6
-0.4
w
log[Pf(0.1) ]
SPR
SFR
OOC
Fig. 6.3: Probability of failure for r = 2 versus w, for µp = 0.2.
2 3 4 5 6 7 8
-1
-0.8
-0.6
-0.4
-0.2
0
w
log[Pf(0.1) ]
OOC
SFR
SPR
Fig. 6.4: Probability of failure for r = 3 versus w, for µp = 0.2.
OOC is the most desirable protocol in terms of probability of failure and average delay.
Also, note that the average delay is always a decreasing function of w while probability
of failure, in some cases, is the lowest for a certain value of w. This is because when
Chapter 6. Simulation Results 84
2 3 4 5 6 7 810
12
14
16
18
20
22
24
w
Del
ay (
times
lots
)
OOCSFRSPR
Fig. 6.5: Average delay versus w, for µp = 0.2.
w is larger the average time before the first transmission decreases and since being a
successful transmission is independent of the position of transmission, the average time
before the first successful transmission decreases.
14 16 18 20 22 24 260
0.05
0.1
0.15
0.2
0.25
Delay
Pf(0
.1)
OOCSFRSPR
w=8
w=2
Fig. 6.6: Probability failure versus average delay with w ranging from 2 to 8, for µp = 0.3.
Chapter 6. Simulation Results 85
If the number of timeslots in a frame, L, and the number of transmissions, w, are
fixed, the length of timeslots, Ts can be varied by changing r to obtain the highest
probability of success for a given load. This is illustrated in Fig. 6.7 for OOC. In this
figure, the packet size is 200B, w is 7, and L is 64. When r = 1 and Ts = 320µs,
each packet can be transmitted once in each timeslot and the length of frame, Tf , is
LTs = 20.48ms. When r = 2 and Ts = 160µs, each packet is divided into 2 packets with
length 100B which are coded into w packets and transmitted and so on. The effect of a
higher value for r is twofold. On the one hand, when r is higher, Ts is smaller, and so
is Tf . Smaller Tf translates into lower per frame load and hence a higher probability of
success. On the other hand, for a higher r, more transmissions need to be successful for
a successful packet transmission and, hence, a lower probability of success. Therefore,
there exists an optimum value for r for a given load. If the network load is known in
advance, the optimum value for r and Ts can be obtained for a given L and w. In Fig. 6.7,
the probability that more than 90% of the nodes receive the packet successfully, P (0.9)s ,
for different values for r is shown. For very low data rates (0-12kbps), r = 1 gives the
highest probability of success. r = 2 and r = 3 can support a wide range of network load
and maintain relatively high probability of success. r = 4 has an inferior performance
compared to r = 2 or 3; since 7 timeslots are used for transmission, the probability of 4
of them being successfully received is too low.
Fig. 6.8 presents the throughput of the network when load varies. In this figure, L, w,
Ts, and Tf are fixed. The number of packets coded into w packets, r, is shown after the
name of the protocols. It is observed that OOC 3 can support a wide range of network
load and maintain relatively high throughput. OOC 4 supports the widest range but has
an inferior performance to OOC 3.
Fig. 6.9 shows the performance for different QoS levels in a network using OOC. In
this figure, codes are generated for w equal to 7. High priority packets use all 7 available
timeslots for transmission while low priority packets transmit in only 5 of the 7 available
Chapter 6. Simulation Results 86
0 25
50
50 75.50.65
0.7
0.75
0.8
0.85
0.9
0.95
1
Average load per user (kbps)
Ps(0.9)
r=1, Ts=320µs
r=2, Ts=160µs
r=3, Ts=106.67µs
r=4, Ts=80µs
Fig. 6.7: Probability of success versus average load, for w = 7.
0 50 100 150 200 250 300 3500
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Average load per user (kbps)
Thr
ough
put (
Mbp
s)
OOC 1OOC 2OOC 3OOC 4SFR 1SFR 2SFR 3
Fig. 6.8: Throughput versus average load, for w = 7.
timeslots. 30% of the incoming traffic in this simulation is high priority and the rest is
low priority. The performance of a system that does not offer different levels of QoS is
also plotted. It can be observed that the system can provide different QoS levels while
Chapter 6. Simulation Results 87
keeping the average performance similar to that of a network without QoS provisioning.
The effect of QoS provisioning is more apparent when the load is high.
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10.4
0.5
0.6
0.7
0.8
0.9
1
Average load (packets/user/frame)
Ps
Low QoSHigh QoSAverage QoSSystem with no QoS
Fig. 6.9: Providing different QoS levels with OOC.
Fig. 6.10 shows the effect of adaptive elimination for OOC. In this figure, the prob-
ability that more than 90% of the nodes successfully receive a transmitted message is
shown for w = 7. It is observed that adaptive elimination increases the probability of
success particularly in high load.
The analytical results presented in Chapter 4 correspond to a case in which the wire-
less channel is perfect and capture and adaptive elimination are disabled. In the simula-
tions, however, we have considered a more general case: Rician channel with capture and
adaptive elimination. If capture and adaptive elimination are disabled, as expected, the
analytical results and the simulation results agree. This is shown in Fig. 6.11 and 6.12,
for the probability of success while w changes and in Fig. 6.13, for the delay while the
average load changes. Irregularities in the curves for OOC can be observed more often
because OOC has less intrinsic randomness compared to the other two methods.
Chapter 6. Simulation Results 88
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Average load (messages/user/frame)
Ps(0
.9)
r=1 with AEr=1 without AEr=2 with AEr=2 without AEr=3 with AEr=3 without AE
Fig. 6.10: Effect of Adaptive Elimination.
2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 70.75
0.8
0.85
0.9
0.95
1
w
Ps
OOC Ana.SFR Ana.SPR Ana.OOC Sim.SFR Sim.SPR Sim.
Fig. 6.11: Comparison of analytical and simulation results: Ps vs w, for µp = 0.3.
6.3 Performance versus Distance
In the last section, performance evaluation was performed without considering the dis-
tance between nodes. In other words, performance metrics were averaged among all
Chapter 6. Simulation Results 89
2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 70.4
0.45
0.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
w
Ps
OOC Ana.SFR Ana.SPR Ana.OOC Sim.SFR Sim.SPR Sim.
Fig. 6.12: Comparison of analytical and simulation results: Ps vs w, for r = 2 and
µp = 0.3.
nodes with different distances. In this section, we present simulation results that show
performance versus the distance between transmitter and receiver.
6.3.1 Setup
The placement of cars in this simulation is similar to Fig. 6.1 except that there are 61 cars
instead of 31 and the cluster covers 300m on each side of the middle car. The middle
car is the desired receiver and the probability of success is obtained for transmissions
originating from all other cars and plotted versus their distance from the middle car.
With data rate 10Mbps, packet size is 250B, and each timeslot is 200µs. Path loss
exponent, n, is equal to 2, Rice K factor is 3, and β = 0.5 unless otherwise stated. Also,
adaptive elimination is disabled.
Chapter 6. Simulation Results 90
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.910
20
30
40
Del
ay (
times
lots
)
OOC
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.910
20
30
40
Del
ay (
times
lots
)
SFR
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.910
20
30
40
Del
ay (
times
lots
)
μp
SPR
Fig. 6.13: Comparison of analytical and simulation results: Delay vs Average load, for
w = 6 and β = 0.
6.3.2 Results
The simulation is performed for N = 61, µp = 0.3 and two different pairs of values for
(L,w), namely (64, 6) and (94, 8). Probability of success versus distance is shown in
Fig. 6.14 and Fig. 6.15. As observed in these figures, performance improves for higher
L and w, for all schemes. This is because larger frames result in fewer collisions and a
larger w, while L is sufficiently large, increases the probability of success. Note, however,
that since the per frame load in both cases is µp = 0.3, the data rate for (L,w) = (94, 8)
must be higher to decrease the duration of a timeslot to maintain the same duration for
frames in both cases. From Fig. 6.14 and Fig. 6.15, it is observed that OOC performs
Chapter 6. Simulation Results 91
better than SFR and SPR both in terms of probability of success and delay. SFR, in
turn, is better than SPR.
50 100 150 200 250 300
0.7
0.75
0.8
0.85
0.9
0.95
1
Distance(m)
Ps
OOC
SFR
SPR
Fig. 6.14: Probability of success vs. distance from the receiver for N = 61, L = 64,
w = 6, µp = 0.3
To study the performance of different QoS levels with varying distance, the simulation
is modified as follows. In each pair of the cars, which have equal distance from the desired
receiver, one has a high number of repetitions and the other one has a low number of
repetitions. A code with weight 6 is used, but for low-priority users, two of the repetitions
are randomly eliminated. As observed in Fig. 6.16 nodes with higher repetitions have
higher probability of success compared to users in no-priority setup in which all users have
6 retransmissions, while nodes with lower repetitions have lower probability of success.
The result of the simulation with β = 0 is plotted alongside the results obtained in
Chapter 4 for each of the three methods for N = 31, L = 64, w = 6, µp = 0.3 in Fig. 6.17.
It can be observed that analytical results with no capture (β = 0) provides a lower bound
to system performance.
Chapter 6. Simulation Results 92
50 100 150 200 250 300
0.84
0.86
0.88
0.9
0.92
0.94
0.96
0.98
1
Distance(m)
Ps
OOC
SFR
SPR
Fig. 6.15: Probability of success vs. distance from the receiver for N = 61, L = 94,
w = 8, µp = 0.3
50 100 150 200 250 300
0.7
0.75
0.8
0.85
0.9
0.95
1
Distance(m)
P s
High QoS
No QoS
Low QoS
Fig. 6.16: Probability of success vs. distance from the receiver for N = 61, L = 64,
whigh = 6, wlow = 4, µp = 0.3
Chapter 6. Simulation Results 93
20 40 60 80 100 120 140
0.91
0.92
0.93
0.94
0.95
0.96
0.97
0.98
0.99
1
Distance(m)
Ps
OOC
OOC
SPR
SPR
SPR
SFR
OOC
SFR
SFR
Fig. 6.17: Simulation results for β = 0.5 (solid lines), β = 0 (dashed lines), and analytical
results for β = 0 (dotted lines); N = 31, L = 64, w = 6, µp = 0.3
6.4 Discussion
At the beginning of this chapter, we described the channel model used in the simulations.
The design of a medium access control protocol must not be tied to a specific channel
model. However, a non-ideal channel model is useful for obtaining realistic results. Al-
though the channel model assumed here may not be the best channel model for vehicular
environments, it is chosen merely as a vehicle for obtaining simulation results.
In most parts of the simulations, messages with length 200B are issued from each
vehicle approximately 5 times per second. As explained in Section 1.3, message frequency
of approximately 5 messages with length 100B (per second per user) is sufficient for
communicating position and other useful information. After adding different overheads,
the message length will not exceed 200B assumed in the simulations.
With the described load characteristics, we have shown that OOC-based broadcast
Chapter 6. Simulation Results 94
can reliably deliver safety messages with low delay. Furthermore, OOC-based broadcast
performs noticeably better than random repetition broadcast protocols.
By using coding, we have shown that it is possible to increase the throughput of
the network. An advantage of coding is that it enables users to locally determine the
level of coding based on network load and required bandwidth and reliability. We have
also shown that adaptive elimination can significantly increase the probability of success
particularly in high load.
Providing different levels of quality of service is a desirable property of vehicular
networks. As observed in simulation results, OOC-based broadcast is capable of providing
different service levels with a simple modification. The advantage of QoS provisioning is
more apparent when it is most needed– in far distances and high loads.
Simulation results presenting performance versus the distance between transmitter
and receiver reveal that even in higher load and with N = 61 the probability of success
of OOC does not fall below 75% at distance of 300m.
We conclude that OOC-based repetition broadcast provides good performance in
vehicular environments and offers features that are desired in a vehicular communication
system.
Chapter 7
Conclusions and Future Work
The potential of Dedicated Short Range Communication (DSRC) for providing a commu-
nication platform has transformed it to the main enabling technology behind the emer-
gence of a new type of communication systems– vehicular communication networks. It is
envisioned that the appeal of Intelligent Transportation System (ITS) technologies for in-
creasing safety, enhancing productivity, and providing connectivity will result in increas-
ing deployment of DSRC devices. Along with Global Positioning Systems (GPS) and/or
other localization technologies, DSRC makes the development of cooperative/active col-
lision avoidance systems possible. However, realization of a cooperative/active collision
avoidance system, as well as other ITS applications, requires a well designed network,
part of which is the medium access control protocol.
In this work, we have presented a novel MAC broadcast protocol which, unlike other
proposed MAC protocols, is capable of delivering short safety messages in a reliable,
fast, and efficient manner. This protocol relies on Optical Orthogonal Codes (OOC)
which are a well-known family of codes used in Optical Code Division Multiple Access
(OCDMA). We have shown that good cross-correlation properties of these codes can
reduce the possibility of collision in a wireless network.
A detailed mathematical analysis has been provided that enables us to find the prob-
95
Chapter 7. Conclusions and Future Work 96
ability of success and the average delay and is extended to cases that coding is used to
achieve higher throughput or reliability. The analysis presented here takes on a general
approach and not only is applicable to broadcast protocols discussed here, but also can be
used for any repetition-based broadcast protocol with a fixed number of transmissions.
The results of the analysis reveal that OOC-based broadcast can provide significant
performance improvements over previously proposed random repetition-based broadcast
protocols.
After providing mathematical analysis for the basic protocol, we introduced enhance-
ments to the protocol that increase reliability and decrease the probability of collision.
The use of coding is proposed as a means of increasing efficiency, flexibility, and network
throughput. We showed that for a given load and number of transmissions, there exist an
optimum level of coding which provides the highest success probability. Adaptive elim-
ination is introduced to further increase the good cross-correlation properties of optical
orthogonal codes on the fly. Significant performance improvements obtained using adap-
tive elimination is presented by simulation. Furthermore, quality of service provisioning
is also presented using different number of transmissions for different types of traffic.
Simulation results presented in this work showed that the proposed protocol is capable
of supporting safety messaging under load conditions expected in vehicular environments.
Furthermore, the agreement of simulation results performed with ideal assumptions of
the analysis and the analysis strengthens the validity of the results provided in this work.
Overall, the protocol proposed in this thesis shows promising performance and pro-
vides features required in a vehicular medium access control protocol.
7.1 Future Work
In this work, we did not consider the use of acknowledgements. While RTS/CTS trans-
mission is inefficient because of the short length of safety messages, piggybacked acknowl-
Chapter 7. Conclusions and Future Work 97
edgements can be implemented efficiently. The existence of multiple sources of broadcast
traffic adds to the appeal of piggybacked acknowledgements. This work can be extended
by using acknowledgements.
Designing better transmission patterns may be possible for repetition-based broadcast
protocols. For example, an interesting approach is designing codes that do not require
synchronization. In these codes, any overlap between the transmission times of two
packets transmitted in an asynchronous system must guarantee that other transmission
in the same frame between those two users do not have any overlap. Since this condition
is more restrictive than the condition we assumed in this thesis, code cardinality will
be smaller. The suitability of asynchronous codes as transmission patterns and their
generation requires more exploration.
Several transmissions in a frame offers a unique opportunity for implementing network
coding in a repetition-based broadcast. In this case, messages from different users are
combined in each transmission to help disseminate messages. Network coding can also
provide path diversity for nodes whose line-of-sight is blocked. Use of network coding
in a vehicular network may offer increased reliability and efficiency but requires further
study.
Bibliography
[1] The World Health Organization, “The World Health Report 2002 - Reducing Risks,
Promoting Healthy Life.” http://www.who.int/whr/2002/chapter4/en/index7.
html, 2002.
[2] E. Krug, “World Health Day 2004: Road Safety, Overview Fact Sheet.”
http://www.who.int/entity/world-health-day/previous/2004/en/traffic_
facts_en.pdf, 2004.
[3] U.S. Department of Transportation, Research and Innovative Technology Admin-
istration (RITA), “Vehicular Infrastructure Integration (VII).” http://www.its.
dot.gov/vii/.
[4] U.S. Department of Transportation, Bureau of Transportation Statistics (BTS),
“National Transportation Statistics: Motor Vehicle Safety Data.” http://www.bts.
gov/publications/national_transportation_statistics.
[5] ASTM E2213-03, “Standard Specification for Telecommunication and Information
Exchange Between Roadside and Vehicle Systems – 5 GHz Band Dedicated Short
Range Communications (DSRC) Medium Access Control (MAC) and Physical Layer
(PHY) Specificifications,” ASTM Int’l, vol. July, 2003.
[6] S. Biswas, R. Tatchikou, and F. Dion, “Vehicle-to-vehicle Wireless Communication
Protocols for Enhancing Highway Traffic Safety,” Communications Magazine, IEEE,
vol. 44, no. 1, pp. 74–82, 2006.
98
Bibliography 99
[7] US Department of Transportation, “National ITS Architecture Version 6.” http:
//www.iteris.com/itsarch/html/entity/paents.htm, 2007.
[8] J. Zhu and S. Roy, “MAC for Dedicated Short Range Communications in Intelligent
Transport System,” Communications Magazine, IEEE, vol. 41, no. 12, pp. 60–67,
2003.
[9] B. Hofmann-Wellenhof, H. Lichtenegger, and J. Collins, GPS Theory and Practice.
New York, NY, 2001.
[10] R. Parker, “Cooperative vehicle position estimation,” Master’s thesis, University of
Toronto, 2007.
[11] M. Green, ““ How Long Does It Take to Stop?” Methodological Analysis of Driver
Perception-Brake Times,” Transportation Human Factors, vol. 2, no. 3, pp. 195–216,
2000.
[12] S. Sibecas, C. Corral, S. Emami, G. Stratis, M. Inc, and B. Beach, “On the Suit-
ability of 802.11 a/RA for High-mobility DSRC,” Vehicular Technology Conference,
2002. VTC Spring 2002. IEEE 55th, vol. 1, 2002.
[13] IEEE 802 Committee, “Draft Amendment to STANDARD FOR Information
technology – Telecommunications and information exchange between systems –
LAN/MAN Specific Requirements – Part 11: Wireless LAN Medium Access Con-
trol (MAC) and physical layer (PHY) specifications: Wireless Access in Vehicular
Environments (WAVE),” January 2005.
[14] IEEE P802.11 - Task Group p, “Status of Project IEEE 802.11 Task Group p,
Wireless Access in Vehicular Environments (WAVE).” http://grouper.ieee.org/
groups/802/11/Reports/tgp_update.htm.
Bibliography 100
[15] F. Farnoud, “Vehicular Communication Networks,” Term paper, Advanced Network
Architecture, University of Toronto, 2007.
[16] F. Farnoud, B. Hassanabadi, and S. Valaee, “Message Broadcast Using Optical
Orthogonal Codes in Vehicular Communication Systems,” Wireless Networking for
Intelligent Transportation Systems, ICST QSHINE Workshop, Aug. 2007.
[17] F. Farnoud and S. Valaee, “Repetition-based Broadcast in Vehicular Ad Hoc Net-
works in Rician Channel with Capture,” IEEE INFOCOM MOVE Wrkshp, Apr.
2008.
[18] F. Borgonovo, A. Capone, M. Cesana, and L. Fratta, “RR-ALOHA, a Reliable
R-ALOHA broadcast channel for ad-hoc inter-vehicle communication networks,”
Proceedings of Med-Hoc-Net 2002.
[19] Q. Xu, T. Mak, J. Ko, and R. Sengupta, “Vehicle-to-vehicle Safety Messaging in
DSRC,” Proceedings of the 1st ACM international workshop on Vehicular ad hoc
networks, pp. 19–28, 2004.
[20] S. Gupta, V. Shankar, and S. Lalwani, “Reliable Multicast MAC Protocol for Wire-
less LANs,” Communications, 2003. ICC’03. IEEE International Conference on,
vol. 1, 2003.
[21] K. Xu, M. Gerla, and S. Bae, “How Effective is the IEEE 802.11 RTS/CTS Hand-
shake in Ad hoc Networks,” Global Telecommunications Conference, 2002. GLOBE-
COM’02. IEEE, vol. 1, 2002.
[22] S. Y. Ni, Y. C. Tseng, Y. S. Chen, and J. P. Sheu, “The Broadcast Storm Problem in
a Mobile Ad hoc Network,” Proceedings of the 5th annual ACM/IEEE international
conference on Mobile computing and networking, pp. 151–162, 1999.
Bibliography 101
[23] N. Balon, “Increasing Broadcast Reliability In Vehicular Ad Hoc Networks,” Mas-
ter’s thesis, The University of Michigan, 2006.
[24] X. Zhang, H. Su, and H. Chen, “Cluster-Based Multi-Channel Communications
Protocols in Vehicle Ad Hoc Networks,” IEEE Wireless Communications, p. 45,
2006.
[25] F. Yu and S. Biswas, “Self-Configuring TDMA Protocols for Enhancing Vehicle
Safety With DSRC Based Vehicle-to-Vehicle Communications,” Selected Areas in
Communications, IEEE Journal on, vol. 25, no. 8, pp. 1526–1537, 2007.
[26] S. Katragadda, G. Murthy, R. Rao, M. Kumar, and R. Sachin, “A Decentralized
Location-based Channel Access Protocol for Inter-vehicle Communication,” Proc. of
the 57th IEEE Semiannual Vehicular Technology Conference (VTC03 Spring), 2003.
[27] K. Tang and M. Gerla, “MAC Reliable Broadcast in Ad hoc Networks,” Military
Communications Conference, 2001. MILCOM 2001. Communications for Network-
Centric Operations: Creating the Information Force. IEEE, vol. 2, 2001.
[28] M. Taha and Y. Hasan, “VANET-DSRC Protocol for Reliable Broadcasting of Life
Safety Messages,” Signal Processing and Information Technology, 2007 IEEE Inter-
national Symposium on, pp. 104–109, 2007.
[29] J. Luo and J. Hubaux, “A Survey of Inter-Vehicle Communication,” EPFL, Lau-
sanne, Switzerland, Tech. Rep, 2004.
[30] F. Borgonovo, A. Capone, M. Cesana, and L. Fratta, “ADHOC MAC: New MAC
Architecture for Ad Hoc Networks Providing Efficient and Reliable Point-to-Point
and Broadcast Services,” Wireless Networks, vol. 10, no. 4, pp. 359–366, 2004.
Bibliography 102
[31] L. Min-Te Sun, A. Arora, and T. Lai, “Reliable MAC Layer Multicast in IEEE
802.11 Wireless Networks,” Proceedings of the International Conference on Parallel
Processing, pp. 527–536, 2002.
[32] J. Blum, A. Eskandarian, and L. Hoffman, “Challenges of Intervehicle Ad Hoc Net-
works,” Intelligent Transportation Systems, IEEE Transactions on, vol. 5, no. 4,
pp. 347–351, 2004.
[33] G. Bianchi, “Performance Analysis Of The Ieee 802. 11 Distributed Coordination
Function,” IEEE Journal on Selected Areas in Communications, vol. 18, no. 3,
pp. 535–547, 2000.
[34] K. Tang and M. Gerla, “MAC Layer Broadcast Support in 802.11 Wireless Net-
works,” MILCOM 2000. 21st Century Military Communications Conference Pro-
ceedings, vol. 1, 2000.
[35] K. Tang and M. Gerla, “Random Access MAC for Efficient Broadcast Support in
Ad hoc Networks,” Wireless Communications and Networking Conference, 2000.
WCNC. 2000 IEEE, vol. 1, 2000.
[36] S. Ray, J. Carruthers, and D. Starobinski, “RTS/CTS-induced Congestion in Ad hoc
Wireless LANs,” Wireless Communications and Networking, 2003. WCNC 2003.
2003 IEEE, vol. 3, 2003.
[37] M. Sun, W. Feng, T. Lai, K. Yamada, H. Okada, and K. Fujimura, “GPS-based
Message Broadcast for Adaptive Inter-vehicle Communications,” Proceedings of Ve-
hicular Technology Conference, vol. 6, pp. 2685–2692, 2000.
[38] G. Korkmaz, E. Ekici, and F. Ozguner, “Black-Burst-Based Multihop Broadcast
Protocols for Vehicular Networks,” Vehicular Technology, IEEE Transactions on,
vol. 56, no. 5 Part 2, pp. 3159–3167, 2007.
Bibliography 103
[39] Q. Xu, T. Mak, J. Ko, and R. Sengupta, “Layer-2 Protocol Design for Vehicle Safety
Communications in Dedicated Short Range Communications Spectrum,” Intelligent
Transportation Systems, 2004. Proceedings. The 7th International IEEE Conference
on, pp. 1092–1097, 2004.
[40] Q. Xu, T. Mak, and R. Sengupta, “Medium Access Control Protocol Design for
Vehicle-vehicle Safety Messages,” Vehicular Technology, IEEE Transactions, vol. 56,
no. 2, pp. 499–518, 2007.
[41] J. Kuri and S. Kasera, “Reliable Multicast in Multi-Access Wireless LANs,” Wireless
Networks, vol. 7, no. 4, pp. 359–369, 2001.
[42] A. Toyserkani, E. Strom, and A. Svensson, “An Efficient Broadcast MAC Scheme
for Traffic Safety Applications in Automotive Networks,” Proc. of the WCNC. Las
Vegas: IEEE Press, vol. 2105, 2006.
[43] C. Chiu, E. Wu, and G. Chen, “A Reliable and Efficient MAC Layer Broadcast
(Multicast) Protocol for Mobile Ad hoc Networks,” Global Telecommunications Con-
ference, 2004. GLOBECOM’04. IEEE, vol. 5.
[44] E. Agrell, A. Vardy, and K. Zeger, “Upper Bounds For Constant-weight Codes,”
Information Theory, IEEE Transactions, vol. 46, no. 7, pp. 2373–2395, 2000.
[45] S. Johnson, “A New Upper Bound for Error-correcting Codes,” Information Theory,
IEEE Transactions, vol. 8, no. 3, pp. 203–207, 1962.
[46] K. Jackson, S. Newton, B. Moslehi, M. Tur, C. Cutler, J. Goodman, and H. Shaw,
“Optical Fiber Delay-line Signal Processing,” IEEE Transactions on Microwave
Theory and Techniques, vol. 33, no. 3, pp. 193–210, 1985.
Bibliography 104
[47] J. A. Salehi, “Code Division Multiple-access Techniques in Optical Fiber Networks.
I. Fundamental Principles,” Communications, IEEE Transactions on, vol. 37, no. 8,
pp. 824–833, 1989.
[48] H. Shalaby, “Chip-level Detection in Optical Code Division Multiple Access,” Light-
wave Technology, Journal of, vol. 16, no. 6, pp. 1077–1087, 1998.
[49] A. E. Brouwer, J. B. Shearer, N. J. A. Sloane, and W. D. Smith, “A New Table of
Constant Weight Codes,” Information Theory, IEEE Transactions, vol. 36, no. 6,
pp. 1334–1380, 1990.
[50] T. Cormen, C. Leiserson, R. Rivest, et al., Introduction to algorithms. Cambridge,
Mass.: MIT Press, 2001.
[51] F. MacWilliams and N. Sloane, The Theory of Error-correcting Codes. North-
Holland Amsterdam, 1988.
[52] R. Prasad and C. Liu, “Throughput Analysis of Some Mobile Packet Radio Protocols
in Rician Fading Channels,” Communications, Speech and Vision, IEE Proceedings
I, vol. 139, no. 3, pp. 297–302, 1992.