Описание узла в виде СМО
Узел можно представить следующим рисунком.
Рис.1. Структурная схема
В узел коммутации сообщений, состоящий из входного буфера (BUF1+BUF2, т.к. ограничение идет по 2м направлениям), процессора PROC, двух выходных линий, поступают сообщения с двух направлений. Сообщения с одного направления поступают во входной буфер, обрабатываются в процессоре, буферизируются в выходном буфере первой линии и передаются по выходной линии. Сообщения со второй линии обрабатываются аналогично, но передаются через второй выходной буфер по второй линии. Применяемый в системе метод контроля ограничивает
число одновременно присутствующих по каждому направлению сообщений до трёх. Для статистического контроля за утерянными сообщениями вводится устройство BUF_OUT.
Текст программы
LINE EQU 1 Номер линии
PROC EQU 3 Процессор, в котором происходит обработка транзакта
BUF1 EQU 1 Входной буфер первой линии
BUF2 EQU 2 Входной буфер второй линии
BUF_OUT EQU 4 Буфер для учета потерянных транзактов (отказ системы)
BUF1 STORAGE 3 Объем входного буфера первой линии
BUF2 STORAGE 3 Объем входного буфера второй линии
BUF_OUT STORAGE 5000 Объем буфера потерянных транзактов
GENERATE 15,7 Генерация потока транзактов первой линии
ASSIGN LINE,1 Назначение номера линии
TRANSFER ,A Передача транзакта
GENERATE 15,7 Генерация потока транзактов второй линии
ASSIGN LINE,2 Назначение номера линии
TRANSFER ,A Передача транзакта
ССС ENTER BUF_OUT Вход потерянного транзакта
LEAVE BUF_OUT Выход транзакта
TERMINATE Уничтожение транзакта
A GATE SNF P$LINE,CCC Если входной буфер занят полностью, то передача в ССС
ENTER P$LINE Вход транзакта в устройство линии
SEIZE PROC Вход транзакта в процессор
LEAVE P$LINE Выход транзакта из устройства линии
ADVANCE 7,2 Обработка транзакта
QUEUE P$LINE Вход транзакта в очередь
RELEASE PROC Освобождение процессора
SEIZE P$LINE Вход пакета данных в устройство
ADVANCE 14,5 Передача транзакта по линии
RELEASE P$LINE Освобождение линии
B TERMINATE Удаление транзакта
GENERATE 10000 Работа узла моделируется
TERMINATE 1 в течении 10 секунд (1 ед. маш. времени = 1 мс )
START Установка счетчика завершения
Выходные данные
GPSS World Simulation Report - Грибкоff.31.1
Wednesday, May 19, 2004 21:17:35
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 10000.000 23 3 3
NAME VALUE
A 10.000
B 21.000
BUF1 1.000
BUF2 2.000
BUF_OUT 4.000
CCC 7.000
LINE 1.000
PROC 3.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 679 0 0
2 ASSIGN 679 0 0
3 TRANSFER 679 0 0
4 GENERATE 684 0 0
5 ASSIGN 684 0 0
6 TRANSFER 684 0 0
CCC 7 ENTER 0 0 0
8 LEAVE 0 0 0
9 TRANSFER 0 0 0
A 10 GATE 1363 0 0
11 ENTER 1363 1 0
12 SEIZE 1362 0 0
13 LEAVE 1362 0 0
14 ADVANCE 1362 1 0
15 QUEUE 1361 0 0
16 RELEASE 1361 4 0
17 SEIZE 1357 0 0
18 DEPART 1357 0 0
19 ADVANCE 1357 2 0
20 RELEASE 1355 0 0
B 21 TERMINATE 1355 0 0
22 GENERATE 1 0 0
23 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 677 0.952 14.067 1 1360 0 0 0 1
2 680 0.958 14.083 1 1355 0 0 0 3
PROC 1362 0.956 7.022 1 1363 0 0 0 1
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 4 1 678 111 0.820 12.100 14.469 0
2 5 3 683 99 1.029 15.070 17.625 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
BUF1 3 2 0 3 679 1 0.444 0.148 0 0
BUF2 3 3 0 3 684 1 0.453 0.151 0 0
BUF_OUT 5000 5000 0 0 0 1 0.000 0.000 0 0
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
1365 0 10001.447 1365 0 4
1366 0 10002.249 1366 0 1
1363 0 10004.010 1363 14 15
LINE 2.000
1360 0 10006.657 1360 19 20
LINE 1.000
1355 0 10009.064 1355 19 20
LINE 2.000
1367 0 20000.000 1367 0 22
ЗАКЛЮЧЕНИЕ.
В результате моделирования выяснилось, что вероятность отказа при ограничении в 3 транзакта по каждому направлению равна 0. Т.о. не требуется снятия ограничений; в целях эксперимента ставилось ограничение в 2 транзакта, и 3 из них попадали в буфер потерянных транзактов BUF_OUT. Так что вероятность отказа в этом случае составляет 3/1368=0,18%. Загрузка устройств первой и второй линии составила 0,952 и 0,958. Загрузка процессора
составила 0,956.
|