Моделирование систем

Моделирование систем

Министерство образования и науки РФ

Федеральное агентство по образованию

ГОУ ВПО Ижевский государственный технический университет

Чайковский технологический институт (филиал) ИжГТУ

Кафедра информатики и вычислительной техники

Пояснительная записка

к курсовой работе

по дисциплине: «Моделирование систем»

на тему: «Модель сети информационно-вычислительных центров (ИВЦ)»

Вариант №16

Выполнил

студент гр. АСОИ и У 1-03 Якупов В.И.

Проверил

ст. преподаватель Тарасов В.Г

Чайковский 2007

1 ПОСТОНОВКА ЗАДАЧИ

Информационно-вычислительная сеть состоит из трех ИВЦ, СВЯЗАННЫХ

ДУПЛЕКСНЫМИ ВЫСОКОСКОРОСТНЫМИ магистральными КАНАЛАМИ СВЯЗИ (МКС).

Структура сети показана на рисунке. Скорость передачи данных по МКС равна

64 кбит/с.

0x08 graphic

Входной поток 1 Выходной поток 1

0x08 graphic

0x08 graphic

0x08 graphic

0x08 graphic

<-- Магистральный канал

связи

0x08 graphic

0x08 graphic

Выходной Выходной

0x08 graphic

0x08 graphic

0x08 graphic

поток 2 поток 3

0x08 graphic

0x08 graphic

Входной Входной

поток 2 поток 3

Каждый ИВЦ включает одну ЭВМ, работающую под управлением монитора

телеобработки данных. Степень мультипрограммирования монитора равна 30

(максимальное число одновременно обслуживаемых сообщений).

Функционирование сети с происходит следующим образом. Входное сообщение

поступает в i-й ИВЦ. Оно принимается к обслуживанию, если текущее число

обслуживаемых сообщений не превышает максимального, в противном случае оно

направляется в очередь. Очередь обслуживается монитором по дисциплине

FIFO. Интервалы времени между поступлением сообщений в ИВЦ (входной поток)

имеют распределение f. Каждое сообщение характеризуется следующими

параметрами:

* номер центра (источник), на который поступают сообщения входного

потока;

* номер центра (узел назначения), которому предназначено сообщение;

* длина входного и выходного сообщения.

Монитор, приняв сообщение к обслуживанию, увеличивает текущее число С

обрабатываемых сообщений и проверяет, совпадает ли адрес назначения с

адресом текущего ИВЦ. В том случае, если совпадает, то в течение времени,

имеющего распределение f, происходит обработка входного сообщения и

формирование выходного сообщения. При совпадении адреса источника и адреса

назначения сообщения монитор уменьшает текущее число С, и сообщение

удаляется.

Когда адрес назначения не совпадает с адресом текущего ИВЦ, сообщение с

адресом источника направляется по МКС соответственно либо в узел

назначения, либо в источник.

Сообщение передается по МКС, если он свободен. В противном случае оно ждет

его освобождения в очереди. В очереди первыми обслуживаются сообщения,

направляемые к узлу назначения. Переданное по МКС сообщение поступает в

ИВЦ, уменьшая при этом текущее число С обрабатываемых сообщений на

предыдущем ИВЦ. Время передачи по МКС определяется согласно выражению:

Тмкс = [ Nб + Nд + Тм +Tout * Рош * Vпд * No] * Lc / [ Nб * Vпд * (1 -

Рош)],

где Nб - длина блока данных, Nд - число избыточных битов в блоке данных,

Vпд - эксплуатационная скорость передачи данных (бит/с), Рош - вероятность

ошибки при передаче бита информации, No - длина ответной

последовательности, Lc - длина сообщения, Tout - время таймаута, Тм -

время переключения модема.

Время обслуживания в i-м ИВЦ имеет распределение g, которое в зависимости

от условий описывается следующими функциями:

* g=g1 - распределение времени обслуживания сообщения в ИВЦ, когда адрес

узла назначения и адрес текущего ИВЦ совпадают и в маршруте сообщения

нет транзитных узлов;

* g=g2 - распределение времени обслуживания сообщения в ИВЦ, когда адрес

узла назначения и адрес источника совпадают и в маршруте сообщения

есть транзитные узлы;

* g=g3 - распределение времени обслуживания сообщения в ИВЦ, когда адрес

узла назначения и адрес текущего ИВЦ совпадают и в маршруте сообщения

есть транзитные узлы.

Исходные данные.

Распределение времени обслуживания в i-м ИВЦ

Функция g1:

+----------------------------------------------------+

| Время обсл., с | 99170 | 198330 | 297490 | 1090770 |

|----------------+-------+--------+--------+---------|

| Вероятность | .42 | .5 | .07 | .01 |

+----------------------------------------------------+

Функция g2:

+--------------------------------------------------------------------+

| Время обсл., с | 29000 | 52900 | 76800 | 124600 | 268000 | 1008900 |

|----------------+-------+-------+-------+--------+--------+---------|

| Вероятность | .02 | .25 | .35 | .29 | .08 | .01 |

+--------------------------------------------------------------------+

Функция g3:

+------------------------------------------------------------------------+

| Время обсл., | 24010 | 31010 | 40010 | 64010 | 96010 | 112010 | 136010 |

| с | | | | | | | |

|--------------+-------+-------+-------+-------+-------+--------+--------|

| Вероятность | .2 | .32 | .23 | .07 | .05 | .08 | .05 |

+------------------------------------------------------------------------+

Функция распределения интервалов времени между поступлением сообщений f:

+--------------------------------------------------------------------+

|Интерв.врем., с|1000|2000|3000|4000|5000|7000|9000|11000|15000|29000|

|---------------+----+----+----+----+----+----+----+-----+-----+-----|

|Вероятность |.28 |.18 |.12 |.08 |.07 |.1 |.08 |.04 |.02 |.02 |

+--------------------------------------------------------------------+

Распределение длины выходных сообщений:

+--------------------------------------------------------+

| Длина сообщ., байт | 2596 | 4945 | 7934 | 9643 | 11992 |

|--------------------+------+------+------+------+-------|

| Вероятность | .78 | .03 | .04 | .13 | .02 |

+--------------------------------------------------------+

Распределение длины входных сообщений:

+--------------------------------------------+

| Длина сообщ., байт | 59 | 177 | 236 | 296 |

|--------------------+-----+-----+-----+-----|

| Вероятность | .95 | .02 | .02 | .01 |

+--------------------------------------------+

Вероятность адресации ИВЦ назначения (источник ИВЦ 1):

+----------------------------+

| Номер ИВЦ | 1 | 2 | 3 |

|-------------+----+----+----|

| Вероятность | .8 | .1 | .1 |

+----------------------------+

Вероятность адресации ИВЦ назначения (источник ИВЦ 2):

+----------------------------+

| Номер ИВЦ | 2 | 1 | 3 |

|-------------+----+----+----|

| Вероятность | .8 | .1 | .1 |

+----------------------------+

Вероятность адресации ИВЦ назначения (источник ИВЦ 3):

+----------------------------+

| Номер ИВЦ | 3 | 1 | 2 |

|-------------+----+----+----|

| Вероятность | .8 | .1 | .1 |

+----------------------------+

Nб = 640 бит, No = 56, Nд = 72, Vпд = 64000 кбит/c, Tout = 3 c, Рош =

0.0001

Определить:

* коэффициент использования МКС;

* среднее время реакции сети;

* распределение времени реакции сети;

* среднее время ожидания сообщениями в очереди к ИВЦ;

* средний уровень мультипрограммирования монитора телеобработки данных.

2 СХЕМА МОДЕЛИ

0x01 graphic

3 Отчет о моделировании

GPSS World Simulation Report - FullIVC.23.1

Tuesday, May 29, 2007 23:43:14

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 1000000.000 134 3 3

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

MM3 32 0.000 0.003 1 0 0 0 0 0

MM2 20 0.000 0.003 1 0 0 0 0 0

MM1 22 0.000 0.003 1 0 0 0 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH2 15 15 202 90 2.261 11193.119 20187.589 0

OCH3 27 15 236 57 10.379 43979.237 57983.798 0

OCHMAG3 1 0 32 32 0.000 0.000 0.000 0

OCHMAG2 1 0 20 20 0.000 0.000 0.000 0

OCH1 22 21 177 92 4.094 23128.757 48162.235 0

OCHMAG1 1 0 22 22 0.000 0.000 0.000 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

IVC1 30 0 0 30 156 1 24.041 0.801 0 21

IVC2 30 0 0 30 187 1 26.648 0.888 0 15

IVC3 30 0 0 30 221 1 27.424 0.914 0 15

SAVEVALUE RETRY VALUE

CN1 0 177.000

CN2 0 202.000

CN3 0 236.000

4 Текст модели

Simulate

ivc1 STORAGE 30

ivc2 STORAGE 30

ivc3 STORAGE 30

INITIAL X$Cn1 0

INITIAL X$Cn2 0

INITIAL X$Cn3 0

funcF function RN1,D11

.28,1000/.46,2000/.58,3000/.66,4000/.73,5000/

.83,7000/.91,9000/.95,11000/.97,15000/.99,29000/1,29000

funcG1 function RN2,D5

.42,99170/.91,198330/.98,297490/.99,1090770/1,1090770

funcG2 function RN2,D7

.02,29000/.27,52900/.62,76800/.90,124600/.98,268000/.99,1008900/1,1008900

funcG3 function RN2,D8

.20,24010/.52,31010/.75,40010/.82,64010/.87,96010/.94,112010/.99,136010/1,136010

FuncVih function RN4,D6

.78,2596/.81,4945/.85,7934/.97,9643/.99,11992/1,11992

FuncVhod function RN4,D5

.94,59/.96,177/.98,236/.99,296/1,296

funcAdr1 function RN4,D4

.8,1/.9,2/.99,3/1,3

funcAdr2 function RN4,D4

.8,2/.9,1/.99,3/1,3

funcAdr3 function RN4,D4

.8,3/.9,1/.99,2/1,2

PEREKL1 function P$NomNaz,D3

1,LB1/2,Mag1/3,Mag2

PEREKL2 function P$NomNaz,D3

2,LB2/1,Mag11/3,Mag33

PEREKL3 function P$NomNaz,D3

3,LB3/2,Mag333/1,Mag222

*-------------------IVC1------------------------------*

Generate FN$funcF ;генерируем транзакт входной поток1 для ИВЦ1

Assign NomNaz,FN$funcAdr1 ;присваеваем номер ИВЦ-адрес узла назначения

Assign NomIstoch,1 ;присваеваем адрес источника;

Assign LVhod,FN$FuncVhod ;присваеваем длину входного сообщения

Assign ColTranz,0

Transfer ,FN$PEREKL1

LB1 Savevalue Cn1+,1 ;увеличиваем текущее число С обрабатываемых

сообщений

Queue Och1

Enter ivc1

Depart Och1

Test E P$ColTranz,0,LBg2 ;если нет транзитных узлов, тогда

Advance FN$funcG1 ;т.е адрес узла назначения и текущего ИВЦ совпали и в

маршруте нет транзитных узлов

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc1 ;освобождаем ИВЦ1 от сообщения

terminate

LBg2 Test E P$NomNaz,P$NomIstoch,LBg3 ;если адрес узла назначения и

адрес источника совпадают

Advance FN$funcG2

Savevalue Cn1-,1 ;тогда уменьшаем текущее значение С

Leave ivc1 ;освобождаем ИВЦ1 от сообщения

terminate ;уничтожаем сообщение

LBg3 Advance FN$funcG3 ;т.е адрес узла назначения и текущего ИВЦ совпали

и в маршруте есть транзитные узлы

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc1

terminate

Mag1 Test E P$NomNaz,2,lbOchMag1

Priority 100

lbOchMag1 Queue OchMag1

Seize MM1

Depart OchMag1

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MM1

Assign ColTranz+,1

Transfer ,LB2

Mag2 Test E P$NomNaz,3,lbOchMag2

Priority 100

lbOchMag2 Queue OchMag2

Seize MM2

Depart OchMag2

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MM2

Assign ColTranz+,1

Transfer ,LB3

*-------------------IVC2------------------------------*

Generate FN$funcF ;генерируем транзакт входной поток2 для ИВЦ2

Assign NomNaz,FN$funcAdr2 ;присваеваем номер ИВЦ-адрес узла назначения

Assign NomIstoch,2 ;присваеваем адрес источника;

Assign LVhod,FN$FuncVhod ;присваеваем длину входного сообщения

Assign ColTranz,0

Transfer ,FN$PEREKL2

LB2 Savevalue Cn2+,1 ;увеличиваем текущее число С обрабатываемых

сообщений

Queue Och2

Enter ivc2

Depart Och2

Test E P$ColTranz,0,Lg2 ;если нет транзитных узлов, тогда

Advance FN$funcG1 ;т.е адрес узла назначения и текущего ИВЦ совпали и в

маршруте нет транзитных узлов

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc2 ;освобождаем ИВЦ2 от сообщения

terminate

Lg2 Test E P$NomNaz,P$NomIstoch,Lg3 ;если адрес узла назначения и адрес

источника совпадают

Advance FN$funcG2

Savevalue Cn2-,1 ;тогда уменьшаем текущее значение С

Leave ivc2 ;освобождаем ИВЦ2 от сообщения

terminate ;уничтожаем сообщение

Lg3 Advance FN$funcG3 ;т.е адрес узла назначения и текущего ИВЦ совпали и

в маршруте есть транзитные узлы

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc2 ;освобождаем ИВЦ2 от сообщения

terminate

Mag11 Test E P$NomNaz,1,lbOchMag11

Priority 100

lbOchMag11 Queue OchMag1

Seize MmM1

Depart OchMag1

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MmM1

Assign ColTranz+,1

Transfer ,LB1

Mag33 Test E P$NomNaz,3,lbOchMag33

Priority 100

lbOchMag33 Queue OchMag3

Seize MM3

Depart OchMag3

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MM3

Assign ColTranz+,1

Transfer ,LB3

*-------------------IVC3------------------------------*

Generate FN$funcF ;генерируем транзакт входной поток3 для ИВЦ3

Assign NomNaz,FN$funcAdr3 ;присваеваем номер ИВЦ-адрес узла назначения

Assign NomIstoch,3 ;присваеваем адрес источника;

Assign LVhod,FN$FuncVhod ;присваеваем длину входного сообщения

Assign ColTranz,0

Transfer ,FN$PEREKL3

LB3 Savevalue Cn3+,1 ;увеличиваем текущее число С обрабатываемых

сообщений

Queue Och3

Enter ivc3

Depart Och3

Test E P$ColTranz,0,g2 ;если нет транзитных узлов, тогда

Advance FN$funcG1 ;т.е адрес узла назначения и текущего ИВЦ совпали и в

маршруте нет транзитных узлов

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc3 ;освобождаем ИВЦ от сообщения

terminate

g2 Test E P$NomNaz,P$NomIstoch,g3 ;если адрес узла назначения и адрес

источника совпадают

Advance FN$funcG2

Savevalue Cn3-,1 ;тогда уменьшаем текущее значение С

Leave ivc3 ;освобождаем ИВЦ от сообщения

terminate ;уничтожаем сообщение

g3 Advance FN$funcG3 ;т.е адрес узла назначения и текущего ИВЦ совпали и

в маршруте есть транзитные узлы

Assign LVih,FN$FuncVih ;то формируем выходное сообщение

Leave ivc3 ;освобождаем ИВЦ от сообщения

terminate

Mag333 Test E P$NomNaz,2,lbOchMag333

Priority 100

lbOchMag333 Queue OchMag3

Seize MmM3

Depart OchMag3

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MmM3

Assign ColTranz+,1

Transfer ,LB2

Mag222 Test E P$NomNaz,1,lbOchMag222

Priority 100

lbOchMag222 Queue OchMag2

Seize MmM2

Depart OchMag2

Advance (((640+72+64000#3#0.0001#56)#P$LVhod)/(640#64000#(1-0.0001)))

Release MmM2

Assign ColTranz+,1

Transfer ,LB1

Generate 10000

Terminate 1

START 1

ЗАКЛЮЧЕНИЕ

Результат моделирования показал:

* среднее время ожидания сообщениями (AVE.TIME) в очереди к ИВЦ

составляет:

* 23128.757 ед.мод.вр. в очереди OCH1 к IVC1;

* 11193.119 ед.мод.вр. в очереди OCH2 к IVC2;

* 43979.237 ед.мод.вр. в очереди OCH3 к IVC3;

* коэффициент использования МКС (UTIL.), для каждого канала составила

0.000;

* среднее время реакции сети по каждому из используемых каналов

составляет 0.003 ед.мод.вр.

* средний уровень мультипрограммирования монитора телеобработки данных

составляет

* 24.041 сообщений для IVC1;

* 26.648 сообщений для IVC2;

* 27.424 сообщений для IVC3;

* распределение времени реакции сети:

* Канал (1 - 2):

0x01 graphic

* Канал (1 - 3):

0x01 graphic

* Канал (2 - 1): нет входящих сообщений

* Канал (2 - 3):

0x01 graphic

* Канал (3 - 1): нет входящих сообщений

* Канал (3 - 2): нет входящих сообщений

Полученная модель с достаточной точностью отображает реальную ситуацию в

рамках поставленной задачи.

7

10

ИВЦ 1

ИВЦ 2

ИВЦ 3