Zusammenfassung der NetAdapterCx-Objekte

Die folgende Abbildung zeigt die Standardbeziehungen zwischen übergeordneten und untergeordneten Elementen für NetAdapterCx-Objekte. Übergeordnete Objekte befinden sich oben in der Abbildung, sodass das NETADAPTER-Objekt standardmäßig ein untergeordnetes Element des WDFDEVICE-Objekts ist. Objekte, die mehrere Instanzen aufweisen können, werden durch ein Doppelfeld gekennzeichnet.

Diagramm, das die Standardbeziehungen zwischen übergeordneten und untergeordneten Elementen für NetAdapterCx-Objekte zeigt.

Ein WDFDEVICE-Objekt ist ein Standardframeworkobjekt , das ein Gerät darstellt. Ein NETADAPTER-Objekt stellt eine Netzwerkschnittstelle dar, bei der es sich um den Endpunkt für alle Netzwerk-E/A-Vorgänge handelt. Sie können mehrere NETADAPTER-Objekte pro WDFDEVICE haben, wobei das WDFDEVICE das übergeordnete Objekt jedes NETADAPTER ist.

Die meisten Netzwerkschnittstellentreiber Karte (NIC) verfügen nur über einen NETADAPTER für ihr physisches Gerät, aber einige Clienttreiber verfügen möglicherweise über mehr als einen NETADAPTER, wenn sie eine Server-NIC mit mehreren Slots verwalten. Beispielsweise können MBBCx-Clienttreiber (Mobile Broadband WDF Class Extension) mehrere NETADAPTER-Objekte verwalten, die jeweils einen zusätzlichen Paketdatenprotokollkontext (PDP) darstellen.

NETADAPTER-Objekte müssen in der EVT_WDF_DRIVER_DEVICE_ADD Rückruffunktion des Clienttreibers initialisiert und erstellt werden, indem NetAdapterInitAllocate und NetAdapterCreate aufgerufen werden. Anschließend muss es innerhalb der EVT_WDF_DEVICE_PREPARE_HARDWARE Rückruffunktion des Treibers gestartet werden, indem NetAdapterStart aufgerufen wird. Vor dem Aufrufen von NetAdapterStart kann der Treiber optional die Funktionen des Adapters festlegen, z. B. Linkschichtfunktionen, Energiefunktionen, Datenpfadfunktionen, Empfangsskalierungsfunktionen und Hardwareauslagerungsfunktionen.

Weitere Informationen zur Beziehung zwischen dem NET_PACKET und NET_FRAGMENT-Objekten finden Sie unter Paketdeskriptoren und -erweiterungen. Weitere Informationen zu NET_RING-Objekten finden Sie unter Einführung in Netzringe.