Introduction to Microsoft SMB; A network file sharing protocol

SMB Protocol

SMB protocol was designed by the Microsoft for direct file sharing on the local area network.

  • The set of message packets which defines the version of the protocol called SMB dialect.
  • It’s a client-server model which is not limited to the file sharing but can also be used for sharing devices printers, serial printers and other resources available on local area network.
  • SMB service works on the well-defined port on 445 over the TCP/IP stack.
  • The set of messages called the dialect implements CIFS which is Common Internet File System.
  • Some functionalities of SMB protocol are included in it like network browsing, printing over a LAN, directory access.

In case of lower level protocol for support, SMB uses NetBIOS which is Network Basic Input/Output System. This was designed by the IBM that allows applications running on a different computer system to communicate with a LAN which is a base of SMB protocol. NetBIOS API can rely on Layer 3 protocol like UDP port 137 and 138.



Software Application for 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 so that SAMBA is able to provide the sharing service by employing this common internet file system. In general words, 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 System: Network File Sharing System

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 ways in which we can use NFS are

  • Migrating applications from one operating system to another by storing the data on shares accessible through both as a main NFS protocol.
  • Some famous applications like TeamViewer, ShareIT and many other uses this protocol from remote access and remote file sharing.

References: Microsoft SMB Protocol and CIFS Protocol



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.