View
217
Download
0
Tags:
Embed Size (px)
Citation preview
Outline
• Problem Statement• Measurement Setup
– Hardware– Software
• Experiments• Simulation• Conclusion
Problem Statement• Recently, in PerCom’07, we have describe the possibility
of Bluetooth-based content sharing– Sharing small size audio/video ad files (<10MB)– Through digital billboards on the street with BT-APs. – Motivation
• High penetration rate of Bluetooth devices (cell phones and PDA) – energy efficient
• Mobile user must go/stop/wait for full download • The bandwidth of AP is limited• The server range of AP is short (less than 10 meters)• Due to obstacles (humans), channel is error-prone
– Goal: provide an “effective” content sharing mechanism for Bluetooth users
Measurement Setup- Hardware Part
• Laptops– Dell Latitude D610 Pentium M 770 (2.00GHz) 5
12MB RAM• PDA – iPaq 3870
– 206MHz StrongArm processor– 64MB RAM, 32MB Flash ROM– Built-in bluetooth – v1.1 CSR
• Bluetooth Dongles– http://www.holtmann.org/linux/bluetooth/featu
res.html– Belkin F8T003v – v1.1 CSR– Belkin F8T013V – v2.0EDR Broadcom– Belkin F8T012V – v2.0EDR Broadcom (Class 1)– Kensington 33348 – v2.0EDR Broadcom– Bluetake BT009Si – v1.2 – Silicon Wave
S/W specification
• Basic measurement tool– Platform: BlueZ v3.7, C language– Master:
• hci_inquiry() and discover peers• Check COD (class of device) of each peer• Try to connect a peer through L2CAP sockets• Send dummy data to the slave node
– Slave:• Initially, inquiry scan mode• Setup a server (listen) for a potential connection• If there’s a connection, start receiving data
S/W specification• P2P-Mode
– Two parts: peer discovery, connection– AP as a master node– Laptop/PDA periodically change their roles– Random role selection: 1) startup 2) after connection reset– Master: hci_inquiry() + connect() (How long?)– Slave: listen() (fixed)
TimeMASTER
Tperiod
hci_inquiry() Connect Listen (inq-scan)
CONNECT_TIMEOUT ACCEPT_TIMEOUT= T_inq_scan
T_inq
SLAVE MASTER SLAVE
Application Layer
Connect: if there’s a node to connect
S/W specification• Usage()
• -r role: master, slave, p2p• -d send size : size in bytes to send in each send api call (<64KB)• -o pageto : page timeout - 1 slot = 0.625 ms, eg : 8000 slots = 5000 ms• -s inquiry scan window/interval (unit=slot) e.g., 18:512 <=> 11ms:320ms • -p page scan window/interval (unit=slot) e.g., 18:512 <=> 11ms:320ms • -t packet type: DM3 DM5 DH3 DH5 HV2 HV3 EDR: 2-DH3 2DH5 3-DH3 3-DH5• -c class of device: 24bit Hex code: 3e0100• -i inquiry length (unit 1.28s): 5 <=> 5*1.28s• -a accept timeout (unit 1s): eg. 10s• -l log level: default (2) verborse, 1 concise
• Sample Data– INFO: Log level, timestamp, I(info), TPL, LQ, RSSI, AFH(2:non, 1:yes, 0:no)– DATA: Log level, timestamp, D(data), received data (for 0.5s), total data recei
ved so far– Ex)
• 1 1164157164.44 D 12000 9518400• 1 1164157164.48 I 2 136 0 2• 1 1164157164.73 I 2 137 0 2• 1 1164157165.6 D 12000 9530400
• With this program, we also need to use hcidump– hcidump data |grep dlen | awk '{"date +%s" | getline D; print D, $9; close("date +%s")}'
Experiment Setup
• Experiment #1– Ackerman union
• Experiment #2– Various places in UCLA
• BT Dongles (somehow all different chipmakers)– BT 1.1 CSR (class 2)– BT 1.2 Silicon Wave (class 2)– BT 2.0 Broadcom (class 1 & 2)
Experiment #1• Real environment test.
– Ackerman Union– Speed 1 m/s (5 meter marks)– Use stop-watch– BT 1.1 1.1– BT 2.0 2.0
master
slave
60M
Experiment #2• Distributed BT discovery
– Scan software cooperatively discover and connect peers passing by!
• usage: ./scan <mode:1/2> <inq len: n*1.28s>• mode 1: compact print, 2: verbose print• inq len: how man inquiries? (1.28s ea)
– ex) ./scan 1 8 • Log Format:
– Log, Timestamp, BDADDR, COD, LMP Version, Company #, Readable COD
• Example:– 1 6362.35 00:0F:DE:4B:5A:20 520204 1.1 37 Phone Cellular– 1 6363.64 00:0B:0D:0C:53:34 211112 1.2 11 - -– 1 6370.13 00:16:FE:90:77:F0 3e0100 2.0 10 Computer Uncategor
ized– 1 6371.33 00:02:C7:09:7E:23 120112 1.1 10 Computer Handheld– 1 6372.93 08:00:46:E0:17:C5 3e0100 1.2 10 Computer Uncategor
ized– 1 6373.30 00:0A:3A:53:27:28 211111 1.1 10 - -– 1 6373.48 D 00:0A:3A:53:27:28 211111 (D: Duplicated)
– Many devices allow to create connections w/o authentication.. (security implication..)
Experiment #2: Scanning Results
• Nov 29/30 scanning inside the campus– Bruin walk, student center (Ackerm
an), library• 402 distinct devices found• 75% (300 devices) allow connectio
ns – No authentication at all!!– General over various devices
• Bluetooth LMP version information was read from remote devices (after connection)– LMP version is almost equivalent t
o Bluetooth version• Makers: CSR, Broadcom, Philips, T
I, Qualcomm, Silicon Wave, Errison, Nokia
BT LMP version distribution
Design/Implementation of BT
• Data sharing with coding schemes– Network coding– Rateless coding (digital fountain)
• Energy-efficient P2P mode– Initially nodes are all scan mode (slave)– APs are all MASTERS. – Nodes in scan mode can be connected to the AP, and they turn o
n P2P mode• These P2P nodes can in turn activate other peers
– Inquiry/Scan intervals are dynamically adjusted if there’s not enough contacts
• i.e., less contacts, more inquiry scan (slave)– Thus, P2P mode is only activated nearby AP (i.e., social orbit-styl
e; or bazaar concept)
Simulations- Protocol setting
• Inquiry– Every Bluetooth Node has a alternately do inquiry and
inquiry scan– AP always do inquiry
• Connection– When Inquiry node founds the other node, it connects
found node– Inquiry node becomes master node and inquiry scan
node becomes slave node– If connection is not helpful (there is no data to transfer
for both direction), master disconnects connection– If connection is disconnected, master connects other
nodes which are detected by inquiry
Simulations- Protocol setting
• Data Transfer– Normal Data Transfer
• Exchange segment map (shows list of current segments)• make Helpful data list• Randomly choose one segment from Helpful data list
– Network Coding Data Transfer• Encode Code Block• Transfer Code Block• If received Code Block is helpful, decode received Code Block
– Rateless Coding Data Transfer• Encode Code Block beforehand• make Helpful data list• Randomly choose one segment from Helpful data list
• Disconnection
Conclusion
• We characterize and measure the Bluetooth-based content sharing system – Show that P2P in mobile environments is
feasible. (download several mega bytes for EDR, and 0.5M)
• We also showed that understanding characteristics of different BT versions and their compatibility is important
• To maximize the performance in a dynamic environment we presented/evaluated– Coding techniques– Adaptive p2p mode