В чем разница между NFS и CIFS?

Сетевая файловая система (NFS) и Общий протокол доступа к файлам Интернета (CIFS) – это протоколы хранения доступа к файлам или правила для эффективного обмена файлами по сети. Для повседневной деятельности любой организации важна способность эффективно общаться, сотрудничать и обмениваться файлами. С помощью NFS пользователь (или клиентское устройство) может подключаться к сетевому серверу и получать доступ к файлам на сервере. В ней есть правила, позволяющие нескольким пользователям использовать один и тот же файл без конфликтов данных. CIFS основана на протоколе блока серверных сообщений (SMB). CIFS позволяет устройствам обмениваться файлами с сервером и другими периферийными устройствами, такими как принтеры.

Принцип работы: NFS и CIFS

Протоколы хранения доступа к файлам, такие как сетевая файловая система (NFS) и общая файловая система Интернета (CIFS), можно развертывать в различных сетях:

  • физические сети, такие как локальные сети (LAN) и глобальные сети (WAN);
  • виртуальные сети;
  • сети облачного хранения.

NFS и CIFS используют протоколы IP и TCP для обмена файлами между сервером и клиентами в сетевых средах. Несколько клиентских машин могут получать доступ к файлам на сервере. Кроме того, они могут создавать, читать, редактировать и удалять файлы (CRUD), как если бы они были локальными на клиентских компьютерах. Механизмы блокировки файлов предотвращают конфликты между несколькими клиентами, пытающимися изменить один и тот же файл или каталог.

Как работает NFS

Изначально NFS разработала в 1984 году компания Sun Microsystems, но в настоящее время поддержку этой системы осуществляет рабочая группа по проектированию Интернета. NFS разрабатывали для систем Unix, включая операционные системы Linux и macOS. 

В NFS клиент запрашивает файл или каталог с удаленного сервера NFS с помощью удаленных вызовов процедур (RPC). Если файл или каталог доступен и клиент имеет соответствующие права доступа, сервер монтирует их на клиент. Клиент выполняет операции с файлами через виртуальное соединение. Начиная с версии NFS 4, менеджер блокировки NFS для разрешения конфликтов файлов является не отдельным сервисом, а частью протокола.

Как работает CIFS

Изначально CIFS выпустила компания Microsoft в середине 1990-х годов как расширение протокола доступа к файлам Server Message Block (SMB). CIFS активно использовали в сетевых окружениях операционных систем Windows, однако более поздние версии SMB вытеснили CIFS в современных реализациях систем.

В CIFS детали реализации и протокола не были подробно задокументированы на момент выпуска. Это усложняет администрирование сложных сетей, особенно в смешанных операционных средах. 

Ключевые отличия NFS и CIFS

Хотя и сетевая файловая система (NFS), и общая файловая система Интернета (CIFS) являются протоколами доступа к файлам, у них есть несколько отличий. Возможности совместного использования ресурсов NFS ограничены файлами и каталогами. Напротив, CIFS также может обеспечивать обмен общими ресурсами с другими сетевыми устройствами, такими как принтеры. NFS все еще находится в стадии активной разработки, и вы можете отправить RFC в рабочую группу по проектированию Интернета. CIFS не находится в активной разработке.

Вот еще несколько ключевых отличий между двумя протоколами.

Исходная целевая операционная система

NFS и CIFS изначально были разработаны для разных операционных систем. CIFS нацелен на операционную систему Windows, а NFS – на Unix. Это означает, что они были созданы для использования соответствующих ядер операционной системы для оптимальной работы. Хотя CIFS можно использовать с операционными системами на базе Linux (через Samba), а NFS – с Windows (через сторонние пакеты), они изначально не поддерживаются.

Аутентификация

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

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

Блокировка файлов

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

С другой стороны, CIFS поддерживает блокировку файлов на стороне сервера. Это обеспечивает лучшую координацию и позволяет избежать конфликтов при доступе нескольких клиентов к одному и тому же файлу.

Производительность

NFS использует легкий протокол с меньшими издержками, что обеспечивает более быстрый доступ к файлам и скорость передачи.

И наоборот, CIFS имеет больше протокольных нагрузок из-за поддержки различных функций, специфичных для Windows. Это может повлиять на производительность, особенно в сетях с высокой задержкой.

Когда выбрать NFS, а когда – CIFS

Сетевые среды могут использовать несколько протоколов хранения доступа к файлам одновременно, поэтому сетевую файловую систему (NFS) и блок сообщений сервера (SMB) или общую файловую систему Интернета (CIFS) можно использовать параллельно. Однако NFS почти всегда лучше, чем CIFS. Но это не всегда лучший выбор среди других протоколов, в зависимости от варианта использования. 

Хотя CIFS все еще используется в некоторых устаревших приложениях и сетевых сервисах, она больше не используется в более широком системном сообществе. Версия SMB 2.0 заменила CIFS, а версия SMB 3.1.1 теперь является текущей версией SMB. Для сетевых сервисов совместного использования файлов и устройств на базе Windows текущая версия SMB теперь является стандартным протоколом.

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

С другой стороны, NFS остается предпочтительным сетевым протоколом обмена файлами в средах Linux. Linux часто является предпочтительной операционной системой для удаленных серверных рабочих нагрузок из-за ее стабильности, надежности, гибкости и экономичности. NFS сохраняет популярность в облачных средах и корпоративных центрах обработки данных на месте.

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

Как NFS, так и SMB являются популярными протоколами. Однако в облачных средах поставщики облачных сервисов часто используют собственные протоколы, а реализация и настройка абстрагированы. Таким образом, пользователи могут интегрировать различные устройства и операционные системы без ручной настройки.

На практике это означает, что администраторы могут использовать простые пользовательские интерфейсы для подключения локальных файловых ресурсов CIFS, SMB и NFS к облачным серверам любого типа. То же самое относится к локальным или удаленным клиентам любого типа. Эти гибридные облачные среды упрощают сложные задачи сетевого администрирования, которые ранее требовались в конфигурациях удаленных сетей.

 

Краткое описание различий NFS и CIFS

 

NFS

CIFS

Что это

Network File System.

Общая файловая система Интернета.

Текущая версия

Версия NFS 4.

Заменена версией SMB 3.1.1.

Лучше всего подходит для

Сетевые архитектуры на базе Linux.

Устаревшие архитектуры на базе Windows при необходимости.

Общие ресурсы

Файлы и каталоги.

Файлы, каталоги и сетевые ресурсы, такие как принтеры.

Аутентификация

На основе IP.

На основе пользователя.

Блокировка файлов

Обрабатывается клиентом.

Обрабатывается сервером.

Производительность

Низкие затраты на протоколы и более высокая производительность.

Высокие затраты на протоколы и низкая производительность.

Как AWS может помочь решить ваши потребности в файловой системе?

Amazon Web Services (AWS) предлагает широкий спектр современных и простых в использовании сервисов сетевого администрирования, обмена файлами и хранения. Это упрощает совместную работу независимо от того, где находятся файлы и пользователи.

Если вы хотите использовать облачное хранилище для расширения локальных систем хранения файлов, Шлюз хранилища AWS предоставит вам возможность создать гибридное облачное решение или помочь перейти в облако. С помощью Простого сервиса хранения данных Amazon (Amazon S3) можно перенести локальное хранилище в облако без реинжиниринга существующих приложений и процессов.

Amazon FSx для Windows File Server – еще один вариант переноса существующих серверов общей файловой системы Интернета (CIFS) в облачную управляемую среду. Он обеспечивает полную интеграцию с существующими средами Windows и обладает расширенными функциями безопасности. 

Эластичная файловая система Amazon (Amazon EFS) – аналогичный сервис AWS, оптимизированный для настроек сетевой файловой системы (NFS). Он обладает полностью эластичными возможностями хранения, поэтому вы можете отказаться от управления кластером и портами состояния клиентов.

Начните использовать решения для обмена файлами и хранения на AWS, создав аккаунт уже сегодня.

AWS: дальнейшие шаги

Начните разработку на NFS

Как начать работу с NFS на AWS

Подробнее 
Начните разработку с CIFS

Как начать работу с CIFS на AWS

Подробнее