P14-WiFiUsabilityMapper

Download Report

Transcript P14-WiFiUsabilityMapper

WIFI USABILITY
Reg Arvidson
Idea



Track signal variances throughout the day
Get a feel for the “usability” of a WiFi access point
(or location)
Present this as a map to easily spot “lagging” areas
Implementation



Create a client program to collect WiFi/GPS data
and submit to a server
Server catalogues data into a database while
waiting to serve map requests
Clients can request a map from the server showing
WiFi data for GPS points
High-Level Architectural View
Client
GPS
Server
WiFi
GPS/WiFi Data
Map!
If it was only that easy…
Client View (Data Collection)
GPS Serial Data
COM_Access
GPS_Parser
WiFiGPSDataUnit
WiFi Signal Data
WLAN_Access
cURL
Internet
Server View (Data Collection)
Internet
Apache Web Server
postdata.php
MySQL Database
Server View (Data Service)
Internet
Apache Web Server
index.php
testdisp.php
kml.kml
MySQL Database
Client View (Data Service)
Your favorite web browser!
http://shyguy2.mine.nu
Or Google Earth…
http://shyguy2.mine.nu/kml.kml
Internet
Data Collection






Flag a GPS fix if at least 3 satellites in view
Utilize fix data to time 5 second intervals
If fix, poll WiFi interface for access points
Tag SSID and signal strength to GPS fix
If internet available, submit data, else store for
later!
Runs in background, works even when using any
access point or the Internet
cURL Library

Created a URL to pass data to PHP script
 http://shyguy2.mine.nu/postdata.php?datetime=1234
&lon=-84.5675&lat=23.4326&ssid=UCF&sig=23...


cURL library allows easy usage of GET
If GET fails then we leave data in buffer and try
again later
Data Buffering



A cURL failed GET leaves data in a buffer
Allows roaming off the network, across town, local
pub, etc
Upon reconnecting with friendly access point will
push data to server
Displaying Mapped Data




Going to homepage, index.php, triggers creation of
KML file, kml.kml through use of testdisp.php, with
all collected data from MySQL database
Automatically loads map using this freshly created
KML file
Mapped data shows signal strength of SSID tagged
to a GPS point, marker colors reflect signal strength
Can also load KML into Google Earth for a much
more interactive view
Problems

Laptop Died
 Created
new database
 Recovery of project files
 Rebuilt for new target machines
 Recollection of data

Lack of data (due to stated death)
Improvements

Can easily add additional data in minutes
 Security

Better data transfer method
 Direct

algorithm (if used), for example
connection to SQL server for instance
DATA DATA DATA DATA DATA
Questions?
?