A computing device (102, 302, 304, 306), comprising: network communication hardware configured to transmit and receive through one or more access networks; one or more processors; memory; and a plurality of programming instructions stored on the memory and executable by the one or more processors to implement at least a device driver and a network power module (116, 314, 316, 318), the device driver configured to interface with the network communication hardware, the network power module configured to: determine a power state (118, 320, 322, 324) of the computing device; determine a priority of an application (114, 308, 310, 312) executing on the computing device; establish a transmit queue configured to transmit traffic from the application, using the network communication hardware via the device driver, wherein the transmit queue is configured to permit the application to transmit the traffic from the application during a predetermined time period established based at least on the power state of the computing device and the priority of the application and to prevent the application from transmitting the traffic from the application after expiration of the predetermined time period; establish a receive queue configured to receive traffic from the network communication hardware via the device driver; and configure a control channel filter to provide notifications to the application of the traffic received by the receive queue based at least on the priority of the application and the power state of the computing device. network communication hardware configured to transmit and receive through one or more access networks; one or more processors; memory; and a plurality of programming instructions stored on the memory and executable by the one or more processors to implement at least a device driver and a network power module (116, 314, 316, 318), the device driver configured to interface with the network communication hardware, the network power module configured to: determine a power state (118, 320, 322, 324) of the computing device; determine a priority of an application (114, 308, 310, 312) executing on the computing device; establish a transmit queue configured to transmit traffic from the application, using the network communication hardware via the device driver, wherein the transmit queue is configured to permit the application to transmit the traffic from the application during a predetermined time period established based at least on the power state of the computing device and the priority of the application and to prevent the application from transmitting the traffic from the application after expiration of the predetermined time period; establish a receive queue configured to receive traffic from the network communication hardware via the device driver; and configure a control channel filter to provide notifications to the application of the traffic received by the receive queue based at least on the priority of the application and the power state of the computing device. determine a power state (118, 320, 322, 324) of the computing device; determine a priority of an application (114, 308, 310, 312) executing on the computing device; establish a transmit queue configured to transmit traffic from the application, using the network communication hardware via the device driver, wherein the transmit queue is configured to permit the application to transmit the traffic from the application during a predetermined time period established based at least on the power state of the computing device and the priority of the application and to prevent the application from transmitting the traffic from the application after expiration of the predetermined time period; establish a receive queue configured to receive traffic from the network communication hardware via the device driver; and configure a control channel filter to provide notifications to the application of the traffic received by the receive queue based at least on the priority of the application and the power state of the computing device.