Низкое энергопотребление для пробуждения по локальной сети
Функция пробуждения по локальной сети (WOL) выводит компьютер из состояния низкого энергопотребления, когда сетевой адаптер обнаруживает событие WOL.
Драйвер мини-порта сообщает о возможностях WOL сетевого адаптера во время инициализации. Дополнительные сведения о возможностях WOL для создания отчетов см. в статье Возможности управления питанием для отчетов.
Обратите внимание, что функция отключения носителя (D3 при отключении) отменяется, когда компьютер переходит в спящий режим, чтобы предотвратить пробуждение компьютера при внешнем цикле связи. то есть при отключении и включении переключателя. Дополнительные сведения о D3 при отключении см. в разделе Низкое энергопотребление при отключении мультимедиа.
На следующем рисунке показана последовательность событий, которые происходят для установки сетевого адаптера в состояние низкого энергопотребления.
Когда NDIS переводит сетевой адаптер в состояние низкого энергопотребления, происходит следующая последовательность:
NDIS использует OID_PM_PARAMETERS для включения пробуждения по локальной сети и отключения пробуждения при подключении к мультимедиа. NDIS_PM_WAKE_ON_LINK_CHANGE_ENABLED очищается в элементе WakeUpFlags .
NDIS использует OID_PNP_SET_POWER для уведомления драйвера мини-порта о новом состоянии питания (D3).
Драйвер мини-порта может указать неизвестное состояние подключения к мультимедиа с помощью указания состояния NDIS_STATUS_LINK_STATE . Значение MediaConnectStateUnknown задается в элементе MediaConnectStateструктуры NDIS_LINK_STATE . Дополнительные сведения см. в документации по NDIS_STATUS_LINK_STATE .
NDIS отправляет шине PCI Express (PCIe) IRP_MN_WAIT_WAKE IRP для ожидания события WOL.
NDIS отправляет шине PCIe IRP_MN_SET_POWER IRP, чтобы задать для шины состояние D3.
На следующем рисунке показана последовательность событий, которые происходят для восстановления полного питания сетевого адаптера после события WOL.
Когда сетевой адаптер просыпается, происходит следующая последовательность:
Сетевой адаптер активирует систему, утверждая wake# на шине PCIe или PME# на шине PCI.
Автобус завершает ожидающий IRP_MN_WAIT_WAKE IRP. IRP ожидает завершения с последнего шага в последовательности выключения питания.
NDIS устанавливает шину на полную мощность (D0) с IRP_MN_SET_POWER IRP.
NDIS уведомляет драйвер мини-порта о том, что сетевой адаптер находится на полную мощность (D0) с запросом на набор OID OID_PNP_SET_POWER.
Сетевой адаптер уведомляет NDIS о событии подключения к мультимедиа с указанием состояния NDIS_STATUS_LINK_STATE . Значение MediaConnectStateConnected задается в элементе MediaConnectState структуры NDIS_LINK_STATE .
Начиная с версии NDIS 6.30, если драйвер мини-порта поддерживает NDIS_STATUS_PM_WAKE_REASON индикаторы состояния, он должен выдавать это уведомление о состоянии, если сетевой адаптер разбудит систему. Драйвер выдает это уведомление о состоянии, когда обрабатывает запрос набора OID OID_PNP_SET_POWER для перехода в состояние полной мощности (D0).
Дополнительные сведения см. в разделе Индикаторы состояния причины пробуждения NDIS.