SMB

Stands for "Server Message Block."

SMB is a network communication protocol for file and printer sharing over a local or wide-area network. File servers use SMB to create shared folders that other computers can browse over the network just as easily as if they were on the computer's local disk. Only Windows-based computers use SMB sharing by default, but other operating systems can enable SMB support through software implementations like Samba.

The SMB protocol uses the client-server model to exchange data between computers. The client first requests access to a shared resource using the server's hostname or IP address. The server evaluates that request, then asks the client for authentication using a username and password. Once authenticated, the client can request specific files or other resources through additional messages to the server. The server uses SMB to break the files into packets for transfer, reassembling them on the client's disk.

A folder shared using SMB in Windows 10
A folder shared using SMB in Windows 10

There have been several updates to the SMB protocol since its original implementation, offering increased security, reliability, and performance. The original version, SMB 1.0, was created to add network file sharing to DOS in 1983 and was later included in Windows. SMB 2.0 was released in 2006, adding stronger authentication while improving performance and reducing network overhead. SMB 3.0 came in 2012, adding end-to-end encryption for file transfers for increased security.

Updated May 18, 2023 by Brian P.

quizTest Your Knowledge

Which Microsoft technology was designed to allow programs to run on multiple devices?

A
VCL
0%
B
UWP
0%
C
WPF
0%
D
Winforms
0%
Correct! Incorrect!     View the UWP definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of SMB on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.