Funktionsschnittstellenmodell
Windows Sockets-Transport- und Namespace-Dienstanbieter sind DLLs mit einem einzelnen exportierten Prozedureinstiegspunkt für die Dienstanbieterinitialisierungsfunktion WSPStartup bzw. NSPStartup. Alle anderen Dienstanbieterfunktionen werden dem Ws2-32.dll _ über die Dispatchtabelle des Dienstanbieters zugänglich gemacht. Dienstanbieter-DLLs werden von der Ws2-32.dll nur bei Bedarf in den Arbeitsspeicher geladen _ und entladen, wenn ihre Dienste nicht mehr benötigt werden.
Die SPI definiert auch mehrere Umstände, unter denen ein Transportdienstanbieter die _ Ws2-32.dll (Aufrufe) aufruft, um DLL-Supportdienste abzurufen. Die Transportdienstanbieter-DLL erhält die _ Upcall-Dispatchtabelle des Ws2-32.dll über den UpcallTable-Parameter an WSPStartup.
Dienstanbieter sollten ihre Dateinamenerweiterung von "DLL" in "" ändern. WSP" oder ". NSP". Diese Anforderung ist nicht streng. Ein Dienstanbieter arbeitet weiterhin mit dem _ Ws2-32.dll mit einer beliebigen Dateinamenerweiterung.
Die Winsock SPI verwendet die folgende Namenskonvention für Funktionspräfixe:
| Präfix | Bedeutung | Beschreibung |
|---|---|---|
| Wsp | Windows Sockets-Dienstanbieter | Einstiegspunkte des Transportdienstanbieters |
| WPU | Windows Sockets Provider Upcall | Ws2 _32.dll Einstiegspunkte für Dienstanbieter |
| Wsc | Windows Socketkonfiguration | WS2 _32.dll Einstiegspunkte für Installations-Applets |
| Nsp | Namespaceanbieter | Einstiegspunkte für Namespaceanbieter |
Wie oben beschrieben, werden diese Einstiegspunkte nicht exportiert (mit Ausnahme von WSPStartup und NSPStartup),sondern über einen Austausch von Dispatchtabellen.