1.4 Relationship to Other Protocols
The CIFS protocol is transport-independent. It requires only a mechanism for sending and receiving the SMB messages that are specified in this document. CIFS is designed for use over reliable transport, and is most commonly carried over connection-oriented sessions. With only minor modifications, however, it is possible to use a connectionless transport to exchange CIFS messages.
The transport protocols most commonly used by CIFS fall into two basic categories: NetBIOS-based and Direct Hosting. NetBIOS-based transports include:
NetBIOS Frames Protocol (NBF), as specified in [NETBEUI].
NetBIOS over IPX/SPX, known as NBIPX, and described in [MSFT-NBNWLINK].
NetBIOS-based transports provide three common services: a Name Service, a Datagram Service, and a Session Service. On DOS, OS/2, and Windows platforms, these three services are used to support a NetBIOS interface layer that is accessed via a common API. Implementation of the NetBIOS API is not required for CIFS.
It is also possible to build a direct interface between CIFS and an underlying network transport without the use of a NetBIOS interface layer. In Microsoft documentation, this is referred to as "Direct Hosting". CIFS on DOS, OS/2, and Windows systems supports Direct Hosting over the connectionless IPX protocol. IPX Direct Hosting is briefly described in the Understanding NWLink section of [MSFT-NBNWLINK].
Protocols Transported by CIFS
The following protocols use CIFS as a transport and provide CIFS clients with access to additional server functionality:
The SMB Transaction, Transaction2, and NT Transaction subprotocols. These are SMB/CIFS extensions and are described within this document. The SMB Transaction subprotocol provides support for writing to and reading from named pipes.
The Remote Procedure Call (RPC) protocol over Named Pipes. SMB Transaction calls are used to perform I/O to named pipes. See [MS-RPCE] for more information on RPC Protocol Extensions.
Additional Related Protocols
CIFS services are announced via the CIFS Browser Protocol. CIFS clients access Local Master Browser Server and Backup Browser Server nodes in order to retrieve a copy of the services list, known as the Browse List. The CIFS Browser Protocol, which is specified in [MS-BRWS], creates and maintains the Browse List. This protocol makes use of the Remote Mailslot protocol and RAP. The CIFS Browser Protocol does not use this specification directly, but is included here for completeness. For more information, see [MSBRWSE], [MS-RAP], and [MS-MAIL].
The Messenger Service, which is documented in [MS-MSRP], is related to CIFS in that it uses messages that are formatted as SMB messages. Although they are formatted as SMB messages, Messenger Service messages are not part of the CIFS protocol.
The CIFS server interacts with the Server Service Remote Protocol [MS-SRVS] for file server management and for synchronizing the information on shares, sessions, treeconnects, file opens, and server configurations. The synchronization mechanism is dependent on the CIFS server and the server service starting up and terminating at the same time.
The Server Message Block Version 1.0 (SMB) Protocol, as implemented in Windows 2000 operating system and above, is specified in [MS-SMB], which lists extensions, enhancements, and clarifications to this document. Note, however, that the protocol described in [MS-SMB] uses the same dialect identifier ("NT LM 0.12") as CIFS.
The Server Message Block Version 2.0 (SMB2) Protocol, in contrast, is an entirely new file sharing protocol based upon SMB concepts. SMB2 is specified in [MS-SMB2].