The International Organization for Standardization (ISO) produce a set of international standards to facilitate interconnection of computer systems. The Open Systems Interconnection (OSI) Reference Model subdivides the set into a series of layers. Windows Sockets allows an application to use OSI Transport protocols.
Examples of OSI profiles that may be implemented are:
The OSI profile is designated either by the protocol parameter or the lpProtocolInfo parameter to the WSASocket API. The TP4/NULL profile is a subset of the TP4/CLNS profile, and is selected by the addressing information. The default OSI profile is TP4/CLNS.
An application must use the WSAPROTOCOL_INFO structure returned by WSAEnumProtocols to discover the services provided by a particular OSI profile. For example not all OSI profiles support Connect and disconnect data.