Чтобы доказать актуальность и необходимость включения RADIUS-сервера в систему NGN, необходимо найти математический аппарат, наглядно показывающий улучшение показателей эффективности системы, которыми будут являться: время прописки, высвобождения человеческих ресурсов, а как следствие уменьшение экономических затрат. Поиск математических аппаратов привел к рассмотрению сетей Петри как наиболее приемлемого инструмента для наглядного представления множества внутренних состояний и условий их изменения.
4.1 Сети Петри
Сети Петри представляют собой математический аппарат для моделирования динамических дискретных систем. Впервые описаны Карлом Петри в 1962 году.
Сеть Петри представляет собой двудольный ориентированный граф, состоящий из вершин двух типов – позиций и переходов, соединённых между собой дугами. Вершины одного типа не могут быть соединены непосредственно. В позициях могут размещаться метки (маркеры), способные перемещаться по сети.
Событием называют срабатывание перехода, при котором метки из входных позиций этого перехода перемещаются в выходные позиции. События происходят мгновенно, либо разновременно, при выполнении некоторых условий.
Сети Петри разрабатывались для моделирования систем с параллельными взаимодействующими компонентами.
Процесс функционирования сети Петри может быть наглядно представлен графом достижимых маркировок. Состояние сети однозначно определяется её маркировкой – распределением фишек по позициям.
Некоторые виды сетей Петри:
− временная сеть Петри – переходы обладают весом, определяющим продолжительность срабатывания (задержку);
− стохастическая сеть Петри – задержки являются случайными величинами;
− функциональная сеть Петри – задержки определяются как функции некоторых аргументов, например, количества меток в каких-либо позициях, состояния некоторых переходов;
− раскрашенная сеть Петри – метки могут быть различных типов, обозначаемых цветами, тип метки может быть использован как аргумент в функциональных сетях;
− иерархическая сеть – содержит не мгновенные переходы, в которые вложены другие, возможно, также иерархические, сети. Срабатывание такого перехода характеризует выполнение полного жизненного цикла вложенной сети.
Моделирование в сетях Петри осуществляется на событийном уровне. Переходы отображают действия, происходящие в системе, а позиции – состояния, предшествующие этим действиям, и состояния, принимаемые системой после выполнения действия. Таким образом, модель сети Петри служит для отображения и анализа причинно-следственных связей в системе. Анализ результатов моделирования позволяет определить, в каких состояниях пребывала система.
Манипулируя моделью системы, можно получить новые знания о ней, избегая опасности, дороговизну или неудобства анализа самой реальной системы.
Развитие теории сетей Петри проводится по двум направлениям. Формальная теория сетей Петри занимается разработкой основных средств, методов и понятий, необходимых для применения сетей Петри. Прикладная теория сетей Петри связана главным образом с применением сетей Петри к моделированию систем, их анализу и получающимся в результате этого глубоким проникновением в моделируемые системы. В данной диссертационной работе основное внимание будет уделяться прикладной теории сетей Петри.
В настоящее время теория сетей Петри имеет обширное применение практически во всех отраслях научных исследований. Теория сетей Петри является математическим аппаратом, предназначенным для работы с параллельными и асинхронными системами, к которым, очевидно, относится процесс предоставлении услуги SIP телефонии у поставщика связи [11].
Для рассмотрения системы предоставления услуги SIP телефонии было решено использовать раскрашенные сети Петри.
Теория раскрашенных сетей Петри (Coloured Petri Net, CP-net) разрабатывается более 20 лет рабочей группой (CPN Group) университета г.Орхуса (University of Aarhus, Denmark) под руководством профессора Курта Йенсена (Kurt Jensen). Ими разработана основная модель, включающая использование типов данных и иерархических конструкций, определены концепции динамических свойств, развивается теория методов анализа.
4.2 Имитационное моделирование технологического процесса предоставления услуги SIP телефонии
Раскрашенная сеть Петри – это графоориентированный язык для проектирования, описания, имитации и контроля распределенных и параллельных систем. Графическими примитивами показывается течение процесса, а конструкциями специального языка имитируется необходимая обработка данных. Сеть представляет собой направленный граф с двумя типами вершин – позициями и переходами. Множество позиций (обозначаются эллипсом) описывают состояния системы. Переходы (обозначают прямоугольниками) описывают условия изменения состояний. Позиции называются входными для конкретного перехода, если направление дуги, указывает на переход. Позиции называются выходными для перехода, если дуга ведет от перехода к позиции.
В отличие от «классических» сетей Петри, в раскрашенных немаловажную роль играет типизация данных, основанная на понятии множества цветов, которое аналогично типу в декларативных языках программирования. Соответственно, для манипуляции цветом применяют переменные, функции и другие элементы, известные из языков программирования. Ключевой элемент раскрашенных сетей Петри – позиция, она имеет определенное значение из множества цветов.
Для отражения динамических свойств в сеть Петри введено понятие разметки сети, которая реализуется с помощью, так называемых фишек, размещаемых в позициях. Цвет позиции определяет тип фишек, которые могут там находится. Конкретизация фишки, находящейся в данной позиции определяется инициализирующим выражением начальной разметки или формируется в результате правильного выполнения шага итерации сети Петри.
Сеть представляет собой асинхронную систему, в которой фишки перемещаются по позициям через переходы. Переход может сработать (т.е. переместить фишку из входной позиции в выходную для данного перехода), если во всех входных позициях для данного перехода присутствует, хотя бы одна фишка и выполнено логическое выражение, ограничивающее переход (спусковая функция).
Дуги могут иметь пометки в виде выражений (переменных, констант или функций), определенных для множества цветов, и использоваться, либо для «вычленения» компонент сложного цвета фишек при определении условия срабатывания перехода, либо для изменения цвета фишки следующей позиции после срабатывания перехода.
Для анализа систем реального времени введен временной механизм, реализованный с помощью глобальных часов и, так называемых, штампов, которые несут фишки. Временной штамп фишки назначается при ее инициализации в начальной разметке или при создании фишки переходом и наращивается выражениями на переходах или дугах. В результате, фишка становится доступной для перехода, если ее штамп оказался меньше значения счетчика глобальных часов. Часы наращивают свое значение в случае, если на данный момент времени ни один переход сети не разрешен.
Моделирование и анализ пространства состояний таких сетей без специализированных программных продуктов – трудоемкий процесс, в особенности для сложной сети. Для упрощения данного процесса могут применяться специализированные пакеты моделирования сетей Петри, такие как CPN Tools, ALPHA/Sim, CPN-AMI, PNetLab, TimeNET. Некоторые из этих программ, например ALPHA/Sim, TimeNET являют платным программным обеспечением, остальные же находятся в корпоративном доступе, либо ссылки на скачивание не активны. В свободном доступе находится только программное средство CPN Tools.
Простейшая концепция раскрашенной сети Петри использует различные типы фишек. Тип фишки определен натуральным числом и визуально представлен как цвет: 1 – красный, 2 – синий, 3 – зеленый, и т.д. Концепция раскрашенной сети Петри CPN Tools более сложная. Такие сети часто называют обобщенными раскрашенными сетями, так как тип фишки представлен абстрактным типом данных, как в языках программирования.
Термин «раскрашенная» сохраняется исторически, но в настоящее время очень трудно представить такие «цвета» визуально.
При проектировании системы имитационное моделирование можно применить с целью проверки выбранного проектного решения. Для того чтобы проверить правильность модели предоставления услуги SIP телефонии, с использованием RADIUS-сервера, было решено использовать программу CPN tools. Имитационная модель представляет собой последовательность состояний объекта моделирования.
На основании алгоритмов, рассмотренных во второй и третьей главах построены соответствующие имитационные модели технологических процессов, изображенных на рисунках 23 и 24.
Формально создание имитационной модели можно разделить на несколько этапов:
1) объявление множеств и переменных;
2) формирование системы;
3) моделирование системы и анализ пространства состояния.
Первый этап. Сеть, изображенная на рисунке 23 состоит из простых множеств: r, a, u, l, e, i. Для корректного создания дуговых выражений и условий срабатывания перехода необходимы переменные. Образец объявления множеств и переменных, приведен ниже:
Standard declarations
colset r = unit with request;
colset a = unit with account;
colset u = unit with upload;
colset l = unit with loading;
colset e = unit with recall;
colset i = unit with install;
var x:a;
var n:r;
var s:u;
var q:l;
var reqist:a;
var order: e;.
Сеть, изображенная на рисунке 24 состоит из простых множеств: r, a, u, l, i, z. Образец объявления множеств и переменных, приведен ниже:
Standard declarations
colset a = unit with account;
colset u = unit with upload;
colset r = unit with request;
colset e = unit with recall;
colset l = unit with loading;
colset i = unit with install;
сoolset z = unit with syn;
var x:a;
var n:r;
var s:u;
var z:syn;
var reqist:a;
var q:l;
var order: e;.
НАДО ОПИСАТЬ ВСЕ ПЕРЕМЕННЫЕ ПО РУССКИ ?
Второй этап. После того как были описаны множества и переменные, можно создать модель системы.
Дуговое выражение определяет, какие переменные будут переданы при переходе.
После создания сети и расстановки начальной маркировки можно приступать к моделированию сети. В CPN Tools существует несколько видов моделирования. При моделировании систем было использовано срабатывание заданного перехода.
Рисунок 23 – Имитационная модель технологического процесса предоставления услуги SIP телефонии, используемая в настоящее время
Система CPN Tools предоставляет два основных способа анализа моделей: имитация поведения сети и формирование пространства состояний. Кроме того, у пользователя должна быть уверенность в том, что модель соответствует объекту и работает надлежащим образом. Анализ включает в себя предварительный этап, схожий для всех языков программирования и обычно называемый отладкой. На данном этапе пользователь обретает уверенность в том, что модель работает должным образом и ошибки исправлены.
Предлагается также специальный способ анализа моделей, называемый, измерительными фрагментами. Для оценки характеристик моделей создаются специальные фрагменты сетей, которые вычисляют характеристики во время имитации. Такой фрагмент построен в Приложении П5 для оценки времени отклика сети Ethernet.
Рисунок 24 – Имитационная модель технологического процесса предоставления услуги SIP телефонии, с использованием RADIUS-сервера
Третий этап. Сделать вывод о свойствах сети можно при помощи специальных инструментов анализа пространства состояния.
Полученный отчет содержит информацию о свойствах сети: ограниченности, обратимости, существование «мертвых» переходов. Отчеты по рассматриваемым моделям приведены ниже.
Отчеты по модели представлены в таблице 3.