Имитационное моделирование сети Ethernet в среде GPSS World
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
аксимальное сообщение (бит).
* 4. Fraction_Short_Msgs - Доля коротких сообщений (в долях от тысячи)
* 5. Intermessage_Time - Общий интервал между сообщениями.
* Исходные данные:
* Node_Count = 100 - Общее число узлов Ethernet.
* Intermessage_Time=1.0 - Среднее значение общего количества сообщений, поступающих каждую миллисекунду.
* Min_Msg = 512 - Минимальное сообщение в битах.
* Max_Msg = 12144 - Максимальное сообщение в битах.
* Fraction_Short_Msgs = 600 - Короткие сообщения (в долях от тысячи).
* Lot_Time = 0.0512 - Время прохождения 512 битов.
* Jam_Time = 0.0032 - Время прохождения 32 битов.
* Backoff_Limit = 10 - Не больше, чем 10 повторов в случае коллизии.
* Interframe_Time = 0.0096 - Время прохождения 96 битов.
*************************************************************
Node_Count EQU 100 _Time EQU 1.0 _Msg EQU 512 _Msg EQU 12144 _Short_Msgs EQU 600 _Time EQU 0.0512 _Time EQU 0.0032 _Limit EQU 10 _Time EQU 0.0096 _Delay VARIABLE Slot_Time#V$Backrandom VARIABLE 1+(RN4@((2^V$Backmin)-1))
Backmin VARIABLE (10#(10LP$Retries))+(P$Retries#(10GEP$Retries))
Node_Select VARIABLE 1+(RN3@Node_Count)VARIABLE ABS((X$Xmit_Node-P$Node_ID)/100000)GE(AC1-X$Xmit_Begin)VARIABLE (0.0001)#V$MsgrandVARIABLE Min_Msg+(RN1GFraction_Short_Msgs)#(Max_Msg-Min_Msg)_Delays QTABLE Global_Delays,1,1,20
GENERATE (Exponential(1,0,Intermessage_Time))
ASSIGN Node_ID,V$Node_Select
ASSIGN Message_Time,V$Msgtime
ASSIGN Retries,0
QUEUE Global_Delays
SEIZE P$Node_ID _To_Send PRIORITY 1
SEIZE Jam
RELEASE Jam
TEST E F$Ethernet,1,Start_Xmit
TEST E V$Collide,1,Start_Xmit PREEMPT Ethernet,PR,Backoff,,RE
SEIZE Jam
ADVANCE Jam_Time
RELEASE Jam
RELEASE Ethernet
PRIORITY 0 ASSIGN Retries+,1
TEST LE P$Retries,Backoff_Limit,Xmit_Error
ADVANCE V$Backoff_Delay
TRANSFER ,Try_To_Send _Xmit SEIZE Ethernet
SAVEVALUE Xmit_Node,P$Node_ID
SAVEVALUE Xmit_Begin,AC1
PRIORITY 0
ADVANCE P$Message_Time
ADVANCE Interframe_Time
RELEASE Ethernet _Node RELEASE P$Node_ID
DEPART Global_Delays
TERMINATE _Error SAVEVALUE Error_Count+,1
TRANSFER ,Free_Node
GENERATE 1000
TERMINATE 1
2.2 Запуск процесса моделирования
Выбираем Command/Create Simulation.
Открываем диаграмму задержки сообщений, выбираем Window/ Simulation Window/Table Window, в выпадающем списке диалогового окна уже выбрана таблица MSG_DELAYS.
Теперь запустим процесс моделирования. Выберем Command / START, так как нам нужен счетчик завершения, равный 1, в диалоговом окне нажимаем ОК.
Когда сообщения проходят через Ethernet, в Q-таблице Msg_Delays регистрируется продолжительность их передачи, и мы можем наблюдать их накопление в диаграмме (рисунок 5).
Рисунок 5 - Q-таблица в конце процесса моделирования
Процесс моделирования завершится, когда будет смоделирована 1 секунда работы. В окне Table мы можем видеть, что среднее время задержки сообщений составило немногим меньше одной миллисекунды.
ОТЧЕТ
GPSS World Simulation Report - 1_1.2.1, April 10, 2012 13:42:13 TIME END TIME BLOCKS FACILITIES STORAGES
.000 1000.000 35 102 0VALUE 10011.00018.000_DELAY 10009.000_LIMIT 10.00010010.00010013.00012.000_COUNT UNSPECIFIED10022.000_SHORT_MSGS 600.000_NODE 29.000_DELAYS 10017.000_TIME 0.010_TIME 1.00010021.000_TIME 0.003_MSG 12144.000_TIME 10019.000_MSG 512.00010015.00010014.000_DELAYS 10016.000_COUNT 100.000_ID 10018.000_SELECT 10012.00010020.000_TIME 0.051_XMIT 22.000_TO_SEND 7.000_BEGIN 10024.000_ERROR 32.000_NODE 10023.000LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
GENERATE 914 0 0
ASSIGN 914 0 0
ASSIGN 914 0 0
ASSIGN 914 0 0
QUEUE 914 0 0
SEIZE 914 0 0_TO_SEND 7 PRIORITY 920 0 0
SEIZE 920 0 0
RELEASE 920 0 0
TEST 920 0 0
TEST 440 0 012 PREEMPT 3 0 0
SEIZE 3 0 0
ADVANCE 3 0 0
RELEASE 3 0 0
RELEASE 3 0 0
PRIORITY 3 0 018 ASSIGN 6 0 0
TEST 6 0 0
ADVANCE 6 0 0
TRANSFER 6 0 0_XMIT 22 SEIZE 917 0 0
SAVEVALUE 917 0 0
SAVEVALUE 917 0 0
PRIORITY 917 0 0
ADVANCE 917 0 0
ADVANCE 914 0 0
RELEASE 914 0 0_NODE 29 RELEASE 914 0 0
DEPART 914 0 0
TERMINATE 914 0 0_ERROR 32 SAVEVALUE 0 0 0
TRANSFER 0 0 0
GENERATE 1 0 0
TERMINATE 1 0 0ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
17 0.012 0.718 1 0 0 0 0 0
10 0.010 1.010 1 0 0 0 0 0
11 0.010 0.873 1 0 0 0 0 0
10 0.015 1.535 1 0 0 0 0 0
10 0.012 1.155 1 0 0 0 0 0
6 0.009 1.488 1 0 0 0 0 0
4 0.003 0.773 1 0 0 0 0 0
9 0.011 1.253 1 0 0 0 0 0
8 0.007 0.858 1 0 0 0 0 0
9 0.007 0.743 1 0 0 0 0 0
10 0.009 0.886 1 0 0 0 0 0
7 0.009 1.262 1 0 0 0 0 0
8 0.008 0.964 1 0 0 0 0 0
8 0.007 0.935 1 0 0 0 0 0
8 0.014 1.718 1 0 0 0 0 0
13 0.019 1.481 1 0 0 0 0 0
10 0.007 0.692 1 0 0 0 0 0
10 0.006 0.558 1 0 0 0 0 0
10 0.009 0.870 1 0 0 0 0 0
9 0.007 0.728 1 0 0 0 0 0
7 0.004 0.616 1 0 0 0 0 0
14 0.011 0.801 1 0 0 0 0 0
10 0.012 1.158 1 0 0 0 0 0
11 0.017 1.577 1 0 0 0 0 0
8 0.009 1.090 1 0 0 0 0 0
2 0.002 0.832 1 0 0 0 0 0
12 0.015 1.234 1 0 0 0 0 0
13 0.008 0.606 1 0 0 0 0 0
15 0.014 0.917 1 0 0 0 0 0
11 0.012 1.048 1 0 0 0 0 0
16 0.008 0.503 1 0 0 0 0 0
9 0.008 0.939 1 0 0 0 0 0
10 0.012 1.199 1 0 0 0 0 0
5 0.004 0.881 1 0 0 0 0 0
12 0.012 0.963 1 0 0 0 0 0
10 0.005 0.496 1 0 0 0 0 0
11 0.010 0.947 1 0 0 0 0 0
4 0.003 0.651 1 0 0 0 0 0
7 0.008 1.113 1 0 0 0 0 0
8 0.007 0.881 1 0 0 0 0 0
11 0.009 0.790 1 0 0 0 0 0
5 0.006 1.170 1 0 0 0 0 0
7 0.008 1.162 1 0 0 0 0 0
11 0.012 1.055 1 0 0 0 0 0
18 0.012 0.677 1 0 0 0 0 0
9 0.005 0.501 1 0 0 0 0 0
8 0.006 0.720 1 0 0 0 0 0
10 0.012 1.168 1 0 0 0 0 0
5 0.007 1.350 1 0 0 0 0 0
6 0.006 0.979 1 0 0 0 0 0
3 0.005 1.584 1 0 0 0 0 0
10 0.009 0.870 1 0 0 0 0 0
4 0.004 1.012 1 0 0 0 0 0
13 0.019 1.460 1 0 0 0 0 0
13 0.017 1.310 1 0 0 0 0 0
11 0.016 1.442 1 0 0 0 0 0
5 0.006 1.153 1 0 0 0 0 0
6 0.004 0.630 1 0 0 0 0 0
9 0.008 0.838 1 0 0 0 0 0
6 0.005 0.862 1 0 0 0 0 0
6 0.006 1.057 1 0 0 0 0 0
8 0.006 0.723 1 0 0 0 0 0
10 0.009 0.866 1 0 0 0 0 0
10 0.010 1.003 1 0 0 0 0 0
7 0.004 0.531 1 0 0 0 0 0
5 0.004 0.758 1 0 0 0 0 0
9 0.010 1.074 1 0 0 0 0 0
8 0.008 1.030 1 0 0 0 0 0
6 0.007 1.241 1 0 0 0 0 0
10 0.010 1.049 1 0 0 0 0 0
8 0.005 0.615 1 0 0 0 0 0
10 0.012 1.208 1 0 0 0 0 0
10 0.009 0.873 1 0 0 0 0 0
7 0.004 0.512 1 0 0 0 0 0
7 0.006 0.900 1 0 0 0 0 0
10 0.011 1.124 1 0 0 0 0 0
12 0.010 0.814 1 0 0 0 0 0
11 0.005 0.430 1 0 0 0 0 0
11 0.015 1.358 1 0 0 0 0 0
15 0.011 0.751 1 0 0 0 0 0
11 0.008 0.758 1 0 0 0 0 0
11 0.011 0.992 1 0 0 0 0 0
3 0.003 0.860 1 0 0 0 0 0
9 0.011 1.174 1 0 0 0 0 0
8 0.008 1.038 1 0 0 0 0 0
14 0.017 1.239 1 0 0 0 0 0
10 0.009 0.925 1 0 0 0 0 0
9 0.004 0.427 1 0 0 0 0 0
8 0.007 0.844 1 0 0 0 0 0
8 0.015 1.870 1 0 0 0 0 0
14 0.011 0.802 1 0 0 0 0 0
7 0.004 0.583 1 0 0 0 0 0
9 0.007 0.727 1 0 0 0 0 0
10 0.019 1.874 1 0 0 0 0 0
8 0.006 0.747 1 0 0 0 0 0
7 0.007 0.999 1 0 0 0 0 0
10 0.007 0.695 1 0 0 0 0 0
8 0.008 0.941 1 0 0 0 0 0
9 0.007 0.761 1 0 0 0 0 0
9 0.009 0.947 1 0 0 0 0 0923 0.000 0.000 1 0 0 0 0 0920 0.477 0.518 1 0 0 0 0 0MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY_DELAYS 8 0 914 0 0.888 0.972 0.972 0MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%_DELAYS 0.972 0.966 0
_ - 1.000 445 48.69
.000 - 2.000 365 88.62
.000 - 3.000 74 96.72
.000 - 4.000 19 98.80
.000 - 5.000 4 99.23
.000 - 6.000 2 99.45
.000 - 7.000 5 100.00RETRY VALUE_NODE 0 91.000 _BEGIN 0 999.843 XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
916 0 1000.869 916 0 1
0 2000.000 917 0 34
2.3 Анализ результатов базовой модели
Проанализируем