Подсистема имитационного моделирования локальных вычислительных сетей и инженерные основы ее реализации
Давыдов С.В., Солодовников В.И.
Московский Государственный институт электроники и математики
Кафедра ИТАС
Подсистема имитационного моделирования для анализа работоспособности ЛВС предназначена для пользователей, не являющихся профессионалами в области сетевых технологий и имещих небольшой опыт работы на персональном компьютере. Учитывая эти факторы, требования к подсистеме можно сформулировать следующим образом:
• простота и интуитивная доходчивость пользовательского интерфейса;
• возможность построения модели сети из заранее определенных блоков, назначение которых должно быть понятно из его схематического обозначения;
• возможность создания пользователем дополнительных элементов и/или модификации существующих, если требуемые элементы отсутствуют;
• возможность сохранения спроектированной модели и ее оперативной модификации, если среди хранящихся моделей существует подобная;
• возможность простого изменения входных параметров модели при проведении модельного эксперимента;
• наглядность в представлении результатов модельного эксперимента;
• возможность выдачи пользователю подсказок и рекомендаций в процессе проектирования компьютерной сети, если он нарушает основополагающие принципы.
Исходя из сформулированных требований в состав подсистемы анализа работоспособности ЛВС должны входить следующие модули (рис. 1.):
• Интерфейсный модуль;
• Модуль генерации модели;
• Моделирующая программа;
• База данных моделей объектов;
База данных моделей ЛВС.
I
Модуль интерфейса
Модуль генерации модели
БД
моделей объектов
Моделирующая программа
БД моделей ЛВС
Рисунок 1. Функциональная схема подсистемы
Модуль интерфейса служит для обеспечения ввода информации в процессе построения модели и вывода результатов модельных экспериментов. На него также возлагается функция оповещения пользователя о несоответствии разрабатываемой модели принципам построения сети выбранной архитектуры.
Модуль генерации модели осуществляет преобразование данных, введенных пользователем с помощью интерфейсного модуля в вид, требуемый для моделирующей программы. Он подставляет конкретные значения атрибутов в модели объектов сети, хранящиеся в базе данных и по матрице связанности, полученной от модуля интерфейса, определяет связи между объектами модели.
Моделирующая программа предназначена для проведения модельного эксперимента и представляет собой реализацию управляющего моделирующего алгоритма. Она выполняет функции ведение календаря событий, активации блоков; контроля за блоками, готовыми к приему и передаче сообщений, и за наступлением момента окончания моделирования, анализа приоритета
сообщения на выходе блока и выбор наиболее приоритетного и прерывание обслуживания сообщения в блоке. Исходными данными для нее служат данные, полученные на этапе генерации модели.
База данных моделей объектов предназначена для хранения моделей объектов, которые могут быть использованы при построении модели ЛВС.
База данных моделей ЛВС служит для хранения уже созданных моделей. Ее использование связано с попыткой сокращения времени на моделирование, если моделирующий эксперимент на аналогичной сети уже когда-либо проводился, либо, если можно подобрать подобную модель и привести ее в соответствие требованиям заказчика путем незначительных изменений.
Выходными данными подсистемы являются результаты проведения модельного эксперимента, которые представляются в требуемой пользователем форме. Оценка результатов эксперимента возлагается на пользователя. При необходимости для оценки результатов может быть использована экспертная система, а сами результаты при положительной оценке их пользователем могут быть использованы для наполнения ее базы знаний.
Для генерации модели необходимо, чтобы была известна следующая информация:
• описание элементов сети;
• типы запросов (с частотами их проявления);
• описание структуры сети;
• требования пользователя по производительности сети.
В соответствии с этим база данных моделей сети должна содержать соответствующие отношения: таблица идентификаторов, таблица (матрица) связности, таблицы характеристик кабельных систем, сетевых адаптеров, концентраторов, коммутаторов и маршрутизаторов, таблица задач (запросов).
Компьютерную сеть определим как совокупность компьютеров и связей между ними. Для обеспечения локальных связей между компьютерами используются различные виды кабельных систем, сетевые адаптеры, концентраторы-повторители, мосты, коммутаторы и маршрутизаторы. Для
подключения локальных сетей к глобальным используются WAN-порты мостов и маршрутизаторов и аппаратура каналообразования для передачи данных по длинным линиям: модемы (для работы по аналоговым линиям) и устройства подключения к цифровым каналам (терминальные адаптеры сетей ISDN, устройства обслуживания цифровых выделенных каналов типа CSU/DSU и т.п.).
Исходя из этого выделим объекты, которые будут использованы как базовые элементы при построении модели сети и проведем их классификацию (рис. 2).
Рисунок 2. Классификация сетевых устройств
Каждый тип объектов имеет свое представление в базе данных. Сами же типы объектов в матрице связности представляются их идентификаторами (таблица 1).
Идентификатор Наименование объекта Имя таблицы
1 Кабельное оборудование Cable
2 Сетевые адаптеры NIC
3 Концентраторы HUB
4 Коммутаторы Switch
5 Маршрутизаторы Router
6 Серверы Server
7 Рабочие станции Wstation
8 Принт-серверы Pserv
Таблица 1 Идентификаторы объектов сети.
Из приведенной классификации (рис. 2) видно, что все сетевое оборудование можно разделить на активное и пассивное по следующему признаку: активные устройства сети для своей работы требуют подключения в сети электропитания. Они обеспечивают поддержание электрических параметров сигнала в требуемом заданном диапазоне.
Пассивные устройства не потребляют электроэнергию, а на электрические параметры сигнала оказывают влияние только с точки зрения их ухудшения. Пассивные устройства часто отождествляют со структурированной кабельной системой (СКС- Structured Cabling System, SCS), которая представляет собой набор коммутационных элементов (кабелей, разъемов, коннекторов, кроссовых панелей и шкафов), а также методику их совместного использования, позволяющую создавать легко расширяемые структуры связей в вычислительных сетях. СКС можно разделить на стоечное и кабельное оборудование.
К стоечному оборудованию относя кроссовые панели, сетевые розетки,
всевозможные коннекторы, коммутационные шкафы и стойки. В процесс
функционирования компьютерной сети они практически не вносят никаких
изменений. Их влияние на работу сети существенно только с точки зрения
108
вносимых ошибок, вызывающих нарушение работоспособности (плохой контакт, дребезг контактов и т.п.). Поэтому представлением этих объектов в модели сети является время отказа, определяемое как экспертная оценка пользователя.
К кабельному оборудованию относятся все типы кабелей, которые используются для построения локальных связей в вычислительных сетях в настоящее время. Исходя из номенклатуры кабельного оборудования и его параметров, влияющих на функционирование сети в целом можно использовать следующее информационное представление этих объектов в базе моделей:
Название Тип
Cable_ID (идентификатор) int
Cable_name (название кабеля) Char[30]
Cable_type (тип кабеля) Char[5]
Category (категория) int
Speed (скорость передачи) int
Material (материал изготовления) Char[20]
Seg_len (максимальная длина сегмента) int
Seg_point (максимальное количество компьютеров в сегменте) int
Delay (задержка на единицу длины) double
Cost (стоимость) currency
Таблица 2. Таблица Cable.
В подкласс компьютеров входят всевозможные сервера (управляющие, баз данных и т.п.), рабочие станции и принт-серверы. Определим эти устройства.
Сервер представляет собой мощный компьютер, предназначенный для управления сетью, либо для хранения и обработки информации. Существует несколько типов серверов, ориентированных на разные применения: файл-сервер, сервер базы данных, принт-сервер, вычислительный сервер, сервер
109
приложений. Тип сервера определяется видом ресурса, которым он владеет (файловая система, база данных, принтеры, процессоры или прикладные пакеты программ).
Рабочая станция фактически является персональным рабочим местом пользователя сети (бухгалтер, программист, секретарь и т.п.). Чаще всего рабочая станция представляет собой персональный компьютер, подключенный к сети и имеющий доступ к каким-либо разделяемым ресурсам. Обычно в качестве программного обеспечения рабочие станции используют автоматизированные рабочие места (АРМ) различного назначения: АРМ бухгалтера, АРМ разработчика печатных плат, АРМ конструктора и т.п.
Принт-сервер является специальным устройством, к которому можно подключить принтер рабочей группы. С точки зрения сети он выполняет функции получения из сети данных, отправляемых на печать, обработки заданий печати, управление принтерами. По функциональному назначению он подобен рабочей станции сети, к которой подключен принтер.
Весь класс компьютеров с точки зрения анализа работоспособности сети интересен при построении ее модели, когда требуется произвести анализ функционирования сети на верхних уровнях модели OSI (сетенезависимых). При этом, свойствами объектов класса компьютеров будут являться типы обрабатываемых и генерируемых запросов, частоты их появления и времена обработки. Все эти данные можно получить из предварительно накопленного опыта эксплуатации аналогичной сети, либо как экспертную оценку, задаваемую заказчиком.
Представление подкласса коммутационного оборудования рассмотрим на примере сетевых адаптеров. Сетевой адаптер (Network Interface Card, NIC) является периферийным устройством компьютера, непосредственно взаимодействующим со средой передачи данных, которое прямо или через другое коммуникационное оборудование связывает его с другими компьютерами. Это устройство решает задачи надежного обмена двоичными данными, представленными соответствующими электромагнитными
сигналами, по внешним линиям связи. Сетевой адаптер выполняет следующие функции:
•Оформление передаваемой информации в виде кадра определенного формата.
•Получение доступа к среде передачи данных.
•Кодирование последовательности бит кадра последовательностью электрических сигналов при передаче данных и декодирование при их приеме.
•Преобразование информации из параллельной формы в последовательную и обратно.
•Синхронизация битов, байтов и кадров.
Название Тип
NIC ID (идентификатор) int
NIC name (назватие) Char[30]
NIC_speed (скорость передачи) int
NIC_media (среда передачи) Char[5]
Media_sense (автоопределение скорости передачи) boolean
NIC bus (компьютерная шина) Char[5]
NIC_delay (задержка передачи) double
MAC_addr (MAC- адрес) Char[30]
Fault (вероятность отказа) double
Team (возможность объединения) boolean
Con_p (совместимость со стандартом IEEE802 1p) boolean
Con Q (совместимость со стандартом IEEE802_1Q) boolean
Cost (цена) currency
Таблица 3. Таблица NIC
Сетевые адаптеры различаются по типу и разрядности используемой в компьютере внутренней шины данных и по типу принятой в сети технологии (Ethernet, Token Ring и т.п.). Конкретная модель сетевого адаптера работает только по определенной сетевой технологии (например, Ethernet). Так как для каждой технологии имеется возможность использования различных сред передачи данных, то сетевой адаптер может поддерживать одну или несколько сред.
Так как сетевые адаптеры работают на физическом уровне и подуровне MAC канальном уровня модели OSI, то важнейшими характеристиками для их описания являются значения параметров, определяющие взаимодействие с устройствами, работающими на этих уровнях и сетевая технология по которой работает адаптер. Информационное представление сетевых адаптеров включает эти параметры (табл. 3).
Рассмотрим и определим типы информации, которые будут рассматриваться при проведении модельного эксперимента. Будем различать следующие типы запросов:
• Запрос типа «клиент-сервер», или запрос на обработку.
• Запрос типа «клиент-файл», или запрос к данным.
• Запрос на печать представляет собой запрос на передачу данных.
Название Тип
ГО (идентификатор)
Req_name (название запроса)
Req_type (тип запроса)
Out_addr (адрес исходящий)
In_addr (адрес входящий)
Req_freq (частота появления запроса)
Len_data (длина передаваемых данных)
Req_time (время выполнения)
Таблица 4. Таблица Request
Указанные типы запросов используются в модели сети, в случае, когда необходимо произвести оценку ее работоспособности с точки зрения работы пользователей с программными приложениями, т.е. если рассматриваемая компьютерная сеть моделируется на верхних уровнях модели OSI. Информационное представление запросов в базе данных подсистемы моделирования приведено в табл. 4. Временные должны быть определены как экспертная оценка заказчика.
В заключении хочется отметить что на основе анализа потребностей пользователя и предложенного подхода к построению имитационных моделей сети разработана функциональная схема подсистемы и на основе анализа типовых ЛВС определен круг объектов сети, которые принимаются как базовые при ее моделировании. Для этих объектов, по результатам рассмотрения принципов их функционирования и критическим параметрам, построено информационное представление в базе данных моделей объектов.
ЛИТЕРАТУРА
1. Блэк Ю. Сети ЭВМ: протоколы. Стандарты, интерфейсы/ Пер. с англ. -М.: Мир. 1990. 510 с.
2. Науманн Ш., Вер Х. Компьютерная сеть. Проектирование, создание, обслуживание. / Пер. с нем. - М.: ДМК 2000. 336 с.
3. Тиори Т., Фрай Дж. Проектирование структур баз данных: в 2-х кн. / Пер. с англ. -М.: Мир. 1985 кн.1 - 287с., кн.2 - 320 с.
4. Шрайбер Т. Дж. Моделирование на GPSS. / Пер. с англ. - М Машиностроение, 1980. 592 с.
5. Data Communications Networks, Open System Interconnection (OSI) System Description Techniques, Volume VIII, Fascicle VIII.5, CCITT Red Book, CCITT Plenary Assembly, October 8-19, 1984 (Malaga-Torremolinos).