Научная статья на тему 'Моделирование распределенных приложений в PragmaDev Studio с использованием сетевого симулятора Network Simulator ns-3'

Моделирование распределенных приложений в PragmaDev Studio с использованием сетевого симулятора Network Simulator ns-3 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
11
4
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
моделирование / тестирование / SDL / SDL-RT / TTCN-3 / PragmaDev Studio / Network Simulator ns-3. / modeling / testing / SDL / SDL-RT / TTCN-3 / PragmaDevStudio / Network Simulator ns-3.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Молокович Игорь Аркадьевич

Постановка задачи: определить возможность использования унифицированного подхода к задачам моделирования и тестирования распределенных приложений с помощью программного продукта PragmaDev Studio, использующего сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций. Целью работы является использование унифицированного подхода к процессу моделирования и тестирования распределенного приложения с помощью программного продукта PragmaDev Studio на примере распределенного клиент-серверного приложения с использованием сетевого симулятора Network Simulator ns-3. Используемые методы: моделирование и тестирование с помощью программного продукта PragmaDev Studio, использующего сетевой симулятор Network Simulator ns-3. Новизна состоит в том, что для моделирования и тестирования распределенных приложений с помощью программного продукта PragmaDev Studio используется сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций, поверх которого будут выполняться экземпляры процессов SDL или SDL-RT. Результат заключается в том, что с помощью PragmaDev Studio разработана SDL система клиент-серверного приложения с описанием поведения процессов клиента и сервера, предложена модель развертывания клиент-серверного приложения, использующая сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций, и разработан модуль TTCN-3 с тестовым примером для клиент-серверного приложения. Практическая значимость: предложенный подход к моделированию и тестированию распределенных приложений с помощью программного продукта PragmaDev Studio, имеющего интеграцию с библиотеками сетевого симулятора Network Simulator ns-3, позволяет получить исполняемый файл из описания модели распределенного приложения на языке SDL или SDL-RT независимо от платформы моделирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Modeling distributed application in PragmaDev Studio using a Network Simulator ns-3

Task statement: to determine the possibility of using a unified approach to the tasks of modeling and testing distributed applications using the software product PragmaDev Studio, which uses the network Simulator Network Simulator ns-3 to configure the basic telecommunications infrastructure. The aim of the work is to use a unified approach to the process of modeling and testing a distributed application using the software product PragmaDev Studio on the example of a distributed client-server application using the network Simulator Network Simulator ns-3. Methods used: modeling and testing using the software product PragmaDev Studio, using the network Simulator Network Simulator ns-3. The novelty is that for modeling and testing distributed applications using the software product PragmaDev Studio, the Network Simulator ns-3 is used to configure the basic telecommunications infrastructure, on top of which instances of SDL or SDL-RT processes will be executed. The result is that with the help of PragmaDev Studio, an SDL system of a client-server application with a description of the behavior of client and server processes has been developed, a client-server application deployment model using Network Simulator ns-3 Network Simulator for configuring the basic telecommunications infrastructure has been proposed, and a TTCN-3 module with a test example for a client-server application has been developed. Practical significance: the proposed approach to modeling and testing distributed applications using the software product PragmaDev Studio, which has integration with the Network Simulator ns-3 libraries, allows you to get an executable file from the description of a distributed application model in SDL or SDL-RT, regardless of the modeling platform.

Текст научной работы на тему «Моделирование распределенных приложений в PragmaDev Studio с использованием сетевого симулятора Network Simulator ns-3»

УДК 004.75 DOI: 10.24412/2782-2141 -2023-4-13-24

Моделирование распределенных приложений в PragmaDev Studio с использованием сетевого симулятора Network Simulator ns-3

Молокович И. А.

Аннотация. Постановка задачи: определить возможность использования унифицированного подхода к задачам моделирования и тестирования распределенных приложений с помощью программного продукта PragmaDev Studio, использующего сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций. Целью работы является использование унифицированного подхода к процессу моделирования и тестирования распределенного приложения с помощью программного продукта PragmaDev Studio на примере распределенного клиент-серверного приложения с использованием сетевого симулятора Network Simulator ns-3. Используемые методы: моделирование и тестирование с помощью программного продукта PragmaDev Studio, использующего сетевой симулятор Network Simulator ns-3. Новизна состоит в том, что для моделирования и тестирования распределенных приложений с помощью программного продукта PragmaDev Studio используется сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций, поверх которого будут выполняться экземпляры процессов SDL или SDL-RT. Результат заключается в том, что с помощью PragmaDev Studio разработана SDL система клиент-серверного приложения с описанием поведения процессов клиента и сервера, предложена модель развертывания клиент-серверного приложения, использующая сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций, и разработан модуль TTCN-3 с тестовым примером для клиент-серверного приложения. Практическая значимость: предложенный подход к моделированию и тестированию распределенных приложений с помощью программного продукта PragmaDev Studio, имеющего интеграцию с библиотеками сетевого симулятора Network Simulator ns-3, позволяет получить исполняемый файл из описания модели распределенного приложения на языке SDL или SDL-RT независимо от платформы моделирования.

Ключевые слова: моделирование, тестирование, SDL, SDL-RT, TTCN-3, PragmaDev Studio, Network Simulator ns-3.

Имитационное моделирование распределенных систем является сложной задачей в основном потому, что не существует единого подхода для описания архитектуры, поведения, коммуникаций и конфигурации сложных систем [1]. Инструменты разработки, основанные на языках SDL и UML, могут моделировать основные аспекты распределенных систем независимо от платформы моделирования. Однако отсутствие интеграции с существующими библиотеками сетевого моделирования делает сложной задачу получения исполняемого файла из описаний модели.

В статье описывается порядок моделирования и тестирования распределенных приложений с помощью программного продукта PragmaDev Studio на примере клиент-серверного приложения.

PragmaDev Studio - это набор программных инструментов, который предназначен для моделирования и тестирования коммуникационных систем и состоит из четырех независимых модулей: Specifier, Developer, Tester и Tracer. В инструментах используются признанные международные стандарты SDL, TTCN-3, SDL-RT и UML [2]. Ключевая функциональность набора инструментов обеспечивается симулятором PragmaDev Simulator, как показано на рис. 1.

SDL (Specification and Description Language) - это язык спецификации и описания, определенный Международным союзом электросвязи (ITU-T) в серии Z.100 [3]. SDL - это

графический, объектно-ориентированный, формальный язык, который предназначен для спецификации сложных, управляемых событиями, интерактивных систем в реальном времени.

SDL-RT (Specification and Description Language - Real Time) представляет собой смесь с другим графическим языком UML и языком С [5]. Он сохраняет графическую абстракцию SDL, включая при этом методы разработки программного обеспечения в реальном времени и упрощая повторное использование кода за счет языка С. Объектная ориентация дополнена с помощью диаграмм UML.

------- PragmaDev Studio interface

- SDL byte code compiler/debugger

-----Source code

Рис. 1. Архитектура PragmaDev Simulator

В SDL и SDL-RT общее разрабатываемое приложение называется системой, а все, что находится за ее пределами, определяется как окружающая среда. Система описывается с помощью четырех взаимодополняющих и последовательных представлений: архитектура, коммуникации, поведение, данные и синтаксис.

Система может быть декомпозирована на функциональные блоки, каждый из которых может быть декомпозирован на подблоки и так далее, пока функциональность конечных блоков не станет достаточно простой. Блоки выполняют свои функции с помощью одного или нескольких процессов, взаимодействуя друг с другом посредством сообщений (сигналов). Процесс фактически является задачей и имеет неявную очередь для получения сообщений от других задач. Блоки и процессы называются агентами.

Агенты обмениваются сообщениями по каналам. Сообщения, проходящие по каналам, перечислены для определения интерфейса между агентами. Каналы не имеют прямой реализации в конечном коде, они используются только для структурирования программного обеспечения и определения интерфейсов. Поведение процесса описывается графически как конечный автомат. Состояния внутренних процессов, события (сообщения), решения, манипуляции с таймером, семафором имеют определенные символы. Процедуры SDL или SDL-RT могут быть вызваны в описании поведения процесса. В SDL-RT можно вызывать функции языка С, SDL также позволяет вызывать функции языка С с помощью внешних операторов или процедур.

В SDL данные определяются с помощью ADT (Abstract Data Types) с использованием определенных понятий и обозначений. Манипулирование данными также имеет

специфический синтаксис, заимствованный из таких языков, как Pascal. В SDL-RT для определения данных и управления ими используется язык С. SDL используется в основном на этапе спецификации, а также для проверки и тестирования системы. SDL-RT используется в основном на этапе разработки.

Рис. 2 - 4 иллюстрирует эти концепции на примере клиент-серверного приложения.

Рис. 2. SDL-система клиент-серверного приложения в окне SDL редактора

Система состоит из двух основных частей (рис. 2):

- определение типов данных и сообщений (сигналов), которые будут использоваться;

- архитектура с точки зрения процессов: клиента и сервера.

Клиент запускается с помощью сигнала mStart, который принимает в качестве параметра номер запроса, который клиент должен отправить серверу. Клиент попытается подключиться к серверу с помощью сигнала mConnect, и в случае успеха (клиент получает от сервера сигнал mAccept) он начнет отправлять запросы (сигнал mRequest) и ждать ответов (сигнал mReply).

На рис. 5 и 6 представлены окна редактора SDL с описанием поведения процессов Client и Server. Для каждого процесса объявляются переменные с помощью ключевого слова DCL, за которым следует список пар имя переменной - тип переменной.

Описания SDL не зависят от платформы, т. е. они не содержат никакой информации, касающейся деталей реализации. Например, на рис. 2 говорится о клиенте и сервере, однако не указано, распределены эти агенты или нет. Диаграммы развертывания, определенные в [5], могут дополнять модели недостающей информацией о распределении. Этот подход был

использован для моделирования распределенных приложений, как описано в [6] и [7]. Таким образом, если компоненты (представляющие агенты SDL) подключены к разным узлам, тогда они считаются распределенными, в противном случае подразумевается локальное выполнение (рис. 7).

Рис. 3. SDL--система процесса клиента в окне SDL редактора

Рис. 4. SDL-система процесса сервера в окне SDL редактора

Рис. 5. Описание поведения процесса Client в редакторе SDL

Рис. б. Описание поведения процесса Server в редакторе SDL

Рис. 7. Модель развертывания клиент-серверного приложения

Нотация тестирования и тестового контроля версии 3 (TTCN-3) представляет собой стандартизированную технологию тестирования, разработанную и поддерживаемую Европейским институтом стандартов электросвязи (ETSI). Стандарты ETSI TTCN-3 [4] также были приняты МСЭ-Т в серии Z.160 [8].

Абстрактное определение тестовых примеров позволяет указать непатентованные тестовые системы, которые не зависят как от платформы, так и от операционной системы. Абстрактные определения могут быть либо скомпилированы, либо интерпретированы для выполнения.

На рис. 8 показано определение модуля TTCN-3 с помощью одного теста, который запускает отправку двух запросов (строки 14 и 16) от клиента к серверу. В тестовом примере определяются типы данных, которые будут использоваться, интерфейсы с системой и шаблоны значений, которыми будет осуществляться обмен. Если сообщение имеет параметры, то оно определяется как record, если у сообщения нет параметров, оно определяется как enumerated с единственным возможным значением. Далее определяется порт для каждого канала в системе для описания интерфейса. Теперь можно определить компонент, который будет тестироваться. Имя компонента должно совпадать с именем системы SDL (System client server). Следующим этапом определяются шаблоны для всех сообщений, которыми будет происходить обмен с системой. В нашем примере это сообщение mStart с параметром reqCount, равным двум. Основа тестового примера -сценарий выполнения, который включает в нашем случае передачу двух сообщений startMessage от клиента серверу. Если сообщение startMessage передано клиентом два раза, то считаем, что тест успешно пройден, в противном случае тест не пройден.

На рис. 9 показано графическое представление с помощью диаграммы последовательности сообщений MSC (Message Sequence Chart) поведения тестового примера для клиент-серверного приложения.

'V- PragmaDev Studio - Test files

File Edit Search Preferences Windows Help

m № ^ &

El К Ü Ш

X

e

T est_System_c I i ent_server.ttc п 3

1 2

3

4

5

6

7

8

9

10 11 12

13

14

15

16 17 IS

19

20 21 22

23

24

25

26 27

module Test_System_client_server

{

//Types for message

type record restart { integer reqCount }; // Port type for the interface with the SUT type port port_cExtern message { out restart;

>:

// Componenr type for the WTC and systen interface type component Syste(n_cTient_server { port port_cExtern cExtern;

}:

// Templates for messages

template restart startMessage := { reqCount := 2 !-: // Testcase

testcase tc_start{) runs on System_client_server { cExtern.send{startMessage); alt {

N cExtern.receive!startMessage) {

setverdict(pass);

}

[] cExtern.receive {

setverdictifail);

}

}

% § te s tart (j

}

}

С :\P ragm a D ev\exa mp I es\Stu d io\Test_c I ient_server\Test_Systern_c I i ent_seryer,t1 line 27

col 0

560 bytes

Рис. 8. TTCN-3 модуль с тестовым примером для клиент-серверного приложения

Диаграммы последовательности сообщений (Message Sequence Charts, MSC) - это язык описания поведения системы в виде последовательности событий (диаграмм взаимодействия) из семейства SDL. Основное назначение диаграмм взаимодействия -описание последовательностей допустимых взаимодействий между компонентами системы и системой и ее окружением. Диаграммы изображаются в графическом и текстовом виде. Язык диаграмм взаимодействия стандартизован Международным Телекоммуникационным Союзом (ITU-T) (Рекомендация Z.120) [9].

Для тестирования системы с несколькими клиентами необходимо переписать тестовый модуль TTCN-3 таким образом, чтобы он учитывал несколько клиентов, или создать и выполнить несколько экземпляров тестового примера параллельно (по одному для каждого клиента). Для моделирования одновременной работы нескольких клиентов следует учитывать все возможные чередования между тестовыми примерами. Например, если сообщение startMessage сначала передается первому клиенту, а потом второму, то необходимо рассмотреть вариант, когда это сообщение сначала передается второму клиенту, а потом первому.

Как выше было сказано, PragmaDev Studio имеет возможность имитировать развертывание экземпляров процессов в распределенной инфраструктуре. При этом имеется возможность использовать сетевой симулятор Network Simulator ns-3 для настройки базовой инфраструктуры телекоммуникаций, поверх которой будут выполняться экземпляры процессов SDL или SDL-RT.

Телекоммуникационная инфраструктура ns-3 состоит из:

- топологии сети, в которой задается местоположение узлов сети с помощью координат;

- сетевых узлов, соединенных проводными или беспроводными каналами связи или их комбинацией;

Рис. 9. Представление диаграммы MSC поведения тестового примера TTCN-3

- стека протоколов (TCP/IP, IEEE 802.3, 802.11, 802.15, протоколы маршрутизации проводных и беспроводных сетей и т. д.).

Так как ns-3 представляет собой систему моделирования дискретных событий с одной задачей, необходимо, чтобы все экземпляры процесса выполнялись в одной задаче с симулятором ns-3. Для этого следует определить диаграмму развертывания UML. Агенты представляются в виде компонентов, которые должны быть связаны, по крайней мере, с одним узлом через отношения зависимости. Узлы на диаграмме представляют собой объекты ns-3, которые взаимодействуют с агентами базовой телекоммуникационной инфраструктуры, предоставляемой ns-3. Для клиент-серверной системы (рис. 2) компоненты и узлы на диаграмме развертывания могут быть следующими (рис. 7).

Это означает, что все экземпляры процесса в блоке blockClient и в блоке blockServer будут использовать соответственно узел nodeClient и узел nodeServer для получения доступа к уровням телекоммуникаций ns-3. Для успешного взаимодействия между ними каждый агент должен быть однозначно идентифицирован. Это обеспечивается с помощью атрибута id в компоненте и в узле. Значениями атрибута id являются IP-адрес для узла и TCP-порт для компонента. Атрибуту может быть присвоен список значений, разделенных запятыми, при этом количество значений для узла и подключенных компонентов должно совпадать.

Информация о внешних сообщениях включена в схему развертывания UML с помощью файла nodes3.csv.

В настройках генерации кода необходимо выбрать использование симулятора ns-3.10 (для версии PragmaDev Studio 5.4), что укажет путь к каталогу ns-3.10 с файлами, необходимыми для сборки.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Код, сгенерированный PragmaDev Studio, обеспечивает конфигурацию инфраструктуры сети по умолчанию: узлы сети расположены в топологии grid (двумерная сетка) и соединены проводными каналами связи по технологии Ethernet/CSMA с поддержкой стека протоколов TCP/IP. Для замены среды передачи на беспроводную необходимо добавить макрос компиляции RTDS_DEPL_WIFI в параметрах генерации. С помощью макроса RTDS DEPL RANDOM TOPO для беспроводной среды можно задать случайное расположение узлов и модель движения.

Конфигурации по умолчанию находятся в директории установки PragmaDev/share/ccg/ns-3.10/bricks/RTDS_Startup_begin_cpp.c. Здесь можно внести изменения для создания других конфигураций сети или модификации существующих.

При запуске симулятор развертывания запустит сгенерированный исполняемый файл в фоновом режиме и отобразит узлы, изменения состояния, отправку и получение сообщений, а также время моделирования (рис. 10).

Рис. 10. Внешний вид окна симулятора развертывания

Все узлы отображаются с идентификатором, присвоенным им автоматически. Цвет узла представляет текущее состояние. Список состояний отображается в левом верхнем углу окна симулятора (рис. 10). Сообщения отображаются стрелкой от отправителя к получателю, цвет соответствует типу сообщения. Список сообщений расположен в левом нижнем углу окна симулятора (рис. 10). Для каждого узла можно запустить трассировщик PragmaDev Tracer для построения MSC диаграммы, которая будет отображать события всех экземпляров процесса, запущенных на узле (рис. 11).

Таким образом, при моделировании распределенных систем возможно использовать унифицированный подход к задачам моделирования архитектуры, поведения, коммуникаций

и конфигурации таких систем. Инструменты, основанные на SDL или UML, могут помочь в моделировании таких задач независимо от платформы моделирования. Интеграция с существующими библиотеками сетевого моделирования (ns-3) позволяет получить исполняемый файл из описания модели распределенной системы, основанной на языке SDL или UML.

Рис. 11. MSC диаграмма процессаprocessServer, запущенного на узле 2

Литература

1. Brumbulli M. and Fischer J., "Simulation Configuration Modeling of Distributed Communication Systems," in System Analysis and Modeling: Theory and Practice, ser. Lecture Notes in Computer Science, 0. Haugen, R. Reed, and R. Gotzhein, Eds. Springer Berlin Heidelberg, 2013, vol. 7744, pp. 198-211 [электронный ресурс] URL: https://www.pragmadev.com/support/downloads/misc/DisComSys_SAM2012.pdf (дата обращения 27.03.2023).

2. PragmaDev Studio. Reference manual [электронный ресурс] URL: https://www.pragmadev.com/ (дата обращения 20.11.2023).

3. ITU-T, "Specification and Description Language - Overview of SDL- 2010," International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.100, 2011

[электронный ресурс] URL: https://www.itu.int/ITU-T/recommendations/rec.aspx?rec=z.100 (дата обращения 20.11.2023).

4. ETSI, "Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; TTCN-3 Language Extensions: Object-Oriented Features" European Telecommunications Standards Institute, ETSI Standard ES 203 790 V1.3.1, 2021 [электронный ресурс] URL: https://www.etsi.org/deliver/etsi_es/203700_203799/203790/01.03.01_50/es_203790v010301m.pdf (дата обращения 20.11.2023).

5. SDL-RT Consortium, "Specification and Description Language - Real Time," SDL-RT Consortium, SDL-RT Standard V2.3, 2013 [электронный ресурс] URL: http://sdl-rt.org/standard/V2.3/pdf/SDL-RT.pdf (дата обращения 20.11.2023).

6. M. Brumbulli and E. Gaudin, "Automatic Interleaving for Testing Distributed Systems". 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016), Jan 2016, Toulouse, France [электронный ресурс] URL: file:///C:/Users/molokovichia/Downloads/paper_3%20(1).pdf (дата обращения 20.11.2023).

7. M. Brumbulli, "Model-Driven Development and Simulation of Distributed Communication Systems," Ph.D. dissertation, Humboldt Universitat zu Berlin, 2015 [электронный ресурс] URL: https://edoc.hu-berlin.de/bitstream/handle/18452/17885/brumbulli.pdf?sequence=1&isAllowed=y (дата обращения 20.11.2023).

8. ITU-T, 'Testing and Test Control Notation version 3: TTCN-3 core language," International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.161, 2014 [электронный ресурс] URL: file:///C:/Users/molokovichia/Downloads/T-REC-Z.161-201411-S!!PDF-E.pdf (дата обращения 20.11.2023).

9. ITU-T, "Message Sequence Chart", International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.120, 2011 [электронный ресурс] URL: file:///C:/Users/molokovichia/Downloads/T-REC-Z. 120-201102-I! ! PDF-E.pdf (дата обращения 20.11.2023).

References

1. M. Brumbulli and J. Fischer, "Simulation Configuration Modeling of Distributed Communication Systems," in System Analysis and Modeling: Theory and Practice, ser. Lecture Notes in Computer Science, 0. Haugen, R. Reed, and R. Gotzhein, Eds. Springer Berlin Heidelberg, 2013, vol. 7744, pp. 198-211. Available at: https://www.pragmadev.com/support/downloads/misc/DisComSys_SAM2012.pdf (accessed 27 March 2023).

2. PragmaDev Studio. Reference manual. Available at: https://www.pragmadev.com/ (accessed 20 November 2023).

3. ITU-T, "Specification and Description Language - Overview of SDL- 2010," International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.100, 2011. Available at: https://www.itu.int/ITU-T/recommendations/rec.aspx?rec=z.100 (accessed 20 November 2023).

4. ETSI, "Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; TTCN-3 Language Extensions: Object-Oriented Features" European Telecommunications Standards Institute, ETSI Standard ES 203 790 V1.3.1, 2021. Available at: https://www.etsi.org/deliver/etsi_es/203700_203799/203790/01.03.01_50/es_203790v010301m.pdf (accessed 20 November 2023).

5. SDL-RT Consortium, "Specification and Description Language - Real Time," SDL-RT Consortium, SDL-RT Standard V2.3, 2013. Available at: http://sdl-rt.org/standard/V23/pdf/SDL-RTpdf (accessed 20 November 2023).

6. M. Brumbulli and E. Gaudin, "Automatic Interleaving for Testing Distributed Systems". 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016), Jan 2016, Toulouse, France. Available at: file:///C:/Users/molokovichia/Downloads/paper_3%20(1).pdf (accessed 20 November 2023).

7. M. Brumbulli, "Model-Driven Development and Simulation of Distributed Communication Systems," Ph.D. dissertation, Humboldt Universitat zu Berlin, 2015. Available at: https://edoc.hu-berlin.de/bitstream/handle/18452/17885/brumbulli.pdf?sequence=1&isAllowed=y (accessed 20 November 2023).

8. ITU-T, "Testing and Test Control Notation version 3: TTCN-3 core language," International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.161, 2014. Available at: file:///C:/Users/molokovichia/Downloads/T-REC-Z.161-201411-S!!PDF-E.pdf (accessed 20 November 2023).

9. ITU-T, "Message Sequence Chart", International Telecommunication Union - Telecommunication Standardization Sector, ITU-T Recommendation Z.120, 2011. Available at: file:///C:/Users/molokovichia/Downloads/T-REC-Z. 120-201102-I!! PDF-E.pdf (accessed 20 November 2023).

Статья поступила 23 ноября 2023 г.

Информация об авторе

Молокович Игорь Аркадьевич - кандидат технических наук, доцент, ведущий инженер ПАО «Интелтех». Область научных интересов: телекоммуникационные сети; алгоритмы и протоколы маршрутизации. Тел.: +7 921 344 24 29. E-mail: igor-molokovich@yandex.ru

Адрес: 197342, Россия, г. Санкт-Петербург, Кантемировская ул., д. 8.

Modeling distributed application in PragmaDev Studio using a Network Simulator ns-3

I. A. Molokovich

Annotation. Task statement: to determine the possibility of using a unified approach to the tasks of modeling and testing distributed applications using the software product PragmaDev Studio, which uses the network Simulator Network Simulator ns-3 to configure the basic telecommunications infrastructure. The aim of the work is to use a unified approach to the process of modeling and testing a distributed application using the software product PragmaDev Studio on the example of a distributed client-server application using the network Simulator Network Simulator ns-3. Methods used: modeling and testing using the software product PragmaDev Studio, using the network Simulator Network Simulator ns-3. The novelty is that for modeling and testing distributed applications using the software product PragmaDev Studio, the Network Simulator ns-3 is used to configure the basic telecommunications infrastructure, on top of which instances of SDL or SDL-RT processes will be executed. The result is that with the help of PragmaDev Studio, an SDL system of a client-server application with a description of the behavior of client and server processes has been developed, a client-server application deployment model using Network Simulator ns-3 Network Simulator for configuring the basic telecommunications infrastructure has been proposed, and a TTCN-3 module with a test example for a client-server application has been developed. Practical significance: the proposed approach to modeling and testing distributed applications using the software product PragmaDev Studio, which has integration with the Network Simulator ns-3 libraries, allows you to get an executable file from the description of a distributed application model in SDL or SDL-RT, regardless of the modeling platform.

Keywords: modeling, testing, SDL, SDL-RT, TTCN-3, PragmaDevStudio, network simulator ns-3.

Information about author

Molokovich Igor Arkadievich - candidate of technical Sciences, associate Professor, leading engineer of PJSC "Inteltech". Research interests: telecommunication networks; routing algorithms and protocols. Тел.: +7 921 344 24 29. E-mail: igor-molokovich@yandex.ru

Address: Russia, 197342, Saint-Petersburg, Kantemirovskay str, 8.

Для цитирования: Молокович И. А. Моделирование распределенных приложений в PragmaDev Studio с использованием сетевого симулятора Network Simulator ns-3 // Техника средств связи. 2023. № 4 (164). С. 13-24. D0I:10.24412/2782-2141-2023-4-13-24.

For citation: Molokovich I. A. Modeling distributed application in PragmaDev Studio using a Network Simulator ns-3. Means of Communication Equipment. 2023. No. 4 (164). Pp. 13-24. (in Russian) DOI: 10.24412/2782-2141-2023-4-13-24.

i Надоели баннеры? Вы всегда можете отключить рекламу.