Übersicht über die Statusanzeigen des NDIS-Aktivierungsgrunds
Ab NDIS 6.30 geben Miniporttreiber einen NDIS-Aktivierungsgrund status Anzeige (NDIS_STATUS_PM_WAKE_REASON) aus, um NDIS und übergeordnete Treiber über den Grund für ein Systemreaktivierungsereignis zu informieren. Wenn der Netzwerkadapter ein Aktivierungsereignis generiert, gibt der Miniporttreiber sofort einen NDIS-status Hinweis auf NDIS_STATUS_PM_WAKE_REASON aus, wenn der Netzwerkadapter in den Zustand "Full-Power" fortgesetzt wird.
Hinweis Unterstützung für NDIS-Aktivierungsgrund status Ist für Miniporttreiber für mobiles Breitband (MB) optional.
Der Miniporttreiber wird mit Parametern für die Energieverwaltung (Power Management, PM) über eine OID-Set-Anforderung (Object Identifier) von OID_PM_PARAMETERS konfiguriert. Diese OID-Anforderung gibt die PM-Parameter über eine NDIS_PM_PARAMETERS-Struktur an.
Die NDIS_PM_PARAMETERS-Struktur gibt die Parameter für die folgenden Arten von Aktivierungsereignissen an.
Empfangene Paketreaktivierungsereignisse
Der Netzwerkadapter generiert ein Aktivierungsereignis, wenn er ein Paket empfängt, das einem Wake-on-LAN-Muster (WOL) entspricht. WOL-Muster umfassen Folgendes:
Medienunabhängige WOL-Muster, z. B. Magic-Pakete oder TCP/IP-Datenmuster innerhalb der Paketnutzlast. Beispielsweise könnte die NDIS_PM_PARAMETERS-Struktur ein WOL-Muster für einen TCP SYN-Frame angeben.
Medienspezifische WOL-Muster, z. B. ein EAPOL-Anforderungsbezeichnerpaket oder eine SMS-Nachricht (SMS) mit mobilem Breitband (MB).
Wildcardmuster, die mit einem Empfangsfilter übereinstimmen, der über eine OID-Set-Anforderung von OID_GEN_CURRENT_PACKET_FILTER angegeben wird.
Hinweis Für diese Art von Aktivierungsgrund status Angabe muss der Netzwerkadapter in der Lage sein, das empfangene Paket zu speichern. Der Treiber muss das empfangene Paket innerhalb der status-Angabe zurückgeben.
WOL-Muster werden über den EnabledWoLPacketPatterns-Member der NDIS_PM_PARAMETERS-Struktur angegeben.
Medienspezifische Aktivierungsereignisse
Der Netzwerkadapter generiert aufgrund eines medienspezifischen Grunds ein Aktivierungsereignis, z. B. aufgrund einer Trennung von einer 802.11-Zugriffssteuerung (ACCESS Point, AP) oder dem Empfang einer SMS-Nachricht (Mobile Broadband, MB).
Aktivierungsereignisse dieses Typs werden über den MediaSpecificWakeUpEvents-Member der NDIS_PM_PARAMETERS-Struktur angegeben.
Medienunabhängige Aktivierungsereignisse
Der Netzwerkadapter generiert ein Aktivierungsereignis aus einem medienunabhängigen Grund, z. B. Medienverbindung oder Trennung.
Aktivierungsereignisse dieses Typs werden über den WakeUpFlags-Member der NDIS_PM_PARAMETERS-Struktur angegeben.
Der Miniporttreiber muss die folgenden Richtlinien für den NDIS-Aktivierungsgrund status Hinweise befolgen:
Wenn der Miniporttreiber die Möglichkeit unterstützt, Wake-Paketanzeigen auszusetzen, muss er diese Fähigkeit melden, wenn NDIS die MiniportInitializeEx-Funktion des Treibers aufruft. Weitere Informationen finden Sie unter Reporting Wake Reason Status Indication Capabilities( Reporting Wake Reason Status Indication Capabilities).
Hinweis Der Miniporttreiber muss nicht melden, dass er NDIS-Aktivierungsgrund status Für Ereignisse ausgeben kann, die sich nicht auf den Empfang eines WOL-Pakets beziehen.
Wenn der Miniporttreiber eine Aktivierungspaketanzeige für ein WOL-Paket ausgibt, muss er das Paket enthalten, das das Aktivierungsereignis verursacht hat. Weitere Informationen finden Sie unter Ausstellen von NDIS-Wake Reason-Statusanzeigen.
Wenn der Netzwerkadapter ein Aktivierungssignal generiert hat, muss der Miniporttreiber eine NDIS_STATUS_PM_WAKE_REASON status Anzeigen ausgeben. Der Treiber übernimmt dies, während er die OID-Set-Anforderung von OID_PNP_SET_POWER für den Übergang in einen Vollleistungszustand verarbeitet.
Der Miniporttreiber muss einen NDIS_STATUS_PM_WAKE_REASON status Anzeigen ausgeben, bevor er einen status Hinweis ausgibt, der sich auf das Aktivierungsereignis bezieht. Wenn das Aktivierungsereignis beispielsweise auf eine Änderung des Medienkonnektivitätszustands zurückzuführen ist, muss der Miniporttreiber eine NDIS_STATUS_LINK_STATE status Angabe ausgeben, nachdem er die NDIS_STATUS_PM_WAKE_REASON status Angezeigt hat.
Der Miniporttreiber muss eine NDIS_STATUS_PM_WAKE_REASON status Anzeige nur für Energieverwaltungsereignisse festlegen, die zuvor über eine OID-Set-Anforderung von OID_PM_PARAMETERS aktiviert wurden.
Der Miniporttreiber muss eine NDIS_STATUS_PM_WAKE_REASON status Nur für Aktivierungsereignisse ausgeben, die vom zugrunde liegenden Netzwerkadapter generiert wurden.