А. В. Сироткин
УПРАВЛЕНИЕ ФОРМИРОВАНИЕМ ИНФОРМАЦИОННЫХ ПОТОКОВ В ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЕ
Развитие автоматизированных информационных систем в настоящее время имеет тенденцию к централизации источников информации и построению вокруг них широковещательной инфраструктуры передачи данных, включающей полнофункциональные рабочие места пользователей. Подобная архитектура была долгое время характерна для файл-серверных систем, но она не потеряла свою актуальность и для клиент-серверных систем, и систем на основе распределенных приложений. В общем можно отметить, что для предприятия, использующего автоматизацию процессов управления, характерно разнообразие информационных служб, поддерживаемых централизованным источником, в качестве которого выступает выделенная вычислительная система (ВС), имеющая ограниченное (как правило один или в лучшем случае два) число сетевых интерфейсов, к которым подключена вся инфраструктура предприятия.
Подобная архитектура позволяет рассматривать вычислительную систему в роли обслуживающего прибора (ОП) системы массового обслуживания (СМО) информационного взаимодействия для участвующих субъектов. Помимо этого, поддерживаемая большинством операционных систем (ОС), используемых в качестве ядра вычислительной системы, концепция вытесняющей многозадачности на основе различных дисциплин обслуживания превращает саму ВС в СМО, в роли обслуживающего прибора которой выступает планировщик задач и потоков ОС. В общем, учитывая сложную последовательную архитектуру ОС, объединяющую вычислительную подсистему, память, подсистему ввода-вывода и пр., можно рассматривать весь комплекс ВС как последовательность СМО, предполагая, что результирующий информационный поток, формируемый системой при всем многообразии информационных служб, будет иметь случайный порядок расположения
и размеров составляющих информационных фрагментов. Проведенные эксперименты, опубликованные, например в [1], позволили не только подтвердить это предположение, но и визуализировать параметрическое описание информационных потоков в результирующем композитном потоке, формируемом вычислительной системой (см. рис. 1).
Скорость информационных потоков
О 200 400 600 600 1 000 1 200 1 400 1 600 1 900 2 000 2 200 2 400 2 600
Переданные кадры, шт.
Рис. 1. Диаграмма композитного потока Е1кегп& на основе параметра
скорости передачи кадра
На рисунке 1 с достаточной очевидностью наблюдается случайный характер последовательности включения фрагментов информационных потоков 1, 2 и 3 в композитный результирующий поток, зарегистрированный на выходном интерфейсе вычислительной системы.
Стохастический характер формирования сетевого потока, обусловленный описанными выше причинами, на деле представляет известную проблему для проектировщика АСУ, стремящегося достичь максимальной скорости обслуживания для информационных взаимодействий, имеющих наибольшую важность для прикладной системы. Одним из естественных способов преодоления этой проблемы будет разработка методов и механизмов управления формированием результирующего композитного потока на выходе ВС. Учитывая последовательную архитектуру СМО в вычислительной системе, влияющую на характер результирующего потока, можно в качестве основного ОП выделить планировщик задач ОС, использующий установленную дисциплину диспетчеризации. В задачу исследователя будет входить анализ
возможности управления планировщиком с целью влияния на результирующий поток и получения аналитических зависимостей, описывающих это влияние и методы управления планированием.
Операционная система может рассматриваться как приоритетная СМО, допускающая использование приоритета процесса или задачи ОС в качестве инструмента влияния на результирующий информационный поток. С этой точки зрения приобретает большое значение оценка вариативности параметра приоритета процесса, значение которого будет определять диапазон изменения значения функции управления X = f(p), где р - приоритет процесса. У
разных ОС он имеет разное значение; анализ наиболее доступных и распространенных систем определил ОС Unix FreeBSD как оптимальную систему, имеющую высокую вариативность значения пользовательского диапазона приоритетов р Е [—20,+19], при одновременной доступности механизмов управления (например, с использованием системной утилиты nice). Задача разработки механизмов управления была разбита на две подзадачи:
1. установление аналитических зависимостей задержки от параметров протекающих процессов (задач ОС) на основе используемой карусельной дисциплины диспетчеризации;
2. установление зависимостей параметров формирования результирующего композитного потока от параметров управления.
Каждая из этих задач была решена эмпирическим путем на основе формализации параметров протекающих процессов и формируемых потоков. В общем виде задержка обслуживания, определяемая как время формирования информации, была представлена в виде функции т = f(p,p,n, /с), где т -
время обслуживания, p - приоритет обслуживающего процесса, p' - вектор приоритетов конкурентных процессов, к - количество конкурентных процессов, n - количество простых итераций формирования.
Для установления аналитических зависимостей т от указанных параметров была проведена серия экспериментов, в ходе которых были выполнены серии измерений для следующих параметров:
1. т = fQp,ri);k = 1; р = (pi); р± = 0, т. е. в качестве базового вариативного параметра было выбрано количество итераций формирования. При проведении эксперимента использовался один конкурентный процесс с фиксированным приоритетом. Анализировалось влияние количества итераций на время выполнения с различными приоритетами базового процесса при наличии одного конкурирующего.
2. т = f(pfk^mtn = 150; р = (р±); J>1 = 0, т. е. в качестве вариативного параметра было выбрано количество конкурентных процессов. При проведении эксперимента использовались несколько конкурирующих процессов с фиксированными равными приоритетами. Анализировалось влияние количества конкурирующих процессов на время выполнения базового.
3. т = f(p,p)-tk = 1; п = 100; Е [—9,+6], т. е. одновременно производилось изменение количества и приоритетов конкурентных процессов. При проведении эксперимента использовалось различное количество конкурирующих процессов с разными приоритетами. Анализировалось влияние количества и приоритетов конкурирующих процессов на время выполнения базового.
Для реализации базового процесса была создана программа, моделирующая формирование информации путем циклических вычислений. Изменение регулирующих приоритетов базового и конкурентных процессов производилось с помощью системной утилиты nice. Диаграммы, иллюстрирующие серии измерений приведены на рис. 2-4 соответственно.
■20 -19 -18 -17 -16 -15 -14 -13 -12 -11 -10 -9 -В -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Приоритет процесса
■Среднее при п = 50 —♦—Среднее при п = 100 —*—Среднее при п = 150 —♦—Среднее при п = 200 —♦—Среднее при п = 250
Рис. 2. Сводная диаграмма измерений влияния приоритета на задержку
----I---I---.---,---,----,---,---,---,---,---,------1-----1-1--1---1-1--------------1-Г-0-1-1-1-1---1---1---1----1---1---1-------1-1----------1-1-1----------------1-1-1-1-1-
-20 -19 -18 -17 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Приоритет процесса
|—♦—Среднее при к « 1 ♦ Среднее при к = 2 —» Среднее при к = 3Среднее при к = 4 ♦ Среднее при к = 5 |
Рис. 3. Сводная диаграмма влияния приоритета и количества конкурирующих процессов на задержку
-----,----,---,----,----,----,----,----т----,----,---,-----т---,----,----,----,----,----,----1-0-1----,----1----1----1----,----1----1----1----г---,----,----,----,----,----,----,----,---,---->----
-20 -19 -18 -17 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Приоритет процесса
Среднее при р'=+3 —♦—Среднее при р'=+7 Среднее при р'=+В * Среднее при р'=+5 — Среднее при р'=+4 —•—Среднее при р'=+3
---Среднее при р'=+2 —*—Среднее при р'=+1 ----------------------Среднее при р'=0 —О—Среднее при р'=-1 -Среднее при р'=-2 —®— Среднее при р'=-3
---Среднее при р'=-4 —♦—Среднее при р--5 -Среднее при р'=-6 —♦—Среднее при р--7 ------------------------Среднее при р--8 —*— Среднее при р'=-9
Рис. 4. Сводная диаграмма влияния приоритета, количества и приоритетов конкурирующих процессов на задержку После проведения всех экспериментов и обработки результатов методами корреляционно-регрессионного анализа были получены следующие аналитические зависимости для каждой серии измерений:
где 1а и 1Ь - положительные коэффициенты, превышающие единицу.
Обобщенно функция параметра задержки т = / (р, р, п, к) может быть
формализована как т = 1е3+сгр; где з Е [—1,0;1],с £ [—1Д1],2 Е {р',п,к) , т. е. как экспоненциальная функция от приоритета р базового процесса с до-
полнительным переменным параметром - г, в качестве которого выступают либо количество итераций формирования информации п, либо количество конкурирующих процессов - к, обладающие значениями приоритетов, составляющими вектор р'.
Для установления зависимостей параметров формирования результирующего композитного потока от параметров управления была проведена серия измерений для эксперимента по формированию потоков, в качестве управляющего параметра которых выступал приоритет базового процесса. Для проведения измерений на источнике были запущены три процесса, один из которых был базовым с приоритетом, изменяющимся в диапазоне от -19 до 20, и два - конкурентными с приоритетами р = 0 для каждого. Каждый процесс выполнял циклическую итерацию, формирующую на сетевом интерфейсе ВС кадр ЕЖвт^, в совокупности составляющими результирующий композитный поток. Исходящий поток захватывался в сетевой инфраструктуре и обрабатывался разработанными средствами анализа [2], производился контроль параметра концентрации информационного потока как
где di - концентрация i-го потока, W - объем переданных данных i-го потока, W - общий объем переданных данных, m - количество зарегистрированных за время t кадров Ethernet, Wj - объем j-го кадра Ethernet [1].
Измерения производились за фиксированное время t(p) = const для
каждого из установленных значений приоритетов - p базового процесса. В ходе измерений регистрировались объемы файлов, переданных базовым процессом на удаленную вычислительную систему, выступающую в качестве клиента. Фиксировались объем переданных данных Wb = /(рь) и приоритет pb формирующего процесса. Диаграмма результатов измерений приведена на рис. 4.
45 000 000 40000000 35 000000
н 30000000
та
о 25 000000
X
гз
5 20000000
О.
с 15 000000 10000000 5 ООО ООО
о
-20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 2 4 6 8 10 12 14 16 18
приоритет
Рис. 5. Результирующая диаграмма измерений управления формированием
потока за счет приоритета процесса
На диаграмме рис. 5 с высокой очевидностью наблюдается прямая зависимость объема переданных данных регистрируемого потока от приоритета формирующего процесса. На дальнейшем этапе был определен вид функции / (рь). Аппроксимация производилась с помощью программы МшИсаЛ.
Была подобрана экспоненциальная регрессия вида
х г= 1336.^ = 120000,- = 0.312 63.
Вывод. Проведенная серия экспериментов показала, что при решении задач управления формированием информационного потока на выходе вычислительных систем возможно использование механизмов приоритетного управления задачами базовой операционной системы. При решении задач построения управляемых прикладных информационных систем с использованием подобных механизмов следует ориентироваться на разработку многопроцессных объектно-ориентированных служб, позволяющих применение приоритетных векторов управления.
Литература:
1. Сироткин А.В. Исследование информационных потоков в инфраструктуре автоматизированных информационных систем.- Ростов-на-Дону: Изд-во СКНЦ ВШ АПСН, 2006.- 155 с.
2. Сироткин А.В., Звонов Ф.Н., Ржанников Г.А., Сафронов Ю.В. Программа 1пАэРа^ег для анализа и визуализации информационных потоков в среде ЕШегие! Свидетельство о регистрации ВНТИЦ от 19.08.09, код № 0203027050344, инв. № 50200900936.