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

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

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

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

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


NFS v2

Версия 2 първоначално работи само с протокола за потребителски дейтаграми (UDP). Разработчиците му искаха да запазят вътрешната страна без блокиране, внедрена извън основния протокол. Интерфейсът на виртуалната файлова система ви позволява да реализирате модулна реализация, показана в прост протокол. До февруари 1986 г. бяха демонстрирани решения за операционни системи като System V 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, сега е възможно да се предават големи файлове за преглед и писане. Това позволи на разработчиците да преодолеят лимита от 8KB, наложен от протокола UDP.

    Какво е NFS v4?

    Версия 4 е разработена под влияние на файловата система End (AFS) и SMB сървърните съобщения (наричани още CIFS), която включва подобрена производителност, по-добра сигурност и регистриране в съответствие с установените условия.

    Версия 4 се превърна в първото развито разпространениев специалната работна група за инженерна работа в интернет (IETF), след като Sun Microsystems премина разработването на протоколи към професионалисти от трети страни. NFS версия 4.1 има за цел да поддържа поддръжка на протоколи за клъстерно разгръщане на сървъри, включително възможността за предоставяне на мащабируем паралелен достъп до файлове, разпределени между множество сървъри (pNFS разширения). Най-новият протокол за файловата система NFS 4.2 (RFC 7862) беше официално издаден през ноември 2016 г.

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

    С развитието на стандарта се появиха и подходящи инструменти за работа с него. Да, разширенията WebNFS, версии 2 и 3 позволяват достъп до мрежовите файлове на файловите системи да бъдат по-лесно интегрирани в уеб браузъри и да се активират чрез защитни стени.
    Различни протоколи от трети страни също се асоциират с 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, NovellNetWare и IBM AS /400.

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

    Алтернативни протоколи за отдалечен достъп до файлове включват блокове съобщения на 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, която преди това е придобивала всички търговски права върху гореспоменатите технологии, през 2000 г. свободно прехвърля по-голямата част от изходния код на AFS към общността на разработчиците на свободен софтуер. Проектът Open AFS съществува и днес. В началото на 2005 г. IBM обяви приключването на продажбата на AFS и DFS.
    От своя страна през януари 2010 г. Panasas предложи NFS v 4.1 на базата на технология, която позволява да се подобри възможността за паралелен достъп до данни. Протоколът Network File System v 4.1 определя метода за разделяне на метаданните на файловата система от местоположението на отделните файлове. По този начин тя излиза извън рамките на простото разделение на имена /данни. Какво е NFS тази версия на практика? Горепосочената характеристика го отличава от традиционния протокол, който съдържа имена на файлове и техните данни под една връзка към сървъра. При внедряването на мрежова файлова система v 4.1 някои файлове могат да се разпространяват между сървъри с множество сървъри, но участието на клиента в разделянето на метаданни и данни е ограничено. При изпълнението на четвъртото разпределение на протокола NFS сървърът е набор от сървърни ресурси или компоненти; Предполага се, че те се контролират от сървъра за метаданни. Клиентътвсе още се отнася до един сървър за метаданни, който да заобикаля или да взаимодейства с пространството от имена. Когато премества файлове към и от сървъра, той може да взаимодейства директно с набор от данни, принадлежащи на NFS групата.

    Свързани публикации