WLAN Tracker (a.k.a. WBigBrother)

22
WLAN Tracker (a.k.a. WBigBrother) Can Komar Computer Engineering Department Bogazici University [email protected]

description

WLAN Tracker (a.k.a. WBigBrother). Can Komar Computer Engineering Department Bogazici University [email protected]. Introduction. WLAN Tracker is a server-client system that is implemented in a combination of Java and C - PowerPoint PPT Presentation

Transcript of WLAN Tracker (a.k.a. WBigBrother)

Page 1: WLAN Tracker (a.k.a. WBigBrother)

WLAN Tracker(a.k.a. WBigBrother)

Can Komar

Computer Engineering Department

Bogazici University

[email protected]

Page 2: WLAN Tracker (a.k.a. WBigBrother)

Introduction

WLAN Tracker is a server-client system that is implemented in a combination of Java and C

It is designed to track the users in different physical areas in a multithreaded manner and provide location based services (messages etc.) to them

Page 3: WLAN Tracker (a.k.a. WBigBrother)

WLAN Tracker

Implemented in software, no extra hardware is used Components of the system

– Server: Collects and evaluates data

– Client: Sniffs the wireless medium and informs the server

– WAP: IEEE 802.11 compliant access points Basic Idea

– Every point on a surface has a different combination of signal levels received from different WAPs. Using this information a radio map of a surface can be prepared.

Server is implemented in pure Java thus platform independent. Client is implemented in C and Java due to driver dependency.

Page 4: WLAN Tracker (a.k.a. WBigBrother)

Phases

Off-Tracking: In this phase, the radio map is prepared. (Data Collection phase.)

On-Tracking: In this phase, the clients transmit information to the server and the server tries to estimate their location and show on a map.

Page 5: WLAN Tracker (a.k.a. WBigBrother)

Flowchart – Data Collection

Start

User ClicksCurrent Postion

on the Map

Probe PCMCIAdriver(C)

Write Data toText File

(C)

Read DataFrom File

(Java)

Store Read Data(Java)

ReachedSample Limit

Sleep forsome period

(Java)

Compute MeanValues of Data

(Java)

Write Coordinates,Access Point MACand Power Signalto RadioMap File

(Java)

NO YES

Page 6: WLAN Tracker (a.k.a. WBigBrother)

Flowchart – Client

Probe PCMCIADriver ( C )

Write Data toText File

Levels.TXT(Parametric)

Read DataFrom File( Java )

Send Dataover Sockets

(Java)

Receive LBS Dataover Sockets with

Timeout(Java)

Driver Layer(OS Specific)

DriverAbstraction

Layer

Client Layer(OS Independent)

Start

Start

Page 7: WLAN Tracker (a.k.a. WBigBrother)

Flowchart – Server

Listen Socketand Receive Data

Analyze Data andEstimate Location

Show Locationon the Map

Analyze LBSAvailability

Send LBSNotification

Start

Page 8: WLAN Tracker (a.k.a. WBigBrother)

Data Collection

The key point in WLAN Tracker. Has to be performed carefully in order to increase accuracy.

Records the WAP signal levels and WAP MAC with location information. The records are kept in a text file in form of <MAC, x, y, signal power>.

Off-the-tracking phase If the number of data points are increased,

the accuracy increases.

Page 9: WLAN Tracker (a.k.a. WBigBrother)

Client

Runs a Java process in the background.

Reads the configuration from a text file.– Server IP/port, magic key, retransmission

period etc. Uses UDP datagrams. Transmits

<MAC, signal power> to server.

Page 10: WLAN Tracker (a.k.a. WBigBrother)

Server – Tracking

Uses the data collected in the previous phase. Tries to estimate the location according to the data

sent by the client. Data is sent via UDP datagrams. Centralized server structure, the server displays all

available maps and manages them in separate threads.

The configuration and precollected radiomap data are read from text files.

Clients are tracked according to IP address. If configured, the clients that have static IP can be configured to have distinct labels.

Page 11: WLAN Tracker (a.k.a. WBigBrother)

Objective

Input

– { MACijk, Powerijk

, xi, yi }

– { MACm, Powerm }

Objective– Find xi, yi such that

• Minimize DistFunc({Powerijk, Powerm}) where

MACijk = MACm

Page 12: WLAN Tracker (a.k.a. WBigBrother)

Algorithm – 1/2

Find commonWAP# of the received data and the map’s WAP list. If commonWAP# > 0 reduce data, else discard data & wait next packet.

If enabled, apply minimum signal number filter. (at least that number of measurements are required)

Reduce the number of measurements according to their distance with current measurement.

Page 13: WLAN Tracker (a.k.a. WBigBrother)

Algorithm – 2/2

If enabled, apply history filter to the remaining measurement group.

If enabled, apply signal filter to the remaining measurement group.

If the size of remaining group, x :– x = 0, location cannot be found on this map– x = 1, update the position of the client on the map– x > 1, choose the one with the minimum distance

value, update the position of the client.

Page 14: WLAN Tracker (a.k.a. WBigBrother)

Testbed

ETA 1st, 2nd and 3rd floors 4 WAPs. At most 3 WAPs at a time. 30 equally separated measurement

points per floor.

Page 15: WLAN Tracker (a.k.a. WBigBrother)

Execution

Each tab is managed by a separate thread

Inactive clients are removed after timeout.

Client IPs are displayed as tool tip text.

Low CPU and memory consumption.

Page 16: WLAN Tracker (a.k.a. WBigBrother)

Experiments – Factors

The following factors are defined for experiments– Distance algorithm used (Manhattan or

Euclidian)– History filter on or off– Signal filter on or off– Number of signals received

Page 17: WLAN Tracker (a.k.a. WBigBrother)

Experiments – Current Results

An average of ~3m error in estimation Multiple floor problem generally can be

solved with signal power filter Effects of history filter and number of

WAPs are being studied.

Page 18: WLAN Tracker (a.k.a. WBigBrother)

Similar Studies & Products

RADAR (Microsoft Research)– Possible integration with Windows XP

PhD (CMU)– Integrated with Andrew system

ROVER (Maryland University) Ekahau Positioning Engine

– SW Industry Award 2002– Commercially available for $595

Page 19: WLAN Tracker (a.k.a. WBigBrother)

ROVER (MIND* Laboratory)

*Maryland Information and Network Dynamics

Aims specialized hardware that willBe able to perform many tasks includingGuidance, m-video, m-shopping etc.

Page 20: WLAN Tracker (a.k.a. WBigBrother)

Future Work

Improvement of location based services– Support for audio and video streaming– Location based messaging & chat– Buddy list notification

Integration with SIP protocol Porting to Windows CE / JME

environment Improvement of GUI

Page 21: WLAN Tracker (a.k.a. WBigBrother)

Possible Future Architecture

SIP

WLAN Tracker &SIP Client

WLAN TrackerServer SIP

Server

AuC StreamingServer

IM and/or Streaming

Page 22: WLAN Tracker (a.k.a. WBigBrother)

Thanks,

Comments & Questions ???