Server Block Message (SMB) Protocol

Last Updated : 24 Mar, 2026

SMB protocol is an application-layer network protocol. It follows client-server architecture whhere client system requests access to files available on the remote server.

  • Developed by IBM and later extended by Microsoft.
  • Allows users to read, write and modify files stored on the server.
  • Manages permissions by supporting authentication and access control.

SBM Dialects

It is a specific version of the SBM protocol. Various dialects define how mesages are structured and communication between client and server occurs.

  • It determines the features and capabilities supported by the protocol.
  • Each dialect improves performance, security, and reliability.
  • Examples include SMB 1.0 (CIFS), SMB 2.0, and SMB 3.0.

NetBIOS Support in SMB

In earlier implementations, SMB relied on NetBIOS (Network Basic Input/Output System) for communication.

  • NetBIOS allows applications on different computers to communicate over a local network.
  • It provides services such as name resolution, session management, and data transfer.
  • Common NetBIOS ports include UDP 137- NetBIOS Name Service, UDP 138- NetBIOS Datagram Service, TCP 139- NetBIOS Session Service

Implementation of SMB Protocol

The open-source software called SAMBA that can run best on UNIX environment and able to communicate with Microsoft Window's Clients.

  • SAMBA is able to provide the sharing service by employing this common internet file system.
  • SAMBA server allows resource sharing between a system running Microsoft OS and systems running UNIX.

SAMBA Installation/Configuration

On Terminal

sudo apt update
sudo apt install samba
samba
SAMBA

Now check the location of the installed files

whereis samaba
whereis samba
whereis samba

Now create directory in home/

Example:

mkdir sambashare

Now Configure the SAMBA Files Add the given below content in /etc/samba/samba.conf

[sambashare]
path=(Directory Path)
readonly = no
browsable = yes

Restart the smbd daemon by

sudo samba daemon smbd
sudo service smbd restart
service smbd restart
service smbd restart

NFS Systems are more specific to LINUX/UNIX environment, there is an application layer protocol called NFS which provides a file sharing solution in cross-platform environment. Some common uses of NFS are:

  • Migrating applications between operating systems by storing the data on shares accessible from multiple systems.
  • Some famous applications like TeamViewer, ShareIT and many other uses this protocol from remote access and remote file sharing.
Comment

Explore