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?
?