Главный цикл, Дуплексный режим, Трассировка модели - Адаптивная система управления потоком для транспортного протокола в сетях с коммутацией пакетов

Главный цикл программы вызывает метод обработки прерывания proc_int() всех элементов топологии модели (host, link, router). В результате эмулируется ход внутренних часов каждого из объектов, и моделируются процессы передачи данных. Также из главного цикла с конфигурируемой периодичностью вызываются процедуры генерирующие отчеты.

Дуплексный режим

Протокол ARTCP, как и TCP способен осуществлять симметричный обмен информацией по одному соединению. В таком режиме контрольная информация получателя транслируется не отдельными сегментами, а записывается в соответствующие поля сегментов с данными, следующими в противоположном направлении. Программная модель предусматривает наличие буфера под прототип заголовка контрольного сегмента. Этот заголовок, содержащий номер подтверждения, размер окна и другую управляющую информацию, формируется после получения очередного сегмента с данными.

Трассировка модели

Каждый из объектов топологии, таких как узел, канал и интерфейс маршрутизатора, при каждой операции с сегментом выводит запись в файл отчета. Формат этой записи таков:

"{+|-|d|s|r}" time elem src"->"dst "{-|D}{-|A}{-|S}" size seq"/"ack " ... " psn psk ack_trig adv_wnd link seq/syn_ack id

Где:

Ѕ Действие: + прием в очередь, - из очереди, d отбрасывание, s отправка протоколом, r прием протоколом

Ѕ Time Время в секундах

Ѕ Elem Идентификатор объекта совершившего действие

Ѕ Src Адрес отправителя сегмента

Ѕ Dst Адрес получателя сегмента

Ѕ флаги: D данные, A подтверждение, S синхронизация

Ѕ Size Размер сегмента в байтах

Ѕ Seq Порядковый номер

Ѕ Ack Номер кумулятивного подтверждения

Ѕ Psn Поле "PS"

Ѕ Psk Поле "TI"

Ѕ Ack_trig Номер сегмента вызвавшего отправку подтверждения

Ѕ Adv_wnd Размер окна получателя в байтах

Ѕ Link Счетчик ссылок на область памяти

Ѕ Syn_ack Номер подтверждаемого SYN сегмента

Ѕ Id Уникальный идентификатор каждого сегмента

Например, следующий фрагмент отчета представляет передачу одного сегмента с данными и его подтверждения:

S 0.6251 0 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 2 0/-1 2

+ 0.6357 6 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 2 0/-1 2

+ 0.6358 22 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 3 0/-1 2

+ 0.8608 11 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 2 0/-1 2

+ 0.8609 24 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 3 0/-1 2

R 0.8717 1 0->1 D-- 1000 0/-1 ... 1 -1 -1 65536 1 0/-1 2

+ 0.8717 25 1->0 - A - 40 0/1 ... -1 -1 0 65536 1 0/1 4

S 0.8718 1 1->0 - A - 40 0/1 ... -1 -1 0 65536 1 0/1 4

+ 0.8817 11 1->0 - A - 40 0/1 ... -1 -1 0 65536 1 0/1 4

+ 0.8818 23 1->0 - A - 40 0/1 ... -1 -1 0 65536 2 0/1 4

+ 0.9868 6 1->0 - A - 40 0/1 ... -1 -1 0 65536 1 0/1 4

+ 0.9869 17 1->0 - A - 40 0/1 ... -1 -1 0 65536 2 0/1 4

R 0.9970 0 1->0 - A - 40 0/1 ... -1 -1 0 65536 0 0/1 4

С помощью информации отчета можно проследить путь каждого сегмента, т. е. до какого узла он дошел, был ли он подтвержден, потерян и ретранслирован.

Исследование моделируемой системы производится при помощи информации визуализации отчета.

Помимо событий, происходящих с сегментом, в отчет записываются также значения переменных протокола ARTCP и характеристики, снимаемые с сетевых устройств (с определенных интерфейсов). В отличие от событий с сегментами, переменные ARTCP и данные с интерфейсов маршрутизаторов снимаются с заданной периодичностью. По каждому из событий отчет может выводиться как в краткой форме (приведенной выше для операций с сегментами) так и в развернутом виде в целях отладки.

Для первичной обработки результатов моделирования применяется специально разработанный набор сценариев на языке командного интерпретатора UNIX C-shell [70] а также ряд небольших программ осуществляющих статистическую обработку результатов модельного эксперимента. Результаты работы модели фильтруются и записываются в несколько файлов в виде строк с полями, разделенными символом табуляции для последующей визуализации и статистической обработки.

Похожие статьи




Главный цикл, Дуплексный режим, Трассировка модели - Адаптивная система управления потоком для транспортного протокола в сетях с коммутацией пакетов

Предыдущая | Следующая