Моделирование сетевого трафика

Моделирование сетевого трафика — процесс, применяемый в инженерии телекоммуникаций для оценки эффективности работы коммуникационной сети.

Общий обзор

Телекоммуникационные системы — это сложные реальные объекты, содержащие множество различных компонентов, взаимодействующих друг с другом в рамках взаимосвязанных отношений[1]. Анализ таких систем чрезвычайно затруднён: применяемые методы моделирования склонны анализировать каждый компонент по отдельности, а не отношения между ними[1].[2] Симуляция — это подход, позволяющий создавать модели крупных сложных стохастических систем в целях прогнозирования, оценки производительности и проведения измерений[1][2][3]. Это самая распространённая количественная модельная технология[1].

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

Моделирование сетевого трафика, как правило, включает четыре этапа:[1][2]

  • Моделирование системы как динамического стохастического (то есть случайного) процесса
  • Генерирование реализаций данного стохастического процесса
  • Измерение данных симуляции
  • Анализ выходных данных

Методы симуляции

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

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

Преимущества симуляции

  • Обычные аналитические методы требуют использования обширных математических моделей с множеством допущений и ограничений, что может вносить в результаты погрешности. Симуляция избегает наложения ограничений на систему и учитывает случайные процессы; в некоторых ситуациях это единственный практически применимый метод моделирования[1][2];
  • Аналитик может детально исследовать взаимодействие между компонентами и смоделировать последствия различных решений, прежде чем внедрять их в реальности[1][2];
  • Легко сравнивать альтернативные конструкции сетей для выбора оптимального варианта[1];
  • Сам процесс разработки симуляции может дать ценные сведения о внутреннем функционировании сети, которые могут быть использованы в дальнейшем[1].

Недостатки симуляции

  • Для создания корректной модели симуляции требуются значительные ресурсы и тщательное планирование[1][2];
  • Результаты симуляции столь же хороши, как и созданная модель; то есть они по сути являются только прогнозами[1];
  • Модель зачастую строится с использованием ограниченного числа переменных, поэтому задача оптимизации может рассматривать лишь несколько вариантов вместо всего множества возможностей[1][2];
  • Разработка симуляций может быть очень затратной.

Статистические аспекты при построении моделей симуляции

Входные данные

Модели симуляции строятся на основе данных, полученных из стохастических систем. Необходимо проверить пригодность данных с помощью сопоставления их с определённым статистическим распределением, а затем оценить значимость полученного соответствия. Как и при любом моделировании, важно проверить точность входных данных и исключить выбросы[1].

Выходные данные

После завершения симуляции необходимо провести анализ результатов. Выходные данные симуляции представляют собой только вероятностную «оценку» реальных событий. Для повышения точности результатов используют такие методы, как многократный запуск симуляций с последующим сравнением результатов, раздельная обработка различных групп событий, а также проверка согласованности результатов симуляций, проведённых в смежные промежутки времени, с целью формирования целостной картины системы. Возможно привлечение экспертного мнения[1][4].

Генерация случайных чисел

Поскольку большинство систем содержат стохастические процессы, для создания входных данных, приближающихся к случайному характеру реальных событий, при симуляции часто используют генераторы случайных чисел. Компьютерно-генерируемые [случайные числа] на самом деле не являются полностью случайными, поскольку вычисляются по определённым формулам. Такие числа называют псевдослучайными. Аналитик обязан удостовериться, что используемые числа действительно достаточно случайны; если их поведение кажется недостаточно случайным, применяют другие алгоритмы генерации. Случайные числа для симуляции формируются с помощью генератора случайных чисел.

Примечания

Литература

  • Flood, J.E. Telecommunications Switching, Traffic and Networks, Chapter 4: Telecommunications Traffic, New York: Prentice-Hall, 1998.
  • Penttinen A., Chapter 9 – Simulation, Lecture Notes: S-38.145 - Introduction to Teletraffic Theory, Helsinki University of Technology, Fall 1999.
  • Kennedy I. G., Traffic Simulation, School of Electrical and Information Engineering, University of the Witwatersrand, 2003.
  • Akimaru H., Kawashima K., Teletraffic – Theory and Applications, Springer-Verlag London, 2nd Edition, 1999, c. 6