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

Network File System (NFS) и Internet Small Computer System Interface (iSCSI) представляют собой протоколы обмена данными. Эффективный обмен данными по сети необходим для повседневной деятельности любой организации. NFS обеспечивает удаленный обмен данными на уровне файлов. Пользователь (или клиентское устройство) может использовать NFS для подключения к сетевому серверу и получения доступа к файлам на сервере. Несколько клиентских машин (пользователей) могут использовать один и тот же файл без конфликтов данных. Кроме того, iSCSI обеспечивает удаленный обмен данными, но на уровне блоков. Он обеспечивает обмен данными между несколькими клиентскими машинами и блочным устройством хранения данных (или блочным сервером), доступ к которому осуществляется аналогично локальному диску.

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

Network File System (NFS) и Internet Small Computer System Interface (iSCSI) используются для обмена данными в отношениях клиент – сервер в сети или виртуальной сети. Эти протоколы стали популярными в удаленных корпоративных коммуникациях.

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

Протокол NFS был разработан как протокол обмена файлами между клиентом и сервером для систем Unix в 1980-х годах. Он остается активным благодаря различным обновлениям, последним из которых является NFS версии 4. Это популярный протокол для распределенной файловой системы.

Протокол NFS работает, как указано ниже.

  1. Клиент запрашивает доступ к ресурсу на удаленном сервере NFS.
  2. Сервер удаленно монтирует ресурс на клиенте.
  3. Хранилище данных NFS появляется и действует как локальный ресурс на клиенте.
  4. Ресурсы чтения хранятся в кэше файловой системы на клиенте для быстрого доступа.

Доступ к ресурсу, например к файлу или каталогу, осуществляется через виртуальное соединение. В качестве базовой технологии связи используется удаленный вызов процедур (RPC). 

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

Internet Small Computer System Interface (SCSI) был разработан для обмена данными по локальной сети (LAN). Протокол iSCSI был разработан в конце 1990-х годов для использования протокола SCSI в сети TCP/IP.

Это протокол транспортного уровня, разработанный для обеспечения беспрепятственного доступа к устройствам хранения данных по сети. Название iSCSI использовалось для обозначения модификации исходного протокола и инкапсуляции команд SCSI в пакеты TCP/IP. 

Архитектура iSCI является клиент-серверной. Клиент называется инициатором, а сервер – это цель iSCSI. Блочное запоминающее устройство называется логическим устройством, а целевой объект iSCSI может иметь множество логических единиц. Каждому из них присвоен номер логического устройства (LUN).

Протокол iSCI работает, как указано ниже.

  1. Инициатор подключается к цели с помощью протокола аутентификации Challenge-Handshake Authentication Protocol (CHAP).
  2. После подключения запоминающее устройство отображается на клиенте как локальный диск.

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

Хотя оба эти протокола являются протоколами обмена данными, Network File System (NFS) и Internet Small Computer System Interface (iSCSI) работают совершенно по-разному. Далее мы опишем некоторые из их отличительных черт.

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

Поскольку протокол iSCSI работает на уровне блоков, он обычно может обеспечить более высокую производительность, чем NFS, путем непосредственного управления удаленным диском.

NFS добавляет уровень абстракции файловой системы с возможностью манипуляций по принципу «файл за файлом».

Разрешение конфликтов

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

NFS имеет встроенное разрешение конфликтов для распределенной файловой системы

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

Простота настройки

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

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

Когда использовать: NFS и iSCSI

Сетевая файловая система (NFS) остается популярным протоколом совместного использования в локальных сетях (LAN), на которых работают машины Unix. Она также полезна, если удаленное сетевое хранилище (NAS) представляет собой машину Unix. Подробнее см. в статье о NAS.

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

Small Computer System Interface (iSCSI) является распространенным протоколом в корпоративных частных сетевых средах, где требуется клиентский доступ к нескольким локальным или удаленным массивам хранения данных. Этот протокол является прямым конкурентом конфигурациям оптоволоконной сети в центр обработки данных.

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

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

 

NFS

iSCSI

Что это

Network File System.

Internet Small Computer System Interface.

Уровень эксплуатации

Протокол прикладного уровня.

Протокол транспортного уровня.

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

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

Архитектуры частных сетей хранения данных.

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

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

Устройства ввода-вывода, обычно устройства хранения данных.

Уровень доступа

На основе файлов.

На основе блоков.

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

Встроенный и обработанный клиентом.

Не встроен и должен обрабатываться другими системами.

Действует через

RPC через TCP или UDP.

SCSI по протоколу TCP/IP.

Простота настройки

Относительно быстро и просто в средах Linux.

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

Как AWS может помочь удовлетворить ваши требования к NFS и iSCSI?

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

Являясь полностью управляемым сервисом, Amazon FSx обладает указанными ниже преимуществами.

  • Использует новейшие вычислительные, сетевые и дисковые технологии Amazon Web Services (AWS) для обеспечения высокой производительности при меньших затратах.
  • Обеспечивает выделение оборудования, установку исправлений и резервное копирование. Это позволяет сосредоточиться на приложениях, конечных пользователях и бизнесе.
  • Поддерживает четыре широко используемые файловые системы: NetApp ONTAP, OpenZFS, Windows File Server и Lustre. 

Его надежность, безопасность, масштабируемость и расширенные возможности позволяют управлять различными рабочими нагрузками. Например, Amazon FSx для NetApp ONTAP позволяет предоставлять доступ к данным широкому набору рабочих нагрузок и пользователей с помощью стандартных отраслевых протоколов передачи данных. К ним относятся Network File System (NFS), блок сообщений сервера (SMB) и Small Computer System Interface (iSCSI).

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

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

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

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

Подробнее 
Начать разработку с iSCSI

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

Подробнее