Протокол обмена блоками серверных сообщений (SMB) — это протокол обмена файлами между клиентом и сервером, который был разработан компанией IBM в конце 1980-х годов для описания структуры общих ресурсов сети, таких как каталоги, файлы, принтеры и последовательные порты. Это протокол типа «запрос-ответ».

Протокол SMB описывает доступ к файловой системе и способ запроса файлов клиентами. Он также описывает связь между процессами SMB. Все сообщения SMB имеют общий формат. В этом формате используется фиксированная длина заголовка, после которого следует параметр переменного размера и компонент данных.

С помощью сообщений SMB можно выполнять следующие действия:

Общий доступ к файлам и службам печати на основе SMB является отличительной особенностью сетей Microsoft. Начиная с серии систем Windows 2000, компания Microsoft изменила базовую архитектуру для использования протокола SMB. В предыдущих версиях продуктов Microsoft в службах SMB для разрешения имён использовался протокол, отличный от TCP/IP и не использовался сервис DNS. Начиная с версии Windows 2000, во всех последующих продуктах Microsoft используется система имён DNS, которая позволяет протоколам стека TCP/IP напрямую поддерживать общие ресурсы SMB, как показано на рисунке 1. На рисунке 2 показан процесс обмена файлами по SMB между компьютерами с операционной системой Windows.

В отличие от обмена файлами по протоколу FTP, клиенты устанавливают долговременное подключение к серверам. После установки соединения пользователь может получить доступ к ресурсам на сервере, если этот ресурс является локальным по отношению к узлу клиента.

Операционные системы LINUX и UNIX также позволяют открывать общий доступ к ресурсам в сетях Microsoft, используя версию SMB под названием SAMBA. Операционные системы Apple Macintosh также поддерживают работу с общими ресурсами по протоколу SMB.