# Patent

## Title
Power save schemes for access point solutions

## Abstract

Apparatus having corresponding computer-readable media comprise: a host device comprising a first network interface configured to communicate over a wired local-area network, and a first processor; and a wireless network device comprising a second network interface configured to communicate over a wireless local-area network, and a second processor configured to cause the second network interface to transmit IEEE 802.11 beacon frames and IEEE 802.11 probe response frames over the wireless local-area network without communicating with the first processor of the host device.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This disclosure claims the benefit of U.S. Provisional Patent Application Ser. No. 61/169,834, filed Apr. 16, 2009, the disclosure thereof incorporated by reference herein in its entirety.


BACKGROUND
The present disclosure relates generally to wireless network communications. More particularly, the present disclosure relates to techniques for conserving power in wireless access points.
SUMMARY
In general, in one aspect, an embodiment features an apparatus comprising: a host device comprising a first network interface configured to communicate over a wired local-area network, and a first processor; and a wireless network device comprising a second network interface configured to communicate over a wireless local-area network, and a second processor configured to cause the second network interface to transmit IEEE 802.11 beacon frames and IEEE 802.11 probe response frames over the wireless local-area network without communicating with the first processor of the host device.
Embodiments of the apparatus can include one or more of the following features. In some embodiments, the second processor is further configured to cause the first processor to authenticate, and to associate with, a wireless client responsive to the second network interface receiving an IEEE 802.11 authentication frame from the wireless client over the wireless local-area network. In some embodiments, the second processor is further configured to cause the first processor to leave a low-power mode responsive to the second network interface receiving the IEEE 802.11 authentication frame from the wireless client over the wireless local-area network; and the first processor authenticates, and associates with, the wireless client subsequent to leaving the low-power mode. In some embodiments, the first processor is further configured to exchange data frames with the wireless client over the wireless local-area network. In some embodiments, the second processor is further configured to cause the first processor to enter the low-power mode responsive to the second network interface receiving an IEEE 802.11 de-authentication frame from the wireless client over the wireless local-area network. In some embodiments, the second processor is further configured to exchange data frames with the wireless client over the wireless local-area network without communicating with the first processor. In some embodiments, the first processor is further configured to enter the low-power mode subsequent to the first processor authenticating, and associating with, the wireless client. In some embodiments, the second processor is further configured to authenticate, and to associate with, a wireless client, without communicating with the first processor, responsive to the second network interface receiving an IEEE 802.11 authentication frame from the wireless client over the wireless local-area network. In some embodiments, the second processor is further configured to exchange data frames with the wireless client over the wireless local-area network without communicating with the first processor. Some embodiments comprise a wireless access point comprising the apparatus.
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims.



DESCRIPTION OF DRAWINGS
FIG. 1 shows elements of a data communication system comprising a wireless access point in communication with a wireless network and a wired network according to one embodiment.
FIG. 2 illustrates a power-save mode according to a second embodiment.
FIG. 3 illustrates a power-save mode according to a third embodiment.
FIG. 4 illustrates a power-save mode according to a fourth embodiment.



The leading digit(s) of each reference numeral used in this specification indicates the number of the drawing in which the reference numeral first appears.
DETAILED DESCRIPTION
The subject matter of the present disclosure relates to wireless access points in wireless communication networks. Embodiments of the present disclosure provide elements of a wireless access point capable of conserving power during operation. Several power-save modes are disclosed.
FIG. 1 shows elements of a data communication system 100 comprising a wireless access point 102 in communication with a wireless network 106 and a wired network 108 according to one embodiment. Although in the described embodiments, the elements of wireless access point 102 are presented in one arrangement, other embodiments may feature other arrangements. For example, elements of wireless access point 102 can be implemented in hardware, software, or combinations thereof.
Also shown in FIG. 1 is a wireless client 110 in communication with network 106. For clarity, only one wireless client 110 is shown. However, it should be understood that any number of wireless clients 110 can be employed.
In the described embodiments, wireless network 106 is implemented as a wireless local-area network (WLAN), and wired network 108 is implemented as a local-area network (LAN). In addition, WLAN 106, wireless access point 102, and wireless client 110 are compliant with all or part of IEEE standard 802.11, including draft and approved amendments such as 802.11a, 802.11b, 802.11e, 802.11g, 802.11i, 802.11k, 802.11n, 802.11v, and 802.11w. However, the techniques disclosed herein apply to other, types of wireless networks and devices as well.
Wireless access point 102 includes a host device 112 and a wireless network device 114. Host device 112 communicates with wireless network device 114 over a peripheral bus 132. In various embodiments, peripheral bus 132 is implemented as a Peripheral Component Interconnect (PCI) bus, a Peripheral Component Interconnect Express (PCIe) bus, a Universal Serial Bus (USB), a Secure Digital Input Output (SDIO) bus, and the like. In some embodiments, wireless access point 102 includes multiple wireless network devices 114, each in communication with a respective WLAN 106. For example, wireless access point 102 can include two wireless network devices 114, one operating at 2.4 GHz, and the other operating at 5 GHz. However for clarity, only one wireless network device 114 is described.
Host device 112 includes a host processor 116, a host memory 118, a LAN interface (I/F) 120 configured to communicate over LAN 108, and a device interface 122 connected to peripheral bus 132. Wireless network device 114 includes a device processor 124, a device memory 126, a WLAN interface 128 configured to communicate over WLAN 106, and a host interface 130 connected to peripheral bus 132.
According to a first power-save mode, host device 112 is capable of placing wireless network device 114 into a low-power mode. For example, host processor 116 can issue a command to wireless network device 114 using in-band signaling over peripheral bus 132. Alternatively, out-of-band signaling can be used, for example such as a General Purpose Input/Output (GPIO) interface or the like. In response, device processor 124 places one or more elements of wireless network device 114 into a low-power mode, for example by reducing power (e.g., from a nominal value), or cutting power completely, to those elements. In embodiments having multiple wireless network devices 114, host device 112 can place each wireless network device 114 into to the low-power mode independently. Host device 112 can subsequently cause wireless network device 114 to leave the low-power mode, for example by issuing another command over peripheral bus 132. One advantage of this approach is that firmware in device memory 126 need not be reloaded after leaving the low-power mode. Alternatively, host device 112 can simply cut power to wireless network device 114. However, firmware must be reloaded into device memory 126 when power is restored to wireless network device 114.
According to other power-save modes, host device 112 can be placed in a low-power mode, where one or more elements of host device 112 are placed into a low-power mode, for example by cutting power to those elements. In some cases, wireless network device 114 causes host device 112 to enter and/or leave the low-power mode, for example using in-band signaling, out-of-band signaling, and the like. In other cases, host device 112 enters and/or leaves the low-power mode autonomously, for example according to levels of activity in host device 112.
According to a second power-save mode, discovery functionality on WLAN 106 is handled by wireless network device 114. Host device 112 can remain in low-power mode when no wireless clients are connected to wireless network device 114. When a wireless client attempts to connect, host device 112 leaves low-power mode to handle authentication, association, and data exchange.
FIG. 2 illustrates this second power-save mode according to one embodiment. Referring to FIG. 2, host device 112 enters low-power mode, either autonomously or in response to a command issued by wireless network device 114, as shown at 202. While host device 112 remains in low-power mode, wireless network device 114 handles beaconing and probes, as shown at 204. In particular, (in one embodiment) without communicating with host processor 116, device processor 124 causes WLAN interface 128 to transmit IEEE 802.11 beacon frames, and to transmit IEEE 802.11 probe response frames in response to received IEEE 802.11 probe request frames. In such an embodiment, host processor 116 is not required to perform any packet processing on frames—e.g., data frames, beacon frames, and/or probe request frames—transmitted through WLAN interface 128.
When a wireless client 110 wishes to exchange data frames with wireless access point 102, wireless client 110 transmits an IEEE 802.11 authentication frame, which is received by WLAN interface 128 of wireless access point 102, as shown at 206. In response to the authentication frame, device processor 124 causes host processor 116 to leave the low-power mode, as shown at 208, and to authenticate, and associate with, wireless client 110, as shown at 210. In particular, device processor 124 issues a command to host device 112 that causes host device to leave the low-power mode. After leaving the low-power mode, host processor 116 authenticates, and associates with, wireless client 110.
In this second power-save mode, host device 112 also handles the exchange of data frames with wireless clients 110. In particular, host processor 116 exchanges data frames with wireless client 110 over WLAN 106, as shown at 212.
When a wireless client 110 wishes to leave WLAN 106, that wireless client 110 transmits an IEEE 802.11 de-authentication frame, which is received by WLAN interface 128 of wireless access point 102, as shown at 214. In response to the de-authentication frame, device processor 124 causes host processor 116 to enter the low-power mode, as shown at 216. In particular, device processor 124 issues a command to host device 112 that causes host device to enter the low-power mode. Throughout this second power-save mode, wireless network device 114 continues to handle beaconing and probes over WLAN 106.
In some embodiments, other power-saving enhancements are implemented. For example, while host device 112 is in low-power mode, wireless network device 114 can operate in limited MIMO mode (for example employing 1×1 or 2×2 chains instead of 3×3) to save power. Wireless network device 114 switches to full MIMO mode when handling clients. This limited MIMO mode has a shorter range compared to full MIMO mode because only a subset of antennas is used for transmission. Therefore, beaconing can be done by alternating between antennas in order to avoid bad antenna positioning.
As another example, device processor 124 can be configured for low power mode using a wait-for-interrupt technique. According to this technique, device processor 124 can enter a low-power mode until interrupted to perform beacon transmission, or when a probe request frame is received. This low-power mode can be implemented by operating device processor 124 at a lower clock frequency, gating off unused elements, and the like.
According to a third power-save mode, discovery functionality on WLAN 106 and intra-BSS data forwarding is handled by wireless network device 114. Host device 112 can remain in low-power mode until a client attempts to connect, when host device 112 leaves low-power mode to handle authentication and association. This third power-save mode can be used when connections with multiple wireless clients 110 are active, the wireless clients 110 are either legacy or 802.11n with low throughput requirements (that is, no aggregation is needed), and traffic is intra-BSS. Host device 112 leaves low-power mode when a wireless client 110 attempts to connect, when a data frame is received which can not be forwarded using intra-BSS information (for example, data frames destined to host device 112 or LAN 108), when an 802.11n aggregation request is received over WLAN 106, or when protocol frames that require the attention of host device 112 are received (for example action frames and the like). Host device 112 passes connection and other proxy context to wireless network device 114 when activating this mode. Upon exiting this mode, wireless network device 114 passes updated context (if any) back to host device 112.
FIG. 3 illustrates this third power-save mode according to one embodiment. Referring to FIG. 3, host device 112 enters low-power mode, either autonomously or in response to a command issued by wireless network device 114, as shown at 302. While host device 112 remains in low-power mode, wireless network device 114 handles beaconing and probes, as shown at 304. In particular, without communicating with host processor 116, device processor 124 causes WLAN interface 128 to transmit IEEE 802.11 beacon frames, and to transmit IEEE 802.11 probe response frames in response to received IEEE 802.11 probe request frames.
When a wireless client 110A wishes to exchange data frames with wireless access point 102, wireless client 110A transmits an IEEE 802.11 authentication frame, which is received by WLAN interface 128 of wireless access point 102, as shown at 306. In response to the authentication frame, device processor 124 causes host processor 116 to leave the low-power mode, as shown at 308, and to authenticate, and associate with, wireless client 110A, as shown at 310. In particular, device processor 124 issues a command to host device 112 that causes host device to leave the low-power mode. After leaving the low-power mode, host processor 116 authenticates, and associates with, wireless client 110A. In this example, host processor 116 also authenticates, and associates with, another wireless client 110B, as shown at 312.
In this third power-save mode, wireless network device 114 also handles the exchange of data frames with wireless clients 110. Therefore, after authenticating, and associating with, wireless clients 110, host processor 116 enters the low-power mode, as shown at 314. In particular, wireless network device 114 exchanges data frames with wireless clients 110 over WLAN 106 without communicating with host processor 116, as shown at 316. Throughout this third power-save mode, wireless network device 114 continues to handle beaconing and probes over WLAN 106.
In some embodiments, additional power savings for host device 112 can be attained by implementing certain functionality on wireless network device 114 to increase the time spent by host device 112 in low power mode. For example, wireless network device 114 can implement stateless protocol handling (for example such as 802.11k action frames and the like), stateless (or minimal state) protocol proxy code (such as ARP proxy, Bonjour keep alive packet proxy, and the like), and periodic housekeeping tasks needed to maintain clients (such as PSK group rekey and the like).
According to a fourth power-save mode, wireless network device 114 handles discovery functionality on WLAN 106, authentication, association, and intra-BSS data forwarding. In particular, device processor 124 authenticates, and associates with, wireless client 110 without communicating with host processor 116, when WLAN interface 128 receives an IEEE 802.11 authentication frame from wireless client 110 over the WLAN 106. In addition, wireless network device 114 exchanges data frames with wireless client 110 over the WLAN 106 without communicating with host processor 116.
Host device 112 leaves low-power mode when a data frame is received which can not be forwarded using intra-BSS information (for example, data frames destined to host device 112 or LAN 108), when an 802.11n aggregation request is received over WLAN 106, or when protocol frames that require the attention of host device 112 are received (for example action frames and the like).
Host device 112 passes connection and other proxy context to wireless network device 114 when activating this mode. Upon exiting this mode, wireless network device 114 passes updated context (if any) back to host device 112. This mode requires significant context transition between wireless network device 114 and host device 112. Thus, this mode may not be suitable for systems that implement the 802.11 stack on host device 112, such as net80211 on NetBSD or mac80211 on Linux.
FIG. 4 illustrates this fourth power-save mode according to one embodiment. Referring to FIG. 4, host device 112 enters low-power mode, either autonomously or in response to a command issued by wireless network device 114, as shown at 402. While host device 112 remains in low-power mode, wireless network device 114 handles beaconing and probes, as shown at 404. In particular, without communicating with host processor 116, device processor 124 causes WLAN interface 128 to transmit IEEE 802.11 beacon frames, and to transmit IEEE 802.11 probe response frames in response to received IEEE 802.11 probe request frames.
When a wireless client 110A wishes to exchange data frames with wireless access point 102, wireless client 110A transmits an IEEE 802.11 authentication frame, which is received by WLAN interface 128 of wireless access point 102, as shown at 406. In response to the authentication frame, wireless network device 114 authenticates, and associates with, wireless client 110A, as shown at 408. In particular, device processor 124 authenticates, and associates with, wireless client 110A without communicating with host processor 116. In this example, device processor 124 also authenticates, and associates with, another wireless client 110B, as shown at 410.
In this fourth power-save mode, wireless network device 114 also handles the exchange of data frames with wireless clients 110. In particular, wireless network device 114 exchanges data frames with wireless clients 110 over WLAN 106 without communicating with host processor 116, as shown at 412. Throughout this third power-save mode, wireless network device 114 continues to handle beaconing and probes over WLAN 106.
Additional power savings can be attained in any of the above modes in other ways. For example, the firmware in wireless network device 114 can dynamically control the clock speed of device processor 124 by monitoring throughput requirements at run time. Similarly, the firmware can dynamically enable the number of antennas/chains in service according to throughput. This can be done based on monitoring bandwidth utilization dynamically.
Various embodiments can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Embodiments can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps can be performed by a programmable processor executing a program of instructions to perform functions by operating on input data and generating output. Embodiments can be implemented in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program can be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Generally, a computer will include one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits).
A number of implementations have been described. Nevertheless, various modifications may be made without departing from the scope of the disclosure. Accordingly, other implementations are within the scope of the following claims.

## Claims

1. An access point comprising:
a host device comprising
a first network interface configured to communicate over a wired local-area network, and
a first processor configured to transition from a first power mode to a second power mode, wherein the first processor consumes less power in the second power mode than in the first power mode; and

a network device comprising
a second network interface configured to communicate with a first client device over a wireless local-area network, and
a second processor configured to
transmit a beacon subsequent to the first processor transitioning to the second power mode,
cause the second network interface to transmit probe response frames over the wireless local-area network without receiving a signal to do so from the first processor of the host device,
receive a probe request signal from the first client device in response to the beacon,
transmit a probe response signal to the first client device while the first processor is in the second power mode, wherein the probe response signal includes the probe response frames,
receive an authentication frame from the first client device subsequent to transmitting the probe response signal, and
signal the first processor to transition to the first power mode in response to the authentication frame,


wherein the first processor is configured to authenticate the first client device via the network device during the first power mode.

2. The access point of claim 1, wherein the second processor is further configured to cause the first processor to, in response to the second network interface receiving the authentication frame from the first client device over the wireless local-area network, associate with the first client device.

3. The access point of claim 2, wherein:
the second processor is configured to cause the first processor to transition from the second power mode to the first power mode in response to the second network interface receiving the authentication frame from the first client device over the wireless local-area network; and
the first processor authenticates and associates with the first client device subsequent to transitioning to the first power mode.

4. The access point of claim 2, wherein the first processor is further configured to exchange data frames with the first client device over the wireless local-area network.

5. The access point of claim 4, wherein the second processor is configured to cause the first processor to transition to the second power mode in response to the second network interface receiving a de-authentication frame from the first client device over the wireless local-area network.

6. The access point of claim 2, wherein the second processor is configured to exchange data frames with the first client device over the wireless local-area network without communicating with the first processor.

7. The access point of claim 6, wherein the first processor is configured to transition to the second power mode subsequent to the first processor authenticating and associating with the first client device.

8. The access point of claim 1, wherein the second processor is configured to, in response to the second network interface receiving the authentication frame from the first client device over the wireless local-area network, authenticate and associate with the first client device without communicating with the first processor.

9. The access point of claim 8, wherein the second processor is configured to exchange data frames with the first client device over the wireless local-area network without communicating with the first processor.

10. A non-transitory computer-readable medium embodying instructions executable by a device processor to perform a method, the method comprising:
causing a first network interface at an access point to communicate over a wired local-area network;
causing, via the device processor, a second network interface at the access point to transmit probe response frames over a wireless local-area network to a client device without receiving a signal to do so from a host processor;
transmitting a beacon subsequent to the host processor transitioning from a first power mode to a second power mode, wherein the host processor consumes less power in the second power mode than in the first power mode;
receiving a probe request signal from the client device in response to the beacon;
transmitting a probe response signal to the client device while the host processor is in the second power mode, wherein the probe response signal includes the probe response frames;
receiving an authentication frame from the client device subsequent to transmitting the probe response signal;
in response to the authentication frame, causing the host processor to authenticate and associate with the client device, wherein the host processor is configured to authenticate the client device during the first power mode;
signaling the host processor to transition to the first power mode in response to the authentication frame; and
transitioning the host processor from the first power mode to the second power mode in response to the host processor authenticating and associating with the client device.

11. The non-transitory computer-readable medium of claim 10, wherein the method further comprises:
causing the host processor to transition from the second power mode in response to the second network interface receiving the authentication frame from the client device over the wireless local-area network; and
subsequent to transitioning from the second power mode, authenticating and associating with the client device via the host processor.

12. The non-transitory computer-readable medium of claim 11, wherein the method further comprises exchanging, via the host processor, data frames with the client device over the wireless local-area network.

13. The non-transitory computer-readable medium of claim 12, wherein the method further comprises causing the host processor to enter the second power mode in response to the second network interface receiving a de-authentication frame from the client device over the wireless local-area network.

14. The non-transitory computer-readable medium of claim 10, wherein the method further comprises exchanging data frames with the client device over the wireless local-area network without communicating with the host processor.

15. The access point of claim 1, wherein:
the first processor is configured to (i) authenticate a plurality of client devices including the first client device and a second client device via the network device during the first power mode, and (ii) return to the second power mode subsequent to authenticating the plurality of client devices; and
the second processor is configured to exchange data with the plurality of client devices (i) subsequent to the authentication of the plurality of client devices, and (ii) while the first processor is in the second power mode.