Overview of Server Message Block 3.0 (SMB 3.0)
Windows 2012 comes with a new version of Server Message Block (SMB), 3.0, with many new features over SMB 2.0. With the new improvements made, SMB 3.0 enables server applications to use remote file servers to store their data on SMB shares, ex: Hyper-V, SQL, which allows easy provisioning, management, flexibility, and to lower cost. New features of SMB includes are:
SMB Transparent Failover: Transparent failover enables continues availability. During planned or unplanned failover, SMB client seamlessly move over to new server without interrupting the service. Note that SMB Transparent Failover is incompatible with short file name (8.3 file name) enabled volumes or with volumes that has NTFS-compressed files.
SMB Scale Out: This feature enables shares to have simultaneous access to the files through all nodes in the cluster, (Active/Active file server cluster). Briefly, by using DNS round robin, client can use any file servers on the cluster to access the files. The volumes these shares resides in needs to be created as CSV volumes and on Scale-out shares, Continuously Available property is set. SMB 2.x clients can connect to these shares but cannot benefit from SMB Transparent Failover.
SMB Multichannel: SMB 1.0/2.x clients can only use single SMB connection. As its name implies, with SMB Multichannel, client can open multiple connections and can use multiple NICs and CPU cores. Single channel would normally capped at the core speed of the CPU when there is enough bandwidth. When RSS is used, it is possible to spread the load onto multiple cores but it would still restricted to single SMB session. SMB Multichannelis enabled by default. To turn it off, set-smbserverconfiguration or set-smbclientconfiguration can be used with Enable Multichannel switch. Please note that when disabled, SMB direct also disabled since multichannel is used to detect RDMA of NIC.
SMB Direct (SMB over Remote Direct Memory Access (RDMA)): This feature is available on Server 2012 and only between SMB 3.0 server and client. SMD Direct enables applications to bypass communication layers and talk directly with the hardware to provide high throughput with low latency by offloading tasks to RDMA enabled NICs (Infiniband, iWARP (RDMA over TCPIP, RoCE RDMA over Converged Ethernet)
SMB Encryption: SMB 3.0 supports encrypting data per server or per share and when compatible CPU is used, allows to offload this encryption.It will be especially beneficial for remote workers.
VSS for SMB file shares: New VSS providers has also been provided for vendors to take advantage of VSS on new file shares (application-consistent copies, and backups from shadow copies). “File Share Shadow Copy Provider” and “File Share Shadow Copy Agent”
SMB Directory Leasing: In Branch offices scenarios, client can now cache directory and meta data for longer periods to reduce round trips from client to server.
SMB PowerShell: New SMB PowerShell cmdlets:
The versions of SMB implemented in Windows Operating Systems is as follows:
- CIFS – Microsoft Windows NT 4.0
- SMB 1.0 – Windows 2000, XP, Windows Server 2003 and 2003 R2
- SMB 2.0 – Windows Vista (SP1+) and Windows Server 2008
- SMB 2.1 – Windows 7 and Windows Server 2008 R2
- SMB 3.0 – Windows 8 and Windows Server 2012
Will write about some of the feature in detail later. More later 🙂