Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: III Международной научно-практической конференции «Естественные и математические науки в современном мире» (Россия, г. Новосибирск, 04 марта 2013 г.)

Наука: Информационные технологии

Секция: Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Николаев Н.Н., Шамин П.Ю. МОДЕРНИЗАЦИЯ ПАРАЛЛЕЛЬНОГО СЕТЕВОГО СИМУЛЯТОРА ДЛЯ РЕАЛИЗАЦИИ «МЯГКОГО» ВАРИАНТА НЕПРЕРЫВНОГО МОДЕЛЬНОГО ВРЕМЕНИ // Естественные и математические науки в современном мире: сб. ст. по матер. III междунар. науч.-практ. конф. – Новосибирск: СибАК, 2013.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов
Статья опубликована в рамках:
 
Выходные данные сборника:

 

МОДЕРНИЗАЦИЯ ПАРАЛЛЕЛЬНОГО  СЕТЕВОГО  СИМУЛЯТОРА ДЛЯ  РЕАЛИЗАЦИИ  «МЯГКОГО»  ВАРИАНТА  НЕПРЕРЫВНОГО  МОДЕЛЬНОГО  ВРЕМЕНИ

Николаев  Николай  Николаевич

аспирант  ВлГУ,

  г.  Владимир

E-mail: 

Шамин  Павел  Юрьевич

канд.  техн.  наук,  инженер-программист  ИВЦ  ВлГУ,

  г.  Владимир

E-mail: 

 

Описание  модели

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

Физически  параллельный  сетевой  симулятор  ПСС  представляет  собой  распределённое  приложение,  предназначенное  для  работы  в  среде  операционной  системы  Linux  с  использованием  технологии  MPI.  При  запуске  симулятора  создаётся  один  управляющий  процесс  (УП)  и  несколько  (как,  минимум,  один)  моделирующих  процессов  (МП).  Модель  сети,  представленная  в  виде  определённой  иерархии  объектов,  разбивается  на  сегменты,  каждый  из  которых  поддерживается  своим  МП.  Взаимодействие  между  узлами  моделируемой  сети  в  ПСС  осуществляется  путём  передачи  объектов  «пакет  данных».  Логика  модели  реализуется  путём  вызова  на  каждом  шаге  моделирования  для  каждого  узла  моделируемой  сети  модулей  расширения.  Модули  расширения  физически  представляют  собой  динамические  библиотеки  Linux.  Модули  расширения  могут:  порождать  новые  пакеты,  обрабатывать  и  перенаправлять  пакеты,  поступившие  на  узел,  и  собирать  статистику  работы.  Доставка  пакетов  данных  в  моделируемой  сети  осуществляется  по  различным  алгоритмам  в  зависимости  от  того,  требуется  ли  выполнить  доставку  пакета  узлу,  моделируемому  тем  же  МП  (локальная  доставка)  или  другим  МП  (удалённая  доставка).  Локальная  доставка  производится  копированием  объекта  «пакет  данных»  из  буфера  исходящих  пакетов  объекта  узла-отправителя  в  буфер  входящих  пакетов  узла-получателя.  Удалённая  доставка  выполняется  путём  передачи  MPI  сообщения  в  адрес  МП,  которым  поддерживается  узел-получатель. 

Подробнее  об  устройстве  и  принципах  использования  ПСС  можно  узнать  в  [1].

В  настоящий  момент  реализовано  два  варианта  симуляции  работы  сети,  отличающиеся  методами  изменения  и  учета  модельного  времени.

В  первом  варианте  отсчёт  модельного  времени  осуществляется  циклами.  Изменение  модельного  времени  в  ПСС  происходит  с  дискретным  шагом  фиксированного  размера,  равным  единице.  Синхронизация  модельного  времени  на  всех  МП  осуществляется  естественным  образом  процедурой  удалённой  доставки.  Логика  основного  цикла  работы  МП  ПСС  приведена  на  рис.  1.а.

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

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

Ядро  при  данной  реализации  ПСС  выступает  в  качестве  «арбитра»  синхронизации  системного  времени,  осуществляет  опрос  узлов  на  предмет  «локального»  ближайшего  времени  обработки  пакетов  на  МП,  и  последующую  рассылку  «глобального»  ближайшего  на  все  МП,  которые  в  свою  очередь  осуществляют  обработку  пакетов,  которые  должны  быть  обработаны  в  новый  текущий  момент  времени.

Изменение  метки  времени  обработки  пакета  производится  как  ядром  ПСС,  имитирующем  задержку  при  транспортировке  пакета,  так  и  узлами  системы,  имитирующими  затраты  времени  на  обработку.

Подробнее  о  принципе  работы  описанного  выше  варианта  ПСС  можно  узнать  в  [2].

С  учётом  описанной  логики  изменения  модельного  времени,  основной  цикл  работы  МП  ПСС  пробрёл  вид,  приведённый  на  рис.  1.б.

 

Рисунок  1.  а)  Основной  цикл  работы  МП  ПСС  с  дискретным  временем;  б)  Основной  цикл  работы  МП  ПСС  после  модернизации

 

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

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

В  отличие  от  «жёсткого»  варианта  непрерывного  модельного  времени  (единого  для  всей  модели),  данный  вариант  не  требует  добавления  в  модель  дополнительных  буферов  пакетов  находящихся  в  состоянии  ожидания.  При  пересылке  пакетов  также  для  каждой  связи  должна  индивидуально  определяться  величина  задержки,  которая  также  будет  увеличивать  внутренний  счетчик  пакета.  Также  увеличение  этого  счётчика  могут  выполнять  модули  расширения,  имитируя  затраты  времени  на  обработку  пакета.

Такой  алгоритм  позволяет  за  счёт  некоторого  снижения  адекватности  моделирования  получить  значительно  более  высокое  быстродействие  симулятора  и  при  этом  не  потерять  возможность  работы  с  непрерывным  представлением  модельного  времени.

 

Список  литературы:

  1. Шамин  П.Ю.,  Алексанян  А.С.,  Прокошев  В.В.  Параллельный  сетевой  симулятор:  концепция  и  перспективы  развития  //  Научно-технические  ведомости  Санкт-Петербургского  государственного  политехнического  университета.  —  СПб.  2009.  —  №  3.  —  С.  18—24.
  2. Шамин  П.Ю.,  Прокошев  В.В.  Модернизация  параллельного  сетевого  симулятора  ПСС  //  Высокопроизводительные  параллельные  вычисления  на  кластерных  системах.  Материалы  XII  Всероссийской  конференции  (Н.  Новгород,  26—28  ноября  2012  г.)  /  Под  ред.  проф.  В.П.  Гергеля.  —  Нижний  Новгород:  Изд-во  Нижегородского  госуниверситета,  2012.  —  С.  440—444.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.