CCH: Cognitive Channel Hopping in Vehicular Ad Hoc Networks
Brian Sung Chul Choi, Hyungjune Im,Kevin C. Lee, and Mario Gerla
UCLA Computer Science Department
VTC 2011 Fall Presentation
1
Motivation Wi-Fi based vehicular networks
Each vehicle equipped with a Wi-Fi interface. Multi-hop communication among vehicular nodes.
2
Motivation Problem: The Wi-Fi band is shared with other devices.
Residential access points, Bluetooth, etc.
3
1 3
2 1
4
2
Channel Sensing Each node periodically monitors the wireless medium.
4
1 3
2 1
4
2
channel quality vectors
Channel Assignment Nodes exchange sensing results and channels are assigned.
Exchange of channel quality vectors incurs overhead. Optimal channel assignment is difficult.
5
1 3
2 1
4
2
channel quality vectors
3 4 4 22
CCH: Cognitive Channel Hopping Each node generates a channel hopping sequence based on
channel qualities, and independently channel-hops according to the sequence.
6
1 3
2 1
4
2
CCH Protocol Operation A node x periodically triggers Channel Quality
Assessment (CQA). A channel quality vector a = {a1, …, a|C|} is produced. Based on the channel qualities, x picks a channel set Q =
{q1, …, qk} from a predefined list, which is a quorum system.
7Example list of channel sets.
It picks the channel set with the highest combined channel quality, defined as:
CCH Protocol Operation Given Q, x generates two hopping sequences, utx and urx, such that it makes a channel rendezvous with any arbitrary neighbor in a finite duration.
8
CCH Protocol Operation When there is no packet to transmit, follow urx. When there are packets to transmit, follow utx to locate the neighbor. A channel rendezvous is guaranteed within the length of urx.
9
CCH Protocol Details RTS/CTS-based link establishment.
Retransmissions occur within a slot (random errors), and over slots (channel discordance).
ury of neighbor nodes are cached, such that when x has packets destined to a previously encountered neighbor, it can find that neighbor immediately, instead of scanning along utx.
Broadcast packets are transmitted in the beginning of each slot, for several slots.
10
Evaluation Simulated in QualNet 4.5. 13 orthogonal channels in the 5-GHz band. Data rate fixed at 54Mbps, Tx power at 21dBm. Channel set size: 5. Channel switching delay: 80µs. Slot size: 10ms. Period: 3 seconds (this is how often CQA is
performed).
11
Evaluation (static) Linear topology
12
1 2 3 4 8 9...
(without interfering sources) (4 hops, random interfering sources, each of which is active 20% of the time)
(4 hops, random interfering sources, each of which is active 60% of the time)
Evaluation (static) Large scale
200m x 200m region, 100 nodes, 10 random streams, 300 interfering sources.
13static case (throughput) static case (e2e delay)
Evaluation (mobile) Large scale
200m x 200m region, 100 nodes, 10 random streams, 300 interfering sources.
14mobile case
Evaluation (vehicular) Vehicular Scenario
200m x 200m region, 100 vehicular nodes, 10 random streams, 300 interfering sources.
Vehicular mobility generated using VanetMobiSim.
15200m
200m
CCH RH 802.11a0
0.5
1
1.5
2
2.5Average Throughput (Mbps/sec)
Conclusion Channel hopping is an effective way of utilizing
multiple channels, improving spatial reuse and coping with node mobility.
Cognitive techniques can be useful in an unlicensed band-based network, demonstrated by CCH’s ability to avoid channels that are busy.
Future Work Can channel quality be accurately characterized during a
short sensing duration? How can this scheme be incorporated into VANETs that use
the roadside Wi-Fi infrastructure? 16
Thank you.
Questions?
17
Backup slides
18
Channel Rendezvous “Recovery” Mechanism
Channel rendezvous property breaks if: Node x wants to send a frame to y, so switches to x’s transmitting
channel, while y is also trying to transmit to another channel, thus not in its receiving channel, or
Node x wants to send a frame to y, so switches to y’s receiving channel (because it has u(y) in its cache), while y is also trying to transmit to another channel, thus not in its receiving channel.
19tx tx
x
y
y’s rx channel.
tx
rx
x has a packet for y. where is y?
y is involved in a transmission.
tx
Channel Rendezvous “Recovery” Mechanism
We mitigate this effect by forcing each node “yield” for a small amount of time after each frame transmission. During a “yield” period, the node waits in its receiving channel. This “yield” duration is dynamically adjusted based on the level of
congestion the node sees. This little trick turns out to be very effective.
20tx rx tx rx
x
y
y’s rx channel.
tx
rx
yield yield
yieldy’s rxrx
x has a packet for y. x finds y, and starts transmitting to y.
y is involved in a transmission.
Channel Rendezvous Example
Consider the case where x is trying to send a frame to y. Assume x’s channel set is {0, 1, 2}, and y’s channel set is {2, 3,
4}. There is one common channel: 2. The following matrices are used to generate hopping
sequences.
21
0 1 20 1 20 1 2
2 3 43 4 24 2 3
Mtx(x) Mrx(y)
Channel Rendezvous Example
utx(x) urx(y)
22
0 1 2
0 1 2
0 1 2
2 3 43 4 24 2 3
Mtx(x) Mrx(y)
0 1 2
0 1 2
0 1 2
2 3 4 3 4 2 4 2 3
Channel Rendezvous Example
utx(x) urx(y)
23
0 1 20 1 2 0 1 2 0 1 2
2 3 4 3 4 2 4 2 3 2 3 4
…
…
Channel Rendezvous Example
utx(x) urx(y)
24
0 1 20 1 2 0 1 2 0 1 2 …
…3 4 3 4 2 4 2 3 2 3 4 3