Моделирование работы узла коммутации
Автор: Пользователь скрыл имя, 07 Июня 2014 в 13:20, курсовая работа
Краткое описание
Для выполнения курсовой работы требуется создать модель, используя знания в области имитационного моделирования.
Необходимо выполнить всех этапы создания модели, от постановки задачи до практической реализации. Также в процессе работы должна использоваться специальная литература, справочники, стандарты.
Файлы: 1 файл
МИНИСТЕРСТВО ОБРАЗОВАНИЯ
И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ |
федеральное государственное автономное
образовательное учреждение
высшего профессионального образования |
«Национальный исследовательский
ядерный университет «МИФИ» |
ФАКУЛЬТЕТ КИБЕРНЕТИКИ И ИНФОРМАЦИОННОЙ
БЕЗОПАСНОСТИ |
КАФЕДРА УПРАВЛЯЮЩИХ ИНТЕЛЛЕКТУАЛЬНЫХ
СИСТЕМ (№ 29) |
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
на
курсовую работу по дисциплине
Основы теории управления (системный
анализ)
Тема: Моделирование
работы узла коммутации
|
Студент |
Гремякина Ольга Александровна |
Группа |
К06-292 |
|
ФИО |
|
|
Руководитель |
Древс Юрий Георгиевич, д.т.н., профессор НИЯУ
МИФИ |
|
ФИО, должность, звание, степень |
Студент |
|
|
Гремякина О.А. |
|
подпись |
|
ФИО |
Руководитель |
|
|
Древс Ю.Г. |
подпись
Москва,
2014
содержание
Введение
Для выполнения курсовой работы
требуется создать модель, используя знания
в области имитационного моделирования.
Необходимо выполнить всех
этапы создания модели, от постановки
задачи до практической реализации. Также
в процессе работы должна использоваться
специальная литература, справочники,
стандарты.
Постановка задачи
В узел коммутации сообщений,
состоящий из входного буфера, процессора,
двух исходящих буферов и двух выходных
линий, поступают сообщения с двух направлений.
Сообщения с одного направления поступают
во входной буфер, обрабатываются в процессоре,
буферируются в выходном буфере первой
линии и передаются по выходной линии.
Сообщения со второго направления обрабатываются
аналогично, но передаются по второй выходной
линии. Применяемый метод контроля потоков
требует одновременного присутствия в
системе не более трех сообщений на каждом
направлении. Сообщения поступают через
интервалы 8-22 мс. Время обработки в процессоре
равно 7 мс на сообщение, время передачи
по выходной линии равно 10-20 мс. Если сообщение
поступает при наличии трех сообщений
в направлении, то оно получает отказ.
Смоделировать работу узла
коммутации в течение 10 с. Определить загрузки
устройств и вероятность отказа в обслуживании
из-за переполнения буфера направления.
Определить изменения в функции распределения
времени передачи при снятии ограничений,
вносимых методом контроля потоков.
Разработка имитационной
модели
Структурная схема
процесса функционирования
Структурная схема процесса
функционирования системы передачи данных
представлена на рис. 1.
Рис.1. Структурная схема процесса
функционирования
Описание алгоритма
Программа с интервалом 15±7
мс генерирует транзакты. Далее задается,
что половина транзактов (с вероятностью
0.5) будут включены в группу 1, а оставшиеся
– в группу 2 После этого проверяет количество
транзактов групп в системе. Выполняется
проверка в блоке TEST: если количество транзактов
группы 1 в системе больше 3, переходим
к метке FIN, где транзакт удаляется; если
количество транзактов группы 2 в системе
больше 3, также переходим к метке FIN, иначе
транзакт помещается в очередь к процессору
с помощью блока QUEUE, поступает в процессор
при помощи блока SEIZE, покидает очередь
(блок DEPART), обрабатывается в процессоре
при помощи блока ADVANCE и освобождает устройство
(блок RELEASE). Проверяется принадлежность
транзакта к группе 1 (блок EXAMINE), если не
принадлежит – переходим к метке OB2, где
транзакт помещается в очередь к выходной
линии 2 (QUEUE), поступает в линию (SEIZE), покидает
очередь (DEPART), обрабатывается (ADVANCE) и освобождает
устройство (RELEASE), иначе транзакт помещается
в очередь к выходной линии 1 (QUEUE), поступает
в линию (SEIZE), покидает очередь (DEPART), обрабатывается
(ADVANCE) и освобождает устройство (RELEASE).
После указанных действий транзакт удаляется
(TERMINATE).
Одновременно с этим генерируются
10000 транзактов (GENERATE), которые соответствуют
времени моделирования, т.е. 10 с.
Блок-схема алгоритма
Рис. 2. Блок- схема алгоритма
Разработка программы
Описание программы
Данная программа написана
на языке GPSS World. Она моделирует работу
узла коммутации сообщений в течение 10
секунд. Для просмотра работы программы
необходимо запустить ее. Отчет по работе
модели сохраняется в файл Var17.gpr.
Программа генерирует транзакт
через 15±7 мс. Далее задается, что половина
транзактов (с вероятностью 0.5) будут включены
в группу 1, а оставшиеся – в группу 2 После
этого проверяет количество транзактов
групп в системе. Если число транзактов
группы 1 или группы 2 больше 3, то текущий
транзакт удаляется. Удовлетворяющий
условию транзакт поступает в очередь
к процессору, поступает в процессор, покидает
очередь, сообщение обрабатывается в процессоре
7 мс и освобождает устройство. Далее проверяет
принадлежность транзакта к группе. Если
он из первой группы, то транзакт поступает
в очередь к выходной линии 1, поступает
в выходную линию 1, покидает очередь, время
передачи по выходной линии равно 15±5 мс,
сообщение обрабатывается и освобождает
устройство, затем транзакт удаляется.
Если транзакт принадлежит второй группе,
то он поступает в очередь к выходной линии
2, поступает в выходную линию 2, покидает
очередь, обрабатывается и освобождает
устройство. После этого транзакт удаляется
.
Данная программа моделирует
работу узла коммутации сообщений в течение
10 секунд.
Использованные команды
и функции
GENERATE A,B,C,D,E - вводит
транзакты в модель.
А – среднее значение интервала
времени;
В – разброс или модификатор
среднего значения;
С – время появления первого
транзакта;
D – общее число генерируемых
транзактов;
Е – уровень приоритета каждого.
TRANSFER А,В,C,D - обеспечивает переход
активного транзакта к новому блоку.
А – режим (BOTH, ALL, PICK, FN, P, SBR,SIM);
B – номер или метка блока;
C – номер или местоположение
блока;
D –приращение номера блока
для режима ALL.
JOIN – добавляет новый член в
числовую группу или группу транзактов.
TEST 0 А,В,С - сравнивает значения,
обычно СЧА и управляет местом назначения
активного транзакта, основываясь на результате
сравнения.
О – оператор отношения (E, G,
GE, L, LE, NE);
А – проверяемое значение;
B – контрольное значение;
С – номер блока назначения.
QUEUE А,В - помещает транзакт
в конец очереди.
А – номер очереди (числовое
или символьное имя очереди);
В – число добавляемых к очереди
элементов.
DEPART A,B - удаляет транзакт
из очереди.
А – номер (имя) очереди;
В – число удаляемых из очереди
элементов (необязательный операнд).
SEIZE А - занимает устройство.
А – номер устройства.
RELEASE А - освобождает устройство.
А – номер устройства
(числовое или символьное имя освобождаемого
устройства).
ADVANCE А,В - задерживает транзакт.
А – среднее время задержки;
В – разброс или модификаторсреднего
значения.
TERMINATE А - удаляет активный транзакт
из процесса моделирования.
А – величина уменьшения счетчика
завершения.
EXAMINE – проверяет на принадлежность
к группе.
GTЕпtпит – счетчик группы транзактов;
возвращает количество элементов группы
транзактов Епtпит. Целочисленное значение.
Листинг
SIMULATE
TZ VARIABLE C1-P1
TBL TABLE V$TZ,15,1,28
GENERATE 15,7 ;1
ASSIGN 1,C1
TRANSFER .5,,GR2 ;2
JOIN 1 ;3
TRANSFER ,IB ;4
GR2 JOIN 2 ;5
IB TEST LE GT1,3,FIN ;6
TEST LE GT2,3,FIN ;7
QUEUE CPUQ ;8
SEIZE CPU ;9
DEPART CPUQ ;10
ADVANCE 7 ;11
RELEASE CPU ;12
EXAMINE 1,,OB2 ;13
QUEUE OL1Q ;14
SEIZE OL1 ;15
DEPART OL1Q ;16
ADVANCE 15,5 ;17
RELEASE OL1 ;18
TRANSFER ,FIN ;19
OB2 QUEUE OL2Q ;20
SEIZE OL2 ;21
DEPART OL2Q ;22
ADVANCE 15,5 ;23
RELEASE OL2 ;24
TABULATE TBL
FIN TERMINATE ;25
GENERATE 10000 ;26
TERMINATE 1 ;27
START 1
Результаты
Машинное тестирование
Результаты работы можно посмотреть
в отчете, который появляется после окончания
работы модели (рис. 3). Из полученных данных
можно сделать вывод, что было сгенерировано
671 транзактов.
Рис. 3. Отчет по результатам
моделирования
В итоге работы данной модели
по истечении 10000 модельных секунд были
получены следующие данные из стандартного
отчета (рис. 3):
- общее число входов (ENTRY) в процессор 671, линию 1 – 345, линию 2 – 325;
- загруженность (UTIL.) процессора составила 47%, линии 1 – 48.9 %, линии 2 –51.3%;
- среднее время обслуживания
заявки (AVE. TIME) процессора равно 7, линии 1 – 15.037, линии 2 – 14.873 ;
- максимальная длина очереди
(MAX) процессора – 1, линии 1 – 2, линии 2 – 2;
- среднее время пребывания в
очереди (AVE.TIME очереди) процессора – 0,
1 линии – 1.718, линии 2 – 1.842;
- среднее время пребывания в
очереди при учете только ненулевых входов
процессора 0, линии 1 – 5.960, линии 2 – 5.673.
Время наблюдения за моделируемой
системой составляет
. Общее количество транзактов
. Количество обработанных транзактов
. Рассчитаем основные характеристики
системы:
- Вероятность обслуживания одного транзакта (сообщения)
- Пропускная способность системы
(количество сообщений в единицу времени)
- Вероятность отказа в обслуживании
сообщений
При полученной вероятности
обслуживания загрузка каждого устройства,
определяемая из анализа коэффициентов
использования, позволяет говорить: во-первых,
о равномерном распределении нагрузки
между устройствами; во-вторых, о не полной
мощности их использования.
Исходя из полученных данных,
можно сделать вывод об адекватности модели
и пригодности ее использования.
Гистограммы
Гистограмма (рис.5), построенная
по данным, полученным в результате моделирования
(рис.4), отражает количество транзактов,
попавших в заданный интервал времени
обслуживания.
Рис.4. Данные для построения
гистограммы.
Рис.5. Распределение времени нахождения
заявок в системе
Исследование модели
Спроектированная модель узла
коммутации сообщений является пригодной
к использованию. Модель характеризуется
высокой надежностью, малой вероятностью
отказа в обслуживании, равномерной загрузкой
устройств. По результатам тестирования
модели можно сделать следующие выводы:
производительность модели напрямую зависит
от интервала времени А
B, через который поступают сообщения из
источников. Используя априорные, установленные
параметры интервалов, предложенные нам
изначально (в соответствии с вариантами),
мы получаем модель со средней производительностью,
устройствами, мощность которых используется
наполовину. При уменьшении интервала
времени А
B производительность модели увеличивается
в двое, по сравнению с изначальной, также
увеличивается и загрузка устройств, мощность
использования которых теперь приближается
к максимальной. При увеличении интервала
времени А
B наблюдается снижение производительности
в несколько раз, по сравнению с изначальной,
снижение загрузки устройств.
Заключение:
В данном курсовом проекте выполнена
программа, моделирующая работу узла коммутации
сообщений в течение 10 секунд. В узел коммутации
сообщений, состоящий из входного буфера,
процессора, двух исходящих буферов и
двух выходных линий, поступают сообщения
с двух направлений. Сообщения с одного
направления поступают во входной буфер,
обрабатываются в процессоре, буферируются
в выходном буфере первой линии и передаются
по выходной линии. Сообщения со второго
направления обрабатываются аналогично,
но передаются по второй выходной линии.
Применяемый метод контроля потоков требует
одновременного присутствия в системе
не более трех сообщений на каждом направлении.
Если сообщение поступает при наличии
трех сообщений в направлении, то оно получает
отказ. Уменьшение же интервала поступления
заявок даже на 1 приведет к появлению
необслуженных заявок. Увеличение контроля
потоков незначительно снижает вероятность
отказов, засчет буферизации необслуженных
заявок, однако не влияет на производительность
системы в целом.
При снятии ограничений, вносимых
методом контроля потоков в случае, когда
количество сообщений с разных направлений
примерно равно, результат работы программы
не изменяется. Для уточнения результата
время было увеличено с 10 секунд до 10 минут,
результат работы программы не изменился.
Результат моделирования сохраняется
в виде стандартного отчета в файле VAR17.gpr.
Информация о работе Моделирование работы узла коммутации