Winsock and WOSA
A version of this page is also available for
4/8/2010
The Winsock network transport and name resolution services are provided as a WOSA services. They consist of both an application programming interface (API) used by applications and service provider interfaces (SPIs) implemented by service providers.
WOSA provides a common set of interfaces for connecting front-end applications with back-end services. These applications and services need not speak each other's language to communicate as long as they can communicate with their respective WOSA interface. As a result, WOSA allows application developers and vendors of back-end services to mix and match applications and services to build solutions that shield programmers and users from the underlying complexity of the system.
WOSA defines an abstraction layer to heterogeneous computing resources through the WOSA set of APIs. Because this set of APIs is extensible, new services and corresponding APIs can be added as needed. Applications written to the WOSA APIs have access not only to various computing environments, but also to additional environments as they become available.
To provide transparent access for applications, each service recognized by WOSA has interfaces that service-provider vendors use. Each implementation of a WOSA service must support the functions defined by its service provider interface.
Winsock uses a Windows dynamic-link library (DLL) that allows applications and service provider software to be bound together at run time. In this way, applications can connect to services dynamically. An application needs to know only the definition of the interface, not its implementation.