Поддержка распределенной файловой системы (DFS)

Диалекты протокола NT LM 0.12 и более поздние версии поддерживают операции распределенной файловой системы (DFS — Distributed File System). DFS предоставляет для этого протокола способ использования единственной согласованной схемы именования файлов, которая может охватывать совокупность различных серверов и ресурсов общего доступа. Модель DFS использует модель на основе направлений. Этот протокол определяет способ, которым клиенты получают направления.
Клиент может установить в заголовке запроса SMB флаг, указывающий, что клиент хочет, чтобы сервер разрешил в DFS пути доступа SMB, которые известны серверу. Сервер пытается разрешить запрошенное имя в файл, содержащийся внутри локального дерева каталогов, указанного TID запроса, и затем нормально продолжить. Если путь доступа запроса разрешается в файл на другой системе, то сервер возвращает следующую ошибку.
STATUS_DFS_PATH_NOT_COVERED - сервер не поддерживает часть пространства DFS, требуемую для разрешения пути доступа в запросе. Клиент должен запросить на этом сервере направление для дополнительной информации.
Клиент запрашивает направление с помощью запроса TRANS2-DFS-GETREFERRAL, содержащего интересующий путь доступа DFS. Ответ с сервера указывает, как клиент должен продолжить.
Метод, с помощью которого топологическое представление DFS хранится и поддерживается серверами, не определен этим протоколом.
Заголовок SMB
Хотя каждая команда SMB имеет определенное кодирование, в заголовке SMB есть несколько полей, которые имеют значение для всех SMB. Как можно увидеть в распечатке ниже, протокол SMB выполняется поверх NetBIOS, который переносится поверх TCP, реализованный поверх IP, который реализован поверх метода доступ к среде Ethernet. Эти поля описаны в последующих разделах.