Server Message Block
<protocol> (SMB) A
client/server protocol that provides file and printer sharing between computers.
In addition SMB can share serial ports and communications abstractions such as named pipes and mail slots.
SMB is similar to
remote procedure call (RPC) specialised for file system access.
SMB was developed by Intel,
Microsoft, and
IBM in the early 1980s.
It has also had input from Xerox and 3Com. It is the native method of file and print sharing for Microsoft operating systems; where it is called
Microsoft Networking.
Windows for Workgroups,
Windows 95, and
Windows NT all include SMB clients and servers.
SMB is also used by
OS/2,
Lan Manager and
Banyan Vines.
There are SMB servers and clients for
Unix, for example
Samba and
smbclient.
SMB is a
presentation layer protocol structured as a large set of commands (Server Message Blocks).
There are commands to support file sharing, printer sharing, user authentication, resource browsing, and other miscellaneous functions.
As clients and servers may implement different versions ("dialects") of the protocol they negotiate before starting a session.
The
redirector packages SMB requests into a network control block (NBC) structure that can be sent across the network to a remote device.
SMB originally ran on top of the lower level protocols
NetBEUI and
NetBIOS, but now typically runs over
TCP/IP.
Microsoft have developed an extended version of SMB for the
Internet, the
Common Internet File System (CIFS), which in most cases replaces SMB.
CIFS runs only runs over TCP/IP.
Just what is SMB? (http://samba.anu.edu.au/cifs/docs/what-is-smb.html).
IBM protocols (http://www.protocols.com/pbook/ibm.htm).
Microsoft SMB/CIFS documents (ftp://ftp.microsoft.com/developr/drg/CIFS/).