УДК 681.3
МОДЕЛИ ФУНКЦИОНАЛЬНЫХ ЭЛЕМЕНТОВ РАСПРЕДЕЛЕННОЙ МУЛЬТИСЕРВИСНОЙ СЕТИ ЭЛЕКТРОННОГО УНИВЕРСИТЕТА
Д.В. Макаров, В.Л. Бурковский, И.В. Зубарев
В статье предлагаются средства структурного и математического моделирования элементов распределенной мультисервисной сети электронного университета, ориентированные на проблематику анализа и принятия проектных решений, а также оперативной модернизации сети для повышения эффективности функционирования
Ключевые слова: структурная модель, математическая модель, канал передачи данных, узел обработки транзакций, дисковая подсистема
Проблематика проектирования информационной среды электронных университетов (ЭУ) непосредственно связана с разработкой математических моделей, воспроизводящих процессы функционирования реализуемых средств обработки данных. Ниже обсуждаются вопросы построения формализованного описания, а так же структурно-функциональных моделей основных элементов распределенных мультисервисных сетей, составляющих техническую базу ЭУ.
Модель канала передачи данных с возможностью потери пакетов
Устройства передачи данных, объединенные в сеть, образуют канал передачи информации. Функционирование этих устройств затрагивает три первые уровня модели OSI (Open System Interconnect). На физическом уровне они решают задачу усиления и повторения сигнала. На втором, канальном, уровне - коммутируются пакеты, преобразуется среда передачи данных. Маршрутизация, фрагментация и, в случае необходимости, преобразование технологии передачи данных осуществляется на третьем уровне. Скорость, с которой информация проходит через устройство передачи зависит от используемой технологии сети и от производительности данного устройства. В случае, когда работающее на втором или более высоком уровне эталонной модели OSI устройство не обеспечивает внутреннюю пропускную способность, достаточную при одновременной работе всех интерфейсов в режиме передачи информации на максимальной скорости (wire speed). Пропускная способность является важной характеристикой такого устройства, и измеряется в битах в секунду или в пакетах в секунду. В процессе передачи информации входящий пакет сначала попадает в буфер принимающего интерфейса, затем пакет данных обрабатывается и поступает в буфер передающего интерфейса. При этом потери пакетов могут
Макаров Дмитрий Викторович - ВГТУ, начальник отдела
ИСК, e-mail: [email protected]
Бурковский Виктор Леонидович - ВГТУ, д-р техн. наук,
профессор, e-mail: [email protected]
Зубарев Игорь Валентинович - ВГТУ, канд. техн.
наук, доцент, e-mail: [email protected]
возникнуть при переполнении буфера, по причине ограниченной производительности. В протоколах передачи данных предусмотрены специальные механизмы, позволяющие осуществлять повторную передачу потерянных сетевых пакетов для предотвращения последствий их потери. Как правило, принимающая сторона, не получив пакет данных в течение определенного времени (Тте-Ои), либо передающая сторона, не получив подтверждение о доставке пакета, инициирует повторную передачу данных. Сетевая структура, приведенная на рис. 1, предлагается в качестве модели канала передачи данных с возможной потерей пакетов.
Pn
Устройства обработки данных
Устрой- Устрой-
> ство -> ство
передачи передачи
Устройства обработки данных
Рис. 1. Структура канала с вероятностью потери пакетов
Состоянием отвечающих за передачу узлов и буферизацией передаваемых данных определяется вероятность перехода заявки на повторное обслуживание Рпов. Подобным решением удобно моделировать такие технологии передачи данных, как полудуплексная Ethernet.
Широкое применение до сих пор находит технология подключения к концентратору Ethernet. Для моделирования данная технология наиболее сложна, несмотря на относительную простоту реализации механизма доступа к среде. Технология Ethernet использует для доступа к среде передачи данных протокол CSMA/CD (Carrier Sense Multiple Access /Collision Detect) - множественный доступ с контролем несущей и обнаружением коллизий. Упрощенно протокол работает следующим образом: клиенты, подключенные к коллизионному домену, проверяют, свободен ли канал. В случае если канал свободен, клиенты начинают передачу данных по истечении определенного временного интервала. Если несколько клиентов начинают передачу данных одновременно, модуляция нарушается, и клиенты определяют, что возникла коллизия. Во избежание повторной коллизии, каждый клиент
генерирует число в интервале от 1 до l+2q, где q -число коллизий, произошедших подряд, которое используется для задания интервала времени, в течение которого клиент не будет осуществлять передачу информации. Для этого полученное число умножается на временной интервал, требующийся для передачи 64 байт информации. Выждав заданное время, клиент вновь приступает к сканированию канала для передачи ин-формации. В случае возникновения 16 коллизий подряд клиент начинает считать, что сеть более недоступна и прекращает передачу информации. Следует отметить, что при возникновении коллизии передача информации приостанавливается всеми клиентами как минимум на один временной интервал, происходит простой канала. Зависимость количества коллизий от числа участвующих в передаче данных клиентов, проанализирована работах [1, 2, 3]. При низких загрузках, однолинейный узел сети массового обслуживания может быть представлен в качестве модели концентратора Ethernet. Для моделирования концентратора на всем диапазоне нагрузки, предлагается введение в узле сети параметра, определяющего зависимость вероятности перехода заявки на повторное обслуживание от количества передающих клиентов. Анализ очереди заявок в соответствующем концентратору узле позволяет определить количество передающих клиентов. Клиентом считается каждый сетевой интерфейс любого устройства в коллизионном домене. Потоки заявок, проходящие через эти интерфейсы, могут быть различных классов и подклассов. Определенное множество подклассов заявок, может быть поставлено в соответствие каждому сетевому интерфейсу. Количество готовых к передачи данных клиентов Ethernet определяется количеством узлов с непустыми очередями, передающих заявку в модель концентратора.
Потеря пакетов является одним из последствий возможных перегрузок. Специальные средства, служащие для предотвращения возможных перегрузок реализованы в большинстве протоколов и технологий передачи информации. В их основе лежит снижение скорости отправки данных вызванной передачей специальных управляющих сообщений передающим устройствам.
Смоделировать искусственное снижение скорости передачи можно путем введения дополнительных узлов задержки, зависимость вероятности перехода в них от состояния модели устройства передачи данных.
Модели функциональных блоков ЭВМ, как узла обработки данных
Одним из основных элементом в распределенной мультисервисной системе обработки информации являются ЭВМ. Для корректного описания некоторые части ЭВМ должны быть представлены как отдельные элементы. ЭВМ можно представить как
совокупность следующих компонентов (рис. 2):
- процессоры и оперативная память;
- дисковая подсистема;
- интерфейсы ввода-вывода.
Устройство ввода
Устройство ввода
Устройство ввода
Дисковая подсистема
Устройство
\ вывода
- * Устройство вывода
W Устройство вывода
Рис. 2. Модель ЭВМ
Для того чтобы реальное поведение ЭВМ было точно отражено ее моделью, необходимо учесть особенности функционирования оперативной памяти и дисковой подсистемы.
Модель оперативной памяти ЭВМ
Оперативная память в современной ЭВМ состоит из микросхем оперативной памяти и файла подкачки (виртуальной памяти), который, как правило, расположен на жестком диске. Логическое адресное пространство, в котором работают приложения, разбито на страницы объемом 2-4 кБ. Страница может находиться либо в физической памяти ЭВМ, либо в виртуальной. Перемещение страниц из физической памяти в файл подкачки осуществляется операционной системой согласно определенному алгоритму. Как правило, страница памяти, перемещаемая на диск, выбирается по случайному закону. Перехватывая запрос приложения к странице памяти, находящихся в файле подкачки, операционная система восстанавливает их с диска в физическую память. Быстродействие ЭВМ в целом будет в высокой степени зависеть от объема выделенной памяти, поскольку быстродействие дисковой подсистемы на значительно ниже быстродействия микросхем оперативной памяти, а интенсивность обмена страницами памяти с файлом подкачки напрямую зависит от объема памяти занятой приложениями. Даже незначительное взаимодействие с виртуальной памятью существенно снижает производительность ЭВМ. Значение интенсивности взаимодействия с файлом подкачки, при котором происходит существенное замедление работы ЭВМ, известно для большинства операционных систем.
Для создания точной модели ОЗУ необходимо предусмотреть соответствующий восстановлению страниц из файла подкачки, отдельный поток заявок с интенсивностью, зависящей от объема выделенной оперативной памяти. При обращении приложения к странице ОЗУ система анализирует, где находится запрашиваемая страница: в оперативной или виртуальной памяти. Если страница располагается в файле подкачки, то сначала вытесняется в файл подкачки другая страница, освобождая физическую память, а затем загружается с диска запрашиваемая
ОЗУ
страница и затем происходит обращение к ней. Модель ОЗУ, реализующая зависимость матрицы маршрутов от состояния сети, состоит из блока процессоров, накопителей на жестких дисках и микросхем оперативной памяти. На рис. 3 предложена модель, вероятность перехода заявки из ОЗУ (узел 2) в дисковую подсистему (узел 3) зависит от общего объема выделенной оперативной памяти. Если общий объем выделенной памяти Q, а объем физической памяти q, то вероятность попадания заявки в физическую память равна q/Q и вероятность подкачки страницы из файла подкачки (1^^). То есть вероятность перехода заявки из узла 2 в узел 3 зависит от состояния части сети массового обслуживания, которая моделирует
функционирование ЭВМ.
Рис. 3. Пример упрощенной структурной модели ОЗУ ЭВМ
Поскольку к ЭВМ делаются запросы от приложений различных типов, то запросам от этих приложений следует поставить в соответствие заявки разных классов. Такой подход позволяет ввести функцию зависимости объема выделенной оперативной памяти от количества запросов разных классов, находящихся на обработке внутри узлов, моделирующих функционирование ЭВМ.
Зависимость объема выделенной памяти напрямую связана с алгоритмом обработки запроса на ЭВМ, который может быть промоделирован одним из трех методов. В простейшем случае в ЭВМ резервируются фиксированные объемы памяти, предназначенные для буферизации потока поступающих и обработанных запросов. В этом случае вероятность обращения к памяти, вытесненной в файл подкачки, не будет зависеть от параметров очереди запросов этого типа.
Во втором случае для обработки запроса в памяти ЭВМ динамически выделяется область данных, предназначенная для хранения промежуточных результатов работы программы об работки запроса [3], или для обработки запроса порождается отдельный процесс, которому выделяются не только ресурсы памяти ЭВМ, но и отдельно происходит выделение ресурсов центрального процессора [4, 5]. Таким образом, от количества запросов в очереди будет зависеть объем оперативной памяти, которую операционная система ЭВМ выделит процессу, и, следовательно, интенсивность взаимодействия с дисковой
подсистемой при использовании файла подкачки. Поэтому интенсивность обработки запросов будет существенно зависеть от количества обрабатываемых запросов, то есть от количества заявок соответствующего класса, находящихся в узлах, моделирующих функционирование ЭВМ. ,
Пусть к ЭВМ производят обращение А приложений. Для выполнения запроса приложения
п, п = (1, N) в ОЗУ операционная система выделяет
Ьд, п = (1, N) блоков памяти, причем, общий объем физической памяти составляет H блоков. В сети массового обслуживания функционирование ЭВМ осуществляют узлы, принадлежащие множеству ^ Тогда вероятность обращения к файлу подкачки при обращении к памяти составляет
P
1 N
= 1 -—У h У m
^^ n ^^ in
H n= 1 ieU
(1)
где вторая сумма представляет собой количество заявок класса а, находящихся на обработке внутри ЭВМ.
Модель устройства хранения данных
Устройство хранения информации это один из основных элементов мультисервисной сети массового обслуживания. Прежде всего, модель устройства хранения данных должна в полной мере согласовываться с используемой для анализа распределенной сети массового обслуживания моделью ЭВМ. Современное устройство хранения данных состоит из одного или более жестких дисков, подключенных к контроллеру. Разделы дисковых массивов RAID, как устройства хранения данных, моделируются как отдельные физические диски, имеющие более высокую скорость обработки запросов. Наличие и размер буферной (или кэш) памяти оказывает существенное влияние на скорость выполнения операций чтения. Кэш память представляет собой определенный объем ОЗУ, который служит для временного хранения данных, обрабатываемых дисковой подсистемой. Поскольку при обращении к данным, скопированным в буферную память, обращение происходит не к жестким дискам, а к ОЗУ, время доступа к данным значительно сокращается.
Рассмотрим систему хранения информации следующей конфигурации:
- количество жестких дисков - n;
- интенсивность обслуживания жесткого
диска ^j, j = (1, n) блоков данных/сек;
- количество областей данных на каждом
i = (1, mj )
жестком диске щ, у = (1, п);
- размер области данных eiJ,
условных блоков данных.
Интенсивность обращений к области данных eiJ - Ху условных блоков данных/сек. Q - объем
условных блоков данных, выделенных для буферизации. Интенсивность использования кэшпамяти - цБ. Блок данных помещается в буферную память по каждому запросу к системе хранения информации, в противном случае счетчик времени последнего обращения к блоку данных обнуляется. Обновление блоков данных в кэш-памяти
m] n
происходит с интенсивностью Л = XX Xtj. Когда
,=i j=i
буферная память заполняется, из нее выгружается блок с максимальным временем последнего доступа (принцип LRU - last recently used). Некоторые операционные системы освобождают блок буферной памяти в зависимости от времени последнего обращения, когда оно превышает установленный предел. При работе в стационарном режиме, объем выделенной кеш- памяти для области данных е^ прямо пропорционален интенсивности обращения к области данных q^QXjj/Л. Эта формула будет верна так же в случае, если область данных полностью не помещается в буферную память (eij>Qij). Для учета выделенных областей буферной памяти, в которые полностью помещаются соответствующие области дисковой памяти, выделенную кэш-память разделим на два объема V и W. В объем V входят только те области жесткого диска, которые благодаря частоте обращений целиком размещаются в буферной памяти, подмножество W включает в себя все остальные области данных. Выборка данных из кэшпамяти при обращении к системе хранения данных происходит с вероятностью pБ=q^/eiJ,где
m.
sj =<
(Q - X ej)■ v
(kl)eV X
для (i, j) e V
--, для (i, j) e V. (2)
kl
(kl )eV
При изначально неизвестной интенсивности потоков в СеМО для определения размеров буферной памяти используется не отношение интенсивности потоков заявок, а отношение числа заявок, проходящих обработку в узлах модели дисковой подсистемы. Вычислим интенсивность потока заявок через количество заявок, которые находятся на обслуживании. Из формулы для среднего количества заявок в устройстве, которое не зависит от нагрузки (однолинейном устройстве), следует
иЫ
-. (3)
х = ■
Ы +1
Если через узел проходят несколько потоков заявок, относящихся к разным классам, интенсивность обслуживания заявок класса s (Х8) будет пропорциональна числу заявок данного класса (щ^, проходящих обслуживание.
Xs =■
-X,
(4)
M
где М - общее количество заявок в узле, а X-общая интенсивность обслуживания.
Подставив (4) в (3), получим количество транзакций заданного класса в одном узле. Суммой интенсивностей запросов к физическому диску и буферной памяти определяется интенсивность запросов к области данных дисковой подсистемы. Поскольку обращения к заданной области данных (например, к области 1 жесткого диска ') подразумеваются как класс заявок, следовательно, интенсивность запросов к дисковой подсистеме по отношению к заявкам заданного класса равна
Xn =
Vnmn
Мб m Бп
(5)
m„
mr
где
- цп - интенсивность обслуживания диска п;
- цБ- интенсивность обслуживания буферной памяти;
- щп общее количество заявок;
- щп1 - и количество заявок класса 1 (запросов к области данных 1), обрабатывающихся в моделирующем работу жесткого диска узле;
- щБ и щБп1 - общее число заявок класса у1 (транзакций в области данных 1 диска у) в узле, моделирующем работу кэш-памяти.
Буферная память Q блоков
Ui
j e„i НЖМД N
Рис. 4. Структурная модель буферизированной дисковой подсистемы
e
X
i
X
12
X
13
X
ni
Структурная модель ЭВМ
Факторами, влияющими на загрузку отдельных элементов ЭВМ, являются: операционная система; приложения, выполняющиеся на ЭВМ; транзакции различных классов, инициированные сетевыми программами. Для создания корректной модели обработки транзакций различных классов следует применять различные уровни интенсивности обслуживания в узлах сети. Для этого каждому приложению и типу запроса к ЭВМ сопоставим некоторый класс заявок со своей таблицей маршрутов. Таким образом, класс заявок может быть описан с учетом вероятности перехода внутри модели ЭВМ и коэффициента, использования объема оперативной памяти, выделяемой для выполнения запроса.
Модель обработки запроса строится на основе прохождения каждой заявкой нескольких циклов внутри узлов сети, моделирующих
функционирование ЭВМ. Сначала транзакция попадает в процессорный модуль. При моделировании многопроцессорной ЭВМ модуль строится в соответствии с типом реализованной мультипроцессорной обработки. Если используется симметричная многопроцессорная обработка (SMP), процессорный блок представляет собой многолинейный узел. В случае, когда происходит несимметричная многопроцессорная обработка, моделирование процессорного модуля
осуществляется несколькими узлами с определенной вероятностью перехода заявки. После того, как заявка обработана процессорным модулем, она попадает с вероятностью Рхр в дисковую подсистему, либо в ОЗУ с вероятностью Розу.
Рис. 5. Обобщенная структурная модель ЭВМ
В зависимости от состояния системы, поток заявок к дисковой подсистеме ЭВМ разделяется на поток заявок к буферной памяти, и второй -непосредственно к дисковой подсистеме. Он зависит от процесса выделения буферной памяти для областей данных, к которым обращается заявка данного класса. Допустим, заявка класса г обращается к множеству областей данных Е, представляющему собой пару номер диска - номер области на диске {п е}, тогда вероятность перемещения области в кэш-память будет равна
P = p Qni
буфф / I ni nipE
(6)
где Pпl- вероятность обращения к т области данных; QПl - объем выделенной для блока dvl кэшпамяти.
Операционная система выделяет буферную память в объеме, зависящем от состояния системы, а конкретно от состояния узлов СеМО, моделирующей функционирование ЭВМ.
При необходимости доступа к оперативной памяти происходит либо обращение к микросхемам ОЗУ, либо, как было сказано выше, обращение к файлу подкачки, которое моделируется переходом заявки в подкласс, имеющий такую матрицу вероятностей перехода (см. рис. 5), что заявка сначала попадает в узел СеМО, моделирующий микросхемы оперативной памяти, а уже потом в блок процессоров и узел, моделирующий жесткий диск, на котором содержится файл подкачки. Затем заявка возвращается в класс, соответствующий запросу. Иногда, операционная система может вытеснить в файл подкачки буферную область памяти дисков, что создает дополнительную нагрузку на процессор и дисковую подсистему.
По завершении обработки транзакции в дисковой подсистеме или оперативной памяти, существует вероятность возвращения заявки на повторную обработку Рповт. Вероятность, что заявка покинет систему через одно из устройств вывода, составляет (1- Рповт). Для системных процессов ЭВМ вводится отдельный узел, который имитирует временной интервал между запросами приложения к ЭВМ.
Таким образом, для описания процесса обработки транзакции определенного класса необходимо задать следующие величины:
ЕП- множество областей данных на дисках, к которым может обратиться заявка класса п;
dПl - размер области данных 1 на диске п;
рОТ1 - вероятность обращения заявки класса к области данных dvl;
РП пам - вероятность обращения заявки к памяти;
ЬП - объем блоков памяти, выделяемой операционной системой, для обработки запроса класса п;
РПп - вероятность повторной обработки заявки. Среднее количество циклов обработки заявки равно 1/(1-Рпп).
Для моделирования ЭВМ необходимо задать следующие величины:
Цпроц - интенсивность обработки заявок процессором;
Ппроц - количество процессоров (количество обслуживающих приборов в узле моделирующем процессорный модуль);
Н - объем оперативной памяти);
цозу - интенсивность обработки заявок ОЗУ;
N - количество жестких дисков;
- интенсивность обслуживания заявок жестким диском.
Рассмотренные модели функциональных элементов мультисервисных сетей позволяет обеспечить высокое качество анализа состояния информационной среды электронного университета,
что обеспечивает решение задач оптимизации структуры в процессе принятия оперативных проектных решений, в том числе в условиях их развития.
Литература
1. Колосков М. Как поставить диагноз своей сети. Самоучитель по Теории очередей для сетевых администраторов // Сети и системы связи. -2000. № 8. С.45-53.
2. Штоян Д. Качественные свойства и оценки стохастических моделей. М.: Мир, 1971. - 162 с.
3. Шварц М. Сети ЭВМ. Анализ и проектирование. М.: Радио и связь, 1981. - 336 с.
4. Смолко А.Е., Бурковский В.Л. Алгоритмизация задачи высоконадежного функционирования распределенных информационных систем управления //Современные проблемы информатизации: Тез. докл. IV Междунар. электронной науч. конф. Воронеж, 1999.-С.170.
5. Соколов А.Е., Бурковский В.Л. Метод преобразования стохастической модели системы обработки информации для применения эффективных алгоритмов анализа // Современные проблемы информатизации в технике и технологиях: Сб. науч. тр. VI Междунар. открытой науч. конф. Воронеж, 2001.-С.79.
6. Вишневский В.М. Теоретические основы проектирования компьютерных сетей. Москва: Техносфера, 2004. - 512с.
7. Соколов А.Е., Бурковский В.Л. Повышение отказоустойчивости современных распределенных систем обработки информации // Современные проблемы информатизации в непромышленной сфере и экономике: Сб. науч. тр. V Междунар. электронной науч. конф. Воронеж, 2000.-С.131.
8. Соколов, А.Е. Проблемы алгоритмизации формирования отказоустойчивых структур распределенной системы управления [Текст] / А.Е. Соколов, В.Л. Бурковский // Информационные технологии моделирования и управления: Межвуз. сб. науч. тр. Воронеж, 1999.- С.48-54.
Воронежский государственный технический университет
MODELING FUNCTIONAL ELEMENTS OF A DISTRIBUTED MULTI-SERVICE NETWORK
OF ELECTRONIC UNIVERSITY
D.V. Makarov, V.L. Burkovsky, I.V. Zubarev
The article proposes a means of structural and mathematical modeling of distributed multi-service network of e-University, focused on the problems of analysis and decision-making design, as well as the operational network upgrades to improve the performance
Key words: structural model, mathematical model, data link, transaction processing node, the disk subsystem