Разработки СО РАН - каталог программ

На данной странице представлен каталог программ, включенных в Фонд алгоритмов и программ Сибирского отделения РАН. Полный каталог программ и БД, включенных в Фонд, а также любые выборки по научным центрам, объединенным ученым советам и др. вы можете найти на данной странице.

2012-10-09

Назначение: Программа предназначена для определения доли потерянных пакетов при передаче потока мультимедийных данных по многошаговому маршруту в беспроводной сети при наличии случайных помех.

Область применения: Современные сети связи. Многошаговые сети IEEE 802.11s (Wi-Fi Mesh)

Используемый алгоритм: Рассматривается многошаговая беспроводная сеть, работающая под управлением технологии IEEE 802.11s с использованием детерминированного метода доступа к среде MCCA (Mesh Coordinated Channel Access). Между двумя станциями этой сети передается поток мультимедийных данных переменной интенсивности – поток пакетов одинакового размера, приходящих регулярно с периодом T . Моделируется передача такого потока по многошаговому маршруту от станции-источника до станции-получателя. Для передачи пакетов потока каждая станция-ретранслятор  маршрута, используя механизм MCCA, устанавливает поток резервирований - периодическую последовательность резервирований, то есть временных интервалов одинаковой длительности, позволяющей совершить ровно одну попытку передачи пакета. Вероятность успешной передачи пакета в каждом резервировании одинакова. При неудачной попытке передачи обслуживание пакета продолжается.

Требование к качеству обслуживания (QoS) мультимедийного потока определяется ограничениями на максимальное время передачи пакета на каждой станции. При превышении этого времени обслуживание пакета прекращается, даже если он еще не был успешно передан. 

 Данная программа позволяет найти долю PLR потерянных пакетов на всем маршруте. Этот показатель, также как и время доставки,  является важным показателем качества обслуживания мультимедийного трафика.

Входные параметры программы:

• вероятность  удачной попытки передачи пакета на каждом шаге маршрута;
• период T поступления пакетов (входной поток станции-источника);
• максимальная допустимая  задержка пакетов на каждом шаге маршрута;
• период резервирований на каждом шаге маршрута.
 
Выходные параметры:
 
•  Доля потерянных пакетов PLR при удовлетворении требований на задержку на каждом шаге маршрута.
 
Алгоритм расчета описан в работе Shvets Evgeny, Lyakhov Andrey, Safonov Alexander, Khorov Evgeny. Analyt­ical model of IEEE 802.11s MCCAbased streaming in the presence of noise //SIGMETRICS Perform. Eval. Rev. 2011. Vol. 39, no. 2. Pp. 38–40. http://dl.acm.org/citation.cfm?id=2034841

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

Число шагов маршрута не больше 7

Максимальная допустимая задержка пакетов на каждом шаге маршрута больше периода поступления пакетов;

Вероятность успешной попытки пеередачи на каждом шаге больше 0.1

Инструментальные средства создания:  Среда разработки Eclipse 
2012-10-04

Назначение : Программа рассчитывает пропускную способность соединения, использующего случайный механизм доступа EDCA, при наличии в сети передачи по детерминированному методу доступа MCCA.

Область применения: Современные сети связи. Многошаговые сети IEEE 802.11s (Wi-Fi Mesh)

Используемый алгоритм: Алгоритм опубликован в работе: Красилов А.Н., Ляхов А.И., Ю.И. Мороз, “Аналитическая модель взаимодействия механизмов EDCA и MCCA в сетях 802.11s“ // Труды конференции "Информационные технологии и системы (ИТиС-2012)", Петрозаводск, Россия, 2012.  

Рассматривается  беспроводная многошаговая сеть стандарта IEEE 802.11s (Wi-Fi Mesh). В этой сети выделим 4 станции: A, B, C и D. Станция A передает станции B поток данных постоянной интенсивности, используя для передачи только механизм детерминированного доступа к среде (MCCA), а станция C, работая в режиме насыщения, передает станции D пакеты одинаковой длины  с помощью только механизма случайного доступа (EDCA). Предполагается, что для обеспечения взаимодействия механизмов EDCA и MCCA, станция С использует один из двух способов отсчета слотов отсрочки, предложенных в работе, приведенной выше. Необходимо найти пропускную способность соединения между станциями C и D (EDCA-соединения) при заданных параметрах MCCA-резервирования, установленного между станциями A и B.

После запуска программы пользователь указывает следующие входные параметры:

- Параметры резервирования, установленного между станциями A и B (период и длительность интервалов резервирования)

- Размер пакетов, передаваемых между станциями C и D, и используемая канальная скорость на физическом уровне

- Параметры протокола 802.11: длительность слота и межкадровых интервалов

- Способ отсчета слотов отсрочки (выбирается один из двух)

Программа осуществляет расчет способности EDCA-соединения согласно алгоритму, предложенному в работе, указанной выше. Результаты расчетов выводятся на экран пользователя.

Функциональные возможности:

Период резервирований от 100 мкс до 1 с

Длительность резервирований от 100 мкс до 1 с

Размер пакетов от 100 до 1500 байт.

Канальная скорость от 6 до 54 Мбит/с

Инструментальные средства создания: Язык С++, среда разработки Eclipse

2012-10-01

Назначение: Программа позволяет исследовать влияние значения параметров механизмов передачи данных, описанных в стандарте IEEE802.11aa, на качество принимаемого видеопотока при заданной вероятности успешной передачи пакета между двумя беспроводными станциями. Может использоваться при настройке параметров протокола передачи видео по сети Wi-Fi для выполнения требуемого качества.

Область применения: Современные сети связи. Сети IEEE 802.11 (Wi-Fi). Настройка параметров протокола передачи видео по сети Wi-Fi.  

Используемый алгоритм: Рассматривается беспроводная сеть стандарта Wi-Fi. Станция A передает станции B поток мультимедийных данных, которые представляют собой видеопоток MPEG-4 Part 2. Станция B осуществляет прием видеопотока. При вероятности успешной передачи пакета меньшей единицы некоторые из передаваемых пакетов будут теряться, в результате чего качество принимаемого видеопотока ухудшается. Необходимо исследовать эффективность механизмов доступа к каналу, повышающих надежность передачи мультимедийных данных, то есть определить качество видео-изображения при различных параметрах механизмов, описанных в стандарте IEEE802.11aa.

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

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

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

    1. Проверяется возраст самого старого пакета в очереди на передачу. Если он не превышает величину, заданную в конфигурационном файле, то текущий пакет поступает в конец очереди для последующей передачи.

    2. Иначе анализируется содержимое пакета, поступившего для передачи в очередь. Если в пакете обнаруживается последовательность байт, по которой однозначно определяется, что данный пакет содержит в себе B-кадр, то пакет отбрасывается и не добавляется в очередь для передачи. Если такая последовательность в пакете не найдена, то пакет поступает в конец очереди для последующей передачи.

Функциональные возможности: Формат видеопотока  MPEG-4 Part 2. Вероятность успешной попытки передачи пакета - любая. Моделируемый стек протоколов: RTP/UDP/IP/MAC IEEE 802.11. Рекомендуемое ограничение на интенсивность потока - менее 6 Мбит/с

Инструментальные средства создания: Языки програмирования: С++, python. Среда разработки: Eclipse Библиотеки: ns-3, NETNS

2012-09-28

Назначение:   моделирование больших систем с дискретными событиями. Если система хорошо представляется в виде отдельных элементов с индивидуальными проведениями, то для исследования этой системы можно создать модель в СИМ AGNES.

Область применения:

  • локальные компьютерные сети
  • беспроводные сенсорные сети
  • вычисления на суперЭВМ

Используемый алгоритм:   Используя мультиагентный подход и платформу JADE, было создано программное обеспечение для моделирования систем с дискретными событиями. Система  AGNES – это агенты, работающие на платформе JADE, и скрипты для конфигурирования и запуска моделей. Агентов можно разделить на две группы: управляющие агенты (УА), которые создают среду моделирования, и функциональные агенты (ФА), которые образуют модель, работающую в среде моделирования. Основная задача функциональных агентов - это имитирование работы исследуемой системы. Управляющие агенты занимаются контролем хода эксперимента и сохранением результатов.

Основные задачи УА:

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

Система AGNES обладает следующими особенностями:

  • Кроссплатформенность. (JAVA приложение)
  • Возможность распределенного запуска. (на локальной сети или вычислительном кластере)
  • Возможность полунатурного моделирования. (при наличии реальных объектов поддерживающих спецификацию FIPA)
  • Отказоустойчивость.
  • «Простота» освоения системы моделирования.

 Иерархия основных управляющих агентов, входящих в AGNES, представлена на рисунке

Более подробное описание AGNES можно получить в статье Подкорытова Д.И. «Агентно-ориентированная среда моделирования сетевых систем AGNES» // Ползуновский вестник, 2012. № 2/1, C. 94-99. (электронный доступ)

 Функциональные возможности: Количественные характеристики моделирования  зависят от модели, запускаемой в AGNES. Например, модели, описанные в статье «АГЕНТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К ИМИТАЦИОННОМУ МОДЕЛИРОВАНИЮ СУПЕРЭВМ ЭКЗАФЛОПСНОЙ ПРОИЗВОДИТЕЛЬНОСТИ В ПРИЛОЖЕНИИ К РАСПРЕДЕЛЕННОМУ СТАТИСТИЧЕСКОМУ МОДЕЛИРОВАНИЮ» (авторы: Глинский Б.М., Родионов А.С., Марченко М.А., Подкорытов Д.И., Винс Д.В.)  запускались на гибридном кластере НКС-30Т в Сибирском Суперкомпьютерном центре коллективного пользования СО РАН. В этих моделях возможен запуск порядка 25,000 агентов на одном многоядерном вычислительном узле, при этом идет использование значительной части ресурсов. В этой задаче реальное время работы модели сопоставимо со временем счета реальных вычислениях.

 Пример создания модели (с демонстрацией возможностей системы) находится в файле example.pdf

Agnes запускается как обычное JAVA приложение. Пример запуска команды запуска:

java -jar AGNES.jar model.xml options

где model.xml – это конфигурационный файл модели. Если явно не указать имя конфигурационного файла модели, то Agnes попытается открыть файл с именем model.xml.

Также могут быть указанны дополнительные опции options. Доступные опции:

  • -h HOSTNAME: имя или адрес главного контейнера.
  • -p PORT: порт главного контейнера.
  • -nm: подключаемый контейнер.
  • -ng: не запускать RMA JADE агента (графическую утилиту JADE).
  • -nh: не выводить служебные/отладочные сообщения.

 Пример запуска главного контейнера:

java -jar AGNES.jar my.xml -h localhost -p 1099 -nh

 Пример запуска подключаемого контейнера

java -jar AGNES.jar my.xml -h 192.168.0.3 -p 1099 -ng -nm

Инструментальные средства создания:    Система состоит из агентов, написанных на JAVA. В качестве базовой мультиагентной платформы использована JADE (http://jade.tilab.com/). 

 Использование: AGNES распространяется бесплатно по лицензии LGPL. Для получения консультации и помощи в развертывании и применении AGNES, можно обращатся к автору.

2012-09-27

Назначение: Программа предназначена для умножения  сверхбольших чисел, представленных в памяти ЭВМ линейными динамическими массивами. 
Область применения: Теория чисел - программа может использоваться при определении сверхбольших чисел Мерсенна, чисел Евклида, простых чисел, при определении закономерности распределения простых чисел. Также программа может использоваться в теоретической физике, при тестировании мощности вычислительных систем.

Используемый алгоритм. В программе реализован алгоритм, разработанный автором. Пользователь вводит разрядность двух чисел, а затем последовательность их десятичных цифр, начиная с разряда единиц ( в демонстрационной версии ввод цифр с консоли заменен на использование генератора псевдослучайных чисел). В памяти ЭВМ числа хранятся в форме линейных динамических массивов. Арифметические операции при таком представлении чисел выполняются по правилам длинной арифметики, например, по схеме умножения столбиком -  множимое умножается на очередную цифру множителя и полученный результат записывается в столбик со смещением вправо на один разряд по отношению к предыдущей записи. Когда все записи сформированы, выполняется суммирование всех цифр столбика по вертикали в каждом из разрядов итога, а его переполнение переносится в старшие разряды. Вычислительный процесс по этой схеме выполняется существенно быстрее, если предварительно сформировать в виде линейных динамических массивов  результаты умножения множимого на цифры 2, 3, 4, 5. 6, 7, 8 и 9.  В схеме умножения столбиком они многократно используются  с соответствующим сдвигом в зависимости от номера разряда множимого.  После суммирования цифр по вертикали столбика переполнения разрядов не учитываются. Полученный результат умножения  затем преобразуется в линейный  динамический массив с учетом переноса в старшие разряды переполнения. Для разрядности чисел порядка 10 млн трудоемкость по алгоритму ускоренного умножения меньше в 2,5 раза по сравнению с традиционным алгоритмом и снижается с увеличением разрядности множителя.

Функциональные возможности. Функциональные возможности могут быть ограничены размером свободной динамической памяти ЭВМ. В демонстрационном примере для чисел множимого и множителя предполагается разрядность до 50 млн, а для результата их умножения - 100 млн.

Инструментальные средства создания - Microsoft  Visual Studio 2010, Visual C++.