DOI: 10.5281/zenodo.7509280
title: Dataset of IEEE 802.11 probe requests from an uncontrolled urban environment

description: <strong>Introduction</strong> The 802.11 standard includes several management features and corresponding frame types. One of them are Probe Requests (PR), which are sent by mobile devices in an unassociated state to scan the nearby area for existing wireless networks. The frame part of PRs consists of variable-length fields, called Information Elements (IE), which represent the capabilities of a mobile device, such as supported data rates. This dataset contains PRs collected over a seven-day period by four gateway devices in an uncontrolled urban environment in the city of Catania. It can be used for various use cases, e.g., analyzing MAC randomization, determining the number of people in a given location at a given time or in different time periods, analyzing trends in population movement (streets, shopping malls, etc.) in different time periods, etc. <strong> Related dataset</strong> Same authors also produced the Labeled dataset of IEEE 802.11 probe requests with same data layout and recording equipment. <br> <strong>Measurement setup</strong> The system for collecting PRs consists of a Raspberry Pi 4 (RPi) with an additional WiFi dongle to capture WiFi signal traffic in monitoring mode (gateway device).<br> Passive PR monitoring is performed by listening to 802.11 traffic and filtering out PR packets on a single WiFi channel. The following information about each received PR is collected:<br> - MAC address<br> - Supported data rates<br> - extended supported rates<br> - HT capabilities<br> - extended capabilities<br> - data under extended tag and vendor specific tag<br> - interworking<br> - VHT capabilities<br> - RSSI<br> - SSID<br> - timestamp when PR was received. The collected data was forwarded to a remote database via a secure VPN connection.<br> A Python script was written using the Pyshark package to collect, preprocess, and transmit the data. <br> <strong>Data preprocessing</strong> <br> The gateway collects PRs for each successive predefined scan interval (10 seconds). During this interval, the data is preprocessed before being transmitted to the database.<br> For each detected PR in the scan interval, the IEs fields are saved in the following JSON structure: <pre><code class="language-json">PR_IE_data = { 'DATA_RTS': {'SUPP': DATA_supp , 'EXT': DATA_ext}, 'HT_CAP': DATA_htcap, 'EXT_CAP': {'length': DATA_len, 'data': DATA_extcap}, 'VHT_CAP': DATA_vhtcap, 'INTERWORKING': DATA_inter, 'EXT_TAG': {'ID_1': DATA_1_ext, 'ID_2': DATA_2_ext ...}, 'VENDOR_SPEC': {VENDOR_1:{ 'ID_1': DATA_1_vendor1, 'ID_2': DATA_2_vendor1 ...}, VENDOR_2:{ 'ID_1': DATA_1_vendor2, 'ID_2': DATA_2_vendor2 ...} ...} }</code></pre> <br> Supported data rates and extended supported rates are represented as arrays of values that encode information about the rates supported by a mobile device. The rest of the IEs data is represented in hexadecimal format. Vendor Specific Tag is structured differently than the other IEs. This field can contain multiple vendor IDs with multiple data IDs with corresponding data. Similarly, the extended tag can contain multiple data IDs with corresponding data. <br> Missing IE fields in the captured PR are not included in <em>PR_IE_DATA</em>. When a new MAC address is detected in the current scan time interval, the data from PR is stored in the following structure: <pre><code class="language-json">{'MAC': MAC_address, 'SSIDs': [ SSID ], 'PROBE_REQs': [PR_data] },</code></pre> where <em>PR_data</em> is structured as follows: <pre><code class="language-json">{ 'TIME': [ DATA_time ], 'RSSI': [ DATA_rssi ], 'DATA': PR_IE_data }.</code></pre> This data structure allows to store only 'TOA' and 'RSSI' for all PRs originating from the same MAC address and containing the same 'PR_IE_data'. All SSIDs from the same MAC address are also stored.<br> The data of the newly detected PR is compared with the already stored data of the same MAC in the current scan time interval.<br> If identical PR's IE data from the same MAC address is already stored, only data for the keys 'TIME' and 'RSSI' are appended.<br> If identical PR's IE data from the same MAC address has not yet been received, then the PR_data structure of the new PR for that MAC address is appended to the 'PROBE_REQs' key.<br> The preprocessing procedure is shown in Figure ./Figures/Preprocessing_procedure.png At the end of each scan time interval, all processed data is sent to the database along with additional metadata about the collected data, such as the serial number of the wireless gateway and the timestamps for the start and end of the scan. For an example of a single PR capture, see the <em>Single_PR_capture_example.json</em> file. <br> <strong>Folder structure</strong> For ease of processing of the data, the dataset is divided into 7 folders, each containing a 24-hour period.<br> Each folder contains four files, each containing samples from that device. The folders are named after the start and end time (in UTC).<br> For example, the folder [2022-09-22T22-00-00_2022-09-23T22-00-00](2022-09-22T22-00-00_2022-09-23T22-00-00) contains samples collected between <em>23th of September 2022 00:00 local time</em>, until <em>24th of September 2022 00:00</em> local time. Files representing their location via mapping:<br> - 1.json -&gt; location 1<br> - 2.json -&gt; location 2<br> - 3.json -&gt; location 3<br> - 4.json -&gt; location 4 <strong>Environments description</strong> The measurements were carried out in the city of Catania, in Piazza Università and Piazza del Duomo<br> The gateway devices (rPIs with WiFi dongle) were set up and gathering data before the start time of this dataset.<br> As of September 23, 2022, the devices were placed in their final configuration and personally checked for correctness of installation and data status of the entire data collection system.<br> Devices were connected either to a nearby Ethernet outlet or via WiFi to the access point provided. Four Raspbery Pi-s were used:<br> - location 1 -&gt; Piazza del Duomo - Chierici building (balcony near Fontana dell’Amenano)<br> - location 2 -&gt; southernmost window in the building of Via Etnea near Piazza del Duomo<br> - location 3 -&gt; nothernmost window in the building of Via Etnea near Piazza Università<br> - location 4 -&gt; first window top the right of the entrance of the University of Catania Locations were suggested by the authors and adjusted during deployment based on physical constraints (locations of electrical outlets or internet access)<br> Under ideal circumstances, the locations of the devices and their coverage area would cover both squares and the part of Via Etna between them, with a partial overlap of signal detection. The locations of the gateways are shown in Figure ./Figures/catania.png. <strong>Known dataset shortcomings</strong> Due to technical and physical limitations, the dataset contains some identified deficiencies. PRs are collected and transmitted in 10-second chunks.<br> Due to the limited capabilites of the recording devices, some time (in the range of seconds) may not be accounted for between chunks if the transmission of the previous packet took too long or an unexpected error occurred. Every 20 minutes the service is restarted on the recording device.<br> This is a workaround for undefined behavior of the USB WiFi dongle, which can no longer respond.<br> For this reason, up to 20 seconds of data will not be recorded in each 20-minute period. The devices had a scheduled reboot at 4:00 each day which is shown as missing data of up to a few minutes. <strong> Location 1 - Piazza del Duomo - Chierici</strong> The gateway device (rPi) is located on the second floor balcony and is hardwired to the Ethernet port. This device appears to function stably throughout the data collection period.<br> Its location is constant and is not disturbed, dataset seems to have complete coverage. <strong>Location 2 - Via Etnea - Piazza del Duomo</strong> The device is located inside the building.<br> During working hours (approximately 9:00-17:00), the device was placed on the windowsill. However, the movement of the device cannot be confirmed.<br> As the device was moved back and forth, power outages and internet connection issues occurred.<br> The last three days in the record contain no PRs from this location. <strong> Location 3 - Via Etnea - Piazza Università</strong> Similar to Location 2, the device is placed on the windowsill and moved around by people working in the building.<br> Similar behavior is also observed, e.g., it is placed on the windowsill and moved inside a thick wall when no people are present.<br> This device appears to have been collecting data throughout the whole dataset period.<br> <br> <strong> Location 4 - Piazza Università</strong> This location is wirelessly connected to the access point.<br> The device was placed statically on a windowsill overlooking the square.<br> Due to physical limitations, the device had lost power several times during the deployment.<br> The internet connection was also interrupted sporadically. <strong>Recognitions</strong> The data was collected within the scope of Resiloc project with the help of City of Catania and project partners.