Богдзиевич Р.И. РАЗРАБОТКА МОДЕЛИ СЕТЕВОЙ РАСПРЕДЕЛЕННОЙ ФАЙЛОВОЙ СИСТЕМЫ
Богдзиевич Роман Игоревич
Донецкий Национальный технический Университет
РАЗРАБОТКА МОДЕЛИ СЕТЕВОЙ РАСПРЕДЕЛЕННОЙ ФАЙЛОВОЙ СИСТЕМЫ
Предложена модель распределенной одноранговой файловой системы.
Ключевые слова: файловая система, распределенный доступ, хэш-таблица.
Запропоновано модель розподіленої однорангової файлової системи.
Ключові слова: файлова система, розподілений доступ, хеш-таблиця.
The model of a distributed peer to peer file system is proposed.
Keywords: file system, distributed access, hash table.
В настоящее время сетевые файловые системы называют распределенными. Этот термин отражает тот факт, что практически все из этих файловых систем имеют намного больше возможностей, чем просто передача данных по сети. Данные, связанные с этими файловыми системами, не обязательно могут быть расположены на одном компьютере - они могут быть распределены между многими компьютерами. Таким образом, такая файловая система предоставляет пользователю единообразный доступ ко всем файлам инфраструктуры сети[1].
В данной работе предложена модель децентрализованной сетевой файловой системы, позволяющей хранить и синхронизировать данные на нескольких машинах локальной вычислительной сети. Идея данной ФС состоит в том, что все данные хранятся на дисковом пространстве узловых машин локальной сети и реплицируются между собой, создавая для пользователя единый прозрачный доступ к этим данных вне зависимости от физического расположения его узловой машины. Предложенная модель файловой системы состоит исключительно из набора журналов, по одному журналу на каждого пользователя. Хранение журналов осуществляется с помощью DHash распределенных хэш-таблиц. Каждый участник получает необходимые данные, считывая записи из всех журналов, но обо всех выполненных модификациях он пишет только в свой собственный журнал. Каждый пользователь системы сможет выбрать журналы других узлов, с которых можно проводить считывание изменений. Данная модель предоставляет всем приложениям ОС абстрактный интерфейс к информации поверх физической файловой системы. Данная модель представляет собой единый образ файловой системы, который похож на файловую системы NFS. В отличие от NFS, данная система не требует выделенного сервера; вместо этого, она хранит все данные и метаданные в одноранговой блочной хеш-таблице DHash. DHash может распределять и клонировать блоки, что дает системе потенциал для ускорения доступа к данным. Одно из возможных способов применения данной системы - это поддержка распределенных проектов со свободно рассредоточенными узлами.
Задачи, поставленные перед данной системой:
•1) Информационная безопасность. Механизм системы обязан предоставлять реализацию правил разграничения доступа пользователей и их процессов к данным, шифрование передаваемых между узлами данных средствами протокола SSL[2].
•2) Отказоустойчивость. Система должна корректно функционировать даже после отказа большей части узлов сети. Данная возможность достигается посредством синхронной репликации всех данных между узлами. Как только блок данных модифицируется на одном узле, он сразу же подвергается модификации на остальных узлах сети.
•3) Кроссплатформенность. В современном компьютерном мире существует множество популярных операционных систем, таких как Windows, Linux, OSX, поэтому необходимо предусмотреть наличие этих ОС на узловых машинах сети. Лучшим вариантом для разработки кроссплатформенного ПО является язык программирования Java, сочетающий в себе кроссплатформенность, мощные инструменты для работы с файловой системой и высокую производительность.
•4) Высокая скорость работы в условиях большой нагрузки. В системе необходимо предусмотреть ситуацию, когда нагрузка на сеть между несколькими узлами будет довольно высока. В таком случае ФС должна реплицировать данные с тех узлов, время отклика к которым самое краткое, а доступная пропускная способность самая высокая[3].
•5) Простота развёртывания и использования. Для управления инфраструктурой ФС должна быть разработана администраторская панель, позволяющая эффективно управлять правами доступа к информации, размещенной на узлах сети. Развертывание клиентского ПО должно производиться с минимальными затратами времени и не требовать от пользователя углубленных знаний в механизме работы системы. Работа ФС должна проходить прозрачно, создавая впечатление, что пользователь работает с локальными данными.
•6) Доступ к информации в не зависимости от количества доступных узлов. Поскольку все данные реплицируется между узлами сети, на каждом узле создается своя копия всей информации. При отключении одного или нескольких узлов, остальные узлы должны продолжать работу в том же режиме. При обратном включении, узел должен получить все данные, которые были модифицированы за время его отключения.
Преимуществами данной реализации сетевой файловой системы являются:
•-Высокая отказоустойчивость, которая достигается за счет репликации данных.
•-Уменьшение нагрузки на сетевые ресурсы. Между узлами передаются только изменения, произведенные в файловой системе. Таким образом вместо того чтобы передавать файл целиком, передается только та его часть, которая была модифицирована, что существенно уменьшает нагрузку на сеть.
•-Быстрый доступ к информации, так как во время доступа к данным, с большой вероятностью обращение к удаленному серверу не требуется, данные уже находятся на локальной машине.
•-Отсутствие потребности в наличии выделенного сервера.
К недостаткам можно отнести большую подверженность вирусному программному обеспечению. Поскольку данные копируются на все узлы, то при отсутствии соответствующей антивирусной защиты, один вирус может заразить одновременно все узлы сети.
Литература:
•1. Олифер В. Г. Компьютерные сети. Принципы, технологии, протоколы. 4-е издание. 2011.
•2. Столлингс В. Современные компьютерные сети. 2-е издание. 2002.
•3. Олифер В.Г. Искусство оптимизации трафика. 2001.