Введение В случае сложных многозвенных цифровых сетей передачи данных (СПД) актуальной задачей является обеспечение мониторинга, управления и оптимизация сети. Наиболее удобными для исследования многозвенных СПД как сложных динамических систем являются универсальные программные пакеты, построенные с использованием методов имитационного моделирования [1]. В современных цифровых сетях активно используется мониторинг, основанный на разных протоколах: SNMP – Simple Network Management Protocol, ICMP – Internet Control Message Protocol и др. [2]. Необходимость получения полной и точной информации от объектов мониторинга, в частности по протоколу SNMP, всегда была актуальной задачей администраторов сети. Такую возможность можно получить только при использовании надежной связи и оборудования, что не всегда удается. В случае отказа оборудования или прерывания связи на каком-либо промежуточном участке связи в направлении от объекта мониторинга к серверу мониторинга, в полученных данных появляются «провалы», вызванные неполучением откликов на запрос состояния определенных ресурсов удаленных объектов. В результате, в случае прерывания связи с объектом, администратор сети может сделать неточные выводы. Так, при прерывании связи трудно определить, что отказало – маршрутизатор, модем или канал передачи данных. Произошедший в последние годы технологический скачок в развитии цифровых сетей обусловил необходимость развития современных средств моделирования, которые должны повысить функциональность проектирования таких систем и обеспечить выполнение их разработки в сжатые сроки. К числу наиболее известных продуктов относятся: системы COMNET III, BON Designer, OPNET Modeler, пакеты Model Vision Studuim, AnyLogic, ИСМА, среда MATLAB совместно с пакетом Simulink, CPN (Colored Petri Nets) [2]. Для поиска «узких» участков в сети требуется ее подробный анализ, который нежелательно производить на работающей системе связи, т. к. любые внешние воздействия повышают вероятность отказа, что ведет к финансовым потерям предприятия. Замена натурных экспериментов возможна при помощи средств имитационного моделирования, когда работа объекта воспроизводится при помощи программного пакета. В результате за несколько минут можно воспроизвести работу сети в течение нескольких дней, что дает возможность оценить работу сети в широком диапазоне варьируемых параметров [3]. Системой имитационного моделирования должны решаться следующие основные задачи: 1. Повышение уровня автоматизации производства, нацеленное на повышение производительности. 2. Оценка и анализ работы сети в широком диапазоне варьируемых параметров за несколько минут, без вывода из эксплуатации действующего оборудования. 3. Возможность определения минимально необходимого, но обеспечивающего потребности передачи, обработки и хранения информации оборудования (даже не имеющего реальных аналогов) в настоящее время. 4. Оценка необходимого запаса производительности оборудования, обеспечивающего возможное увеличение производственных потребностей в ближайшее время (один-два года). 5. Выбор нескольких вариантов оборудования с учетом текущих потребностей, перспективы развития на основании критерия стоимости оборудования. 6. Проведение проверки работы вычислительной системы, составленной из рекомендованного оборудования. Обзор систем моделирования В настоящее время на рынке программного обеспечения (ПО) моделирования сетей связи доступно достаточное количество разноплановых пакетов программ. Сравнительная характеристика ПО моделирования сетей связи представлена в таблице. Сравнение ПО моделирования сетей связи Производитель и название Цена, $ Требования к памяти компьютера Операционные системы Примечания Caci Products Co. COMNET III 35.000 От 32 Мб ОЗУ От 100 Мб HDD Win 98/NT/2000, SunOS, Solaris LANs, X.25, ATM, Frame Relay, протоколы маршрутизации IP. Реализация собственного кода на SIMSCRIPT. Анимация Cadence Lie. BONeS DESIGNER 20.000 От 32 Мб ОЗУ От 80 Мб HDD SunOS, Solaris, HP-UX LANs, X.25, ATM, Frame Relay. Реализация собственного кода на С++. Анимация MIL3 Inc. OPNET Modeler 40.000 От 16 Мб ОЗУ От 150 Мб HDD Win 98/NT/2000, Solaris, HP-UX Fixed/wireless LANs, X.25, ATM, Frame Relay, Intelligent Nеworks, Web Cаching, http и т. п. Реализация собственного кода на С++. Анимация. Исходный код библиотек частично открыт CPN – От 8 Мб ОЗУ От 250 Мб HDD Win 95/98/ME/ NT/2000, Solaris. SunOS, Linux, FreeBSD HP-UX Fixed/wireless LANs, X.25, ATM, Frame Relay, Web caching, http, все разновидности TSP и т. п. Реализация собственного кода на СPN ML. Анимация. Исходный код полностью открыт Программное обеспечение CPN подходит для разработки и исследования системы моделирования цифровых сетей на предприятии по следующим причинам: 1. Нотация CPN достаточно гибка для того, чтобы отражать web-сервисы любого уровня сложности, а используемые в раскрашенных сетях Петри цветные токены позволяют представлять любые типы используемых данных. 2. Язык CPN ML, используемый для моделирования работы раскрашенных сетей Петри, идеально подходит и для моделирования межсервисного взаимодействия. 3. Инструменты моделирования раскрашенных сетей Петри существуют уже довольно давно и успешно зарекомендовали себя, используя программный продукт CPN Tools (в предыдущей версии известный как Design/CPN) университета г. Орхуса в Дании (University of Aarhus, Denmark). 4. CPN распространяется бесплатно – без каких-либо ограничений на право использования, модификации и распространения третьими лицами. Таким образом, с точки зрения стоимости Petri Nets, безусловно, является лидером по сравнению с коммерческим ПО – он бесплатен. По этой же причине бесплатны и всегда доступны on-line все обновления и дополнения (новые библиотеки, протоколы и т. п.) [4]. Описание пакета CPN Теория раскрашенных сетей Петри (Coloured Petri Net, CP-net) разрабатывается более 20 лет рабочей группой (CPN Group) университета г. Орхуса под руководством профессора Курта Йенсена (Kurt Jensen). Этой группой разработана основная модель, включающая использование типов данных и иерархических конструкций, определены концепции динамических свойств, развивается теория методов анализа [5]. CPN Tools используется для построения и анализа моделей. Это жизненно важная система для разработки сложных объектов в различных прикладных областях. Пример сети Петри представлен на рис. 1 [4]. Рис. 1. Пример сети Петри: 1 – тип места; 2 – количество меток; 3 – начальное значение меток; 4 – дуга, соединяющая переходы и места; 5 – условие ограничения срабатывания перехода; 6 – дуговое выражение Основными функциями CPN Tools являются: - создание (редактирование) моделей; - анализ поведения моделей с помощью имитации динамики сети Петри; - построение и анализ пространства состояний модели. Единственный способ для анализа сложных моделей – это имитация их поведения. CPN Tools предусматривает пошаговую имитацию для поиска и устранения ошибок в разрабатываемой модели, а также автоматическое выполнение определенного количества шагов. Имитация на больших временных интервалах – это путь для статистического анализа поведения модели. Такой подход применяется для оценки характеристик телекоммуникационных сетей, например пропускной способности и качества обслуживания [6]. CPN Tools – это специальная моделирующая система, которая использует язык сетей Петри для описания моделей. Сеть Петри представляет собой двудольный ориентированный граф, состоящий из вершин двух типов – позиций и переходов, соединённых между собой дугами. Вершины одного типа не могут быть соединены непосредственно. В позициях могут размещаться метки (маркеры), способные перемещаться по сети. В качестве графического средства сети Петри могут использоваться для наглядного представления моделируемой системы, подобно блок-схемам, структурным схемам и сетевым графикам. Эффективность программного продукта определяется минимальными затратами ресурсов вычислительной системы на функционирование программного продукта. Применение CPN В настоящее время сети Петри приобрели широкую популярность во всем мире благодаря возможностям, которые они предоставляют. 1. В сфере информационных технологий сети применяются для моделирования аппаратного и программного обеспечения ЭВМ. 2. CPN предназначен для имитационного моделирования систем связи различного назначения: локальных и транспортных сетей, систем космической связи. Применяется для спецификации и верификации протоколов, оценки пропускной способности сетей и качества обслуживания, проектирования телекоммуникационных устройств и сетей. Конечно, информационной средой область применения сетей Петри не ограничивается. Фактически в этом плане никаких четких границ не существует. Можно заниматься моделированием глобальных позиционирующих систем (ГПС) в технике, военных операций Пентагона или даже процессом слюноотделения собаки Павлова, что свидетельствует о широте использования, универсальности обозначенного способа моделирования. Пример разработанной модели, где осуществляется передача только единичных пакетов, приведен на рис. 2. Фрагмент программного обеспечения CPN-модели, где осуществляется передача только единичных пакетов, имеет следующий вид: colset INT = int; colset BOOL = bool; var n, s : INT; colset T = int with 0…10; var r : T; colset N = int with 0…10; fun L(s, r : N) = (r <=s); Рис. 2. Передача только единичных пакетов Пример реализации CPN В последнее время корпорация Nokia применяет CPN Tools для управляемой модели разработки мобильных телефонов нового поколения. Это направление является перспективным и эффективным для проектирования сложных технических устройств. Раньше модели использовались только для оценки характеристик устройств или сетей в процессе их проектирования. В управляемом моделью проектировании исходная простая модель последовательно преобразуется в заключительные спецификации системы. Процесс такого проектирования состоит в наделении модели всё большим количеством свойств и характеристик реальной системы, до тех пор, пока она не становится технической спецификацией, необходимой для производства или инсталляции. Преимуществом этого подхода является возможность анализа системы на каждом этапе проектирования, оценки ее свойств и характеристик. Заключение Очевидно, что в настоящее время программный продукт CPN является оптимальным средством моделирования сетей связи. На базе CPN возможна организация наглядной демонстрации функционирования протоколов и сетевых механизмов, например влияния дисциплины обслуживания очереди на вероятность потери пакета трафика с разными приоритетами. Весомая часть исследований в области сетей связи в университетах Европы, Азии и США строится на базе CPN. Кроме того, CPN широко используется в научно-исследовательских институтах. Программный продукт CPN обладает следующими преимуществами: он бесплатен; работает с цветными сетями Петри, область применения которых не ограничена; работает с временными метками; отличается гибкостью, наглядностью, не требует ресурсов ПК; нотация CPN достаточно гибка для того, чтобы отражать web-сервисы любого уровня сложности, а используемые в раскрашенных сетях Петри цветные токены позволяют представлять любые типы используемых данных; язык CPN ML, используемый для моделирования работы раскрашенных сетей Петри, идеально подходит и для моделирования межсервисного взаимодействия; инструменты моделирования раскрашенных сетей Петри существуют уже довольно давно и успешно зарекомендовали себя; способ моделирования универсален. В области телекоммуникаций CPN Tools применяется для спецификации и верификации протоколов, оценки пропускной способности сетей и качества обслуживания, проектирования телекоммуникационных устройств и сетей [3].