LoWS Lo cation-based W i-Fi S ervices A Complete Open Source - - PowerPoint PPT Presentation

lows
SMART_READER_LITE
LIVE PREVIEW

LoWS Lo cation-based W i-Fi S ervices A Complete Open Source - - PowerPoint PPT Presentation

LoWS Lo cation-based W i-Fi S ervices A Complete Open Source Solution for Wi-Fi Beacon Stuffing Based Location-based Services WMNC 2016 Sven Zehl , Niels Karowski, Anatolij Zubow and Adam Wolisz Telecommunication Networks Group Technische


slide-1
SLIDE 1

Telecommunication Networks Group Technische Universität Berlin

LoWS

Location-based Wi-Fi Services

A Complete Open Source Solution for Wi-Fi Beacon Stuffing Based Location-based Services

WMNC 2016 Sven Zehl, Niels Karowski, Anatolij Zubow and Adam Wolisz

slide-2
SLIDE 2

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 2

Motivation

 IEEE 802.11 is the standard technology for wireless

networks especially in providing wireless Internet access

 IEEE 802.11 Access Points are widely deployed

Source: gowex.com

slide-3
SLIDE 3

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 3

Motivation

 Access points are announcing their presence using IEEE

802.11 beacon frames

 IEEE 802.11 capable devices in the vicinity receive

these beacon frames

 To accelerate this process, clients can trigger the AP to

send out the information contained in the beacon frames immediately using IEEE 802.11 probe requests

slide-4
SLIDE 4

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 4

Motivation

 To accelerate the collection process, IEEE 802.11

clients can trigger the AP to send out the information contained in the IEEE 802.11 beacon frames immediately

slide-5
SLIDE 5

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 5

Motivation

 Beacon frames are built up using fixed length

parameters and variable length fields (tagged parameters)

 The variable length fields are called IEEE 802.11

information elements (IE) and are used e.g. for the SSID or the supported rates

 The IEEE 802.11 standard defines vendor-specific

information elements to transport custom data

slide-6
SLIDE 6

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 6

Motivation

 The term IEEE 802.11 beacon stuffing means to

embed additional information within beacon frames

 This enables to broadcast location-based information

from access points to clients without the need of:

 Clients to associate  Clients to have Internet access  Clients sharing their intents  New hardware on sender or receiver side

slide-7
SLIDE 7

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 7

Motivation - Example Scenarios

Location-based WiFi Services

slide-8
SLIDE 8

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 8

Motivation - Scenarios

 Emergency Propagation System

 Warn people in the emergency area and give them

instructions (fire emergency, shooting-rampage, earthquake, etc.)

slide-9
SLIDE 9

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 9

Motivation - Scenarios

 Physical service announcements and advertisements  Waiting ticket number broadcasting  Train-station or airport announcements

slide-10
SLIDE 10

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 10

The Location based WiFi Services System

Location-based WiFi Services

slide-11
SLIDE 11

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 11

The Location based WiFi Services System (LoWS System)

slide-12
SLIDE 12

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 12

The LoWS System – Global Codebook Approach

slide-13
SLIDE 13

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 13

The LoWS System – The Dichotomous Code

 Combining the global codebook approach and the

local codebook approach

 Divide the code in a location independent part (LIC,

global codebook) and a location dependent part (LDC, local codebook)

 Global codebooks are preinstalled in the LoWS

receiver applications, local codebooks are distributed via local codebook-servers and downloaded by the LoWS receiver application when a location is entered the first time

slide-14
SLIDE 14

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 14

The LoWS System – Global Address Server and Local Codebook Servers

slide-15
SLIDE 15

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 15

The LoWS System – LoWS Control Access Point Adapter Interface

 Considering the heterogeneity of the

 Wireless LAN architectures, e.g. an autonomous or a

centralized architecture

 Wireless LAN hardware, e.g. hardware from Cisco, Aerohive,

Huawei or OpenWRT based APs

 Embedding of additional data within beacon frames is

hardware specific

 LoWS Control Access Point Adapter Interface enables

to interoperate with different access point types by defining a uniform interface

 Designed an Access Point Adapter for OpenWRT

based APs (autonomous architecture) and Cisco lightweight APs (centralized architecture)

slide-16
SLIDE 16

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 16

The LoWS System Architecture

slide-17
SLIDE 17

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 17

The LoWS System Architecture

slide-18
SLIDE 18

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 18

The LoWS System Architecture

slide-19
SLIDE 19

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 19

The LoWS System Architecture

slide-20
SLIDE 20

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 20

Embedding additional Data in IEEE 802.11 Beacon Frames

Location-based WiFi Services

slide-21
SLIDE 21

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 21

Embedding Data in Beacons

Centralized WLAN Architecture: Cisco CAP-3502 AP

 Leader in IEEE 802.11

enterprise deployments

 APs are managed by

centralized controller using the CAPWAP protocol

 Proprietary software, no

modification possible

Autonomous WLAN Architecture: OpenWRT based AP

 Support of about 600 different

IEEE 802.11 autonomous APs from over 100 distinct vendors

 Open source Linux-based

  • perating system
slide-22
SLIDE 22

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 22

Embedding Data in Beacons - Cisco Access Points

 Cisco APs embed their hostname within every

broadcasted beacon frame within a special IE:

 Hostname of AP can be set via SNMP on the WLAN

controller.

 Enables the embedding of 15 ASCII characters

slide-23
SLIDE 23

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 23

Embedding Data in Beacons – OpenWRT based APs

 OpenWRT utilizes open source

access point software hostapd:

 hostapd can be controlled via

daemon hostapd_cli

 Patching of hostapd and

hostapd_cli enables adding of additional IE(s) to beacon frames during AP runtime

 OpenWRT supports radiotap frame

injection:

 Enables the sending of additional

beacon frames beside hostapd and setting of transmission rate for the broadcasted beacon frames

slide-24
SLIDE 24

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 24

Retrieving the additional embedded Information

Location-based WiFi Services

slide-25
SLIDE 25

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 25

Receiving the embedded Data – Enabling to retrieve IEEE 802.11 IE(s) without root access on Android

 Challenge: no solution exists that enables

the retrieval of information elements out of the Wi-Fi scan results without patching the

  • perating system or root privileges

 We enabled this possibility by combining

the Android WiFi API with direct driver communication via Netlink sockets

 Using the Android standard API to start a

new WiFi scan

 Sending Netlinks commands to driver to

retrieve the IEEE 802.11 scan results from kernel

slide-26
SLIDE 26

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 26

Prototype of the LoWS System

Location-based WiFi Services

slide-27
SLIDE 27

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 27

LoWS System Prototype

slide-28
SLIDE 28

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 28

LoWS System Prototype

slide-29
SLIDE 29

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 29

LoWS System Prototype

slide-30
SLIDE 30

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 30

LoWS System Prototype

 Implemented prototypes of the LoWS Control, the local

codebook-server and the global address-server using PHP and MySQL.

 Implemented the LoWS Receiver Application for

Android devices that can be used on COTS Android devices without root privileges.

 Implemented Access Point Adapter for OpenWRT based

APs and Cisco lightweight APs.

 Currently supported LoWS services:

 Beacon Emergency Propagation System  Physical Service Announcement  Waiting Ticket Number

slide-31
SLIDE 31

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 31

LoWS System Prototype Evaluation – Energy Consumption

  • f the LoWS Receiver Application

 LoWS receiver devices are mostly mobile devices that

are battery powered

 LoWS receiver application consists of a background

scan service which is executed periodically and therefore permanently consumes energy

 Evaluation of the energy consumption:

 Used IEEE 802.11 active scan energy consumption

estimation from Lin et. al 2010 for the energy consumption of the IEEE 802.11 hardware per scan

 Measured LoWS Background Scan Service energy

consumption using the Power Tutor application from the University of Michigan (Zhang et. al 2010)

slide-32
SLIDE 32

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 32

LoWS System Prototype – Energy Consumption Estimation

LBSS = LoWS Background Scan Service

slide-33
SLIDE 33

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 33

Conclusion

 Design and Implementation of the Location based WiFi

Services System (LoWS System) that supports:

 Utilization of already deployed sending COTS hardware  Easy integration of new sending hardware  Installation of the LoWS receiving application on COTS

Android devices

 Utilization of IEEE 802.11 Information Elements to transport

additional data broadcasted within beacon and probe response frames

 Supports the sending of predefined codes (Dichotomous

Code)

 LoWS prototype is published as open-source on Github:

https://github.com/lows

slide-34
SLIDE 34

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 34

Thank you!

https://github.com/lows

slide-35
SLIDE 35

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 35

BACKUP SLIDES

Flexible Information Broadcasting using Beacon Stuffing in IEEE 802.11 Networks

slide-36
SLIDE 36

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 36

The LoWS System – Global or Local Codebook Approach

 Global codebook approach

+ Only one codebook globally + Codebook can be preinstalled on all LoWS entities

  • No location-specific information

 Local codebook approach

+ Every location can include location details

  • Codebook must be downloaded for every location, Internet

access needed.

slide-37
SLIDE 37

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 37

Location-based WiFi Services Protocol

 Reduced LoWS frame format:

 Minimal amount of overhead (1byte service type, 2 bytes payload)  Transport of the dichotomous code

 Flexible LoWS frame format:

 Variable amount of payload  Transport of the dichotomous code as well as of other kinds of

data representations

 Additional features:

 Fragmentation  Authentication  Encryption

slide-38
SLIDE 38

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 38

LoWS Protocol – Reduced Frame Example

slide-39
SLIDE 39

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 39

LoWS Protocol Flexible Frame Example

slide-40
SLIDE 40

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 40

LoWS Protocol - Fragmentation

slide-41
SLIDE 41

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 41

LoWS Protocol - Security

slide-42
SLIDE 42

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 42

LoWS Protocol – Fragmentation and Security

slide-43
SLIDE 43

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 43

Possibilities to embed Information into Beacon Frames

 SSID Concatenation[1]

32 alphanumeric characters, no software modification

Problem: Embedded information appears as new Wi-Fi network

 BSSID Concatenation[1]

6 octets, requires driver modification on sender side

Problem: Small amount of data, problems with some receiver implementations

 Information Elements (IE)[1]

255 bytes per IE, multiple IEs per beacon, requires user-space modification on sender and receiver side

Problem: Increases length of beacon and needed air-time

 Length Field Overloading[2]

Up to 191 bits (23,8 bytes), requires driver modification on sender and receiver side

Problem: Small amount of data embedding, variable embedding lengths

slide-44
SLIDE 44

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 44

Structure of a IEEE 802.11 Beacon Frame

slide-45
SLIDE 45

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 45

IEEE 802.11 Information Element

slide-46
SLIDE 46

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 46

Beacon Emergency Propagation System (BEPS)

 Example reduced format of protocol  Using HASC emergency codes used in US hospitals

 Use first ASCII char for code, e.g. „R“ = RED for „fire,  Second ASCII for location specific instructions, e.g. „w“ for

„use west stairs to evacuate“

 Instructions can be made customizable by network

administrator (downloadable codebook mapped to MAC of access points)

Example:

  • „!“ type BEPS (0x21)
  • „R“ code red – fire

emergency (0x52)

  • „w“ – use west stairs

to evacuate (0x77)

slide-47
SLIDE 47

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 47

Embedding Data in Beacons - Cisco Access Points

 Managed by the CAPWAP protocol (RFC5415)

Source:d-jet.com

  • Control tunnel: Transport of CAPWAP control messages
  • Data tunnel: Transport of CAPWAP data (user-traffic)
  • AP setup e.g. beacon format and additional IEs can be

set via CAPWAP control messages (RFC 5416)

  • Problem: Control traffic is always encrypted via DTLS,

using manufacturer installed certificates (MICs) for symmetric key exchange

slide-48
SLIDE 48

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 48

Embedding Data in Beacons - Cisco Access Points

 The CCX Information Element

  • Cisco APs send their hostname inside every beacon frame
  • Enables the embedding of 15 ASCII characters
  • Problem: Hostname changing causes AP to de-authenticate all clients,

therefore solution is only suitable for information changes with low frequency or high priority

slide-49
SLIDE 49

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 49

Embedding Data in Beacons - Cisco Access Points

slide-50
SLIDE 50

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 50

Embedding Data in Beacons - OpenWRT Access Points

 Netlink Protocol and Hostapd

  • Access Point is controlled via hostapd,

which:

  • Can be controlled during runtime

via hostapd_cli

  • Handles probe request response

and initial beacon frame structure

  • Communicates with kernel via

Netlink sockets

  • Patching hostapd and hostapd_cli

enables adding of Information Elements during runtime to beacon frames and probe responses

slide-51
SLIDE 51

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 51

Embedding Data in Beacons - OpenWRT Access Points

 Radiotap Frame Injection

  • IEEE 802.11 beacon

frame injection via a monitor interface

  • Sending of

additional beacon frames beside hostapd

  • Enables setting of

the IEEE 802.11 transmission rate and therefore the control of the sending range

slide-52
SLIDE 52

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 52

Embedding Limitations

Cisco CAP-3502 AP

 15 ASCII characters are

available, but system administrator also needs hostname for identification

  • use only subset of hostname

 Recognition if location-based

information embedded into hostname

  • Use rarely used character for

signaling

 E.g. hostname:

AP2-EN-FL2^XXX^ (X=embedded information, ^=identifier)

OpenWRT based AP

 252 byte per vendor-specific

Information Element can be used

 Number of information

elements is restricted by maximum IEEE802.11 management frame body size (2320 Byte in theory)

 Recognition if vendor-specific

element belongs to our protocol

  • Use specific OUI field in IE,

that is not registered at IEEE, for identification

slide-53
SLIDE 53

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 53

Retrieving the additional embedded Information

Flexible Information Broadcasting using Beacon Stuffing in IEEE 802.11 Networks

slide-54
SLIDE 54

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 54

Receiving the embedded Data – Modification of the Android Standard Wifi API

Problem: The standard Android Wi-Fi API does not provide access to all Information Elements (IEs) inside beacon frames.

  • 1st solution: Modify WPA_Supplicant and Java

Native Interface (JNI) classes to deliver all IEs to user via the modified API Next problem: Patching of WPA Supplicant and the JNI classes needs a full new operating system installation

  • 2nd solution: Using Android native

development kit (NDK) and nl80211 library to start new Wi-Fi scan and to get all IEs from driver directly without WPA_Supplicant Remaining problem: Root-access is needed

slide-55
SLIDE 55

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 55

Receiving the embedded Data – Combine Standard Java API with native Netlink Communication

  • Using standard Wi-Fi API to start new Wi-Fi scan
  • Executing native Netlink communication to get

results from driver when „New Scan Results“ intent is received Problem solved!

  • All Information Elements are delivered to Java

Framework, no root needed, no operating system modification required

slide-56
SLIDE 56

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 56

Prototype of the LoWS System

Flexible Information Broadcasting using Beacon Stuffing in IEEE 802.11 Networks

slide-57
SLIDE 57

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 57

LoWS Android Application - Overview

slide-58
SLIDE 58

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 58

LoWS Control - Overview

slide-59
SLIDE 59

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 59

LoWS Control - Database

slide-60
SLIDE 60

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 60

Related Work

Flexible Information Broadcasting using Beacon Stuffing in IEEE 802.11 Networks

slide-61
SLIDE 61

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 61

Related Work – Client Pull based Approach and Server Push based Approach

slide-62
SLIDE 62

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 62

Related Work – Client Pull based Approaches (Selection)

ANQP = Access Network Query Protocol GAS = Generic Advertisement Service

slide-63
SLIDE 63

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 63

Related Work – Client Pull based Approaches (Selection)

ANQP = Access Network Query Protocol GAS = Generic Advertisement Service

slide-64
SLIDE 64

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 64

Related Work – Client Pull based Approaches (Selection)

ANQP = Access Network Query Protocol GAS = Generic Advertisement Service

slide-65
SLIDE 65

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 65

Related Work – Client Pull based Approaches (Selection)

ANQP = Access Network Query Protocol GAS = Generic Advertisement Service

slide-66
SLIDE 66

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 66

Related Work – Server Push based Approaches

 Additional information is

embedded within all IEEE 802.11 beacon and / or probe response frames:

 By utilizing the SSID field

(Chandra et. al 2007, Microsoft 2006, Pico Systems 2007)

 By utilizing the BSSID field

(Chandra et. al 2007, Microsoft 2006)

 By adding a custom data field

(IEEE 802.11 information element) (Chandra et. al 2007, Microsoft 2006, Samsung 2011)

 Special approaches:

 Length Field Overloading

(Gupta and Rohil 2012)

 Custom IEEE 802.11 Frame

(Wirtz et al. 2014)

slide-67
SLIDE 67

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 67

Related Work – Conclusion

 System architecture

 Server Push or Client Pull based approach

 Embedding technique (within beacon and/or probe

response frames)

 Exploiting the SSID field or a subset of it  Utilizing the BSSID field  Additional custom data field (IEEE 802.11 IE)  Length field overloading

 Encoding technique

 URL that points to the information  GAS or ANQP from IEEE 802.11u  Extensible Markup Language (XML)  Codes that can be decoded with predefined codebooks  Custom data format

slide-68
SLIDE 68

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 68

LoWS System Prototype Evaluation – Additional Channel Utilization

 Additional data in beacon and probe response frames

increases IEEE 802.11 channel utilization

 Calculated the additional channel utilization for:

 Cisco lightweight AP adapter (hostname embedding)  OpenWRT based AP adapter with additional IE within the

beacon and probe responses sent by hostapd (IEEE 802.11 rate is fixed to 1 Mbit/s)

 OpenWRT based AP adapter with beacon frame injection

beside hostapd (IEEE 802.11 rate can be adjusted, but additional data consists of one full IEEE 802.11 management frame)

 Respectively for a reduced LoWS protocol frame (5 bytes) and

a flexible LoWS protocol frame which utilizes a full IE (257 bytes)

slide-69
SLIDE 69

TKN

Telecommunication Networks Group

LoWS - WMNC 2016 69

LoWS System Prototype – Channel Utilization

hostname embedding within the Cisco IE additional IE embedded in beacons broadcasted by AP with 1 Mbit/s rate additional (injected) beacon frames with 1Mbit/s additional (injected) beacon frames with 54Mbit/s

N/A

Reduced LoWS (5 bytes), maximum flexible LoWS (one full vendor specific IE, 257 bytes)