Программное обеспечение распределения вычислительных задач в конвергентной сети

Тип работы:
Реферат
Предмет:
ТЕХНИЧЕСКИЕ НАУКИ


Узнать стоимость

Детальная информация о работе

Выдержка из работы

УДК 004. 457
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ РАСПРЕДЕЛЕНИЯ ВЫЧИСЛИТЕЛЬНЫХ ЗАДАЧ В КОНВЕРГЕНТНОЙ СЕТИ
Клепиков А. К.
ФГБОУ ТГПУ им Л. Н. Толстого, Тула, Россия (301 267, пос. Октябрьский, Киреевский район, Тульская
область, д. 65, кв. 3), e-mail: don-klepikov@yandex. ru_
Обозначена актуальность использования облачных технологий в информационно-вычислительной среде предприятий, в том числе предприятий финансовой сферы. Предложен способ интеграции облачных технологий в сети предприятий с использованием монитора-распределителя данных с целью образования конвергентных вычислительных сетей. Рассмотрен монитор-распределитель данных в конвергентных вычислительных сетях предприятий, с уклоном в специфику деятельности предприятий финансовой сферы. Показана структура модулей программного распределителя данных. Указан основной алгоритм работы монитора-распределителя. Рассмотрены основные технологии, с помощью которых разработан монитор-распределитель. Рассмотрен процесс получения статистических данных по распределению информационных объектов для предоставления пользователю в визуальном виде. Рассмотрены вспомогательные средства, использованные для построения аналитических схем и диаграмм. Сделаны выводы по использованию монитора-распределителя данных в конвергентных вычислительных сетях.
Ключевые слова: облачные технологии, конвергентные вычислительные сети, распределитель данных, информационно-вычислительная среда, предприятия финансовой сферы, алгоритм распределения данных в конвергентной вычислительной сети.
SOFTWARE DISTRIBUTION COMPUTATIONAL PROBLEMS IN A CONVERGED NETWORK
Клепиков А. К.
FSEITSPUL.N. Tolstoy, Tula, Russia (301 267, pos. The Octyabriskiy, Kireyevsky district, Tula region, d. 65, q. 3), email: don-klepikov@yandex. ru_
Denotes the relevance of the use of cloud technologies in information and enterprise computing environment, including the financial sector enterprises. We propose a way to integrate cloud computing in the enterprise network using the monitor, the data distributor to form converged networks. Considered monitor Distribution of data in computer networks converged companies, with a bias in the specifics of the financial sector companies. Shows the structure of software modules data distributor. Set the basic algorithm of the monitor-distributor. The basic technology, which is designed to monitor Splitter. The process of obtaining statistical data on the distribution of information objects to provide the user with a visual form. Considered aids used for the construction of analytical charts and diagrams. The conclusions on the use of the monitor, the data distributor in converged computing networks.
Keywords: cloud computing, converged computing network distributor data, information and computing environment, enterprise finance, distribution algorithm converged data in a computer network.
В настоящее время информационно-вычислительные сети (ИВС) предприятий финансовой сферы (ПФС) активно развиваются в направлениях автоматизации процессов обработки данных. Все большее количество населения использует онлайн-сервисы, предоставляемые ПФС. Онлайн-сервисы являются частью автоматизированных банковских систем (АБС), которые на данный момент являются важнейшим звеном в процессе автоматизации информационной структуры банка.
Активное использование ИВС приводит к множественным процессам обработки больших объемов данных, хранение и обработка части которых, с точки зрения временных и
экономических затрат, неэффективна. В связи с чем, новой тенденцией в развитии ИВС ПФС является использование облачных провайдеров, с целью включения в состав ИВС вычислительных облачных серверов. Образовывая такие сети, ПФС создают конвергентные вычислительные сети (КВС) [6].
При организации КВС важным звеном выступает программное обеспечение (ПО), которое способствует объединению сетей ПФС виртуальных облачных сетей в одну общую сетевую структуру с определяемыми политиками доступа, задаваемыми администратором сети. Другой важнейшей задачей является распределение вычислительных задач в виде информационных объектов (ИО) между серверами КВС: серверами ВС ПФС и облачными виртуальными серверами [2, 4].
Для распределения ИО, с целью выполнения информационно-вычислительных работ, ИВР предлагается использовать алгоритм рационального распределения вычислительных задач, который позволяет производить распределение поступившей вычислительной задачи Xk, k={1,2,3,…, K}, поступающей от АРМ f g={1,2,3,…, G} на один из вычислительных
• * У
серверов множества серверов ИВС ПФС L={li, ?2, 1з,…, ln} и множества облачных вычислительных серверов Cl={cl1, cl2, cl3,…, clm}. SRV={L, Cl} - образует КВС ПФС, j={l1, l2, l3,…, ln, cli, cl2, cl3,…, clm} - общее число серверов КВС ПФС, t — определяет интервал времени опроса серверных станций. P — шлюзовой сервер ВС ПФС, Zx — набор пакетов данных принадлежащих задачи (ИВР). Алгоритм состоит из следующих шагов:
Шаг 1. Получить задачу Xk от ARM fg, в виде набора пакетов данных Zx по задаче
Xk.
Шаг 2. Определить объемы вычислительных ресурсов, необходимых для выполнения поступившей задачи WXk = [0Хк, ГПХк, l, hXk, SXk}.
Шаг 3. Из множества серверов SRV={L, Cl} определить сервера, для которых вычислительная мощность процессора, объем ОЗУ, скорости передачи данных по сети, объем свободного пространства на ПЗУ удовлетворяют требованиям, необходимым для решения задачи. Для каждого SRV, проверяем условия С & gt- Cx, m & gt- ГПХ, / & gt- lx ,
: с* Vj k j k j k
hSrv & gt- hX, SSrv & gt- SX, то добавляем новый сервер в множество доступных для решения
задачи серверов A{}, если множество, А пусто, то переход к шагу 4, иначе к шагу 5.
Шаг 4. Ожидаем интервал времени t. Переход к шагу 3.
Шаг 5. Выбираем сервер dbea из множества А, для которого прогнозируемая временная оценка времени исполнения ИВР минимальна.
Шаг 6. Получение ip адреса сервера dbest.
Шаг 7. Изменение ip адреса получателя в Zxна ip адрес сервера abest.
Шаг 8. Изменение ip адреса отправителя в zXk на адрес шлюзового компьютера P.
Шаг 9. Отправка ИВР Zx^ на сервер c? max.
Шаг 10. Добавление в журнал ведения логов информации об отправленной задаче: наименование задачи, компьютер отправителя, компьютер получателя.
Шаг 11. Ожидание поступления ответных данных по задаче Zx^ от сервера dbea.
Шаг 12. Если данные от сервера dbeat поступили, то выполняется переход к шагу 13, иначе переход к шагу 11.
Шаг 13. Изменение в Zx^ ip адреса отправителя на ip адрес P.
Шаг 14. Изменение в Zx ip адреса получателя на адрес fg.
Шаг 15. Отправить полученные данные на f
Шаг 16. Переход к шагу 1.
На основании вышеизложенной модели был разработан монитор-распределитель данных в конвергентных вычислительных сетях TiCloudBalancer, который разрабатывался с использованием ОС Microsoft Windows 8, в среде MS Visual Studio 2013 с использованием языков программирования С++ и С#. Выбор языка программирования С++ был обусловлен следующими критериями:
— скорость работы системных программ написанных с помощью языка С+±
— возможность работать напрямую с потоками данных, передаваемыми по сети с помощью сокетов-
— возможность работать напрямую с участками памяти компьютера-
— наличие большого количества библиотек, позволяющих расширить возможности языка без снижения общей скорости работы программы-
— возможность низкоуровневой работы с передаваемыми по технологии TCP/IP данными.
Использование языка C# в проекте было обусловлено необходимостью применения визуальной среды для предоставления администратору доступа к меню управления и мониторинга работы системы распределения ИВР. Также в проекты, написанные с использованием языка C#, могут быть внедрены модули и библиотеки, написанные с использованием языка С++, что позволяет совместить скорость работы программы с большими возможностями по визуализации происходящих в распределителе процессов с применением современной среды разработки MS Visual Studio 2013. Среда MS Visual Studio
2013 позволяет разрабатывать приложения, используя языки С, С++ и С#, используя современные средства построения визуального интерфейса windows presentation foundation (WPF). Перечисленное выше позволяет создавать системное ПО, производить его рефакторинг, дорабатывать, компилировать, используя различные версии встроенных библиотек, что является основополагающим при выборе среды разработки для создания монитора-распределителя ИВР.
Монитор-распределитель представляет собой системное ПО, построенное с помощью модулей: главный (шлюзовой) модуль, серверный модуль, клиентский (АРМ) модуль [1].
Монитор-распределитель позволяет производить распределение нагрузки только для приложений, построенных на основе клиент-серверной архитектуры [3] (рис. 1), где возможно разделение серверной части, выполняющей роль обработчика запросов, и клиентской части, исполняющей роль приложения, позволяющего пользователю взаимодействовать с системой по средствам графического интерфейса [5].
Серверная часть Канал передачи данных Клиентская часть
Обработка поступивших данных Удаленный вызов серерных

Выполнение служебных процедур процед/р
обработки данных Обработка и вывод данных
Передача ответов формируемых полученных с сервеной части
при 53просах на обработку данных Получение и обработка данных пользователя
Рис. 1. Структура П О распределителя нагрузки TiCloudBalancer Монитор-распределитель TiCloudBalancer реализован на основании проекта с открытым исходным кодом Balancer в среде разработки Visual Studio 2013 с использованием языка программирования С#. Приложение построено с использованием объектно-ориентированного подхода. Каждый модуль представляет собой законченный программный продукт, поставляемый в виде скомпилированной программы и устанавливаемый с помощью стандартного установщика InstallShieldWizard.
После установки, монитора-распределитель использует порт 5747 для передачи данных по сети между модулями, установленными на серверных станциях, шлюзовом компьютере и АРМ, и становится доступным как служба Windows Cloud Balancer ARM Module для АРМ станций, Cloud Balancer Server Module — для серверных станций, Cloud Balancer Gate Module — для шлюзового компьютера.
Службы
Файл Действие Вид Справка
— |П|Х

Службы [локаль
1
J Jj
Службы (локальные)
NVIDIA Update Service Daemon
Остановить службу
Перезапустить службу
Описание
Позволяет отслеживать формирование новых вычислительных задач на ARM клиентов
Имя ж Описание 1 Состояние j Тип запуска 1 вхс_-
. Machine Debug Manager Supports local and remote debugging for Visu… Работает Автоматиче… Ло
MegaFon Internet Service MegaFon Internet Management Service Работает Автоматиче… Ло I
'-Л Microsoft. NET Framework NGEN ., Microsoft. NET Framework NGEN Отключена Jloj
Microsoft. NET Framework NGEN ., Microsoft. NET Framework NGEN Отключена Ло
— Microsoft. NET Framework NGEN ., Microsoft. NET Framework NGEN Автоматиче… Ло
— ?Microsoft. NET Framework NGEN ., Microsoft. NET Framework NGEN Автоматиче… Ло
'-Mozilla Maintenance Service Служба поддержки Mozilla гарантирует, что н… Отключена Ло
—, NVIDIA Display Driver Service Provides system and desktop level support to t… Работает Автоматиче… Ло
— ¦ NVIDIA Stereoscopic 3D Driver Ser.,. Provides system support for NVIDIA Stereosco,. Работает Автоматиче… Ло
'-¦"(Cloud Balancer ARM Module Клиентский модуль распределителя Cloud Ba,. Работает Автоматиче…
¦?f Office Source Engine Сохранение установочных файлов для после,. Вручную Ло
— Office Software Protection Platform Office Software Protection Platform Service (unl… Работает Вручную & lt-И
'-. ?Parental Controls Эта служба является заглушкой для функцио… Вручную Ло
-Plug-and-Play Позволяет компьютеру распознавать измене… Работает Автоматиче… Ло
& quot-"-- - Protexis Licensing V2 This service provides Protexis licensing functio.,. Работает Автоматиче… Ло
Q& amp- Protexis Licensing V2 x64 This service provides Protexis licensing functio.,. Работает Автоматиче… Ло
.:. Quality Windows Audio Video Exp.,. Quality Windows Audio Video Experience (qWa… Вручную Ло
Skype Updater Enables the detection, download and installation. Автоматиче…
& lt-
Расширенный Д Стандартный j
Рис. 2. АРМ модуль в списке процессов клиентского компьютера сети ПФС
Монитор-распределитель позволяет выводить статистику по проведенным распределениям ИО по вычислительным серверам КВС ПФС, а также отображать ход распределения в режиме реального времени. Подобные функциональные особенности доступны в связи с использованием языка C# и технологии WPF, с помощью которой происходит вывод оконного интерфейса с целью получения информации о работе системы (рис. 3).
В процессе работы распределителя формируются массивы данных, в которых хранится вся информация по поступившим, обработанным заявкам, времени обработки заявок, а также информация о заявках, которые на данный момент находятся в стадии обработки.
Информация по уже завершенным процессам обработки данных хранится в лог-файлах шлюзового модуля на шлюзовом компьютере, для доступа к лог-файлам используется метод:
public void ReadLogFile (string[] logDatal)
{
this. logData = logDatal-
}
Листинг 1. Метод получения данных для формирования аналитического представления данных о происходящих процессах обработки данных в КВС с использованием монитора-распределителя.
Для визуализации и представления аналитической информации использовались элементы управления для построения диаграмм Microsoft Chart Controls, доступные для технологии WPF и NET FRAMEWORK 4.0 и выше [7]. Для использования библиотеки
отображения графиков был использован метод ReadLogs (), основные особенности которого изложены в листинге 2. Сущность метода ReadLogs () заключается в чтении и обработке сформированных строк, представляющих собой информацию о происходящих в мониторе-распределителе событиях.
using (StreamReader sr = new StreamReader (path))
{
string line- int y = 0- System. DateTime x-
chart2. Series["-Series1"-]. XValueType = ChartValueType. DateTime- chart2. ChartAreas[0]. AxisX. LabelStyle. Format="-yyyy-MM-dd HH: mm: ss"-- chart2. ChartAreas[0]. AxisX. Title = & quot-Дата, время& quot--
chart2. ChartAreas[0]. AxisY. Title = & quot-Количество обработанных задач& quot--
while (Isr. EndOfStream) {
line = sr. ReadLine () — string[] strArr = line. Split ('-t'-) — x = DateTime. Parse (strArr[0 ]) — y = Convert. ToInt32(strArr[1]) —
chart2. Series["-Seriesl"-]. Points. AddXY (x. ToOADate (), y) —
}
sr. Close () —
}
Листинг 2. Метод получения данных для формирования аналитического представления данных о происходящих процессах обработки данных в КВС с использованием монитора-распределителя.
Рис. 3. Вывод аналитической информации в мониторе-распределителе данных Для отображения информации о задачах, которые на данный момент проходят этап выполнения, использовался метод ReadActiveData (), который позволяет получить данные из массивов, проводимых ИВР в КВС. Выводы:
Монитор-распределитель данных в конвергентных вычислительных сетях позволяет производить рациональное распределение ИО по вычислительным серверам ИВС с подключенной облачной инфраструктурой. Основные возможности разработанного ПО состоят в распределении вычислительных задач, также существуют и дополнительные функциональные особенности, которые позволяют производить анализ происходящих в КВС процессов с помощью визуального интерфейса, содержащего вывод необходимой информации о состоянии работы монитора-распределителя.
Разработанный алгоритм позволяет производить рациональное распределение ИО по параметрам времени выполнения ИВР и стоимости ИВР на вычислительном сервере, что способствует повышению эффективности функционирования КВС ПФС в целом.
Список литературы
1. Клепиков, А. К. Программный распределитель вычислительных задач с функцией мониторинга / А. К. Клепиков, А. Н. Привалов // Известия ТулГУ. Технические науки. — Тула, 2013. — № 1. — С. 274−280.
2. Кульба В. В., Ковалевский С. С., Косяченко С. А., Сиротюк В. О. Теоретические основы проектирования оптимальных структур распределённых баз данных. [Текст] / В. В. Кульба, С. С. Ковалевский, С. А. Косяченко, В. О. Сиротюк. — М.: Синтег, 1999. — 660 с.
3. Ладыженский, Г. М Технология «клиент-сервер» и мониторы транзакций / Г. М. Ладыженский // «Открытые системы». — Москва, 1994. — № 3. — С. 4−10.
4. Привалов, А. Н. Моделирование информационных процессов тренажерных систем [Текст] / Е В. Ларкин, А. Н. Привалов. — LAP LAMBERT Academic Publishing, 2012. — 240 с.
5. Романченко, В. Распределенные облачные (Cloud) вычисления. [Электронный ресурс] //URL: https: //sites. google. com/site/moiknigiilekcii/lekcii/infonnatika/lekcia-no25/cloud (дата обращения: 10. 01. 2015).
6. HP, HP помогает Альфа-банку перевести сеть хранения на 16-гигабитный Fibre Channel [Электронный ресурс] // URL: http: //habrahabr. ru/company/hp/blog/142 297/ (дата обращения: 10. 01. 2015).
7. Microsoft, Using Chart Controls [Электронный ресурс] // URL: http: //msdn. microsoft. com/en-us/library/dd489238(v=vs. 140). aspx (дата обращения 10. 01. 2015).
Рецензенты:
Привалов А. Н., д.т.н., профессор кафедры информатики и информационных технологий, ФГБОУ ТГПУ им. Л. Н. Толстого, г. Тула-
Добровольский Н. М., д.ф. -м.н., профессор кафедры алгебры, математического анализа и геометрии, г. Тула.

ПоказатьСвернуть
Заполнить форму текущей работой