Upload
ellen-venner
View
217
Download
0
Tags:
Embed Size (px)
Citation preview
CarTorrentCarTorrent®®::Cars get to have fun tooCars get to have fun too
Kevin C. Lee and Ian S. YapKevin C. Lee and Ian S. Yap
TA: Uichin LeeTA: Uichin LeeProf Mario GerlaProf Mario Gerla
IntroductionIntroduction Vehicular Ad-hoc networks(VANETs) have Vehicular Ad-hoc networks(VANETs) have
these characteristics:these characteristics:1.1. Nodes have high computing powerNodes have high computing power2.2. Nodes highly mobileNodes highly mobile3.3. Intermittent connectivityIntermittent connectivity4.4. Locally Dense networksLocally Dense networks5.5. Cooperation between nodes not guaranteedCooperation between nodes not guaranteed
An interesting application for VANETs is An interesting application for VANETs is implementation of a peer-to-peer file-implementation of a peer-to-peer file-sharing system/protocolsharing system/protocol
Many names for it, in our project, it’s Many names for it, in our project, it’s CarTorrent, modeled the Bit Torrent CarTorrent, modeled the Bit Torrent ProtocolProtocol
ProblemProblem
How does a car discover its peers and How does a car discover its peers and know their addresses?know their addresses?
What should be the address of the car?What should be the address of the car?How can a file be broken up into smaller How can a file be broken up into smaller
pieces to be distributed out among the pieces to be distributed out among the peers interested in downloading it?peers interested in downloading it?
How to efficiently and dynamically track How to efficiently and dynamically track file availability and transfer behavior?file availability and transfer behavior?
A two-layer approach :A two-layer approach :
AODV lower layer performs route AODV lower layer performs route maintenance tasks and discovery of maintenance tasks and discovery of neighborsneighbors
CarTorrent exploits the info provided by CarTorrent exploits the info provided by lower layer to grab or send files from/to lower layer to grab or send files from/to peerspeers
Our SolutionOur Solution
AODV Routing Layer( and Discovery )
CarTorrent Application
ArchitectureArchitecture
RecvPacketThread
Client
ReceiveGossipThreadSendGossipThreadFileSplitter
RecvPacketThread
ListenThread
RecvPacketThread
CarTorrent File Manager
ComponentsComponents
Client:Client: A tabbed frame that encapsulates information A tabbed frame that encapsulates information
for subcomponentsfor subcomponents 3 tabs; share, download, and search3 tabs; share, download, and search
FileSplitter:FileSplitter: Splits a shared file into partsSplits a shared file into parts Combines downloaded parts into a fileCombines downloaded parts into a file
CarTorrent File Manager:CarTorrent File Manager: Keeps track of pieces of files from gossipsKeeps track of pieces of files from gossips Includes the algorithms to find rarest pieces, Includes the algorithms to find rarest pieces,
closest pieces, and rarest closest piecesclosest pieces, and rarest closest pieces
Components (cont.)Components (cont.)
SendGossipThread:SendGossipThread: A thread that sends gossip msgs periodicallyA thread that sends gossip msgs periodically Two types of gossips:Two types of gossips:
Gossips originated from itselfGossips originated from itself Gossips received from nearby neighborsGossips received from nearby neighbors
Gossips received from nearby neighbors are sent based Gossips received from nearby neighbors are sent based on probabilities assigned to interesting and not on probabilities assigned to interesting and not interesting gossipsinteresting gossips
Gossips are interesting if client wants the fileGossips are interesting if client wants the file Gossips are not interesting if the client does notGossips are not interesting if the client does not
ReceiveGossipThread:ReceiveGossipThread: A thread that unblocks when receiving a gossipA thread that unblocks when receiving a gossip Discards the gossip if from itself else queues the gossipDiscards the gossip if from itself else queues the gossip Gossips are sent to CarTorrent File Manager for managingGossips are sent to CarTorrent File Manager for managing
Components (cont.)Components (cont.)
ListenThread:ListenThread: Listens for incoming download requestListens for incoming download request Spawns a RecvPacketThread to process Spawns a RecvPacketThread to process
incoming packetsincoming packets RecvPacketThread:RecvPacketThread:
Processes the incoming packets based on Processes the incoming packets based on packet typepacket type
If packet type == DATA_REQ, send parts that If packet type == DATA_REQ, send parts that are requestedare requested
If packet type == DATA, write the data to the If packet type == DATA, write the data to the local file-system and combine it if all parts local file-system and combine it if all parts have been receivedhave been received
Implementation DetailsImplementation Details
AODV based on open-source Linux AODV based on open-source Linux implementation from Uppsala implementation from Uppsala University in the NetherlandsUniversity in the Netherlands
CarTorrent layer written in Java with CarTorrent layer written in Java with a GUI interface to a GUI interface to browse/share/download filesbrowse/share/download files
Choosing the peer for the fileChoosing the peer for the file
Rarest-Closest First Strategy Rarest-Closest First Strategy Download the rarest piece from the Download the rarest piece from the
closest peerclosest peerAnalyzed to be better than the Analyzed to be better than the
conventional Bit-Torrent rarest piece conventional Bit-Torrent rarest piece only without worrying about only without worrying about proximity of peers [1]proximity of peers [1]
DemoDemo
Series of pictures demonstrating the Series of pictures demonstrating the sharing of a picture file from one sharing of a picture file from one source to two clientssource to two clients
Three laptops( two running Linux, Three laptops( two running Linux, one with Windows)one with Windows)
If you are interested in seeing the If you are interested in seeing the live demo, do drop by BH4681 live demo, do drop by BH4681
The nodesThe nodes
10.0.0.4 10.0.0.5
Let’s share this fileLet’s share this file
10.0.0.4
Sharing the fileSharing the file
10.0.0.4
Sharing the fileSharing the file
10.0.0.4
Browsing the shared fileBrowsing the shared file
10.0.0.5
Downloading the fileDownloading the file
10.0.0.5
View the downloaded filesView the downloaded files
10.0.0.5
Rate(Mbps)
Future WorkFuture Work
Variable piece length to adapt to client’s Variable piece length to adapt to client’s bandwidthbandwidth
Test in environments with larger distances Test in environments with larger distances between nodes (true multi-hop)between nodes (true multi-hop)
Add a mechanism to detect the absence of Add a mechanism to detect the absence of a file in the network by either:a file in the network by either: expiring file pieces (after no gossips)expiring file pieces (after no gossips) sending out explicit leaving gossip msgssending out explicit leaving gossip msgs
Being able to identify failed transfers and Being able to identify failed transfers and get same file piece(s) from other nodesget same file piece(s) from other nodes
ConclusionConclusion
Implementation of Car Torrent and Implementation of Car Torrent and tested on a real 802.11 ad-hoc tested on a real 802.11 ad-hoc platformplatform
Simple GUI interface simulates what Simple GUI interface simulates what the real system can bethe real system can be
Java implementation means that the Java implementation means that the system can be deployed cross-system can be deployed cross-platformplatform
Related WorkRelated Work
Vehicular Sensor NetworksVehicular Sensor NetworksCarTel : MIT CarTel : MIT MobEyes : UCLA MobEyes : UCLA
SPAWN : UCLASPAWN : UCLAScalable co-operative downloading of Scalable co-operative downloading of
data among vehiclesdata among vehicles
ReferencesReferences
[1] A. Nandan, S. Das, G. Pau M.Y. [1] A. Nandan, S. Das, G. Pau M.Y. Sanadidi and M. Gerla. “Cooperative Sanadidi and M. Gerla. “Cooperative Downloading in Vehicular Ad-hoc Downloading in Vehicular Ad-hoc Wireless Networks”.Wireless Networks”.
[2] Sundaram Rajagopalan and Chien-[2] Sundaram Rajagopalan and Chien-Chung Shen. “A Cross-layer Chung Shen. “A Cross-layer Decentralized BitTorrent for Mobile Decentralized BitTorrent for Mobile Ad hoc Networks”.Ad hoc Networks”.
Question & AnswerQuestion & Answer
??