Content distribution in vehicular ad hoc network
Download
1 / 37

Content Distribution in Vehicular Ad Hoc Network - PowerPoint PPT Presentation


  • 301 Views
  • Updated On :

Content Distribution in Vehicular Ad Hoc Network. Computer Science Dept, UCLA http://www.cs.ucla.edu/NRL Dec. 14, 2006 IBM ITA @ UCLA. Content Distribution in VANET. Multimedia-based proximity marketing: Virtual tours of hotel rooms Movie trailers in nearby theaters

Related searches for Content Distribution in Vehicular Ad Hoc Network

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Content Distribution in Vehicular Ad Hoc Network' - victoria


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Content distribution in vehicular ad hoc network l.jpg

Content Distribution in Vehicular Ad Hoc Network

Computer Science Dept, UCLA

http://www.cs.ucla.edu/NRL

Dec. 14, 2006

IBM ITA @ UCLA


Content distribution in vanet l.jpg
Content Distribution in VANET

  • Multimedia-based proximity marketing:

    • Virtual tours of hotel rooms

    • Movie trailers in nearby theaters

  • Vehicular ad hoc networks (VANET):

    • Error-prone channel

    • Dense, but intermittent connectivity

    • High, but restricted mobility patterns

    • No guaranteed cooperativeness (only, users of the same interests will cooperate)

  • How do we efficiently distribute content in VANET?

    • Traditional approach: BitTorrent-like file swarming


Bittorrnet like file swarming l.jpg
BitTorrnet-like File Swarming

  • A file is divided into equal sized blocks

  • Cooperative (parallel) downloading among peers

From Wikipedia


Swarming limitation missing coupon l.jpg
Swarming Limitation: Missing Coupon!

C1 Sends Block 1

C2 Sends Block 2

C3 Sends Block 2

B2

B2

B2

B1

B1

B2

C1

C2

C3

B2

B2

B1

B2

B2

C4

C5

C6

C5 Sends Block 2

B1 is STILL missing!!


Network coding l.jpg

a1,1=1

E1

10

Coded Block

a2,1=1

E2

11

Coded Block

a1,2=0

Matrix Inversion

a2,2=1

10

B1

01

B2

Network Coding

  • Let a file has k blocks: [B1 B2 … Bk]

  • Encoded block Ei is generated by

    • Ei = ai,1*B1 + ai,2*B2 + … + ai,k*Bk

    • ai,x : randomly chosen over the finite field

  • Any “k” linearly independent coded blocks can recover [B1 B2 … Bk] by matrix inversion

  • Network coding maximizes throughput and minimizes delay

B1

B2

Network coding over the finite field GF(2)={0,1}


Network coding helps coupon collection l.jpg
Network Coding Helps Coupon Collection

C1 Sends Block 1

C2 Sends a Coded Block: B1+B2

C3 Sends Block 2

B1+B2

B1+B2

B2

B2

B1

B1+B2

B1

B1

B2

C1

C2

C3

B1+B2

B2

B1+B2

B1

B1

B1+B2

B2

C4

C5

C6

C4 and C6 successfully recovered both blocks

C5 Sends a Coded Block: B1+B2


Outline l.jpg
Outline

  • CarTorrent

  • Basic Idea

  • CodeTorrent

  • Simulation

  • Conclusion

  • CarTorrent Demo

  • CodeTorrent Demo


Previous work cooperative downloading with cartorrent l.jpg

Multi-hop pulling w/ proximity-based piece selection

Y

R

R

R

R

Y

Y

Y

Y2

G

Previous Work: Cooperative Downloading with CarTorrent

Internet

Gossiping Availability of Blocks

Exchange Blocks via multi-hop pulling

Downloading Blocks from AP


Codetorrent basic idea l.jpg

Single-hop pulling (instead of CarTorrent multihop)

Buffer

Buffer

Buffer

B1

*a1

B2

*a2

*a3

File: k blocks

B3

+

“coded” block

*ak

Bk

Random Linear Combination

CodeTorrent: Basic Idea

Internet

Re-Encoding: Random Linear Comb.of Encoded Blocks in the Buffer

Outside Range of AP

Exchange Re-Encoded Blocks

Downloading Coded Blocks from AP

Meeting Other Vehicles with Coded Blocks


Design rationale l.jpg
Design Rationale

  • Single-hop better than multihop

    • Multi-hop data pulling does not perform well in VANET (routing O/H is high)

    • Users in multi-hop may not forward packets not useful to them (lack of incentive)!

  • Network coding

    • Mitigate a rare piece problem

    • Maximize the benefits of overhearing

  • Exploits mobility

    • Carry-and-forward coded blocks


Codetorrent beaconing l.jpg

+

+

+

CodeTorrent - Beaconing

  • Periodic broadcasting of peer ID and its code vector

  • Used for searching helpful nodes: those who have at least one linearly independent code block

Red is Helpful!


Codetorrent single hop pulling l.jpg

Random Linear combination

CodeTorrent - Single-hop pulling

  • A peer pulls coded blocks from the helpful peers

    1. G pulls a coded block from R

    2. G checks helpfulness and repeats

R

GetBlock

Y

G

G sends a GetBlock message to R

R prepares a re-encoded block

R broadcasts the re-encoded block

Check helpfulness: If helpful, store it!


Simulations setup l.jpg
Simulations - Setup

  • Qualnet 3.9

  • IEEE 802.11b / 2Mbps

  • Real-track mobility model (Westwood map)

    • 2.4x2.4 km2

  • Distributing 1MB file

    • 4KB/block * 250 blocks

    • 1KB per packet

  • # of APs: 3

    • Randomly located on the road sides

  • Comparing CarTorrent (w/ AODV) with CodeTorrent

    • AODV w/ net-diameter 3 hops

    • CodeTorrent with GF(256)

Near UCLA Campus


Simulation results l.jpg
Simulation Results

  • Avg. number of completion distribution

200 nodes40% popularity

Time (seconds)


Simulation results15 l.jpg
Simulation Results

  • Multi-hop pulling in CarTorrent

    • As content spreads, CarT shows locality

CarTorrent

Avg. hop count exceeding 1 hop

200 nodes40% popularity

Time (seconds)


Simulation results16 l.jpg
Simulation Results

  • Impact of mobility

    • Speed helps disseminate from AP’s and C2C

    • Speed hurts multihop routing (CarT)

    • Car density+multihop promotes congestion (CarT)

Avg. Download Time (s)

40% popularity


Conclusion l.jpg
Conclusion

  • Multihop-based CarTorrent:

    • Not scalable due to routing overhead

    • Cooperation may be a problem

    • Coupon problem

  • CodeTorrent:

    • Scales to mobility; favors cooperation; eliminates a coupon problem


Cartorrent demo cars get to have fun too l.jpg

CarTorrent Demo:Cars get to have fun too

Kevin C. Lee and Ian S. Yap


Overview l.jpg

CarTorrent Application

AODV Routing Layer

Overview

  • Main Idea: CarTorrent uses proximity-based piece selection

    • Instead of traditional “rarest”-first strategy, use rarest-closest-first or closest-rarest-first strategy

  • CarTorrent implementation details

    • CarTorrent layer: browse/share/download files

      • Core and GUI written in Java

    • AODV layer: route maintenance tasks and discovery of neighbors

      • Linux version from Uppsala University


Architecture l.jpg

Client

FileSplitter

SendGossipThread

ReceiveGossipThread

ListenThread

CarTorrent File Manager

RecvPacketThread

RecvPacketThread

RecvPacketThread

Architecture


Components l.jpg
Components

  • Client:

    • A tabbed frame that encapsulates information for subcomponents

    • 3 tabs; share, download, and search

  • FileSplitter:

    • Splits a shared file into parts

    • Combines downloaded parts into a file

  • CarTorrent File Manager:

    • Keeps track of pieces of files from gossips

    • Includes the algorithms to find rarest pieces, closest pieces, and rarest closest pieces


Components cont l.jpg
Components (cont.)

  • SendGossipThread:

    • A thread that sends gossip msgs periodically

    • Two types of gossips:

      • Gossips originated from itself

      • Gossips received from nearby neighbors

    • Gossips received from nearby neighbors are sent based on probabilities assigned to interesting and not interesting gossips

      • Gossips are interesting if client wants the file

      • Gossips are not interesting if the client does not

  • ReceiveGossipThread:

    • A thread that unblocks when receiving a gossip

    • Discards the gossip if from itself else queues the gossip

    • Gossips are sent to CarTorrent File Manager for managing


Components cont23 l.jpg
Components (cont.)

  • ListenThread:

    • Listens for incoming download request

    • Spawns a RecvPacketThread to process incoming packets

  • RecvPacketThread:

    • Processes the incoming packets based on packet type

    • If packet type == DATA_REQ, send parts that are requested

    • If packet type == DATA, write the data to the local file-system and combine it if all parts have been received


Slide24 l.jpg
Demo

  • Series of pictures demonstrating the sharing of a picture file from one source to two clients

  • Three laptops( two running Linux, one with Windows)

  • If you are interested in seeing the live demo, do drop by BH4681


Demo setup l.jpg
Demo Setup

A: 10.0.0.4

B: 10.0.0.5


Slide26 l.jpg
Demo

A: 10.0.0.4


Sharing a file l.jpg
Sharing a File

A: 10.0.0.4



Viewing a downloaded file l.jpg
Viewing a Downloaded File

Rate(Mbps)

10.0.0.5


Future work l.jpg
Future Work

  • Variable piece length to adapt to client’s bandwidth

  • Test in environments with larger distances between nodes (true multi-hop)

  • Cross-layer optimization:

    • Gossip exploits AODV’s RREQ flooding

  • Add a mechanism to detect the absence of a file in the network by either:

    • expiring file pieces (after no gossips)

    • sending out explicit leaving gossip messages

  • Being able to identify failed transfers and get same file piece(s) from other nodes


Codetorrent demo l.jpg

CodeTorrent Demo

Seunghoon Lee and Sung Chul (Brian) Choi


Overview32 l.jpg
Overview

  • CodeTorrent

    • Single-hop pulling using network coding

      • To mitigate a rare piece problem and maximize the benefits of overhearing

    • Exploits mobility; carry-and-forward coded blocks

  • Implementation challenge: How to share LARGE files?

    • Coding/decoding latency: Large file → more blocks → bigger coefficient matrix to invert

      • Inversion takes O(n3)

      • Plus, disk I/O becomes a big issue!

    • Solution: Split the file into “generations”

      • (Chou, et al. “Practical Network Coding”)


Multi generation network coding l.jpg

1

4

Multi-Generation Network Coding

Gen 1

Gen 2

Gen 3

Gen 4

Gen 5


Architecture34 l.jpg
Architecture

Communication Module

CodeTorrent

Network Coding (NC)

Galois Field (GF)


Demo setup35 l.jpg

2

4

1

5

Node 1

Node 2

Node 3

Demo Setup


Slide36 l.jpg

Node 1

Node 2

Node 3

Demo


Future work37 l.jpg
Future Work

  • Multi-hop pulling

    • Content can be pulled from remote peers (just as CarTorrent)

    • Interference aware data pulling (parallel downloading)

  • Network coded P2P caching?

    • Intermediate nodes on the multi-hop path can snoop TCP stream and “cache” for future use

  • Disk I/O scheduling for “mobile” wireless networks

    • Reading 100MB takes 10s!  Short wireless link duration!

    • Efficient scheduling of data blocks for encoding is a must!

      • If a number of requests come in burst, we must schedule them “efficiently” to optimize disk access


ad