Vemac: A Novel Multichannel Mac Protocol For Vehicular Ad Hoc Networks
Vemac: A Novel Multichannel Mac Protocol For Vehicular Ad Hoc Networks
Li Li
I. I NTRODUCTION
A vehicular ad hoc network (VANET) consists of a set of
vehicles equipped with on board units for wireless communications and a set of stationary units along the road known
as road side units (RSUs). The objective of a VANET is to
provide reliable vehicle to vehicle (V2V) and vehicle to RSU
(V2R) communications. Based on these two kinds of communications, a VANET can support a wide variety of applications
in safety, entertainment, and vehicle traffic optimization [1].
Motivated by the importance of vehicular communications, the
U.S Federal Communication Commission (FCC) has allocated
75MHz in the 5.9GHz band for Dedicated Short Range
Communications (DSRC) to be exclusively used by V2V and
V2R communications. The DSRC spectrum is divided into
seven 10MHz channels: six service channels for safety and
non-safety related applications, and one control channel for
transmission of control information and high priority short
safety applications.
The special characteristics of VANETs, such as the highly dynamic network topology and diverse quality of service (QoS)
requirements of potential applications, result in significant
challenges in the design of an efficient medium access control
protocol (MAC) protocol. Various MAC protocols have been
proposed for VANETs based either on IEEE 802.11 [2] or on
channelization such as time division multiple access (TDMA)
[3], space division multiple access [4], and code division multiple access [5]. The IEEE 802.11p is a recently proposed MAC
standard for VANETs. The protocol is based on the legacy
This work was supported by a research grant from the Natural Science and
Engineering Research Council (NSERC) of Canada.
413
the header, AnS, and AcS fields are necessary for a node to
decide which time slots it should access on the cch and schs.
On the cch, nodes acquire time slots in a distributed way and
each node must acquire exactly one time slot in a frame. A
provider is a node which announces on the cch for a service
offered on a specific sch, while a user is a node which receives
the announcement for a service and decides to make use of
this service. It is the responsibility of the provider to assign
time slots to all users and announce this slot assignment on
the sch on a specific time slot called providers main slot. For
the purpose of time slot assignment on the cch and schs, in the
header of each packet transmitted on the cch, the transmitting
node x should include i) sch(x) and the time slots used by
node x on sch(x), ii) Ncch (x) and the time slot used by each
node y Ncch (x), iii) Nm (x), where m = sch(x), and the
time slots used by each node y Nm (x), and iv) the position
and the current direction of node x (right, left, or RSU).
Subsections B and C in the following explain in details how
the nodes acquire time slots on the cch and schs respectively.
Two types of collision on time slots can happen [7]: access
collision among nodes trying to acquire time slots, and merging collision among nodes already acquiring time slots. Access
collision happens when two or more nodes within two hops
of each other attempt to access the same available time slot.
On the other hand, merging collision happens when two or
more nodes accessing the same time slot become members
of the same two-hop set (THS)2 due to node activation or
node mobility. In VANETs, merging collision is likely to occur
among vehicles moving in opposite directions or between a
vehicle and a stationary RSU. For example, in Fig.4, if vehicle
A moves to THS2, and if A is using the same time slot as D,
then collision will occur at C. Upon detection of a merging
collision on the cch, the colliding nodes should release their
time slots and acquire new ones, which may generate more
access collisions.
B. Accessing Slots on the Control Channel
Suppose node x is just powered on and needs to acquire
a time slot on the cch. Node x starts listening to the cch
for one complete frame. At the end of this frame, node x
1 The term packet is used instead of frame to refer to Layer 2 Protocol
Data Unit, in order to avoid confusion with frame which is a collection of
time slots.
2 A two-hop set is a set of nodes in which each node can reach any other
node in two hops at most.
414
directions and RSUs are accessing the same set of time slots.
However, when merging collision happens, the probability of
an access collision is minimized since each colliding node
x can choose to access any time slot in Ucch (x). On the
other extreme, when = , the rate of merging collision
is minimized since vehicles moving in opposite directions
and RSUs are accessing disjoint sets of time slots, and hence
merging collision only happens among vehicles moving in the
same direction or when a vehicle changes direction. However,
when merging collision happens, for example among vehicles
moving in a right direction, the probability of access collision
is maximized since the choice of each colliding vehicle x is
limited to time slots in Ucch (x) R. How to determine a
suitable value for to balance between the rates of access
and merging collisions should be further studied.
C. Accessing Slots on the Service Channels
As mentioned, the assignment of time slots to nodes on the
schs is performed by the providers in a centralized way. For
the slot assignment without a hidden terminal problem, each
node x should determine Um (x) defined as the set of time
slots used on schm by all nodes which are expected to be
within the two-hop neighbourhood of node x on schm . This
set represents the time slots that node x cannot use on schm ,
and will be used by the provider to assign time slots to nodes
without causing any hidden terminal problem. Each node x
constructs Um (x), m = 1, . . . , M , as follows. When node x
receives a packet on the cch from another node y indicating
that sch(y) = m, if y Nm (x), node x adds to Um (x) the
time slots used by each node j Nm (y); otherwise, node x
does not update Um (x).
When a provider (R) has a service to offer on an sch, it
announces the following information in the AnS field of the
next packet transmitted on the cch: priority of the service,
address(es) of the intended user(s), providers main slot, and
the sch on which the service will be offered. Based on the
information announced by provider R on the cch, each node
x Ncch (R) determines whether or not to make use of the
announced service. If node x decides to use the service by
provider R on schm , it transmits the following information
in the AcS field of the next packet transmitted on the cch:
Um (x), address of provider R, and the number of time slots
that node x needs. Once node x indicates its acceptance of the
service, it tunes transceiver2 to schm and waits for the time
slot assignment transmitted on the providers main slot.
After the provider announces the service, it listens to the cch
for the duration of one complete frame to determine the set
I of users which are interested in the service. For each node
x I, the provider has Um (x), the movement direction of
node x, and the number of time slots required by node x.
Accordingly, the provider assigns time slots for each x I
and announces this slot assignment in the main slot.
Because of node mobility, Um (x) may change for some
node(s) x I. Hence, the slot assignment needs to be
recalculated based on the new Um (x). For this reason, each
415
Zi = ;
j Ncch (i)\Zi such that Zi Ncch (j) and
|Ncch (j)| > |Ncch (i)|;
j Ncch (i)\Zi such that Zi Ncch (j), |Ncch (j)| =
|Ncch (i)|, and ID(j) > ID(i); where ID(i) denotes the
address of node i.
416
n frames. Under the assumptions, Xn is a stationary discretetime Markov chain with the following transition probabilities.
If K N ,
W (ji,Ki,N i)
, 0 i K 1,
(N i)Ki
ijK
pij =
1,
i=j=K
0,
elsewhere
K
X
p(E|Xn = i)p(Xn = i) =
i=0
K
K1
X
Ci1
i=1
CiK
n
P1,i+1
=
n
K
If K > N ,
W (ji,Ki,N i)
, 0 i N 1,
(N i)Ki
ij N 1
pij =
1,
i
= j, N i K
0,
elsewhere.
The Markov chain is illustrated in Fig.7.
To calculate
vl
Clv Asl (s l)
Pvl
W
(i,
v
l,
s
l)
, 0l<v
i=1
W (l, v, s) =
A ,
l=v
l
0,
l>v
where Asl =
If v > s,
s!
(sl)!
and Cls =
Asl
l! .
vl
v s
C
A
(s l)
l
l
Psl
W (l, v, s) =
W
(i,
v
l,
s
l)
, 0l<s
i=1
0,
l s.
417
418
R EFERENCES
[1] Manifesto of the Car-to-Car Communication Consortium, www.car-tocar.org, 2007.
[2] 802.11p-2010 IEEE Standard for Information technology
Telecommunications and information exchange between systems
Local and metropolitan area networksSpecific requirements Part 11:
Wireless LAN Medium Access Control (MAC) and Physical Layer
(PHY) Specifications Amendment 6: Wireless Access in Vehicular
Environments, 2010.
[3] 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.
[4] J. B. Jeremy and E. Azim, A reliable link-layer protocol for robust and
scalable intervehicle communications,IEEE Trans. Intelligent Transportation Systems, vol. 8, no. 1, pp. 4-13, 2007.
[5] H. Nakata, T. Inoue, M. Itami, and K. Itoh, A study of inter vehicle
communication scheme allocating PN codes to the location on the
road,Proc. IEEE Intelligent Transportation Systems, vol. 2, pp. 15271532, 2003.
[6] C. Nakjung, C. Sungjoon, S. Yongho, K. Taekyoung, and C. Yanghee, A
solicitation-based IEEE 802.11p MAC protocol for roadside to vehicular
networks,Proc. Mobile Networking for Vehicular Environments, pp. 9196, 2007.
[7] F. Borgonovo, L. Campelli, M. Cesana, and L. Fratta, Impact of user
mobility on the broadcast service efficiency of the ADHOC MAC
protocol,Proc. IEEE VTC, vol. 4, pp. 2310-2314, 2005.
[8] F. Borgonovo, L. Campelli, M. Cesana, and L. Coletti, MAC for ad-hoc
inter-vehicle network: services and performance,Proc. IEEE VTC, vol.
5, pp. 2789-2793, 2003.
[9] J- H. Wen and J- W. Wang, A recursive solution to an occupancy
problem resulting from TDM radio communication application,Applied
Mathematics and Computation, vol. 101, no. 1, pp. 1-3, 1999.