Server message block

from Wikipedia, the free encyclopedia
SMB over NetBIOS :
application SMB
transport NetBIOS
Mediation NetBEUI
Network access Ethernet Token
FDDI ...
SMB on NetBIOS over TCP / IP :
application SMB
adapter NetBIOS ( NBT )
transport UDP TCP
Internet IP
Network access Ethernet Token
FDDI ...
SMB in the TCP / IP protocol stack :
application SMB
transport UDP TCP
Internet IP ( IPv4 , IPv6 )
Network access Ethernet Token
FDDI ...

Server Message Block ( SMB ), also known as Common Internet File System ( CIFS ) in its original version , is a network protocol for file, print and other server services in computer networks . It is a central part of the network services of the Windows product family and allows access to files and directories that are located on another computer. It is also used by the freely available software project Samba to enable Windows systems to access resources from Unix- based systems and vice versa. This means that it is also used on many NAS systems.

SMB implements a network file system similar to NFS and is therefore largely independent of the underlying file system of the server. Higher protocols such as DFS are based on SMB.

In TCP / IP networks SMB was originally in NetBIOS over TCP / IP (NBT) via the TCP / UDP ports 137-139 encapsulated , the name resolution occurred frequently by WINS or broadcast . Today's Windows versions use SMB directly on TCP port 445 and resolve names via DNS and in small networks via LLMNR .


SMB was first introduced in 1983 by Barry Feigenbaum at IBM . In 1987 it became more widely available for the first time as the protocol of the OS / 2 network extension called LAN Manager and the related product LAN Server . It also became more and more popular in local networks thanks to its use in early Windows versions such as Windows for Workgroups through the Windows 9x series and the Windows NT product family.

Over time, the protocol has been expanded by various companies and groups, including Microsoft , 3Com , SCO , Thursby , IBM and the Samba developers. Microsoft contributed most of the enhancements, but initially did not publish any specifications. Only after a ruling in the cartel dispute by the European Union in 2004 was SMB made available to developers as part of the Workgroup Server Protocols Program in 2007.


The term was used again and again with different meanings. Microsoft originally used it in 1996 to establish SMB based on the Windows NT 4.0 implementation as the standard protocol for file access in TCP / IP networks (see overview), also in response to similar efforts on the part of the NFS developer Sun Microsystems ( WebNFS ) in the era of the emerging internet. At the same time, CIFS was used more and more often as a synonym for the SMB protocol in general or even its entire protocol family. Today Microsoft refers to SMB 1.0 as CIFS, also to distinguish it from the completely revised subsequent version.

SMB 1.0

With Windows 2000 there was no need for the additional NetBIOS layer, SMB could be operated directly via TCP / IP and thus somewhat more efficiently.

SMB 2.0

This first major revision of the SMB protocol improved performance by reducing it to fewer commands and optionally chaining them, which increases speed, especially in wide area networks (WANs). Version 1 remained in Windows for compatibility reasons.

SMB 3.0

With version 3, SMB was expanded to include the SMB Direct Protocol (SMB via RDMA ), failover mechanisms and multichannel SMB (multiple connections per session). Furthermore, it was end-to-end encryption introduced. This means that SMB can also be used as the basis for virtualization platforms .


The following table provides an overview of the SMB versions and their introduction and support as well as the new features they contain.

SMB version Supported since New features
CIFS Windows NT 4.0 Standardization proposal from Microsoft to the IETF
1.0 Windows 2000 SMB directly over TCP / IP
2.0 Windows Vista / Windows Server 2008 / Samba 3.5 higher performance through more compact communication and fewer commands
2.1 Windows 7 / Windows Server 2008 R2 further smaller optimizations and new locking mechanisms
3.0 Windows 8 / Windows Server 2012 / Samba 4.0 Extensions for operation as a virtualization basis, encryption
3.0.2 Windows 8.1 / Windows Server 2012 R2
3.1.1 Windows 10 / Windows Server 2016 / Samba 4.3 further increase in protocol security (encryption, integrity check )


The implementation of the SMB protocol in version 1.0, which is still contained in current versions of Windows, is susceptible to critical security gaps. This protocol version is also classified as a risk factor in terms of content due to its 30-year-old architecture. For example, the cyber attack with the WannaCry ransomware in May 2017 was based on such a security vulnerability.

With the Fall Creators Update (version 1709) for Windows 10 published in October 2017, Microsoft decided not to install version 1.0 of SMB by default, or to uninstall it automatically if it is not used. In addition, the old SMB version can be specifically deactivated in all Windows versions in order to increase security.

Even Apple disabled SMB 1.0 standard with the introduction of macOS Catalina in October of 2019.

Web links

  • MS-CIFS - Common Internet File System (CIFS) Protocol (Microsoft Open Specifications)
  • MS-SMB2 - Server Message Block (SMB) Protocol Versions 2 and 3 (Microsoft Open Specifications)

Individual evidence

  1. ^ Workgroup Server Protocols Program. Retrieved September 24, 2018 .
  2. Microsoft finally bows to EU antitrust measures. In: Wayback Machine. Reuters, October 24, 2007, accessed September 24, 2018 .
  3. Andrew Tridgell: Myths About Samba. Accessed August 8, 2019 .
  4. (MS-CIFS): Introduction. Retrieved August 5, 2019 .
  5. Network protocols SMB 3 and SMB 2 in detail February 15, 2013
  6. SMB Security Enhancements. Accessed August 8, 2019 .
  7. Windows Server 2012 R2: Which version of the SMB protocol (SMB 1.0, SMB 2.0, SMB 2.1, SMB 3.0 or SMB 3.02) are you using? Accessed August 8, 2019 .
  8. Common Internet File System Protocol (CIFS / 1.0). Accessed August 8, 2019 .
  9. Stop using SMB1. Retrieved June 25, 2017 (English).
  10. Retrieved May 18, 2018 .
  11. Deactivate SMB1. Retrieved December 26, 2018 .
  12. Apple Releases Fifth Beta of macOS Catalina 10.15 (19A526h) Beta 5. Mr. Macintosh, August 1, 2019, accessed on March 1, 2020 .