IP Library Granted Patent US 9,408,140
Granted Patent B2
US 9,408,140 · App. 13/733,786 · Granted Aug 2, 2016

Using proximate access points to ensure fast Wi-Fi network discovery and reconnection with reduced power consumption

Inventors: Songkran Vatanapanpilas (Santa Clara, CA); Naresh Kumar Chinnathambi Kailasam (Sunnyvale, CA)
Assignee: Apple Inc.
H04W48/20H04W64/00H04W84/12Y02B60/50
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,408,140
App. No.
13/733,786
Granted
Aug 2, 2016
Kind
B2
Abstract

One embodiment of the present invention provides a portable device, which is configured to join a known Wi-Fi network. While the device is not associated with a known access point, the device scans for access points at a scanning frequency wherein information about known access points has been stored in a database in the device. During this scanning process, the device determines whether the device is proximate to a known access point and the device sets the device's scanning frequency based on whether the device is proximate to a known access point.

Claims (96)

1. A portable device, comprising:

an antenna;

a wireless local area network (WLAN) transceiver coupled to the antenna;

an interface circuit, coupled to the WLAN transceiver, the interface circuit configured to communicate with other electronic devices through the WLAN transceiver;

storage hardware for storing a database of access point information; and

control logic associated with the interface circuit, wherein the control logic is configured to perform the following operations:

while the portable device is not associated with a known access point, scanning for access points at a scanning frequency, wherein information about known access points is stored in the database;

during the scanning process, determining whether the portable device is proximate to a known access point, wherein the portable device is proximate to a known access point when an in-range access point neighbors another access point that is at least one hop away from a known access point; and

setting the scanning frequency based on whether the portable device is proximate to a known access point.

2. The portable device of claim 1 , wherein the control logic is further configured to:

when the portable device associates with an access point for a WLAN, storing information about the access point in the database;

wherein the information indicates that the access point is a known access point.

3. The portable device of claim 1 , wherein the portable device is proximate to a known access point when an in-range access point is a known access point.

4. The portable device of claim 1 , wherein the portable device is proximate to a known access point when an in-range access point neighbors a known access point.

5. The portable device of claim 1 , wherein the control logic is configured to scan for access points to add to the database, the scanning comprising:

acquiring responses from access points;

if the responses include a response from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the known access point's BSSID; and

indicates that the in-range access point is proximate to a known access point; and

if the responses do not include a response from a known access point but include a response from an access point that is at least one hop away from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the BSSID of the access point that is at least one hop away from the known access point; and

indicates that the in-range access point is a proximate access point.

6. The portable device of claim 5 , wherein scanning for access points to add to the database comprises:

broadcasting probe requests over a set of WLAN channels; and

receiving probe responses from in-range access points.

7. The portable device of claim 6 , wherein the set of WLAN channels comprises WLAN channels which conform to the IEEE 802.11 standard.

8. The portable device of claim 1 , wherein setting the scanning frequency in accordance with whether the portable device is proximate to a known access point comprises:

if the portable device is proximate to a known access point:

restoring the scanning frequency to an initial scanning frequency f initial ; and

setting a counter to 0; and

if the portable device is not proximate to a known access point and the scanning frequency is greater than a minimum scanning frequency f min :

if the counter is equal to an integer c:

reducing the scanning frequency; and

setting the counter to 0; and

if the counter is less than c, incrementing the counter.

9. The portable device of claim 8 , wherein f initial , f min , and c depend on h.

10. A computer-implemented method for searching for and associating with a wireless access point for a wireless local area network (WLAN), the method comprising:

while a portable device is not associated with a known access point, scanning for access points at a scanning frequency, wherein information about known access points is stored in a database in the portable device;

during the scanning process, determining whether the portable device is proximate to a known access point, wherein the portable device is proximate to a known access point when an in-range access point neighbors another access point that is at least one hop away from a known access point; and

setting the scanning frequency based on whether the portable device is proximate to a known access point.

11. The computer-implemented method of claim 10 , further comprising:

when the portable device associates with an access point for a WLAN, storing information about the access point in the database;

wherein the information indicates that the access point is a known access point for the WLAN.

12. The computer-implemented method of claim 10 , wherein the portable device is proximate to a known access point when an in-range access point is a known access point.

13. The computer-implemented method of claim 10 , wherein the portable device is proximate to a known access point when an in-range access point neighbors a known access point.

14. The computer-implemented method of claim 10 , further comprising scanning for access points to add to the database, the scanning comprising:

acquiring responses from access points;

if the responses include a response from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the known access point's BSSID; and

indicates that the in-range access point is proximate to a known access point; and

if the responses do not include a response from a known access point but include a response from an access point that is less than h hopsat least one hop away from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the BSSID of the access point that is at least one hop away from the known access point; and

indicates that the in-range access point is a proximate access point.

15. The computer-implemented method of claim 14 , wherein scanning for access points to add to the database comprises:

broadcasting probe requests over a set of WLAN channels; and

receiving probe responses from in-range access points.

16. The computer-implemented method of claim 15 , wherein the set of WLAN channels comprises WLAN channels which conform to the IEEE 802.11 standard.

17. The computer-implemented method of claim 10 , wherein setting the scanning frequency in accordance with whether the portable device is proximate to a known access point comprises:

if the portable device is proximate to a known access point:

restoring the scanning frequency to an initial scanning frequency f initial ; and

setting a counter to 0; and

if the portable device is not proximate to a known access point and the scanning frequency is greater than a minimum scanning frequency f min :

if the counter is equal to an integer c:

reducing the scanning frequency; and

setting the counter to 0; and

if the counter is less than c, incrementing the counter.

18. The computer-implemented method of claim 17 , wherein f initial , f min , and c depend on h.

19. A non-transitory computer-program product for use in conjunction with a computer system, the computer-program product comprising a computer-readable storage medium and a computer-program mechanism embedded therein for configuring the computer system to search for and associate with a wireless access point for a wireless local area network (WLAN), the computer-program mechanism including:

instructions for, while the portable device is not associated with a known access point, scanning for access points at a scanning frequency, wherein information about known access points is stored in a database in the portable device;

instructions for, during the scanning process, determining whether the portable device is proximate to a known access point, wherein the portable device is proximate to a known access point when an in-range access point neighbors another access point that is at least one hop away from a known access point; and

instructions for, setting the scanning frequency based on whether the portable device is proximate to a known access point, the setting comprising configuring the scanning frequency to conserve battery power but enable timely association with in-range known access points.

20. The computer-program product of claim 19 , wherein the computer-program mechanism further includes:

instructions for, when the portable device associates with an access point for a WLAN, storing information about the access point in the database;

wherein the information indicates that the access point is a known access point for the WLAN.

21. The computer program product of claim 20 , wherein the portable device is proximate to a known access point when an in-range access point is a known access point.

22. The computer program product of claim 20 , wherein the portable device is proximate to a known access point when an in-range access point neighbors a known access point.

23. The computer program product of claim 20 , wherein the computer-program mechanism further includes instructions for scanning for access points to add to the database, the scanning comprising:

acquiring responses from access points;

if the responses include a response from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the known access point's BSSID; and

indicates that the in-range access point is proximate to a known access point; and

if the responses do not include a response from a known access point but include a response from an access point that is at least one hop away from a known access point:

for any other in-range access point that responds:

storing or updating information for the in-range access point in the database, wherein the information:

includes the BSSID of the access point that is at least one hop away from the known access point; and

indicates that the in-range access point is a proximate access point.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2013
From: VATANAPANPILAS, SONGKRAN; KAILASAM, NARESH KUMAR CHINNATHAMBI
To: APPLE INC.
Reel/Frame 029611/0809 →
Continuity (1)
Related Publication 20140185599A1 · Jul 3, 2014