Power management for wireless networks

Embodiments provide techniques for device power management in wireless networks. For instance, an apparatus may include a power management module, and a transceiver module. The power management module determines a beacon interval and a wakeup interval. The transceiver module to send a transmission to one or more remote devices that includes the beacon interval and the wakeup interval. The beacon interval indicates a time interval between consecutive beacon transmissions of the apparatus, and the wakeup interval indicates a time interval between when the apparatus receives two consecutive beacons from a peer device.

BACKGROUND

Wireless communications capabilities are increasingly being integrated into portable devices, including laptop computers, handheld devices (such as personal digital assistants (PDAs)), and mobile phones. The integration of such capabilities can provide users with anywhere and anytime connectivity to information resources.

Power consumption is a key feature for such devices. For instance, lower power consumption levels correspond to increased operational times between necessary battery charging sessions. As a result of this, the device user's experience may be enhanced.

Wireless mesh networks operate in accordance with a decentralized and collaborative approach. For instance, the Institute for Electrical and Electronics Engineers (IEEE) 802.11s standard provides for wireless networks composed of multiple devices (called mesh points). These devices form links among them. Moreover, information can be routed through these links in accordance with various routing protocols.

Current drafts of IEEE 802.11s (such as IEEE 802.11s Draft Standard 1.08) provide power management mechanisms that aim to conserve device power. However, these mechanisms often result in undesirable network operations.

DETAILED DESCRIPTION

Embodiments provide techniques for device power management in wireless networks. For instance, an apparatus may include a power management module, and a transceiver module. The power management module determines a beacon interval and a wakeup interval. The transceiver module to send a transmission to one or more remote devices that includes the beacon interval and the wakeup interval. The beacon interval indicates a time interval between consecutive beacon transmissions of the apparatus, and the wakeup interval indicates a time interval between when the apparatus receives two consecutive beacons from a peer device. Through the employment of such techniques efficient network operation may be advantageously achieved.

FIG. 1is a diagram of an exemplary operational environment100in which the techniques described herein may be employed. As shown inFIG. 1, this environment includes multiple devices1021-10210. Also,FIG. 1shows peer links1041-10417among these devices.

A mesh network includes two or more mobile computing devices that have set up peer links among them. Accordingly, devices1021-10210have formed a mesh network106. Therefore, devices1021-10210are also referred to herein as mesh points (MPs)1021-10210.

MPs1021-10210may each be various types of devices. Exemplary devices include laptop computers, desktop computers, personal digital assistants (PDAs), Ultra-Mobile personal computers (UMPCs), and Mobile Internet Devices (MIDs). However, embodiments are not limited to these device types.

Typically, mesh network operations are not determined by a central controller. Instead, such decision making is usually distributed (or collaborative) among the network's MPs. Information pertaining to such collaborative decision making may be exchanged among MPs through transmissions call beacons. During operation, the MPs independently send out beacons at their respective target beacon transmission times (TBTTs).

Moreover, MPs, may operate in accordance with various modes and states. For example, MPs may operate in either an active mode or a power saving mode. In the active mode, an MP is continually able to exchange information with other devices. However, in the power saving mode, an MP is not always available to exchange such information. Further details regarding active and power saving modes are described below with reference toFIG. 2.

Thus, in the context ofFIG. 1, each of MPs1021-10210are not active at all times. Consequently, it can be a daunting task to achieve collaboration (or distributed decision making) among MPs so that they may operate in power saving modes.

The power management schemes proposed in the IEEE 802.11s Draft Standard 1.08 are mainly based on infrastructure mode operation (in which devices communicate with each other through an access point). Also, this draft standard provides an automatic power save delivery (APSD) operation (defined in section 11A. 12.6) that only works when one MP is not in power saving mode or when there is a central control entity

Further, the IEEE 802.11s Draft Standard version 1.08 requires an MP to synchronize with its peer MPs before entering a power saving mode. This draft standard provides a peer link offset synchronization scheme to accomplish such synchronization. The peer link offset synchronization scheme forbids an MP from entering the power saving mode until it has informed all of its peer MPs through unicast messages. Unicast messages are required in this scheme because broadcast messages are considered unreliable and may cause ambiguity in an MP's knowledge of power management states being employed by other MPs in the mesh network.

Embodiments provide advantages over existing techniques. For instance, embodiments provide completely distributed operation. In addition, embodiments facilitate flexible power management through two intervals: a beacon interval and a wakeup interval.

As described above, MPs may operate in accordance with various modes and states.FIG. 2is a diagram providing examples of such modes and states. In particular,FIG. 2shows an active mode202, and a power saving mode204.

In embodiments, an MP in power saving (PS) mode204may operate in one of two states. These states are an awake state206and a doze state208. In awake state206, the MP is fully powered, and is able to transmit or receive frames. However, in doze state208, the MP consumes very low power, and is not able to transmit or receive. As indicated by arrows224and226, the MP may alternate between awake state206and doze state208while operating in PS mode204. This alternation may be determined by specified time intervals, as well as by frame transmission and reception rules.

In active mode202, the MP operates in an awake state (such as awake state206) all the time. As indicated by arrows220and222, the MP may transition between active mode202and PS mode204. Such transitions may be based on various factors, such as user settings.

Further details regarding MP operations in PS mode204are now provided.

An MP in PS mode204(also called a “PS MP”) transmits its own beacons at a pre-determined beacon interval (which are indicated by target beacon transmission times (TBTT)). Further, the PS MIP wakes up (i.e., enters awake state206from the doze state208) to receive its peers' beacons and/or broadcast messages, and to also maintain synchronization and peer links. A PS MP does not have to wake up to receive every beacon from its peers. As an example, a PS MP may instead decide to receive every other beacon, every delivery traffic indication message (DTIM) beacon, or every other DTIM beacon transmitted by a peer.

The time interval between when a PS MP receives two consecutive beacons from a peer MP is referred to herein as the wakeup interval. The wakeup interval is per peer link based. Thus, a PS MP may employ multiple wakeup intervals. Moreover, each wakeup interval can be negotiated between the PS MP and the corresponding peer MP. Furthermore, the wakeup interval(s) and beacon interval(s) employed by a PS MP may be implementation dependent. For instance, wake up interval(s) and beacon interval(s) may be based on factors, such as traffic load(s) to/from peer MP(s), clock synchronization accuracy, user selection, and so forth.

In embodiments, an MP may define the length of its beacon interval and its wakeup interval(s) before it enters PS mode204. Also, in embodiments, the MP may inform its peer MPs of its beacon interval and target beacon transmission time (TBTT). By so doing, the MP's peers can wake up at the right time to receive the MP's beacons. Optionally, an MP's wakeup interval(s) may be negotiated with its peer MP(s). Through such negotiations, the peer MP(s) may schedule their broadcast transmission(s) to the PS MP. Further, a PS MP may also request its peer MPs to send broadcast traffic as unicast frames to itself.

In embodiments, a PS MP advertises an Awake Window in its beacon. The awake window may be indicated in an information element (IE), such as the IE ofFIG. 7. However, other forms of indication may be employed. The start of the Awake Window is measured from PS MP's TBTT. This advertised awake window indicates how long the PS MP will remain awake after sending a beacon. In contrast, a conventional PS MP returns to doze state208right after sending its beacon.

FIG. 3illustrates an embodiment of a logic flow. In particular,FIG. 3illustrates a logic flow300, which may be representative of the operations executed by one or more embodiments described herein. AlthoughFIG. 3shows a particular sequence, other sequences may be employed. Also, the depicted operations may be performed in various parallel and/or sequential combinations.

The flow ofFIG. 3involves exemplary device operations during power saving mode204. These operations are described with reference to a PS MP and one or more remote devices. These remote device(s) may be peer devices. Alternatively, these remote device(s) may seek to establish a peer relationship with the power saving device. The operations ofFIG. 3may occur in the context ofFIG. 1. Moreover, the PS MP and/or the remote device(s) may include features, such as those described herein with reference toFIGS. 2 and 8.

At a block302, the PS MP enters awake state206. Upon entering awake state206, the PS MP sends a beacon transmission at a block303. This beacon provides an indication of an awake window time period. For example, this beacon may include the awake window information element described below with reference toFIG. 7. Embodiments, however, are not limited to employing this information element.

At a block304, the PS MP determines whether the awake window time period has elapsed. If so, then operation proceeds to a block350, where the PS MP enters doze state208. Otherwise, performance of one or more paths may occur. For example,FIG. 3shows a path360that involves the PS MP sending transmissions to a peer device, a path370that involves the PS MP receiving transmissions from a peer device, and a path380that involves the establishment of a new peer relationship. Such paths may be performed in various sequential and/or parallel orders.

FIG. 3shows path360including blocks305-308. At block305, the PS MP indicates whether it has any buffered traffic (e.g., unicast traffic) for its peer devices. This indication may be included in a beacon transmission (such as the beacon sent at block303). For instance, the PS MP may make this indication by setting one or more bits in its beacon frame. For example, in the context of 802.11s networks, the PS MP may set a bit in the traffic indication map (TIM) element that matches the peer device's peer link ID.

In turn, a peer device that receives this indication of buffered traffic (e.g., buffered unicast traffic) may send the PS MP a responsive transmission (such as a trigger frame) to initiate a packet reception period. Accordingly, as indicated by a block307, the PS MP determines whether it has received such a responsive transmission from the peer device. If so, then operation proceeds to a block308. Otherwise, operation may return to block304.

At block308, the PS MP acknowledges the trigger frame and transmits its buffered traffic to the peer device. This may involve sending multiple buffered packets to the peer device.

Once the buffered traffic has been sent, the PS MP may indicate its completion of data transmission to the peer device at a block309. In the context of IEEE 802.11s networks, block309may include sending one or more data frames having an End of Service Period (EOSP) bit set.FIG. 3shows that, following block309, operation may return to block304.

As described above, path370involves the PS MP receiving traffic from a peer device.FIG. 3shows that path370may include blocks310and312.

A peer device having buffered traffic to send to the PS MP stays awake during the awake interval following the power saving device's target beacon transmission time (TBTT). Thus, at a block310, such a peer device may trigger a service period to deliver its buffered traffic to the PS MP. This may involve the peer device sending one or more triggering transmissions to the PS MP.

At a block312, the PS MP receives the buffered traffic from the peer device. Following this, operation may return to block304.

As indicated above, path380involves a peer connection being established between the PS MP and a remote device.FIG. 3shows that path380may include blocks330-332.

At block330, the PS MP enters into a peer link establishment process. Details regarding an exemplary peer link establishment process are described below with reference toFIG. 4. Following completion (e.g., successful completion or unsuccessful completion) of the peer link establishment process, operation may return to block304.

As described herein, embodiments may employ a peer link establishment process that may be performed after a device discovers another device that is in power saving mode204(e.g., a PS MP). As an example, such a process is performed at block332ofFIG. 3.

Accordingly,FIG. 4is a flow diagram showing exemplary operations of a peer link establishment process. AlthoughFIG. 4shows a particular sequence, other sequences may be employed. Also, the depicted operations may be performed in various parallel and/or sequential combinations.

The operations inFIG. 4are described with reference to a device (referred to as the “new device”) that seeks to establish a peer relationship with a PS MP. These operations may occur in the context ofFIG. 1. Moreover the new device and/or the power saving device may include features, such as those described herein with reference toFIGS. 2 and 8.

At a block402the new device may perform passive scanning to discover existing devices in a mesh network.

At a block404, the new device receives a beacon from the PS MP. This beacon indicates the power saving device's awake window. For example, this beacon may include an awake window information element, such as the one described below with reference toFIG. 7. However, other awake window indications may be employed.

Based on this beacon, at a block406, the new device attempts to send a peer link open message to the PS MP before the end of its awake window.

As indicated by a block408, the PS MP determines whether it has received the peer link open message during its awake window. If so, then operations proceed to a block410, and the PS MP remains in the awake state until the peer link establishment process has been completed (either successfully or unsuccessfully). Otherwise, if the peer link open message is not received duing the PS MP's awake window, then the peer link establishment process is unsuccessfully completed (as indicated by a block409).

At block410, the PS MP sends a peer link confirm message to the new device. Also, at a block412, the PS MP sends a peer link open message to the new device. In response to this peer link open message, the new device sends a peer link confirm message to the PS MP at a block414.

Thus, this peer link establishment procedure involves a “double handshake” of peer link open and peer link confirm messages. Accordingly, a peer link is successfully established when both devices have sent and received peer link open and confirm messages.

Without an awake window, the PS MP may immediately go back to doze state208after transmitting a beacon or after responding to the Peer Link Open message from the new MP.

However, to ensure that a pending double handshake can be completed, embodiments require a PS MP to stay awake (e.g., remain in awake state206) during its awake window, and to remain awake during a pending peer link set up process. This may advantageously promote fast and successful establishment of peer links.

FIG. 5is a diagram500showing exemplary device interactions. In particular,FIG. 5shows interactions occurring between a first mesh point502(which is in awake state206) and a second mesh point504. These interactions occur along a time axis506. Through these interactions, a peer link is established.

As described above with reference toFIG. 4, establishment of such peer links may involve a double handshaking procedure. Accordingly,FIG. 5shows a first handshake520that begins with mesh point504sending a peer link open message508. In response, mesh point502sends a peer link confirm message510to mesh point504.FIG. 5further shows a second handshake522. This handshake involves mesh point502sending a peer link open message512to mesh point504, and mesh point504responding by sending a peer link confirm message to mesh point502.

FIG. 6is a diagram600showing a sequence of transmissions along a time axis602. These transmissions are shown from the perspective of a local mesh point in awake state206. In this diagram, upward pointing arrows represent transmissions that are outgoing from the local mesh point, while downward pointing arrows represent transmissions that are incoming to the local mesh point.

As shown inFIG. 6, the local mesh point transmits beacons604and606. Each of these beacons advertises an awake window. For example, beacon604advertises an awake window608. Within this window, a peer link establishment procedure begins. In particular, the local mesh point receives a peer link open (PLO) message610from a remote mesh point. In response, the local mesh point sends a peer link confirm (PLC) message612to the remote device. These two messages comprise a first handshake. As a second handshake, the local mesh point transmits a PLO message614. In response, a PLC message616is received from the remote mesh point.

Through the exchange of these messages, a peer link is established between the local mesh point and the remote mesh point.FIG. 6shows that this peer link establishment procedure extends beyond awake window608. However, as described above with reference toFIG. 4, initiation of this procedure by the remote mesh point causes the local mesh point to remain awake until the procedure is completed.

FIG. 7is a diagram of an awake window information element (IE)700. As described herein, a beacon transmitted by a device in awake state206may include this information element. As shown inFIG. 7, awake window IE700includes an identifier (ID) field702, a length field704, and an awake window indicator field706.

ID field702includes a predetermined value that identifies IE700as an awake window IE. Length field704indicates the size of IE700. In embodiments, the start of an awake window is measured from TBTT. Thus, awake window indicator field706indicates the length (or time duration) of the awake window from this starting point (the sending of a beacon).

FIG. 7shows that identifier field702may have a size of one octet, length field704may have a size of one octet, and awake window indicator field706may have a size of two octets. These sizes, as well as the format ofFIG. 7, are shown for purposes of illustration, and not limitation. Accordingly, embodiments may employ other sizes and formats.

FIG. 8is a diagram of an exemplary device implementation800. This implementation may be employed by devices, such as mesh points. For example, this implementation may be employed by devices1021-10210ofFIG. 1. However, this implementation may be also employed in other contexts.

Implementation800may include various elements. For example,FIG. 8shows implementation800including an antenna802, a transceiver module804, a host module806, and a power control module808. These elements may be implemented in hardware, software, firmware, or any combination thereof.

Antenna802provides for the exchange of wireless signals with remote devices. Although a single antenna is depicted, multiple antennas may be employed. For example, embodiments may employ one or more transmit antennas and one or more receive antennas. Alternatively or additionally, embodiments may employ multiple antennas for beamforming, and or phased-array antenna arrangements.

As shown inFIG. 8, transceiver module804includes a transmitter portion810and a receiver portion812. During operation, transceiver module804provides an interface between antenna802and host module806. For instance, transmitter portion810receives symbols820from host module806and generates corresponding signals822for wireless transmission by antenna module802. This may involve operations, such as modulation, amplification, and/or filtering. However, other operations may be employed.

To provide such features, transmitter portion810and receiver portion812may each include various components, such as modulators, demodulators, amplifiers, filters, buffers, upconverters, and/or downconveters. Such components may be implemented in hardware (e.g., electronics), software, or any combination thereof.

The symbols exchanged between host module806and transceiver module804may form messages or information associated with one or more protocols, and/or one or more user applications. Thus, host module806may perform operations corresponding to such protocol(s) and/or user application(s). Exemplary protocols include various media access control, network, transport and/or session layer protocols. Exemplary user applications include telephony, messaging, e-mail, web browsing, content (e.g., video and audio) distribution/reception, and so forth.

Signals822and824may be in various formats. For instance, these signals may be formatted for transmission in IEEE 802.11s networks. However, embodiments are not limited to these exemplary networks.

In addition to operating as an interface between host module806and antenna802, transceiver module804may perform various signaling, link control, and media access operations. For instance, transceiver module804may generate and transmit beacons (via antenna802), as well as exchange signaling messages (e.g., trigger messages, PLO messages, PLC messages, and so forth). These operations may be coordinated by a control module809within transceiver module804. As shown inFIG. 8, control module809is coupled to transmitter portion810and receiver portion812.

Also,FIG. 8shows that control module809is coupled to host module806and power management module808. Accordingly, control module809may exchange information with these elements. Such information may include status information sent by control module809and operational directives received by host module806and/or power management module808.

Power control module808governs various operations of apparatus800. For instance, power control module808establishes current operational modes and states of apparatus800(e.g., active mode202, power saving mode204, awake state206, and doze state208). As shown inFIG. 8, this may be carried out through operational directives832, which are sent to control module809within transceiver module804.

Power control module808may establish these modes and states based on various factors. Examples of such factors include (but are not limited to) status information830that it receives from transceiver module804, and/or configuration data828that it receives from host module806.

Configuration data828may include power management policies and procedures for power management module808to apply. Such policies and procedures may include parameters such as beacon intervals, wakeup intervals, awake windows, and so forth. In embodiments, configuration data828may be based (at least in part) on user settings and selections.

Status information830may indicate current operational status of transceiver module804. For instance, status information830may indicate pending peer establishment processes. As described herein, such processes may affect how long a device operates in awake state206. However, in embodiments, status information830may additionally or alternatively include other forms of information.

FIG. 9illustrates a logic flow900, which may be representative of the operations executed by one or more embodiments described herein. AlthoughFIG. 9shows a particular sequence, other sequences may be employed. Also, the depicted operations may be performed in various parallel and/or sequential combinations.

These operations are described with reference to a device. This device may be a mesh point, such as one of MPs1021-10210inFIG. 1. Accordingly, this device may include the implementation ofFIG. 8. Embodiments, however, are not limited to these devices and implementations.

At a block902, the device determines a beacon interval and a wakeup interval.

Following this determination, the device advertises the beacon interval and wakeup interval to other devices at a block904. In embodiments, this advertisement is performed while the device is awake (e.g., while in active mode202or while in awake state206).

At a block906the device enters a doze state. From this doze state, the device enters an awake state at block908. While in this awake state, the device may perform various operation(s). Exemplary operations are described below with reference toFIG. 3. For instance, the device may transmit data, receive data, and/or engage in peer establishment processes with remote devices. Embodiments, however, are not limited to these operations.

As described herein, various embodiments may be implemented using hardware elements, software elements, or any combination thereof. Examples of hardware elements may include processors, microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, application specific integrated circuits (ASIC), programmable logic devices (PLD), digital signal processors (DSP), field programmable gate array (FPGA), logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth.

Some embodiments may be implemented, for example, using a machine-readable medium or article which may store an instruction or a set of instructions that, if executed by a machine, may cause the machine to perform a method and/or operations in accordance with the embodiments. Such a machine may include, for example, any suitable processing platform, computing platform, computing device, processing device, computing system, processing system, computer, processor, or the like, and may be implemented using any suitable combination of hardware and/or software.

While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not in limitation. For example, the techniques described herein are not limited to IEEE 802.11s networks.

Accordingly, it will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.