Abstract:
A system and method are disclosed for increasing time a computing device remains in a suspended state during network transmissions. On a first network packet of a plurality of network packets being received while the device is in a suspended state, a wake reference count is incremented and components of the device are temporarily switched from the suspended state to a powered-on state for consumption of the network packet. The wake reference count is incremented for each of the other network packets, and decremented each time each of the packets is consumed by the components of the computing device. In response to the wake reference count being fully decremented, the components are automatically returned from the powered-on state to the suspended state.
Abstract:
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for channel scanning. In one aspect, a method includes, while maintaining an association with a first access point on a first channel during first, second, and third consecutive time slices: (i) monitoring, by a client device, a single second channel during the first time slice and the third time slice, and (ii) monitoring, by the client device, the first channel during the second time slice; receiving a beacon from a second access point during the first time slice or the third time slice; and determining a property of the client device or the second access point using the beacon, without using the beacon to determine whether to establish an association with the second access point.
Abstract:
A computing device may conduct a communication session. The communication session may be locally controlled by a main processor of the computing device. The main processor may be in a first power mode and may maintain an active state representation of the communication session. Packets of the communication session may pass through a network interface apparatus of the computing device, and a secondary processor in the network interface apparatus may examine at least some packets of the communication session to maintain a non-active state representation of the communication session. The main processor may transfer local control of the communication session to the secondary processor. The secondary processor may activate the non-active state representation and continue conducting the communication session using the activated state representation. The main processor may also transition from the first power mode to a second power mode that uses less power than the first power mode.
Abstract:
A computing device may receive a data packet. The computing device may be operating a plurality of kernel-space software modules that are in a suspended state, and the computing device may also be operating a plurality of user-space software modules that are in the suspended state. It may be determined that the data packet is of a particular packet type. Data packets of the particular packet type may be consumed by any of a particular subset of the kernel-space software modules. While the user-space software modules remain in the suspended state, the computing device may further (i) transition at least some kernel-space software modules to a non-suspended state, (ii) consume, by a particular one of the non-suspended kernel-space software modules, the data packet, and (iii) transition the non-suspended kernel-space software modules to the suspended state.
Abstract:
A computing device may conduct a communication session. The communication session may be locally controlled by a main processor of the computing device. The main processor may be in a first power mode and may maintain an active state representation of the communication session. Packets of the communication session may pass through a network interface apparatus of the computing device, and a secondary processor in the network interface apparatus may examine at least some packets of the communication session to maintain a non-active state representation of the communication session. The main processor may transfer local control of the communication session to the secondary processor. The secondary processor may activate the non-active state representation and continue conducting the communication session using the activated state representation. The main processor may also transition from the first power mode to a second power mode that uses less power than the first power mode.
Abstract:
A device that includes one or more processors may receive instructions to scan, at a given time, one or more channels in one or more frequency bands for presence of wireless devices in an environment of the device. The device may also identify one or more operations of the device that are occurring at the given time. The device may also adjust a duration of scanning the one or more channels based on the identified operations. The device may also cause a wireless receiver of the device to scan, for the adjusted duration, the one or more channels for the presence of the wireless devices.
Abstract:
A device that includes one or more processors may receive instructions to scan, at a given time, one or more channels in one or more frequency bands for presence of wireless devices in an environment of the device. The device may also identify one or more operations of the device that are occurring at the given time. The device may also adjust a duration of scanning the one or more channels based on the identified operations. The device may also cause a wireless receiver of the device to scan, for the adjusted duration, the one or more channels for the presence of the wireless devices.
Abstract:
A device that includes one or more processors may receive instructions to scan, at a given time, one or more channels in one or more frequency bands for presence of wireless devices in an environment of the device. The device may also identify one or more operations of the device that are occurring at the given time. The device may also adjust a duration of scanning the one or more channels based on the identified operations. The device may also cause a wireless receiver of the device to scan, for the adjusted duration, the one or more channels for the presence of the wireless devices.
Abstract:
A device that includes one or more processors may receive instructions to scan, at a given time, one or more channels in one or more frequency bands for presence of wireless devices in an environment of the device. The device may also identify one or more operations of the device that are occurring at the given time. The device may also adjust a duration of scanning the one or more channels based on the identified operations. The device may also cause a wireless receiver of the device to scan, for the adjusted duration, the one or more channels for the presence of the wireless devices.