IP Library Granted Patent US 9,596,567
Granted Patent B2
US 9,596,567 · App. 14/805,247 · Granted Mar 14, 2017

Determining a location of a target wireless device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,596,567
App. No.
14/805,247
Granted
Mar 14, 2017
Kind
B2
Abstract

Various techniques and systems are provided for determining a location of a target wireless device. Specifically, various techniques and systems are provided for determining a location of a wireless device using timestamps assigned to communications transmitted between the wireless device and one or more other wireless devices on a same WiFi channel as the wireless device. Implementations describe devices, computer-program products, and methods including transmitting a beacon frame by a network device on a channel of a radio frequency band, receiving a first frame that corresponds to the client device, assigning a first timestamp to the first frame, transmitting a second frame in response to the client device communication, assigning a second timestamp to the second frame, determining a time difference between the first timestamp and the second timestamp, receiving an alternative time difference corresponding to an alternative network device on the channel, and determining a location of the client device using the time difference and the alternative time difference.

Claims (52)

1. A computer-implemented method, comprising:

transmitting a beacon frame by a network device on a channel of a radio frequency band, wherein the beacon frame facilitates a client device connecting to the channel, and wherein the client device is associated with the network device;

receiving a first frame that corresponds to the client device;

assigning a first timestamp to the first frame, wherein the first timestamp includes a time that the first frame is received at the network device;

transmitting a second frame to an access point in response to the client device communication;

assigning a second timestamp to the second frame, wherein the second timestamp includes a time that the network device transmits the second frame; determining a time difference between the first timestamp and the second timestamp;

receiving an alternative time difference corresponding to the access point on the channel, wherein the alternative time difference is based on a time that the access point received the first frame and a time that the access point received the second frame; and

determining a location of the client device using the time difference and the alternative time difference.

2. The method of claim 1 , further comprising:

receiving a second alternative time difference corresponding to a second alternative access point on the channel, wherein the second alternative time difference is based on a time that the second access point receives the first frame and a time that the second access point receives the second frame; and

determining a location of the client device using the time difference, the alternative time difference, and the second alternative time difference.

3. The method of claim 1 , further comprising:

transmitting, by the network device, channel information corresponding to the channel, wherein the channel information facilitates the access point connecting to the channel.

4. The method of claim 1 , further comprising:

determining that the network device and the access point are connected to the same channel.

5. The method of claim 1 , wherein the client device is in sleep mode, and

transmitting the beacon frame facilitates removing the client device from sleep mode.

6. The method of claim 1 , further comprising:

transmitting a location query including the time difference and the alternative time difference; and

receiving a response to the location query including a location of the client device.

7. The method of claim 1 , wherein the first frame includes an indication that the client device is connected to the channel.

8. A network device, comprising:

one or more processors;

a non-transitory computer-readable medium containing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

receiving a first frame that corresponds to the client device;

assigning a first timestamp to the first frame, wherein the first timestamp includes a time that the first frame is received at the network device;

transmitting, to an access point, a second frame in response to the client device communication;

assigning a second timestamp to the second frame, wherein the second timestamp includes a time that the network device transmits the second frame;

determining a time difference between the first timestamp and the second timestamp;

receiving an alternative time difference corresponding to the access point on the channel, wherein the alternative time difference is based on an a time that the access point received the first frame and a time that the access point received the second frame; and

determining a location of the client device using the time difference and the alternative time difference.

9. The network device of claim 8 , further comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

receiving a second alternative time difference corresponding to a second

access point on the channel, wherein the second alternative time difference is based on a time that the second access point receives the first frame and a time that the second access point receives the second frame; and

determining a location of the client device using the time difference, the alternative time difference, and the second alternative time difference.

10. The network device of claim 8 , further comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

transmitting, by the network device, channel information corresponding to the channel, wherein the channel information facilitates the access point connecting to the channel.

11. The network device of claim 8 , further comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

determining that the network device and the access point are connected to the same channel.

12. The network device of claim 8 , wherein the client device is in sleep mode,

and transmitting the beacon frame facilitates removing the client device from sleep mode.

13. The network device of claim 8 , further comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

transmitting a location query including the time difference and the alternative time difference; and receiving a response to the location query including a location of the client device.

14. The network device of claim 8 , wherein the first frame includes an indication that the client device is connected to the channel.

15. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium of a computing device, including instructions that, when executed by one or more processors, cause the one or more processors to:

receive a first frame that corresponds to the client device;

assign a first timestamp to the first frame, wherein the first timestamp includes a time that the first frame is received at the network device;

transmit, to an access point, a second frame in response to the client device communication;

assign a second timestamp to the second frame, wherein the second timestamp includes a time that the network device transmits the second frame;

determine a time difference between the first timestamp and the second timestamp;

receive an alternative time difference corresponding to the access point on the channel, wherein the alternative time difference is based on an a time that the access point received the first frame and a time that the access point received the second frame; and

determine a location of the client device using the time difference and the alternative time difference.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2018
From: ARUBA NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 045921/0055 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2015
From: THORNYCROFT, PETER; CASTAGNOLI, NEAL; BHANAGE, GAUTAM
To: ARUBA NETWORKS, INC.
Reel/Frame 036151/0524 →