Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Лабораторная работа №12. Исследование на имитационной модели процесса функционирования локальной вычислительной сети




Цель работы - изучение вероятностно-временных характеристик процесса функционирования ЛВС кольцевой структуры методом имитационного моделирования.

Объектом исследования в данной лабораторной работе является ЛВС, осуществляющая передачу пакетов между сервером и рабочими станциями.

Задачи работы:

1. Построить модель процесса функционирования кольцевой ЛВС.

2. Определить потоки данных от рабочих станций к серверу и обратно.

3. Отладить модель.

4. Оценить загрузку сервера за 8 часов работы. Подсчитать общее количество обработанных и необработанных заявок.

5. Оценить, при каком минимальном значении среднего интервала поступления заявок от первой станции сервер не справится с нагрузкой.

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

Содержание отчёта

1. Цель работы.

2. Потоки данных от рабочих станций к серверу и обратно.

3. Код программы и блок-схема программы.

4. Общее количество обработанных и необработанных заявок.

5. Выводы по работе.

 

Локальная вычислительная сеть (ЛВС) состоит из 8 рабочих станций, соединенных в кольцевую структуру. Поток заявок от каждой станции - пуассоновский со средними интервалами соответственно 10, 15, 18 и 20 секунд. По сети циркулирует маркер, поочередно дающий каждой станции право на использование канала для передачи данных. При поступлении маркера рабочая станция проверяет, поступил ли вместе с ним пакет. Если маркер пришел без пакета, то если станция имеет в этот момент свой пакет для передачи, то она передает его вместе с маркером. При отсутствии пакета для передачи маркер передается на следующую станцию. Если маркер пришел с пакетом, то станция анализирует пакет, сравнивая его адрес отправителя со своим адресом. Если эти адреса совпадают, то станция анализирует пакет, прошедший через все кольцо, с хранимым у нее экземпляром того же пакета. Время анализа распределено по равномерному закону со средним значением 10 ±2 секунды. Вероятность искажения пакета =0,1. Если пакет искажен, станция передает его повторно вместе с маркером. Если не искажен, транслируется маркер без пакета. Время передачи пакета между станциями распределено по нормальному закону с мат. ожиданием 5 секунд и со стандартным отклонением 2 секунды.

Из-за ограничения в 150 блоков, связанного с GPSS World версии Student, удалось реализовать только 7 из 8 станций.

 

Текст GPSS программы приведен далее.

 

GENERATE,,,1; маркер

ASSIGN DATA,0; без пакета

ASSIGN HOST,0; без адреса

ASSIGN ERR,0.1; вероятность ошибки

 

; 1 станция

WKS1 TEST E P$DATA,1,FREETK1; маркер с данными?

TEST E P$HOST,1,WKS2; мои данные?

ADVANCE 10,2; анализ

TRANSFER P$ERR,,WKS2; повторная передача с вероятностью ERR

ASSIGN DATA,0; освобождаем маркер

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS2; передача пустого маркера

FREETK1 GATE SNE PKTBUF1,WKS2; есть ли данные для передачи

LEAVE PKTBUF1; забрали из буфера

ASSIGN DATA,1; маркер с данными

ASSIGN HOST,1; с нашим адресом

TRANSFER,WKS2; ушёл по кольцу

 

GENERATE 10,FN$EXPON; пакеты от первой станции

GATE SNF PKTBUF1,REFUSE; проверка буфера на занятость

ENTER PKTBUF1; пакет помещается в буфер

TERMINATE

 

; 2 станция

WKS2 ADVANCE (NORMAL(1,5,1)); задержка передачи

TEST E P$DATA,1,FREETK2

TEST E P$HOST,2,WKS3

ADVANCE 10,2

TRANSFER P$ERR,,WKS3

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS3

FREETK2 GATE SNE PKTBUF2,WKS3

LEAVE PKTBUF2

ASSIGN DATA,1

ASSIGN HOST,2

TRANSFER,WKS3

 

GENERATE 15,FN$EXPON

GATE SNF PKTBUF2,REFUSE

ENTER PKTBUF2

TERMINATE

 

; 3 станция

WKS3 ADVANCE (NORMAL(1,5,1))

TEST E P$DATA,1,FREETK3

TEST E P$HOST,3,WKS4

ADVANCE 10,2

TRANSFER P$ERR,,WKS4

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS4

FREETK3 GATE SNE PKTBUF3,WKS4

LEAVE PKTBUF3

ASSIGN DATA,1

ASSIGN HOST,3

TRANSFER,WKS4

 

GENERATE 18,FN$EXPON

GATE SNF PKTBUF3,REFUSE

ENTER PKTBUF3

TERMINATE

 

; 4 станция

WKS4 ADVANCE (NORMAL(1,5,1))

TEST E P$DATA,1,FREETK4

TEST E P$HOST,4,WKS5

ADVANCE 10,2

TRANSFER P$ERR,,WKS5

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS5

FREETK4 GATE SNE PKTBUF4,WKS5

LEAVE PKTBUF4

ASSIGN DATA,1

ASSIGN HOST,4

TRANSFER,WKS5

 

GENERATE 20,FN$EXPON

GATE SNF PKTBUF4,REFUSE

ENTER PKTBUF4

TERMINATE

 

; 5 станция

WKS5 ADVANCE (NORMAL(1,5,1))

TEST E P$DATA,1,FREETK5

TEST E P$HOST,5,WKS6

ADVANCE 10,2

TRANSFER P$ERR,,WKS6

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS6

FREETK5 GATE SNE PKTBUF5,WKS6

LEAVE PKTBUF5

ASSIGN DATA,1

ASSIGN HOST,5

TRANSFER,WKS6

 

GENERATE 10,FN$EXPON

GATE SNF PKTBUF5,REFUSE

ENTER PKTBUF5

TERMINATE

 

; 6 станция

WKS6 ADVANCE (NORMAL(1,5,1))

TEST E P$DATA,1,FREETK6

TEST E P$HOST,6,WKS7

ADVANCE 10,2

TRANSFER P$ERR,,WKS7

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS7

FREETK6 GATE SNE PKTBUF6,WKS7

LEAVE PKTBUF6

ASSIGN DATA,1

ASSIGN HOST,6

TRANSFER,WKS7

 

GENERATE 15,FN$EXPON

GATE SNF PKTBUF6,REFUSE

ENTER PKTBUF6

TERMINATE

 

; 7 станция

WKS7 ADVANCE (NORMAL(1,5,1))

TEST E P$DATA,1,FREETK7

TEST E P$HOST,7,WKS8

ADVANCE 10,2

TRANSFER P$ERR,,WKS8

ASSIGN DATA,0

ASSIGN HOST,0

QUEUE SERVICED

TRANSFER,WKS8

FREETK7 GATE SNE PKTBUF7,WKS8

LEAVE PKTBUF7

ASSIGN DATA,1

ASSIGN HOST,7

TRANSFER,WKS8

 

GENERATE 18,FN$EXPON

GATE SNF PKTBUF7,REFUSE

ENTER PKTBUF7

TERMINATE

 

WKS8 ADVANCE (NORMAL(1,5,1))

TRANSFER,WKS1; маркер по кольцу

 

REFUSE QUEUE REFUGEE

TERMINATE

 

; таймер

GENERATE 28800

TERMINATE 1

 

PKTBUF1 STORAGE 1

PKTBUF2 STORAGE 1

PKTBUF3 STORAGE 1

PKTBUF4 STORAGE 1

PKTBUF5 STORAGE 1

PKTBUF6 STORAGE 1

PKTBUF7 STORAGE 1

PKTBUF8 STORAGE 1

 

EXPON FUNCTION RN1,C24

0,0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509

0.5,0.69/0.6,0.915/0.7,1.2/0.75,1.38/.8,1.6

.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81

.95,2.99/.96,3.2/.97,3.5/.98,3.9/.99,4.6

.995,5.3/.998,6.2/.999,7/.9998,8

 

Листинг результатов моделирования приведен далее.

 

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 28800.000 135 0 8

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

REFUGEE 13995 13995 13995 0 7019.569 14445.416 14445.416 0

SERVICED 127 127 127 0 63.962 14504.838 14504.838 0

 

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

PKTBUF1 1 0 0 1 19 1 0.994 0.994 0 0

PKTBUF2 1 0 0 1 19 1 0.992 0.992 0 0

PKTBUF3 1 0 0 1 19 1 0.988 0.988 0 0

PKTBUF4 1 0 0 1 19 1 0.992 0.992 0 0

PKTBUF5 1 0 0 1 20 1 0.993 0.993 0 0

PKTBUF6 1 0 0 1 20 1 0.993 0.993 0 0

PKTBUF7 1 0 0 1 19 1 0.985 0.985 0 0

PKTBUF8 1 1 0 0 0 1 0.000 0.000 0 0

 

Определить параметры сети при увеличении вероятности искажения пакета в 8 раз (P$ERR = 0.8).

 

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 28800.000 135 0 8

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

REFUGEE 13995 13995 13995 0 7019.569 14445.416 14445.416 0

SERVICED 127 127 127 0 63.962 14504.838 14504.838 0

 

Так как программа модели состоит из групп блоков, а каждая из групп необходима для моделирования работы рабочей станции, то на рисунке 6.27 приведена блок-диаграмма моделирования работы одной рабочей станции.

 

 

Рисунок 6.27 - Блок-диаграмма моделирования работы рабочей станции

 


[1] Черным цветом обозначается ввод пользователя, синим – ответ среды Matlab.

 

 

 

 

 

 

 

[9] Частотная характеристика возвращается в виде трехмерного массива, в котором каждый элемент имеет 3 индекса: строка, столбец (для многомерных моделей) и номер точки частотной характеристики. Для системы с одним входом и одним выходом команда r = r(:); преобразует эти данные в в обычный одномерный массив.

 

 

 

 

 

 

 

 

 

 

[20] При вводе этой и следующих команд окно с графиком не появляется на экране. Чтобы увидеть изменения, надо вручную сделать его активным, щелкнув мышью на соответствующей кнопке в панели задач.

[21] Значение было определено в лабораторной работе № 2.

[22] Скриптом называется файл, содержащий команды Matlab. При его запуске команды выполняются последовательно одна за другой.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных