Network Wake-Up Events
A network wake-up event is an external event that causes a network adapter to wake the system. A network adapter wakes the system by asserting a bus-specific wake-up signal that eventually results in the system making a transition from a sleeping state to the working state.
NDIS defines the following two network wake-up events:
Receipt of a network wake-up frame that contains a pattern that was specified by a bound protocol driver.
Receipt of a Magic Packet.
A network adapter can support any combination of network wake-up events, including none at all. NDIS treats the miniport driver as not power management-aware if the miniport driver sets the PowerManagementCapabilities member of NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES to NULL.
Depending on the capabilities of the network adapter, a network wake-up event can occur from any device power state, including the highest-powered state (D0).
Network Wake-Up Frames
If, during initialization, a miniport driver indicates that a network adapter can signal a wake-up on the receipt of a packet that contains a specified pattern, a bound protocol can enable the pattern-based wake up method on the network adapter and specify wake-up patterns. To enable this type of wake-up, a protocol driver sets the NDIS_PNP_WAKE_UP_PATTERN_MATCH flag in OID_PNP_ENABLE_WAKE_UP.
A protocol driver uses OID_PNP_ADD_WAKE_UP_PATTERN to specify a wake-up pattern, along with a mask that indicates which bytes of an incoming packet should be compared with the pattern. A protocol driver can remove a wake-up pattern with OID_PNP_REMOVE_WAKE_UP_PATTERN.
For more information about network wake-up frames, see Power Management for Network Devices.
A Magic Packet is a packet that contains 16 contiguous copies of the receiving network adapter's MAC address.
This section includes: