Какие протоколы сетевого доступа к файловым системам поддерживаются windows server по умолчанию

Обновлено: 05.07.2024

Протокол Server message block (SMB) в той или иной форме используется в любой организации для доступа к хранилищам. Это может быть доступ к сценариям регистрации, установочным дискам с программным обеспечением, либо к пользовательским документам и коллекции музыки MP3. Где SMB не применяется, так это в протоколах доступа к файлу (здесь клиент вместо прямого доступа к блокам на диске получает доступ к файлам) при обращении корпоративных приложений к внешнему хранилищу. Что касается обмена данными с хранилищем в корпоративной рабочей среде, то в списке лидируют блочные технологии (где сервер напрямую взаимодействует с блоками на диске), такие как iSCSI и Fibre Channel (и, возможно, NFS для отличных от Windows рабочих приложений).

. Когда пользователь редактирует документ Microsoft PowerPoint, хранящийся на общем ресурсе SMB, части этого документа локально кэшируются, и время от времени пользователь нажимает кнопку «Сохранить». При возникновении проблемы на файловом сервере SMB, например связанной с перезагрузкой, либо с перемещением общей папки на другой узел кластера (если сервер является частью кластера), пользователь теряет дескриптор доступа к файлу, но без каких-либо последствий. При следующем нажатии кнопки «Сохранить» все восстанавливается, и ничего страшного не происходит. Теперь рассмотрим Hyper-V и виртуальную машину, хранящуюся на файловом ресурсе SMB общего доступа. При возникновении проблемы с хостом общий ресурс перемещается на другой узел кластера. Hyper-V ожидает наступления тайм-аута TCP, после чего констатирует ошибку первоначального соединения. Для виртуальной машины это может означать 30-секундную паузу. Однако Hyper-V уже утратил дескрипторы на виртуальном жестком диске VHD, а это более серьезная проблема. Если продолжительность работы с пользовательским документом может исчисляться несколькими часами, то корпоративные службы, виртуальные машины и базы данных требуют бесперебойной доступности файловых дескрипторов на протяжении многих месяцев.

К счастью, SMB 3.0 решает эту проблему (как и многие другие). При создании Windows Server 2012 было решено сделать SMB протоколом хранилища файлового уровня, способным обслуживать критически важные корпоративные рабочие нагрузки, такие как Microsoft Hyper-V и SQL Server. Эта перемена требовала крупных изменений в протоколе SMB.

Прозрачная отказоустойчивость

Применительно к обслуживанию корпоративных данных (например, виртуальных машин или баз данных SQL Server) SMB, как правило, используется не на отдельном файловом сервере, а на кластере, что должно обеспечить высокую доступность. При реализации службы файлов на кластере на одном из узлов обычно монтируется логический том с номером LUN, содержащий общую файловую систему и открывающий доступ клиентам SMB к ресурсу общего доступа. При отказе этого узла LUN монтируется на другом узле кластера. При этом клиент SMB теряет файловые дескрипторы.

Служба SMB Transparent Failover обеспечивает защиту от отказа узла. Перемещение общего ресурса между узлами совершается абсолютно прозрачно для клиентов SMB, что позволяет им сохранять все существующие файловые дескрипторы и иметь бесперебойное соединение SMB.

Соединение SMB поддерживается между тремя объектами: клиентом SMB, сервером SMB и диском, на котором содержатся данные. Прозрачная отказоустойчивость SMB гарантирует существование достаточных условий для передачи соединения SMB альтернативному узлу в случае отказа, что позволяет бесперебойно осуществлять процессы, зависящие от SMB.

Однако даже прозрачная отказоустойчивость SMB Transparent Failover не исключает паузы в операциях ввода/вывода, когда LUN монтируется на другом узле кластера. Группа разработчиков отказоустойчивой кластеризации проделала огромную работу по оптимизации демонтажа и монтажа LUN, сократив максимальную длительность этой процедуры до 25 секунд. Это время кажется долгим, но оно относится к наиболее неблагоприятному сценарию с участием большого числа логических устройств и десятков тысяч дескрипторов. Для наиболее распространенных сценариев эта процедура будет выполняться за пару секунд, а корпоративные службы, такие как Hyper-V и SQL Server, способны обрабатывать 25-секундную паузу в работе подсистемы ввода/вывода без ошибок.

Благодаря этому знанию новая служба-свидетель Witness Service в Windows Server 2012 позволяет одному из узлов кластера выступать свидетелем по отношению к клиенту SMB. Если узел, с которым общается клиент, выходит из строя, то узел-свидетель уведомляет об этом клиента SMB, что позволяет клиенту подключиться к другому узлу, а время прерывания обслуживания сокращается до пары секунд. Диалог выглядит примерно так (с использованием 1 и 0 вместо слов):

Клиент SMB – серверу A: «Я хочу установить соединение».

Сервер A: «Соединение установлено. Я являюсь частью кластера, в котором также есть серверы B, C и D».

Клиент SMB – серверу B: «Я установил соединение SMB с сервером A. Прошу наблюдать за сервером A и уведомить меня в случае его отказа».

Сервер B: «ОК. Удачного дня».

Чтобы воспользоваться преимуществами прозрачной отказоустойчивости SMB или службы-свидетеля, ничего делать не нужно. При создании нового ресурса общего доступа на отказоустойчивом кластере Windows Server 2012 функция прозрачной отказоустойчивости SMB включается автоматически. Процесс создания нового ресурса на кластере файловых серверов Windows Server 2012 направляет мастер. Вначале требуется решить, какой тип ресурса вы создаете. Ответ на этот вопрос помогает установить некоторые параметры по умолчанию для создаваемого ресурса, как показано на экране 1. Для всех типов ресурсов SMB режим Enable continuous availability включен (см. экран 2).

Создание общего файлового ресурса
Экран 1. Создание общего файлового ресурса

Включение режима прозрачной отказоустойчивости
Экран 2. Включение режима прозрачной отказоустойчивости

Схема SMB «активный/активный»

Ранее я уже говорил о необходимости сокращения паузы в работе подсистемы ввода-вывода при перемещении совместно используемого LUN с узла на узел. Похожая проблема возникает у Windows Server 2008 Hyper-V при перемещении виртуальных машин между узлами. Дело в том, что NTFS не является файловой системой коллективного пользования и не предусматривает возможность одновременного доступа к ней нескольких экземпляров операционной системы без риска повреждения. Эта проблема была решена за счет поддержки общего тома кластера cluster shared volume (CSV) в Windows Server 2008 R2. Благодаря CSV все узлы кластера могут одновременно получать доступ к группе логических устройств (LUN) для выполнения операций чтения и записи, что устраняет необходимость в демонтаже LUN на одних узлах и последующем монтаже на других.

Windows Server 2012 расширяет возможности применения CSV для конкретного типа файлового сервера, а именно, нового масштабируемого файлового сервера. Этот новый вариант предназначен для использования только при коллективном доступе к данным приложений, таких как базы данных SQL Server и виртуальные машины Hyper-V. Для других данных по-прежнему доступен традиционный вариант универсального файлового сервера (см. экран 3).

Выбор варианта файлового сервера
Экран 3. Выбор варианта файлового сервера

Приняв решение задействовать масштабируемый файловый сервер, вы должны будете выбрать CSV в качестве хранилища ресурсов общего доступа. Поскольку общее хранилище доступно для всех узлов кластера, по отношению к нему все узлы будут выступать в роли хоста. Таким образом, соединения клиентов SMB будут распределены по всем узлам, а не сосредоточены на одном. Отказ одного из узлов не повлечет за собой перемещения LUN, что сведет перерывы в работе к минимуму. Это чрезвычайно важно для хранилищ данных приложений, на обслуживание которых и рассчитан масштабируемый файловый сервер.

Использование масштабируемых файловых серверов имеет дополнительные преимущества. При создании обычного файлового сервера необходимо дать новому файловому серверу кластера NetBIOS-имя и уникальный IP-адрес. Этот IP-адрес должен храниться на том узле кластера, который в данный момент хостирует файловый сервер. При использовании масштабируемых файловых серверов хостами являются все узлы кластера. Таким образом, никаких дополнительных IP-адресов не требуется. Точкой доступа к IP-адресам узлов кластера служит распределенное сетевое имя Distributed Network Name (DNN).

Следует отметить, что, хотя все узлы в кластере способны выполнять одни и те же серверные функции и обслуживать доступ к коллективному ресурсу, при использовании масштабируемого файлового сервера каждый клиент SMB единовременно подключается только к одному узлу. Инициируя соединение, клиент SMB получает список IP-адресов всех хостов в кластере. Из списка клиент выбирает один узел, с которым начинает сеанс связи SMB. Впоследствии клиент использует только этот узел, пока на нем не возникают проблемы. Если они возникли, клиент обращается к альтернативному узлу, за исключением случаев применения службы-свидетеля.

Защита от ошибки соединения: многоканальное подключение SMB

Прозрачная отказоустойчивость SMB и схема SMB «активный/активный» позволяют избежать перерывов в работе, возникающих из-за отказа узла. Однако существуют и другие типы отказов, например ошибка соединения. Для противодействия подобным проблемам можно применять технологию многопутевого ввода/вывода Microsoft Multipath I/O (MPIO) с поддержкой нескольких маршрутов взаимодействия между сервером и хранилищем. В SMB 3.0 реализована функция многоканального подключения SMB, позволяющая клиенту SMB во время одного сеанса устанавливать несколько соединений, что обеспечивает защиту от ошибок подключения и повышает производительность.

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

Определить, работает ли на сервере функция многоканального подключения SMB, можно с помощью команды PowerShell Get-SMBConnection, позволяющей вывести список подключений SMB к ресурсу общего доступа. На экране 4 показан результат выполнения этой команды. Как мы видим, используется только одно подключение к серверу.

Команда PowerShell Get-SMBConnection выводит?список подключений SMB
Экран 4. Команда PowerShell Get-SMBConnection выводит?с писок подключений SMB

Эта информация указывает на наличие единственного пригодного к использованию маршрута связи между клиентом SMB и сервером SMB. Если запустить команду Get-SmbMultichannelConnection с клиента, то ее выходным результатом будет список всех возможных путей, по которым можно установить соединение с сервером (см. экран 5).

Команда Get-SmbMultichannelConnection выводит?список всех возможных путей
Экран 5. Команда Get-SmbMultichannelConnection выводит? список всех возможных путей

Однако этот список формируется в результате «отложенной» проверки и не означает, что данный маршрут действительно может быть установлен между IP-адресами 10.1.3.1 и 10.1.2.1 клиента и сервера.

Узнать, какой путь фактически используется между клиентом и сервером, можно по ТСР-подключениям к удаленному порту 445, используемому для SMB. В моем случае проверка подтверждает, что я использую единственный возможный путь, а именно, удаленный адрес 192.168.1.30 (см. экран 6).

Проверка пути между клиентом и сервером
Экран 6. Проверка пути между клиентом и сервером

В отношении подключения клиента SMB к общему ресурсу SMB, хостируемому кластером по схеме «активный/активный», возникает очевидный вопрос: устанавливаются ли эти несколько вариантов соединений с разными узлами кластера? Ответ — нет. Клиент SMB получает один IP-адрес, принадлежащий одному из узлов в кластере, и все соединения устанавливаются с этим узлом. Все сеансы SMB для данного кластера, инициируемые клиентом SMB, всегда проходят с участием одного и того же узла. Это не вызывает проблем, поскольку кластер высокой отказоустойчивости, как правило, имеет сотни, если не тысячи, подключений клиентов SMB. Нагрузка распределяется равномерно по всему кластеру.

Максимальное увеличение пропускной способности: масштабирование на стороне приема и удаленный доступ к памяти

Заметим, что в выходных данных команды указано число 4 в качестве значений CurrentChannels и MaxChannels. Это значение по умолчанию для Windows Server 2012 при использовании сетевых карт с поддержкой RSS.

Если теперь проверить состояние многоканального SMB-соединения с сервером (см. экран 8), можно увидеть, что для IP-адреса, используемого SMB, установлены четыре отдельных соединения, что указывает на работу функции RSS.

Может возникнуть вопрос: почему сетевой интерфейс с поддержкой RSS по умолчанию разделен на четыре соединения? В этом можно убедиться с помощью команды PowerShell Get-SmbClientConfiguration, позволяющей просмотреть настройки клиента SMB. В первой строке полученных в ответ данных будет указано число соединений на один сетевой интерфейс RSS. Это значение можно изменить, но оно выбрано не случайно. В Microsoft был проведен большой объем тестирования 10-гигабитных соединений, в ходе которого выяснилось, что четыре соединения дают наибольший выигрыш, тогда как при дальнейшем увеличении их числа этот выигрыш уменьшается. Тем не менее, если у вас есть соединения с пропускной способностью свыше 10 Гбит/с, то увеличение этого значения может дать положительный эффект.

Удаленный прямой доступ к памяти Remote Direct Memory Access (RDMA) – еще одна технология, позволяющая повысить пропускную способность и минимизировать нагрузку на сервер. Сетевые адаптеры с поддержкой RDMA могут обходить большую часть сетевого стека и соединяться напрямую, что позволяет снять нагрузку с хост-серверов. С помощью ранее упомянутой команды Get-SmbMultichannelConnection можно узнать, поддерживает ли сетевой адаптер RDMA. Начальная инициализация соединения SMB предусматривает проверку наличия поддержки RDMA на обоих концах соединения. Если такая поддержка есть, то соединение переключается на RDMA. В этом случае также никакой ручной настройки не требуется.

Мощное решение

SMB 3.0 используется только между операционными системами с поддержкой SMB 3.0, то есть Windows Server 2012 и Windows 8. Для других операционных систем применяется новая общая для них поддерживаемая версия SMB, определяемая в ходе взаимного согласования возможностей. Например, если система Windows 7 подключается к файловому серверу Windows Server 2012, то используется SMB 2.1, поскольку это самая новая из поддерживаемых Windows 7 версий.

Основным побудительным мотивом для внесения большинства изменений в SMB 3.0 было стремление сделать SMB протоколом для корпоративных приложений. Именно в этой сфере реализуется наибольший положительный эффект от применения SMB. Есть также выгоды для постоянных клиентов – например, тех, кто перешел на Windows 8. SMB 3.0 недоступен для версий, предшествующих Windows 8 и Windows Server 2012. Например, новое шифрование SMB устраняет необходимость в сложных инфраструктурах открытых ключей public key infrastructure (PKI) для обеспечения безопасности. В комбинации со многими другими реализованными в Windows Server 2012 усовершенствованиями хранилищ, SMB 3.0 переводит новую операционную систему в разряд мощных решений для хранения данных и открывает перед клиентами еще более широкие возможности.

В этой статье описывается функция SMB 3 в Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 и Windows Server 2012, а также практическое применение совершенно новой или обновленной функциональной возможности этой версии по сравнению с предыдущими, а также требования к оборудованию. SMB также является протоколом структуры для решений программно-определяемого центра обработки данных (SDDC), например для Локальных дисковых пространств, реплик хранилища и др. SMB версии 3.0 появился в Windows Server 2012 и постепенно улучшался в последующих выпусках.

Описание компонента

Протокол SMB — это сетевой протокол для общего доступа к файлам, который позволяет приложениям компьютера читать и записывать файлы, а также запрашивать службы серверных программ в компьютерной сети. Протокол SMB может использоваться поверх протокола TCP/IP или других сетевых протоколов. С помощью протокола SMB приложение (или использующий его пользователь) может получать доступ к файлам и другим ресурсам удаленного сервера. Это позволяет приложениям читать, создавать и обновлять файлы на удаленном сервере. SMB может также обмениваться данными с любой серверной программой, которая настроена на получение клиентских запросов SMB. SMB — это протокол структуры, который используется вычислительными технологиями программно-определяемых центров обработки данных (SDDC), такими как Локальные дисковые пространства и реплики хранилища. Дополнительные сведения см. в статье Windows Server software-defined datacenter (Программно-определяемый центр обработки данных Windows Server).

Практическое применение

В этом подразделе описан ряд способов использования нового протокола SMB 3.0.

  • Хранилище файлов для виртуализации (Hyper-V™ через SMB) . С помощью протокола SMB 3.0 Hyper-V может хранить в файловых ресурсах общего доступа файлы виртуального компьютера, например файлы конфигурации, файлы виртуального жесткого диска (VHD) и снимки. Этот способ может использоваться как для изолированных файловых серверов, так и для кластерных файловых серверов, которые используют Hyper-V вместе с общедоступным хранилищем файлов для кластера.
  • Microsoft SQL Server через SMB. SQL Server может хранить файлы базы данных пользователей в файловых ресурсах SMB. Сейчас эта возможность поддерживается SQL Server 2008 R2 для изолированных серверов SQL. В будущих версиях SQL Server будет добавлена поддержка кластерных серверов SQL и системных баз данных.
  • Традиционное хранение данных пользователя. Протокол SMB 3.0 предоставляет дополнительные возможности для рабочих нагрузок клиентов или сотрудников, работающих с информацией. Эти возможности включают сокращение задержек приложений при получении пользователями филиала доступа к данным через глобальную сеть и защиту данных от перехвата злоумышленниками.

Если вам нужно сэкономить дисковое пространство в общем файловом ресурсе SMB, рассмотрите возможность использования Синхронизации файлов Azure с включенным распределением по уровням облака. Благодаря этому вы сможете кэшировать часто используемые файлы локально и распределять редко используемые файлы по уровням облака, сохраняя пространство в локальном хранилище и поддерживая производительность. Дополнительные сведения см. в статье Планирование развертывания Синхронизации файлов Azure.

Новые и измененные функции

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

Функции, добавленные в Windows Server 2019 и Windows 10 версии 1809

Функции, добавленные в Windows Server версии 1709 и Windows 10 версии 1709

Компонент или функция Новинка или обновление Сводка
Гостевой доступ к общим папкам отключен Создать Клиент SMB больше не разрешает следующие действия: доступ учетной записи гостя к удаленному серверу; откат к учетной записи гостя после ввода недопустимых учетных данных. Дополнительные сведения см. в статье Гостевой доступ в SMB2 отключен по умолчанию в Windows.
Глобальное сопоставление SMB Создать Сопоставляет удаленную общую папку SMB с буквой диска, доступного всем пользователям на локальном узле, включая контейнеры. Это необходимо, чтобы включить операции ввода-вывода для контейнера в томе данных для прохода через удаленную точку подключения. Учтите, что при использовании глобального сопоставления SMB для контейнеров всем пользователям на узле контейнера предоставляется доступ к удаленной общей папке. Все приложения, работающие на узле контейнера, также получат доступ к сопоставленной удаленной общей папке. Дополнительные сведения см. в статье Container Storage Support with Cluster Shared Volumes (CSV), Storage Spaces Direct, SMB Global Mapping (Поддержка контейнера хранилища с общими томами кластера (CSV), Локальными дисковыми пространствами и глобальным сопоставлением SMB).
Управление диалектом SMB Создать Теперь можно задать значения реестра, чтобы управлять минимальной (диалектом) и максимальной версией SMB. Дополнительные сведения см. в статье Controlling SMB Dialects (Управление диалектами SMB).

Функции, добавленные в SMB 3.11 с Windows Server 2016 и Windows 10 версии 1607

Дополнительные сведения см. в статье What’s new in SMB 3.1.1 in the Windows Server 2016 Technical Preview 2 (Новые возможности SMB 3.1.1 в Windows Server 2016 (техническая версия 2)).

Возможности, добавленные в SMB 3.02 с Windows Server 2012 R2 и Windows 8.1

Компонент или функция Новинка или обновление Сводка
Автоматическая повторная балансировка клиентов масштабируемого файлового сервера Создать Увеличивает масштабируемость и управляемость масштабируемых файловых серверов. Клиентские подключения SMB отслеживаются для каждого общего файлового ресурса (а не для каждого сервера), после чего клиенты перенаправляются в узел кластера с оптимальным доступом к тому, используемому общим файловым ресурсом. Это повышает производительность, снижая трафик перенаправления между узлами файлового сервера. Клиенты перенаправляются после начального подключения при перенастройке системы хранения данных кластера.
Производительность в глобальной сети Обновлено В Windows 8.1 и Windows 10 улучшена работа CopyFile SRV_COPYCHUNK благодаря поддержке SMB при использовании проводника для удаленного копирования из одного расположения на удаленном компьютере в другую копию на том же сервере. Вы скопируете только небольшой объем метаданных через сеть (передается 1/2 КиБ на 16 МиБ данных файла). Это приводит к значительному увеличению производительности. Для SMB — это различие на уровне операционной системы и проводника.
SMB Direct Обновлено Улучшает производительность нагрузок малого ввода-вывода, повышая эффективность при размещении нагрузок с малыми вводами-выводами (например, база данных оперативной обработки транзакций (OLTP) в виртуальной машине). Эти улучшения заметны при использовании более быстрых сетевых интерфейсов, таких как Ethernet 40 Гбит/с и InfiniBand 56 Гбит/с.
Ограничения пропускной способности SMB Создать Теперь можно использовать Set-SmbBandwidthLimit, чтобы задать ограничения пропускной способности в трех категориях: VirtualMachine (трафик Hyper-V по протоколу SMB), LiveMigration (трафик динамической миграции Hyper-V по протоколу SMB) или по умолчанию (все остальные типы трафика SMB).

Дополнительные сведения о новых и измененных функциях SMB в Windows Server 2012 R2 см. в статье What's New in SMB in Windows Server (Новые возможности SMB в Windows Server).

Функции, добавленные в SMB 3.0 с Windows Server 2012 и Windows 8

Компонент или функция Новинка или обновление Сводка
Прозрачная отказоустойчивость SMB Создать Позволяет администраторам обслуживать аппаратное и программное обеспечение узлов кластерного файлового сервера, не прерывая работу приложений сервера, хранящих данные в этих файловых ресурсах. Кроме того, при сбое оборудования или программного обеспечения в узле кластера клиенты SMB подключатся к другому узлу кластера, не прерывая работу приложений сервера, хранящих данные в этих файловых ресурсах.
Масштабирование SMB Создать Поддержка нескольких экземпляров SMB на масштабируемом файловом сервере. С помощью версии 2 общих томов кластера (CSV) администраторы могут создавать файловые ресурсы, предоставляющие одновременный доступ к файлам данных с прямыми операциями ввода-вывода через все узлы кластера файлового сервера. Это улучшает использование пропускной способности сети и балансировку нагрузки клиентов файлового сервера, а также оптимизирует производительность серверных приложений.
Технология SMB Multichannel Создать Обеспечивает агрегирование пропускной способности и отказоустойчивости сети, если доступно несколько путей между клиентом SMB и сервером. Это позволяет приложениям сервера использовать всю доступную пропускную способность сети и быть устойчивыми к сетевым сбоям.

В SMB 3 реализация SMB в Windows изменена для улучшения поведения кэширования на клиенте, а также увеличения пропускной способности.

Требования к оборудованию

Для обеспечения прозрачной отказоустойчивости SMB необходимо соблюдать следующие требования.

  • Отказоустойчивый кластер под управлением Windows Server 2012 или Windows Server 2016 по крайней мере с двумя настроенными узлами. Кластер должен пройти проверочный тест для кластеров, входящий в состав мастера проверки.
  • Файловые ресурсы должны быть созданы со свойством "Постоянная доступность" (CA), что является настройкой по умолчанию.
  • Файловые ресурсы нужно создавать на путях к тому CSV, чтобы обеспечить масштабирование SMB.
  • Клиентские компьютеры должны работать под управлением Windows® 8 или Windows Server 2012, которые содержат обновленный клиент SMB, поддерживающий постоянную доступность.

Клиенты нижнего уровня могут подключаться к общим папкам со свойством "Постоянная доступность", но для таких клиентов прозрачная отказоустойчивость не поддерживается.

Для поддержки многоканальности SMB необходимо соблюдать следующие требования.

  • Требуются по меньшей мере два компьютера под управлением Windows Server 2012. Установки дополнительных компонентов не требуется — эта технология включена по умолчанию.
  • Сведения о рекомендуемых сетевых настройках см. в подразделе "Дополнительные сведения" в конце этого раздела.

Для поддержки прямой технологии SMB необходимо соблюдать следующие требования.

  • Требуются по меньшей мере два компьютера под управлением Windows Server 2012. Установки дополнительных компонентов не требуется — эта технология включена по умолчанию.
  • Сетевые адаптеры с поддержкой RDMA. На данный момент существует три типа таких адаптеров: iWARP, Infiniband и RoCE (RDMA over Converged Ethernet).

Дополнительные сведения

Следующий список содержит дополнительные ресурсы со сведениями о работе в сети по протоколу SMB и связанным технологиям в Windows Server 2012 R2, Windows Server 2012 и Windows Server 2016.

Одним из способов доступа с STB к файлам, расположенным на сетевых компьютерах, является протокол общего доступа SMB, который является стандартным протоколом Microsoft Windows и обеспечивает функции «Сети Microsoft Windows» и «Совместного использования файлов и принтеров» .
Samba - свободная реализация протокола SMB для UNIX-подобных и других операционных систем.

Применение протоколов SMB / Samba позволяет осуществлять доступ с STB (работает под управлением ОС Linux) к папкам и файлам, расположенным на сетевых компьютерах (работающих под управлением ОС Linux, Windows и др.). Таким образом, пользователи STB получают возможность проигрывать на STB медиа-файлы (видео, аудио, изображения), которые расположены на сетевых компьютерах, работающих под управлением одного из типов ОС, поддерживающей протокол SMB.

Протокол SMB / Samba является прикладным протоколом (в терминах сетевой модели OSI). Для обмена данными используется транспортный протокол TCP/IP.
Протокол SMB / Samba использует архитектуру клиент – сервер: в качестве сервера выступает ПК, на котором размещаются определенные сетевые ресурсы (папки) с медиа-файлами, в качестве клиента – STB, с которого медиа-файлы проигрываются.

Сетевые ресурсы (в виде ярлыков) отображаются в STB, в меню Home media, в соответствии со стандартной сетевой LAN-архитектурой ОС Windows: Сеть / Рабочая группа / Компьютер / Папка.

По умолчанию, доступ к ресурсам компьютера закрыт настройками на стороне компьютера. При необходимости получить доступ к определенной сетевой папке, пользователь компьютера открывает доступ к этой папке. Для управления доступом к папкам используется процедура ОС Windows "Общий доступ к файлам".

Предусмотрены два типа сетевого доступа к папкам (тип доступа определяется на стороне сервера):

  • по паролю - для доступа к сетевой папке со стороны STB используется процедура Авторизации (необходимо ввести имя (login) определенного пользователя компьютера и его пароль (password);
  • без пароля - доступ к сетевой папке открыт для всех пользователей, без необходимости вводить пароль.

Обнаружение общих сетевых ресурсов на стороне STB происходит автоматически (если это не запрещено на стороне компьютера или кроме случаев, связанных с некорректной работой сети). Соединение с сетевой папкой устанавливается, когда пользователь STB открывает сетевую папку. Если используется доступ к папке по паролю, пользователю выдается запрос указать login и password.

Также предусмотрена возможность ручного подключения сетевых папок (если они не были обнаружены автоматически). Настройка и доступ к ресурсам сети по протоколу SMB / Samba на STB проводится в меню Home media.

Ниже рассмотрен пример, как подключить сетевую папку ПК с ОС Windows 10 для воспроизведения медиа-файлов с STB.

Параметры, используемые в примере

Компьютер (файловый сервер):

  • Операционная система - Windows 10 64-bit;
  • Имя компьютера – My_computer;
  • Рабочая группа – WORKGROUP (имя рабочей группы “по умолчанию” в ОС «Windows»);
  • IP-адрес ПК: 192.168.1.186.
  • Сетевой ресурс, к которому открывается доступ (папка с медиа-файлами) - папка Video_E1.
  • Имя пользователя - Usr.

Примечание! Не рекомендуется использовать в «Имени компьютера» и «Рабочей группы» символы кириллицы.

Настройка соединения на стороне ПК

Проверка доступности сетевого соединения между ПК и STB

Перед настройкой соединения убедитесь в доступности сетевого соединения между ПК и STB – пошлите ICMP Echo Requests ( PING) с ПК на STB.

Image Documentation

Проверка включения протокола SMB

  1. Открыть Панель управления⇒ Все элементы панели управления⇒Программы и компоненты.
  2. В левой панели выбрать пункт Включение и отключение компонентов Windows.
  3. Убедиться, что включена опция Поддержка общего доступа к файлам SMB 1.0/CIFS.

Image Documentation

Настройка параметров общего доступа для различных профилей Windows

1. Открыть Панель управления ⇒ Все элементы панели управления ⇒ Центр управления сетями и общим доступом.

2. В левой панели выбрать пункт Изменить дополнительные параметры общего доступа.

2. Настроить параметры общего доступа для трех профилей ('Частная', 'Гостевая или общедоступная' и 'Все сети'):

Частная

Image Documentation

Гостевая или общедоступная

Image Documentation

Все сети

Image Documentation

Открытие доступа к папке на стороне ПК

1. Откройте доступ к папке Video_E1: Свойства ⇒ Доступ ⇒ Общий доступ.
2. В открывшемся окне Общий доступ к файлам выберите и добавьте пользователей для доступа к папке:

2.1 Для организации доступ к папке по паролю (используется пароль пользователя ПК), выберете и добавьте необходимых пользователей (в примере - рассмотрен доступ для текущего пользователя Usr). В этом случае при попытке открыть папку со стороны STB будут запрошены логин (имя пользователя компьютера) и пароль (пароль пользователя компьютера).

Учтите. Необходимо использовать определенное значение пароля учетной записи пользователя. Отсутствие пароля (пустой пароль) приведет к невозможности доступа к папке!

2.2 Если необходимо предоставлять доступ к папке всем пользователям сети, выбрать в списке пользователя «Все» (если такого пункта нет в списке - выбрать и добавить).

Ниже на рисунке приведен вариант настройки предоставления беспарольного доступа к папке Video_E1 (для всех сетевых пользователей).

Image Documentation

Image Documentation

Image Documentation

Автоматическое соединение с сетевой папкой со стороны STB

Image Documentation

Image Documentation

2. В папке WORKGROUP отображаются сетевые компьютеры рабочей группы.
Откройте ярлык необходимого сетевого компьютера - My_Computer (в разделе My_Computer отображаются папки одноименного сетевого компьютера, для которых открыт доступ).

Image Documentation

3. Чтобы убедиться, что автоматическое определение сетевого ресурса состоялось и проверить тип протокола необходимо выделить папку и воспользоваться кнопкой «i» (INFO) на ПДУ:

Image Documentation

4. Открыть папку Video_E1. Внутри папки пройти по пути, по которому находится медиа-файл, который необходимо воспроизвести.

Image Documentation

5. Если для папки установлен доступ по паролю, либо по каким-либо причинам STB не может «примонтировать» папку (то есть получить к ней доступ - см. раздел Проблемы получения доступа к сетевым ресурсам), то при попытке открыть данную папку открывается окно Network connection.

Для авторизации необходимо выбрать ОК - открывается окно Authorization, в котором следует ввести параметры доступа к папке: Login и Password.

Image Documentation

Image Documentation

6. Запустить медиа-файл.

Принудительное установление соединения к сетевой папке со стороны STB

  • Во Встроенном портале открыть Главное окно⇒HomeMedia⇒Сетевое окружение
  • Вызвать окно Operations (Операции) - кнопка Меню на ПДУ.
  • Нажать Подключить NFS/SMB (Connect NFS/SMB).
  • В окне Подключение сетевой папки (Connect network folder) ввести параметры соединения:
    • Адрес сервера (Server Address) – IP-адрес ПК (файлового сервера), на котором размещена требуемая сетевая папка;
    • Папка на сервере (Server folder) – имя папки (каталога) на ПК, для которой установлен общий доступ;
    • Локальная папка (Local folder) – имя папки на STB (по умолчанию, совпадает с именем папки на сервере);
    • Тип подключения (Connection type) – SMB.
    • Логин (Login) – логин доступа - вводится, если для папки используется доступ по паролю. Вводимое значение с овпадает с именем пользователя ПК ;
    • Пароль (Password) – пароль доступа к папке - вводится, если для папки используется доступ с паролем.
      Примечание. Если для папки используется беспарольный доступ, поля Логин и Пароль должны быть пустыми!

    Image Documentation

    Отключение сетевой папки, изменение настроек соединения на STB

    Для принудительного отключения определенной сетевой папки используйте для этой папки команду Отключить NFS/SMB.

    В случае необходимости внести изменения в настройку соединения определенной папки (например, при изменении параметров доступа к папке на стороне ПК), используйте для этой папки команду Редактировать (англ. Edit share).

    Монтирование папки

    Установление соединения к определенной папке, описанное в подразделах Соединение с сетевой папкой на стороне STB и Принудительное установление соединения к сетевой папке, сопровождается автоматическим монтированием папки на STB. Если определенная папка "примонтирована" на STB, ее ярлык появляется на верхнем уровне меню Home media.

    Пользователь также может монтировать необходимую папку вручную (это также ведет к соединению с папкой ), для этой цели используется команда Подключить ресурс (англ. Mount share).

    Image Documentation

    Image Documentation

    Для "размонтирования" папки в STB (это также ведет к разъединению папки от STB) используется команда Отключить ресурс (англ. Unmount share) .

    Проблемы получения доступа к сетевым ресурсам

    1. Выполните следующие действия:

    1. STB со стороны ПК (убедиться, что оба устройства могут взаимодействовать по сети). При необходимости восстановить сетевое взаимодействие;
    2. Убедиться, что на сервере (ПК, с которого настраивается доступ) включена поддержка протокола SMB версии 1.
    3. На компьютере проверить Настройку параметров общего доступа для различных профилей Windows.
    4. На компьютере проверить Открытие доступа к папке.
    Если автоматическое соединение не устанавливается, используйте режим ручного соединения.

    2. Если при открытии сетевой папки на STB предлагается выполнить авторизацию, но для папки доступ по паролю не назначался:

      • На сетевом компьютере проверить, чтобы в свойствах папки был открыт доступ для пользователя «Все»;
      • Если доступ не возобновился, перезагрузить STB.

    3. Если при открытии папки на STB предлагается выполнить авторизацию (ввести логин, пароль), но значение пароля не задано (пустой пароль):

    Включение или отключение протоколов Samba SMB в Windows

    SMB (Server Message Block) - один из превосходных протоколов для обмена файлами в локальной сети, в 1998 году Microsoft переименовала этот протокол в CIFS (ранее он назывался SMB, но был переименован в CIFS (Common Internet File System)). . С тех пор он во многих местах известен как SMB / CIFS, последние версии SMB / CIFS включают поддержку жестких и символических ссылок, файлы большего размера, и у нас даже есть аутентификация и безопасная передача файлов с использованием криптографических протоколов. Samba - это бесплатная реализация протокола Windows SMB / CIFS, поэтому у нас будет без проблем совместимость между системами Microsoft и операционными системами на базе Linux и Unix. Сегодня мы собираемся объяснить, как включить или отключить различные протоколы SMBv1,

    Характеристики SMB / CIFS в разных версиях

    SMB - это сетевой протокол, который позволяет нам обмениваться файлами, папками и принтерами в локальной сети между различными операционными системами, включая Windows, Linux, MacOS и любую операционную систему на основе Unix, которая включает Samba. Этот протокол находится на прикладном уровне, а ниже он использует TCP-порт 445, поэтому передача данных надежна, поскольку в случае проблем происходит повторная передача данных. С момента появления SMB / CIFS и до настоящего времени у нас есть несколько версий, в которых были внесены улучшения в работу, а также в безопасность протокола, однако не все серверы, работающие с SMB / CIFS, используют последние версии. протокол, поэтому мы могли столкнуться с неожиданными сбоями при попытке подключиться к локальному SMB-серверу.

    Доступ к ресурсам SMB / CIFS может осуществляться посредством аутентификации с помощью локальных пользователей, с помощью аутентификации на основе RADIUS или LDAP-сервера и, конечно же, с помощью аутентификации в активном каталоге. На уровне конфигурации мы могли бы настроить сервер, чтобы избежать использования нулевых паролей, мы также могли бы создать гостевые учетные записи, которые разрешат доступ к определенным ресурсам без какого-либо типа аутентификации. Другой особенностью SMB / CIFS является то, что мы можем включить поддержку расширенных атрибутов OS / 2 в общем ресурсе, а также сохранить эти атрибуты DOS, если мы используем операционные системы Microsoft. Конечно, мы можем установить маску для создания файлов, а также каталогов, чтобы те файлы или папки, которые мы собираемся создавать, имели определенные разрешения.

    Что касается производительности SMB / CIFS, мы можем включить асинхронный ввод-вывод, чтобы достичь лучшей скорости чтения и записи в ресурсах Samba, кроме того, это можно было использовать только для файлов, размер которых превышает размер, определенный в конфигурации сервер. Когда мы собираемся настроить сервер SMB / CIFS, используемая версия очень важна как на сервере, так и на клиенте. На уровне конфигурации мы можем определить различные параметры, чтобы установить максимально поддерживаемый протокол уровня сервера, а также минимальный протокол уровня сервера, чтобы обеспечить максимальную безопасность для клиентов. Например, очень безопасная конфигурация будет поддерживать только протокол SMB3, однако у нас могут возникнуть проблемы с некоторыми клиентами, которые поддерживают только SMB2,

    SMB / CIFS версии 1

    Первая версия этого протокола родилась в 1983 году и была построена с использованием Microsoft NetBIOS, однако в более поздних версиях NetBIOS больше не использовался. Все старые версии Microsoft Windows используют SMBv1, однако новые версии версий Windows 10 и Windows Server не включают SMBv1, установленный в операционной системе по соображениям безопасности, поскольку было показано, что этот протокол в настоящее время не поддерживается. абсолютно безопасен, и использовать его не рекомендуется. Например, Windows Server 2016 и более поздние версии и Windows 10 Fall Creators Update не включают эту версию по умолчанию.

    Также верно, что некоторые маршрутизаторы все еще используют первую версию протокола на своих серверах SMB / CIFS, в этом случае мало или ничего нельзя сделать для его настройки с более высокими версиями, потому что это зависит от производителя в подавляющем большинстве случаев. случаи. Например, если у вас есть сторонняя прошивка, такая как OpenWRT или DD-WRT, вы можете отключить этот протокол SMBv1 и активировать последние версии, потому что программное обеспечение, встроенное в прошивку, поддерживает его.

    SMB / CIFS версии 2

    Microsoft выпустила версию SMBv2 для Windows Vista в 2006 году и в Windows Server 2008. Хотя этот протокол является частным, вся его спецификация была опубликована, чтобы позволить таким программам, как Samba для Linux и Unix, использовать его, а также обеспечить возможность взаимодействия различных операционных систем. . в противном случае только операционные системы Windows могли обмениваться информацией друг с другом.

    SMB2 - большое изменение по сравнению с первой версией, как в работе, так и в плане безопасности. SMB2 сокращает установление соединения по сравнению с SMB1.0, уменьшая количество команд и подкоманд, кроме того, он позволяет отправлять дополнительные запросы до того, как поступит ответ на предыдущий запрос, экономя много времени и повышая скорость, когда у нас есть высокая задержка в соединениях, или когда мы хотим добиться максимально возможной производительности. Другими очень важными опциями являются возможность объединения нескольких действий в одном запросе, что сокращает объем передаваемой информации. SMB 2.0 включает в себя ряд идентификаторов, чтобы избежать повторного подключения с нуля в случае кратковременного сбоя сети, таким образом, нам не придется восстанавливать связь.

    В RedesZone мы смогли достичь скорости 1.2 ГБ / с в сети 10G с использованием SMB2, с NAS-сервером QNAP TS-1277 с хранилищем SSD, а на исходном ПК у нас также было хранилище SSD, потому что традиционное хранилище с жесткими дисками не поддерживают эти высокие скорости, если мы не используем определенный RAID-массив многих дисков.

    Операционные системы Windows Vista и Windows Server 2008 и более поздние версии используют SMB2 по умолчанию, однако вы все равно можете встретить SMB1 на определенных компьютерах, поэтому вам, возможно, придется специально включить его для подключения к этим серверам. древний. Наконец, SMB 2.1, представленный в Windows 7 и Windows Server 2008 R2, еще больше повысил производительность за счет нового механизма гибкой блокировки.

    SMB / CIFS версии 3

    • SMB Direct Protocol: это позволяет использовать SMB для прямого доступа к удаленной памяти RDMA, любой сервер с этой версией включает эту функцию для значительного повышения производительности.
    • Многоканальный SMB: эта функция позволяет нам устанавливать несколько подключений за сеанс SMB, максимально усилить связь и сжать локальную сеть, в которой мы запускаем сервер и клиентов.
    • Полностью прозрачное аварийное переключение.

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

    • Безопасная аутентификация с шифрованием и передачей файлов и папок в незашифрованном виде.
    • Аутентификация и обмен файлами и папками с симметричным шифрованием, это обеспечит нам максимальную безопасность, но производительность может быть снижена.

    Если сервер SMB не поддерживает AES-NI в своем процессоре, вполне вероятно, что производительность, которую мы достигаем при передаче файлов и папок, действительно низкая, поэтому настоятельно рекомендуется иметь мощный процессор с механизмом аппаратного шифрования. На данный момент все процессоры по состоянию на 2015 год примерно имеют эту технологию, но вы должны ознакомиться с ее техническими характеристиками.


    Помимо версии SMB 3.0, версия SMB 3.0.2 также была представлена ​​в Windows 8.1 и Windows Server 2012 R2, улучшая функциональные возможности и производительность, кроме того, в этих операционных системах уже можно отключить версию SMB 1.0 для улучшения безопасность, т.к. при подключении клиенты могут согласовывать, какой протокол SMB использовать.

    Включение или отключение различных протоколов SMB в Windows

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

    Далее мы собираемся объяснить, как обнаруживать, отключать или включать различные версии Samba. Первое, что нам нужно сделать, это нажать кнопку «Windows», а затем выполнить поиск « Powershell «, Щелкаем правой кнопкой мыши и« выполнить его как администратор ».


    SMBv1 как клиент, так и сервер

    Если мы хотим включить или отключить поддержку SMBv1 на нашем компьютере, мы сначала должны проверить, включена она у нас или отключена.

    Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol Для включения протокола SMBv1 (не рекомендуется из соображений безопасности) необходимо поставить:

    Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol Чтобы отключить его:

    Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol

    SMBv2 / SMB3 как клиент, так и сервер

    Если мы хотим включить или отключить поддержку SMBv2 или SMBv3 на нашем компьютере, мы сначала должны проверить, включена она или отключена.

    Get-SmbServerConfiguration | Select EnableSMB2Protocol Чтобы включить его:

    Set-SmbServerConfiguration -EnableSMB2Protocol $true Чтобы отключить его:

    Set-SmbServerConfiguration -EnableSMB2Protocol $false Это работает как для версии SMBv2, так и для версии SMBv3, таким образом, у нас не будет специальной команды для SMBv3, потому что она уже интегрирована в SMBv2, но мы должны проверить, активировано ли шифрование данных, уникальная функция в последней версии. SMBv3:

    Get-SmbServerConfiguration | Select EncryptData Если указано «False», это означает, что шифрование данных не включено, чтобы включить его, мы должны выполнить следующую команду:

    Set-SmbServerConfiguration -EncryptData $True Вы должны убедиться, что удаленный сервер поддерживает SMBv3, в противном случае он выдаст вам ошибку при попытке доступа к общим ресурсам любого сервера.

    Читайте также: