Какво е NFS? Мрежова файлова система. Протокол за достъп до мрежов файл

27.02.2019

Когато става въпрос за компютърни мрежи, често можете да чуете споменаването на NFS. Какво означава това съкращение?

nfs какво е

Това е протоколът разпределена файлова система, първоначално разработена от Sun Microsystems през 1984 г., която позволява на потребител на клиентски компютър да получава достъп до файлове през мрежа, подобно на достъпа до локално съхранение. NFS, подобно на много други протоколи, се основава на системата за отдалечено извикване на процедурите (ONC RPC) на Open Network Computing.

С други думи, какво е NFS? Това е отворен стандарт, дефиниран в Request for Comments (RFC), който позволява на всеки да приложи протокол.

Версии и вариации

Изобретателят използва само първата версия за собствените си експериментални цели. Когато екипът за разработка добави значителни промени в оригиналната NFS и го пусна извън авторството на Sun, те определиха новата версия като v2, така че можете да тествате взаимодействието между дистрибуциите и да създадете резервна версия.

файлова система

NFS v2

Версия 2 първоначално работи само с User Datagram Protocol (UDP). Неговите разработчици искаха да запазят сървърната страна без блокиране, внедрена извън основния протокол.

Интерфейсът на виртуалната файлова система ви позволява да извършите модулна реализация, както е отразено в прост протокол. До февруари 1986 г. бяха демонстрирани решения за операционни системи като System V release 2, DOS и VAX / VMS, използващи Eunice. NFS v2 позволява само да чете първите 2 GB файла поради 32-битови ограничения.

мрежова файлова система

NFS v3

Първото предложение за разработване на NFS версия 3 в Sun Microsystems беше обявено скоро след освобождаването на втората дистрибуция. Основната мотивация е опит за облекчаване на проблема с синхронното записване. До юли 1992 г. практическите подобрения направиха възможно решаването на много от недостатъците на NFS версия 2, като оставаше само недостатъчна подкрепа за файловете (64-битови размери на файловете и компенсации).

Версия 3 добави следното:

  • поддръжка за 64-битови размери на файлове и компенсации за обработка на данни по-големи от 2 гигабайта (GB);
  • поддръжка за асинхронно записване на сървъра за по-добра производителност;
  • допълнителни файлови атрибути в много отговори, за да се избегне необходимостта от повторното им извличане;
  • Операция READDIRPLUS за извличане на данни и атрибути заедно с имена на файлове при сканиране на директория;
  • много други подобрения.

По време на въвеждането на версия 3, TCP поддръжката за протокола за транспортния слой започна да нараства. Използване на TCP като средство прехвърляне на данни извършени с NFS през WAN, стана възможно да се прехвърлят големи размери на файлове за гледане и запис. Благодарение на това, разработчиците успяха да преодолеят ограниченията на 8-KB ограничение, наложено от User Datagram Protocol (UDP).

Какво е NFS v4?

Версия 4, разработена под влияние на Endrese File System (AFS) и Server Message Block (SMB, наричана още CIFS), включва подобрена производителност, осигурява по-добра сигурност и въвежда протокола в съответствие с установените условия.

протокол за достъп до файловата система

Версия 4 беше първата дистрибуция, разработена от IETF, след като Sun Microsystems прехвърли разработването на протоколи на специалисти от трети страни.

NFS версия 4.1 е предназначена да осигурява поддръжка на протоколи за разполагане на клъстерния сървър, включително възможността за предоставяне на скалируем паралелен достъп до файлове, разпределени в множество сървъри (pNFS разширение).

Най-новият протокол за файловата система NFS 4.2 (RFC 7862) беше официално издаден през ноември 2016 г.

Други разширения

С разработването на стандарта се появиха съответните инструменти за работа с него. Например, WebNFS, разширение за версии 2 и 3, позволява на протокола за мрежов достъп до файловите системи да се интегрират по-лесно в уеб браузърите и да активират работата чрез защитни стени.

nfs сървър

Различни протоколи на групи от трети страни също се асоциират с NFS. От тях най-известните са:

  • Network Lock Manager (NLM) с поддръжка на байтови протоколи (добавен за поддръжка на заключване на API на UNIX System V файлове);
  • отдалечена квота (RQUOTAD), която позволява на потребителите на NFS да разглеждат квоти за съхранение на данни на NFS сървъри;
  • NFS над RDMA е NFS адаптация, която използва отдалечен директен достъп до паметта (RDMA) като преносна среда;
  • NFS-Ganesha е NFS сървър, работещ в потребителското пространство и поддържащ CephFS FSAL (слой за абстракция на файловата система), използвайки libcephfs.

платформа

Мрежовата файлова система често се използва с Unix операционни системи (като Solaris, AIX, HP-UX), Apple MacOS и Unix-подобни операционни системи (като Linux и FreeBSD).

Предлага се и за платформи като Acorn RISC OS, OpenVMS, MS-DOS, Microsoft Windows, Novell NetWare и IBM AS / 400.

nfs изисквания

Други подобни стандарти

Алтернативни протоколи за отдалечен достъп до файлове включват блок за съобщения на сървъра (SMB, наричан още CIFS), Apple Transfer Protocol (AFP), NetWare Base Protocol (NCP) и файлова система OS / 400 (QFileSvr.400).

Това се дължи на изискванията на NFS, които са фокусирани предимно върху Unix-подобни "черупки".

В този случай протоколите SMB и NetWare (NCP) се използват по-често от NFS в системи с Microsoft Windows. AFP е най-широко използван на платформите на Apple Macintosh, а QFileSvr.400 най-често се среща в OS / 400.

Типично изпълнение

Приемайки типичен Unix-стил скрипт, при който един компютър (клиент) се нуждае от достъп до данни, съхранявани на друг (NFS сървър):

  • Сървърът изпълнява процесите на мрежовата файлова система, които се изпълняват по подразбиране като nfsd, за да направят техните данни обществено достъпни за клиентите. Администраторът на сървъра определя как да експортира имената и параметрите на директориите, обикновено използвайки конфигурационния файл / etc / exports и командата exportfs.
  • Администрирането на сигурността на сървъра гарантира, че може да разпознава и валидира надежден клиент. Неговата мрежова конфигурация гарантира, че съответните клиенти могат да преговарят с нея чрез всяка защитна стена.
  • Клиентската машина изисква достъп до експортираните данни, обикновено чрез издаване на съответната команда. Той изисква сървър (rpcbind), който използва NFS порта и впоследствие се свързва с него.
  • Ако всичко се случи без грешка, потребителите на клиентската машина ще могат да преглеждат и взаимодействат с инсталираните файлови системи на сървъра в рамките на позволените параметри.

Трябва да се обърне внимание и на факта, че автоматизацията на процеса на мрежовата файлова система също може да се осъществи - евентуално чрез използване на etc / fstab и / или други подобни средства.

Развитие до момента

До 21-ви век конкурентните протоколи DFS и AFS не постигнаха голям търговски успех в сравнение с мрежовата файлова система. IBM, която преди това е придобила всички търговски права на горепосочените технологии, дари голямата част от изходния код на AFS на общността на свободния софтуер през 2000 г. Проект Open AFS съществува в наши дни. В началото на 2005 г. IBM обяви завършването на продажбите на AFS и DFS.

На свой ред, през януари 2010 г. Panasas предложи NFS v 4.1 на базата на технология, която позволява подобрени възможности за достъп до данни. Протоколът Network File System v 4.1 дефинира метод за разделяне на метаданните на файловата система от местоположението на определени файлове. По този начин тя излиза извън рамките на простото разделяне на имена / данни.

Какво е NFS на тази версия на практика? Горната характеристика го отличава от традиционния протокол, който съдържа имената на файловете и техните данни под едно свързване към сървъра. При внедряването на мрежова файлова система v 4.1 някои файлове могат да бъдат разпределени между сървъри с множество сайтове, но участието на клиента в разделяне на метаданни и данни е ограничено.

При изпълнението на четвъртото разпространение на протокол, NFS сървърът е набор от сървърни ресурси или компоненти; Предполага се, че те се контролират от сървъра за метаданни.

Клиентът все още има достъп до същия сървър за метаданни, за да обхожда или взаимодейства с пространството от имена. Когато премества файловете към и от сървъра, той може директно да взаимодейства с набора от данни, принадлежащ на NFS групата.