Erstellen eines Proxytreibers für einen SAN-Dienstanbieter

Ein Proxytreiber für einen SAN-Dienstanbieter ist ein Kernelmodustreiber, der Aufgaben ausführt, die für den Windows Sockets-Switch und den SAN-Dienstanbieter erforderlich sind. Zu diesen Aufgaben gehören die Verwaltung des Arbeitsspeichers und die Ermittlung der IP-Adressen von Netzwerkschnittstellencontrollern (NICs), die unter der Kontrolle des Proxytreibers stehen. Der Proxytreiber muss kein WDM-Treiber (Windows Driver Model) sein. Das heißt, es ist nicht erforderlich, Plug & Play- oder Energieverwaltung zu unterstützen. Weitere Informationen zum Entwickeln eines Kernelmodustreibers finden Sie unter Kernelmodustreiberkomponenten.

Unterschiedliche Anbieter können unterschiedliche zugrunde liegende Technologien verwenden, um ihre SAN-Netzwerkschnittstellencontroller (NICs) zu implementieren. Daher gibt Windows Sockets Direct keine Schnittstelle zwischen einem SAN-Dienstanbieter und seinem Proxytreiber oder zwischen dem Proxytreiber und einem SAN-Transport an.

Ein SAN NIC-Anbieter muss eine Transportschnittstelle implementieren, die für die zugrunde liegenden Technologien geeignet ist. Ein Anbieter kann diese Schnittstelle in der SAN-NIC, in einem Kernelmodustreiber für die SAN-NIC oder beides implementieren. Ein SAN-Dienstanbieter ordnet diese Schnittstelle direkt dem Adressraum eines Benutzermodusprozesses zu. Ein Anbieter muss sicherstellen, dass alle Puffer, die über diese Schnittstelle übergeben werden, gesperrt und bei der SAN-NIC registriert werden.

In den folgenden Abschnitten wird beschrieben, wie Sie einen Proxytreiber für eine SAN-Dienstanbieter-DLL erstellen:

Initialisieren und Entladen eines SAN-Proxytreibers

Zuweisung und Freigeben von Arbeitsspeicher für einen SAN-Proxytreiber

Schützen und Freigeben des Besitzes virtueller Adressen

Registrieren für SAN NIC-Benachrichtigungen

Übersetzen in eine native SAN-Adresse

Implementieren von IOCTLs für einen SAN-Dienstanbieter