WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

загрузка...
   Добро пожаловать!

Pages:     | 1 | 2 ||

Запросы Read и Write используются соответственно для получения и передачи удалённых данных клиентом. Клиент, получив от пользователя запрос на чтение данных, отправляет запрос серверу, включающий в себя номер логического канала, тип запроса, абсолютный номер начального сектора запроса в пределах устройства и число секторов в запросе. Сервер осуществляет запрос к носителю и отправляет клиенту запрашиваемые данные. Запрос пользователя на запись обрабатывается зеркально запросу на чтение.

Запрос Disconnect предназначен для логического отключения клиента от сервера и позволяет реализовать «горячую» замену носителя для узла–клиента на узле–сервере. Главным параметром в запросе Disconnect является номер логического канала. Сервер, получив запрос Disconnect, освобождает ресурсы, выделенные клиенту. Клиент, получив ответ от сервера, удаляет информацию об удалённом носителе из системы.

Описанная реализация протокола SRPC является достаточной для поддержки всех операций с файлами и позволяет полностью соблюсти семантику доступа к носителю информации в UNIX–подобной ОС.

Клиент БРФС представляет собой блочный драйвер. При инициализации он посылает серверу запрос Connect, получает от него необходимые данные и с помощью служебных функций ядра регистрирует в системе новое блочное устройство. Запросы пользователя преобразуются клиентом в удалённые запросы и пересылаются серверу с помощью запросов READ и WRITE. Обращение к удалённым данным является абсолютно прозрачным и ничем не отличается от обращения к локальному диску.

Сервер БРФС реализован как многопоточный демон ядра, состоящий из трёх типов потоков. Схема его работы представлена на рис. 4.

Поток-«приёмник» обеспечивает приём запросов от клиентов. Количество «приёмников» соответствует количеству независимых каналов связи. Получив запрос от клиента, он передаёт его потоку-«контролёру», после чего ожидает следующий запрос.

Поток-«контролёр» обеспечивает обработку заголовков и анализ запросов клиентов, а также обрабатывает запросы клиента на подключение и отключение. Если запрос является корректным и клиент запрашивает обмен данными, то такой запрос передаётся третьему типу потоков – «исполнителю». После чего, если очередь пуста, поток-«контролёр» «засыпает» и ждёт следующего запроса.

Поток-«исполнитель» обрабатывает запросы клиента на обмен данными. Он формирует запрос к драйверу носителя информации, дожидается от него ответа, после чего отправляет данные клиенту. Количество «исполнителей» соответствует количеству логических каналов, то есть количеству подключённых клиентов. Если клиент использует распределённый носитель, то для каждого независимого носителя, входящего в его состав, создаётся свой поток.

Рис. 4. Блок-схема работы сервера быстрой распределённой файловой системы.

В четвёртой главе приведена оценка эффективности БРФС с точки зрения скорости доступа к данным и нагрузки, оказываемой на узел–сервер. Было проведено сравнение времени чтения файлов разных размеров в локальной файловой системе, в БРФС и в NFS. В качестве стенда использовался макет вычислительного комплекса «МВС/С», состоящий из двух узлов, соединённых между собой каналами RDMA и управляемых операционной системой Suse Linux 7.3 (версия ядра 2.4.25).

Необходимо отметить, что в NFS в качестве каналов связи также использовались каналы RDMA. Таким образом, проведённое тестирование является сравнением эффективности архитектур распределённых файловых систем, и его результаты являются достаточно представительными для оценки эффективности БРФС.

Так как тестирование проводилось на макете вычислительного комплекса, то абсолютные значения не дают объективной оценки эффективности БРФС. Поэтому все результаты моделирования получены в относительных величинах по отношению ко времени чтения в локальной файловой системе.

Чтение файлов было реализовано с помощью программы dd. Время чтения было замерено с помощью программы time. Файл считывался в системное устройство /dev/null.

Замеры времени проводились в четырех тестах:

  1. Первичное чтение файла на узле–клиенте. Результаты этого теста демонстрируют реальное время подкачки данных с узла–сервера. Полученные результаты представлены на рис. 5.
  2. Повторное чтение файла на узле–клиенте. Этот тест демонстрируют степень и эффективность кэширования данных узлом–клиентом.
  3. Первичное чтение файла при «нагруженном» узле–сервере. Результаты этого теста демонстрируют время подкачки данных узлом–клиентом в случае, если узел–сервер нагружен выполнением задачи, полностью загружающей вычислительные ресурсы.
  4. Время выполнения счётной задачи, полностью загружающей вычислительные ресурсы, на узле–сервере при поддержке интенсивного обмена данными с узлами–клиентами. Результаты этого теста демонстрируют нагрузку, оказываемую узлом–клиентом на узел–сервер при подкачке данных. Полученные результаты приведены на рис. 6.

Рис. 5. График зависимости скорости первичного чтения файлов на узле–клиенте от типа файловой системы.

Рис. 5 позволяет оценить реактивность и скорость передачи данных в использовании БРФС. Реактивность при обращении к файлам, по сути, представляет собой время, затрачиваемое узлом–клиентом на получение метаданных файла. Метаданные файла, как правило, составляют не более 100КБ. Таким образом, в БРФС реактивность составляет не менее 90% от реактивности локальной файловой системы, тогда как в NFS – порядка 18%. При этом разброс этой величины для БРФС составляет порядка ±4%, тогда как для NFS – порядка ±30%.

Скорость чтения файлов в БРФС составляет порядка 65% – 90% скорости чтения файлов в локальной файловой системе, причём скорость падает с увеличением размера файлов. Такая динамика связана с тем, что с увеличением размера файла увеличивается количество служебной информации файловой системы, которое в отличие от NFS также необходимо считать и обработать узлу–клиенту. Скорость чтения файлов в NFS составляет порядка 18% – 70%, причём с увеличением размера файлов она растёт. Такая динамика связана с предварительной подкачкой данных и кэшированием их на узле–сервере.

Рис. 6. График зависимости времени выполнения задачи на узле–сервере от внешней нагрузки.

Рис. 6 позволяет оценить нагрузку, оказываемую БРФС на узел–сервер, которая приводит к увеличению времени выполнения счётной задачи в среднем на 9%, тогда как использование NFS приводит к увеличению времени выполнения счётной задачи на 158%.

Результаты исследования показывают, что БРФС обладает лучшей реактивностью, существенно лучшей предсказуемостью времени доступа к данным и оказывает существенно меньшую нагрузку на узел–сервер по сравнению с NFS.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

В процессе выполнения диссертационных исследований были получены следующие основные результаты:

  1. Проанализированы требования к методам доступа к удалённым данным в многомашинных вычислительных системах, позволяющих реализовать распределённую вычислительную систему, в том числе работающую в реальном масштабе времени.
  2. Предложена методика анализа распределённых файловых систем на основе модели взаимодействия открытых систем (OSI), обеспечивающая наглядность архитектуры распределённой файловой системы и методов её реализации и позволяющая оценить её эффективность с точки зрения скорости доступа, скорости загрузки и рестарта и нагрузки, оказываемой на узел–сервер.
  3. Проведён анализ современных распространённых распределённых файловых систем с точки зрения использования их в распределённых вычислительных системах, работающих в реальном масштабе времени, и обосновано требование создания новой архитектуры распределённой файловой системы.
  4. Разработана оригинальная архитектура быстрой распределённой файловой системы, отличительными особенностями которой являются организация обменов на уровне блоков файловой системы, а не файлов, и реализация программ обслуживания удалённого доступа к данным в адресном пространстве ядра операционной системы.
  5. Разработан протокол доступа к удалённым данным на уровне блоков файловой системы, который обеспечивает по сравнению с применяемыми в современных распространённых распределённых файловых системах протоколами лучшую реактивность и меньшую нагрузку на узел–сервер.
  6. На основе разработанных методов и алгоритмов выполнена практическая реализация архитектуры быстрой распределённой файловой системы, обеспечивающей удовлетворение требований улучшения реактивности, увеличения скорости загрузки и рестарта, и снижения нагрузки на узел–сервер в распределённых вычислительных системах, работающих в реальном масштабе времени.
  7. Проведено математическое и имитационное моделирование функционирования разработанной быстрой распределённой файловой системы и доказана эффективность её использования в распределённых вычислительных системах, работающих в реальном масштабе времени.
  8. Основные результаты имитационного моделирования быстрой распределённой файловой системы показали эффективность следующих характеристик системы:
  • высокая скорость доступа к удалённым данным, составляющая порядка 90% от скорости доступа к локальным данным;
  • высокая предсказуемость времени доступа к данным: разброс составляет порядка 4%;
  • высокая скорость инициализации после старта/рестарта;
  • низкая нагрузка на узел–сервер – уменьшение производительности узла–сервера составляет не более 10% при интенсивном обмене данными с одним узлом–клиентом.

Список работ, опубликованных по теме диссертации

  1. Кинсбурский С.А. Распределённая виртуальная файловая система для многомашинных комплексов // XXXII Гагаринские чтения. Научные труды Международной молодежной научной конференции в 8 т. Т. 6. М.: “МАТИ”–РГТУ, 2006. С. 159–161.
  2. Кинсбурский С.А. Подход к реализации распределённой виртуальной файловой системы для многомашинных комплексов // XXXIII Гагаринские чтения. Научные труды Международной молодежной научной конференции в 8 т. Т. 6. М.: “МАТИ”–РГТУ, 2007. С. 234–235.
  3. Кинсбурский С.А. Концепция виртуальной файловой системы на распределенных носителях // Информационные технологии, № 12, 2007. C. 12–15.
  4. Кинсбурский С.А. Распределённая виртуальная файловая система // в/ч 03425 (НИЦ 4ЦНИИ МО РВ), XXIII научно-техническая конференция на тему "Направление развития и применения перспективных вычислительных систем и новых информационных технологий в ВВТ РКО", 2007 г.
  5. Кинсбурский С.А. Характеристики распределённой виртуальной файловой системы // XXXIV Гагаринские чтения. Научные труды Международной молодежной научной конференции в 8 т. Т. 6. М.: “МАТИ”–РГТУ, 2008. С. 188–190.
  6. Кинсбурский С.А. Распределённые файловые системы и основные проблемы повышения скорости доступа к удалённым данным // Компьютеры в учебном процессе. 2008. № 5. С. 3–12.
  7. Кинсбурский С.А., ОКР "Созвездие – М 2", «Разработка предложений по использованию средств вычислительной техники в составе мобильного сервера, мобильных, переносных и переносимых ПТК», Шифр "Созвездие – М 2 – МЦСТ", ТВГИ.460659.018 ПЗ, 2008 г.
Pages:     | 1 | 2 ||






© 2011 www.dissers.ru - «Бесплатная электронная библиотека»