OID_GEN_LINK_PARAMETERS
Als Satz verwenden NDIS- und überlastende Treiber die OID_GEN_LINK_PARAMETERS OID, um den aktuellen Verbindungsstatus eines Miniportadapters festzulegen. Der Miniporttreiber empfängt die Duplexzustands-, Linkgeschwindigkeiten- und Pausenfunktionen in einer NDIS_LINK_PARAMETERS-Struktur.
Versionsinformationen
Windows Vista und höhere Versionen von Windows
Unterstützt.
Miniporttreiber NDIS 6.0 und höher
Optional.
Die NDIS_LINK_PARAMETERS-Struktur wird wie folgt definiert:
typedef struct _NDIS_LINK_PARAMETERS {
NDIS_OBJECT_HEADER Header;
NDIS_MEDIA_DUPLEX_STATE MediaDuplexState;
ULONG64 XmitLinkSpeed;
ULONG64 RcvLinkSpeed;
NDIS_SUPPORTED_PAUSE_FUNCTIONS PauseFunctions;
ULONG AutoNegotiationFlags;
} NDIS_LINK_PARAMETERS, *PNDIS_LINK_PARAMETERS;
Diese Struktur enthält die folgenden Member:
Header
Die NDIS_OBJECT_HEADER-Struktur für die NDIS_LINK_PARAMETERS-Struktur. Legen Sie das Element Typ der Struktur, die Header angibt, auf NDIS_OBJECT_TYPE_DEFAULT, das Revisionselement auf NDIS_LINK_PARAMETERS_REVISION_1 und das Size-Element auf NDIS_SIZEOF_LINK_PARAMETERS_REVISION_1 fest.
MediaDuplexState
Der Medienduplexzustand. Dieser Wert entspricht dem Wert, der vom OID_GEN_MEDIA_DUPLEX_STATE OID zurückgegeben wird.
XmitLinkSpeed
Die Übertragungslinkgeschwindigkeit in Bits pro Sekunde.
RcvLinkSpeed
Die Geschwindigkeit des Empfangslinks in Bits pro Sekunde.
PauseFunctions
Die Art der Unterstützung für die IEEE 802.3-Pauseframes. Bei diesem Member muss es sich um eine der folgenden Pausenfunktionen handeln:
NdisPauseFunctionsUnsupported
Der Adapter oder Linkpartner unterstützt keine Pausenframes.
NdisPauseFunctionsSendOnly
Adapter und Linkpartner unterstützen nur das Senden von Pauseframes vom Adapter an den Linkpartner.
NdisPauseFunctionsReceiveOnly
Adapter und Linkpartner unterstützen nur das Senden von Pauseframes vom Linkpartner an den Adapter.
NdisPauseFunctionsSendAndReceive
Der Adapter und der Linkpartner unterstützen das Senden und Empfangen von Pausenframes in Sende- und Empfangsrichtung.
AutoNegotiationFlags
Die Einstellungen für die automatische Aushandlung für den Miniportadapter. Dieses Element wird aus einem bitweisen OR der folgenden Flags erstellt:
NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED
Der Adapter sollte die Übertragungslinkgeschwindigkeit automatisch mit dem Linkpartner aushandeln. Wenn dieses Flag nicht festgelegt ist, sollte der Miniporttreiber die Übertragungslinkgeschwindigkeit auf den Wert festlegen, der im XmitLinkSpeed-Element angegeben ist.
NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED
Der Adapter sollte die Empfangslinkgeschwindigkeit automatisch mit dem Linkpartner aushandeln. Wenn dieses Flag nicht festgelegt ist, sollte der Miniporttreiber die Empfangslinkgeschwindigkeit auf den Wert festlegen, der im RcvLinkSpeed-Member angegeben ist.
NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED
Der Adapter sollte den Duplexzustand automatisch mit dem Linkpartner aushandeln. Wenn dieses Flag nicht festgelegt ist, sollte der Miniporttreiber den Duplexzustand auf den Wert festlegen, der im MediaDuplexState-Element angegeben ist.
NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED
Der Miniporttreiber sollte die Unterstützung für Pausenframes am anderen Ende automatisch aushandeln. Wenn dieses Flag nicht festgelegt ist, sollte der Miniporttreiber die Pauseframeunterstützung verwenden, die im PauseFunctions-Element angegeben ist.
Bemerkungen
Hinweis Das Festlegen OID_GEN_LINK_PARAMETERS kann zu einem Verbindungsverlust führen. Miniporttreiber müssen den Miniportadapter neu konfigurieren, wenn diese OID festgelegt ist. Der Miniporttreiber kann z. B. den Miniport-Adapter mit dem daraus resultierenden Verlust vorhandener Verbindungen zurücksetzen. Der spezifische Mechanismus für die Neukonfiguration ist anwendungsabhängig.
Wenn sich der Verbindungszustand des Miniportadapters aufgrund der OID_GEN_LINK_PARAMETERS Set-Anforderung ändert, sollte der Miniporttreiber eine NDIS_STATUS_LINK_STATE status Anzeige generieren, um NDIS und überlastende Treiber über den neuen Linkstatus zu benachrichtigen.
Anforderungen
Header |
Ntddndis.h (include Ndis.h) |