240 likes | 447 Views
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. Motivation. Wi-Fi based vehicular networks Each vehicle equipped with a Wi-Fi interface.
E N D
CCH: Cognitive Channel Hopping in Vehicular Ad Hoc Networks Brian Sung Chul Choi, HyungjuneIm, Kevin C. Lee, and Mario Gerla UCLA Computer Science Department VTC 2011 Fall Presentation
Motivation • Wi-Fi based vehicular networks • Each vehicle equipped with a Wi-Fi interface. • Multi-hop communication among vehicular nodes.
Motivation • Problem: The Wi-Fi band is shared with other devices. • Residential access points, Bluetooth, etc. 4 1 3 1 2 2
Channel Sensing • Each node periodically monitors the wireless medium. channel quality vectors 4 1 3 1 2 2
Channel Assignment • Nodes exchange sensing results and channels are assigned. • Exchange of channel quality vectors incurs overhead. • Optimal channel assignment is difficult. channel quality vectors 4 1 3 4 2 2 3 4 1 2 2
CCH: Cognitive Channel Hopping • Each node generates a channel hopping sequence based on channel qualities, and independently channel-hops according to the sequence. 4 1 3 1 2 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. • It picks the channel set with the highest combined channel quality, defined as: Example list of channel sets.
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.
CCH Protocol Operation • When there is no packet to transmit, follow urx. • When there are packets to transmit, follow utxto locate the neighbor. • A channel rendezvous is guaranteed within the length of urx.
CCH Protocol Details • RTS/CTS-based link establishment. • Retransmissions occur within a slot (random errors), and over slots (channel discordance). • uryof 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.
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).
Evaluation (static) • Linear topology ... 1 2 3 4 8 9 (4 hops, random interfering sources, each of which is active 60% of the time) (without interfering sources) (4 hops, random interfering sources, each of which is active 20% of the time)
Evaluation (static) • Large scale • 200m x 200m region, 100 nodes, 10 random streams, 300 interfering sources. static case (throughput) static case (e2e delay)
Evaluation (mobile) • Large scale • 200m x 200m region, 100 nodes, 10 random streams, 300 interfering sources. mobile case
Evaluation (vehicular) • Vehicular Scenario • 200m x 200m region, 100 vehicular nodes, 10 random streams, 300 interfering sources. • Vehicular mobility generated using VanetMobiSim. 200m 200m
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?
Thank you. Questions?
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. x has a packet for y. where is y? x rx y’s rx channel. y is involved in a transmission. y tx tx tx 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. x has a packet for y. x finds y, and starts transmitting to y. yield x rx y’s rx channel. rx y’s rx y is involved in a transmission. yield yield y tx rx tx rx tx
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. 0 1 2 2 3 4 0 1 2 3 4 2 0 1 2 4 2 3 Mtx(x) Mrx(y)
Channel Rendezvous Example • utx(x) • urx(y) 0 0 1 1 2 2 2 2 3 3 4 4 0 0 1 1 2 2 3 3 4 4 2 2 0 0 1 1 2 2 4 4 2 2 3 3 Mtx(x) Mrx(y)
Channel Rendezvous Example • utx(x) • urx(y) … … 0 0 1 1 2 2 2 2 3 3 4 4 0 1 2 3 4 2 0 1 2 4 2 3
Channel Rendezvous Example • utx(x) • urx(y) … … 3 4 3 4 2 4 2 3 2 3 4 3 0 0 1 1 2 2 0 1 2 0 1 2