Программирование сетей

ВСТУПЛЕНИЕ


В настоящее время в использовании ЛВС можно отметить две тенденции: создание мощных корпоративных сетей и переход на тех- нологию клиент-сервер. Корпоративные ЛВС характеризуются многосегментной структу- рой, большим числом рабочих станций (РС), наличием нескольких серверов (файловых, баз данных, печати, модемов), маршрутизато- ров, мостов и т.п. Эффективное использование технологии кли- ент-сервер в таких сетях ставит ряд сложных задач перед админист- раторами и пользователями ЛВС. Важнейший комплекс задач - обеспе- чение требуемой производительности, пропускной способности сети и планирование ее мощности. Сейчас, когда ЛВС стали определяющим компонентом в информа- ционной стратегии большинства организаций, недостаточное внимание к оценке мощности ЛВС и ее планированию привело к тому, что се- годня для поддержки современных приложений в технологии кли- ент-сервер многие сети необходимо заново проектировать во многих случаях и заменять. Производительность и пропускная способность ЛВС определяется рядом факторов: выбором серверов и рабочих станций, сетевого обо- рудования, операционных систем рабочих станций, серверов и их конфигураций, распределением файлов базы данных по серверам сети, организацией распределенного вычислительного процесса, защиты, поддержания и восстановления работоспособности в ситуациях сбоев и отказов и т. п. Максимальные возможности корпоративной ЛВС для конкретных приложений (банковская, офисная, проектно-конструк- торская, управленческая деятельность и др.) могут быть достигнуты только на основе комплексного подхода к оптимизации ЛВС на всех этапах жизненного цикла (от технико-экономического обоснования и технического задания на разработку до эксплуатации и модерниза- ции). Для решения задач оптимизации производительности и пропуск- ной способности ЛВС используются методы и средства измерения (анализа) и моделирования. Особенности трафика ЛВС делают модели- рование сетей более трудным, чем моделирование систем с главной машиной. В ЛВС трафик может сильно варьироваться, что определяет- ся природой распределенной обработки. Так как такая обработка вы- полняется и клиентом, и сервером, есть много способов распределе- ния обработки информации между ними, но в первую очередь необхо- димо знать о производительности самих приложений и влиянии прило- жений на общую производительность и пропускную способность сети. Как правило, средства моделирования позволяют определить производительность и пропускную способность ЛВС на основе показа- телей ее фактического оцениваемого трафика, указываемых админист- ратором сети. Многие пакеты моделирования могут воспринимать дан- ные и от инструментальных средств анализа сети (сетевых анализа- торов), таких, например, как анализатор протокола Sniffer фирмы Network General. Для крупномасштабных моделей такая возможность имеет важное значение, поскольку в этом случае отпадает необходи- мость во вводе в моделирующую программу множеств данных. Устано- вив в сети программные измерительные средства и уяснив картину - 3 - полного сетевого трафика, можно использовать и данные с помощью продуктов административного управления сетью, таких, как Sun Net Manager фирмы Sun Microsystem и Open View фирмы Hewlett Packard. Другим подходом к моделированию является создание вариантов "сце- нариев" работы ЛВС, что позволяет программировать уровень трафика на основе действий сетевых приложений. Средства моделирования обычно включают модули, эмулирующие все сетевые устройства. Например, пакет PlanNet фирмы Comdisco позволяет моделировать все оборудование ЛВС Token Ring и Ethernet вплоть до средств передачи речевых данных и телекоммуникаций. После того как модель сети разработана и отла жена появляется возможностъ проведения экспериментов, например, можно добавить в сеть пользователей сегменты, мосты, коммутаторы, концентраторы, изменить тип передающей среды или сервера и т.п. Модель покажет пропускную способность сети, уровень трафика и ошибок, время ре- акции. Следует иметь в виду, что для решения задач оптимизации ЛВС необходимы точные исходные данные (например, получаемые от сете- вого анализатора), правильная оценка роста трафика, генерируемого новым сетевым приложением, а также понимание возможности програм- мы (пакета) моделирования и какие из "сценариев" жизнеспособны. Инструментальные средства не могут дать конкретных рекомендаций по поиску "узких" мест и оптимизации ЛВС, а только способны пока- зать, как изменения могут повлиять на характеристики сети. Ин- терпретировать данные, полученные инструментальными средствами, разрабатывать планы устранения "узких мест" в ЛВС, сценарии для их проверки, решать оптимизационные задачи должен администратор сети. . - 4 - МЕТОДЫ ОЦЕНКИ ЭФФЕКТИВНОСТИ ЛВС И ИХ КОМПОНЕНТОВ МЕТОДЫ ИССЛЕДОВАНИЯ На различных стадиях жизненного цикла ЛВС могут использо- ваться различные методы оценки ее эффективности и оптимизации. В процессе проектирования ЛВС с использованием современной методологии проектирования и технологических комплексов (САПР) могут применяться экспериментальные методы исследования, аналити- ческое и имитационное моделирование. На стадиях опытной и рабочей эксплуатации ЛВС основным мето- дом оценки их качества следует считать экспериментальное исследо- вание. Оно позволяет собрать статистическую информацию о действи- тельном ходе вычислительного, процесса, использовании оборудова- ния, степени удовлетворения требований пользователей системы и т.п. и затем по результатам ее обработки сделать заключение о ка- честве проектных решений, заложенных при создании системы, а так- же принять решение по модернизации системы (устранению "узких" мест). Однако не исключено и использование методов моделирования, с помощью которых можно оценить эффект от модернизации ЛВС, не изменяя рабочей конфигурации и организации работы системы.  1Моделирование 0 - один из наиболее распространенных методов исследования. Модель ЛВС - это такое ее представление, которое состоит из определенного количества организованной информации о ней и построено с целью ее изучения. Другими словами, модель - физическая или абстрактная система, представляющая объект иссле- дования. При исследовании ЛВС, как правило, используются абс- трактные модели, представляющие собой описания ЛВС на некотором языке. Абстрактная модель, представленная на языке математических отношений, называется  1математической моделью 0. Математическая мо- дель М имеет форму функциональной зависимости W=W 4м 0(Х,F), где W={W 41 0,W 42 0,...,W 4n 0} - показатели эффективности системы; Х={x 41 0,x 42 0,...,х 4n 0} и F= {f 41 0,f 42 0,...,f 4Q 0} - соответственно параметры и функции, выполняемые системой. Поскольку при исследовании ЛВС возникает много различных вопросов, для решения тех или иных задач может быть разработан ряд моделей M={M 41 0,М 42 0,...,М 4o 0}. Эти модели представляют одну и ту же систему, но разрабатываются в различных целях, представляют ВС с различных точек зрения, а потому имеют различную степень дета- лизации. Это означает, что в некоторой модели M 4i 0 C M могут от- сутствовать определенные математические зависимости, а следова- тельно, модель М может быть неадекватной реальной ВС. Поэтому в совокупность моделей М должны входить такие частные модели, кото- рые адекватно отражают отдельные стороны функционирования ЛВС в соответствии с целью исследования и имеют такую степень детализа- ции, которая достаточна для решения конкретной задачи с требуемой точностью. - 5 - АНАЛИТИЧЕСКОЕ МОДЕЛИРОВАНИЕ Использование аналитических методов связано с необходимостью построения математических моделей ЛВС в строгих математических терминах. Аналитические модели ВС носят обычно вероятностный ха- рактер и строятся на основе понятий аппарата теорий массового обслуживания, вероятностей и марковских процессов, а также мето- дов диффузной аппроксимации. Могут также применяться дифференци- альные и алгебраические уравнения. При использовании этого математического аппарата часто уда- ется быстро получить аналитические модели для решения достаточно широкого круга задач исследования ЛВС. В то же время аналитичес- кие модели имеют ряд существенных недостатков, к числу которых следует отнести: - значительные упрощения, свойственные большинству аналити- ческих моделей (представление потоков заявок как простейших, предположение об экспоненциальном распределении длительностей обслуживания заявок, невозможность обслуживания заявок одновре- менно несколькими приборами, например процессором и оперативной памятью, и др.). Подобные упрощения, а зачастую искусственное приспособление аналитических моделей с целью использования хо- рошо разработанного математического аппарата для исследования ре- альных ЛВС ставят иногда под сомнение результаты аналитического моделирования; - громоздкость вычислений для сложных моделей, например, ис- пользование для представления в модели процесса функционирования современной ЛВС по методу дифференциальных уравнений Колмогорова требует (для установившегося режима) решения сложной системы ал- гебраических уравнений; - сложность аналитического описания вычислительных процессов ЛВС. Большинство известных аналитических моделей можно рассматри- вать лишь как попытку подхода к описанию процессов функционирова- ния ЛВС; - недостаточная развитость аналитического аппарата в ряде случаев не позволяет в аналитических моделях выбирать для иссле- дования наиболее важные характеристики (показатели эффективности) ЛВС. Особенно большие затруднения при аналитическом моделировании связаны с учетом в процессах функционирования ЛВС программных средств операционных систем и другого общего ПО. Указанные особенности позволяют заключить, что аналитические методы имеют самостоятельное значение лишь при исследовании про- цессов функционирования ЛВС в первом приближении и в частных, достаточно специфичных задачах. В этих случаях возможности иссле- дования аналитических моделей ЛВС существенно расширяют прибли- женные методы, например методы диффузионной аппроксимации, методы операционного анализа и аналитические сетевые модели. Позднее будет рассмотрено аналитическое моделирование ЛВС на основе теории систем массового обслуживания. - 6 - ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ В отличие от аналитического имитационное моделирование сни- мает большинство ограничений, связанных с возможностью отражения в моделях реального процесса функционирования исследуемой ЛВС, динамической взаимной обусловленности текущих и последующих собы- тий, комплексной взаимосвязи между параметрами и показателями эф- фективности системы и т.п. Хотя имитационные модели во многих случаях более трудоемки, менее лаконичны, чем аналитические, они могут быть сколь угодно близки к моделируемой системе и просты в использовании. Имитационные модели представляют собой описание объекта исс- ледования на некотором языке, которое имитирует элементарные яв- ления, составляющие функционирование исследуемой системы, с сох- ранением их логической структуры, последовательности протекания во времени, особенностей и состава информации о состоянии процес- са. Можно отметить имеющуюся аналогию между исследованием процес- сов методом имитационного моделирования и экспериментальным их исследованием. Описания компонентов реальной ВС в имитационной модели носят определенный логико-математический характер и представляют собой совокупность алгоритмов, имитирующих функционирование исследуемой ВС. Моделирующая программа, построенная на основе этих алгоритмов (т. е. на основе математической модели), позволяет свести имита- ционное моделирование к проведению экспериментов на ЭВМ путем их "прогона" на некотором множестве входных данных, имитирующих пер- вичные события, которые происходят в системе. Информация, фикси- руемая в процессе исследования имитационной модели, позволяет оп- ределить требуемые показатели, характеризующие качество исследуе- мой ВС. Основными недостатками имитационного моделирования, несмотря на появившиеся в последнее время различные системы моделирования, остаются сложность, высокая трудоемкость и стоимость разработки моделей, а иногда и большая ресурсоемкость моделей при реализации на ЭВМ. Хотя существующие сегодня продукты моделирования способны помочь квалифицированному инженеру ЛВС моделировать и планировать сеть, они, по мнению экспертов, все еще слишком сложны в исполь- зовании и порой неадекватно моделируют вычислительную среду кли- ент-сервер. Специалисты считают, что необходимы новые модели распределенной обработки, в которых основное внимание уделялось бы пропускной способности сети одного узла к другому. Пакетная ориентация существующих моделирующих программ озна- чает, что архитектор сети или инженер должен сам определить, поз- волит ли убыстрение конвейерной передачи улучшить время реакции. Это справедливо для любого вида приложений, но особенно важно для программ класса клиент-сервер. Поскольку есть много способов об- работки распределения между клиентом и сервером, производитель- ность нужно измерять на основе влияния приложения, а не только пропускной способности каналов связи. Например, приложение, кото- рое выполняет большую часть своей обработки со стороны клиента, может создавать впечатление интенсивного использования. Однако - 7 - реально основной объем использования сети происходит при загрузке программы, а здесь приемлемое время реакции - 20 или 30 с. Напро- тив, для совместно используемой базы данных может потребоваться более быстрый конвейер. Средства моделирования обычно включают в себя модули обра- ботки, эмулирующие сетевые устройства (мосты и концентраторы), так что моделируемый трафик будет подвергаться той же обработке, что и реальный. Например, в пакете моделирования PlanNet фирмы Comdisco име- ется возможность эмуляции всего оборудования - от сети Token Ring и сегментов Ethernet до средств передачи речевых данных и теле- коммуникационных линий Т-З. После того как модель сети построена и работает, можно поэк- спериментировать, добавляя в нее протоколы, пользователей или се- тевые сегменты. Можно разбить сеть на дополнительные сегменты, применив в них, например, линию связи Т-1, и посмотреть, что про- изойдет. Средство моделирования покажет коэффициент использования сети в процентах от ее пропускной способности, уровни трафика и ошибок, время реакции. Все это требует времени. Построение точной модели сложной сети может занять месяц или более. Следует принимать во внимание также значительную стоимость подобных пакетов (порядка 10 000 дол.). Эти продукты настолько сложны, что многие специалисты по ЛВС занимают выжидательную позицию. Однако хороший пакет моделирования сети поможет не только найти "узкие" места и помочь в инсталляции нового сетевого обору- дования, но и реально сэкономить средства. Точно предсказав тра- фик ЛВС, можно избежать неправильного построения своей сети или отказаться от приобретения ненужного оборудования. Финансовые аспекты моделирования являются решающими. Продукт NetMaker фирмы MakeSystems включает в себя шаблоны трафика для всех основных типов кабелей, что позволяет прикинуть, поможет ли MCI реально сэкономить средства для установления конкретной свя- зи. Продукт NetMaker уникален еще и тем, что в нем используются указываемые поставщиком характеристики производительности. Такие фирмы-поставщики, как Wellfleet Communications и CiscoSystems, подготавливают для Maker детальные таблицы производительности, на основе которых и производится моделирование. Этот процесс нас- только отличается от других средств моделирования, что NetMaker является скорее не программой моделирования, а профайлером прило- жений. ЭКСПЕРИМЕНТАЛЬНЫЕ МЕТОДЫ Практическое использование моделей ЛВС во многих случаях предполагает наличие информации о реальных характеристиках вычис- лительного процесса. Такая информация может быть получена эмпири- ческими методами, на основе которых в настоящее время создаются средства для исследования аппаратно-программных компонентов ЛВС. Необходимая информация собирается с помощью специальных средств, - 8 - которые обеспечивают измерение параметров, характеризующих дина- мику функционирования ЛВС в режимах опытной и нормальной эксплуа- тации. К таким средствам относятся сетевые анализаторы, анализа- торы протоколов и т.п.. Создание средств для измерений параметров функционирования ЛВС, в том числе и операционных систем ЛВС, относится к числу но- вых задач в вычислительной технике. Экспериментальные методы позволяют создать основу количест- венной оценки эффективности ВС для достижения следующих практи- ческих целей: анализа имеющихся ЛВС, выбора наилучшей и синтеза новой ЛВС. Оценка характеристик аппаратно-программных средств связана с проведением экспериментов и измерений, которые с прак- тической точки зрения могут рассматриваться как процесс получения полезной информации. Данные измерений представляются в виде, пригодном для после- дующего анализа. Это осуществляется с помощью специальных средств обработки, создание которых связано с разработкой анализаторов. Эта взаимосвязь касается, например, выбора единых форматов дан- ных, удобных не только для измерений, но и для обработки их ре- зультатов. В общем случае этап измерений предшествует этапу обра- ботки, и средства обработки должны быть рассчитаны на эффективное применение к большим массивам информации, поскольку для измерений на ЛВС характерны, как правило, большие объемы и высокая плот- ность регистрируемых данных. На завершающем этапе экспериментальных исследований прово- дится анализ результатов измерений, который состоит в получении содержательных выводов об исследуемой ЛВС. Важным условием для формирования таких выводов является удачное представление резуль- татов измерений. Эффективность экспериментальных методов в значительной сте- пени зависит от качества планирования экспериментов и правильнос- ти выбора типа нагрузки. Эксперимент состоит из набора тестов, выполняемых в процессе исследований, а тест, в свою очередь, сос- тоит из ряда сеансов или "прогонов". Термин "сеанс" чаще применя- ется для измерений, а "прогон", как правило,- для имитационного моделирования. В течение сеанса или прогона накапливается инфор- мация о поведении системы и, возможно, рабочей нагрузке. Посколь- ку рабочая нагрузка меняется, число наблюдений, которое требуется получить для каждой интересующей пользователя величины, должно быть таким, чтобы распределения для этих величин и их моменты могли быть оценены с требуемой точностью. Таким образом, продол- жительность сеанса зависит от необходимого числа наблюдений. Эксперимент длительностью в один сеанс достаточен для оцен- ки, если нужно, рассмотреть только одну конфигурацию системы и один тип, рабочей нагрузки. Например, если измерения производятся для того, чтобы выяснить, обеспечивает ли данная ЛВС при заданной рабочей нагрузке (трафике) удовлетворительную производительность, т. е. отвечает ли она определенным требованиям. Эксперименты дли- тельностью в несколько сеансов необходимы, если предстоит опреде- лить влияние определенных факторов на производительность системы или производится оптимизация системы последовательными итерация- ми. Основной проблемой, возникающей при планировании этих экспе- - 9 - риментов, является определение состава и требуемой точности ре- гистрации измеряемых параметров. СБОР ДАННЫХ ДЛЯ МОДЕЛИРОВАНИЯ Как правило, средства моделирования сети вычисляют ее произ- водительность на основе показателей ее фактического и оцениваемо- го трафика, указываемых администратором сети. Многие программы моделирования воспринимают данные и от инструментальных средств анализа сети, таких, как анализатор протокола Sniffer фирмы Net- work General. Для крупномасштабных моделей такая возможность име- ет важное значение: без нее пришлось бы подсчитывать передаваемые пакеты и вводить множество данных. Установив программные датчики, позволяющие получить картину полного сетевого трафика, можно ис- пользовать и данные, получаемые с помощью продуктов администра- тивного управления сетью, таких, как SunNet Manager фирмы Micro- systems и Open View фирмы Hewlett Packard. Другим подходом к моделированию сети является создание вари- антов сценария работы ЛВС, что позволяет программировать уровень трафика на основе действий сетевых приложений. Разница между эти- ми подходами состоит в том, что в первом случае просто использу- ется экстраполяция на основе измеренного трафика, а второй позво- ляет управлять масштабом операций. Он будет срабатывать тем эф- фективнее, чем больше сценарии приближены к реальности. Даже при помощи такого измерительного инструмента, как Snif- fer, моделирование позволяет получить лишь ту точность, которую дают базовые данные. Если при измерении трафика не охвачен адек- ватный диапазон сетевой активности или неверны оценки роста объ- ема трафика, генерируемого новым приложением, получить реалистич- ное описание производительности невозможно. Необходимы не только точные данные, но и определенная подго- товка экспериментатора, понимание того, что означает программа моделирования и какие сценарии более жизнеспособны. Хотя инстру- ментальные средства являются графическими и с ними легко рабо- тать, эти средства не дают конкретных рекомендаций, например, как "выделить этот сегмент сети" или "уменьшить здесь длину кабеля". Средства моделирования способны показать, каким образом из- менения могут повлиять на производительность, но интерпретировать данные, разрабатывать план устранения "узких" мест и готовить сценарии для проверки этих планов должен администратор сети. . - 10 - ИНДЕКСЫ ПРОИЗВОДИТЕЛЬНОСТИ Наиболее широко распространенные классы количественных ин- дексов производительности для вычислительных систем перечислены в табл. 1. Из общих определений, данных в той же таблице, очевидно, что индексы продуктивности имеют размерность объем 7  0время 5-1 0, ин- дексы реактивности - размерность времени, а индексы использования безразмерны. В настоящее время не существует стандартизированного единого способа измерения объема, или количества информации, пе- реработанной системой. Таким образом, в зависимости от системы и от ее рабочей нагрузки будут использоваться различные меры объ- ема; среди наиболее распространенных можно назвать: задание, программу, процесс, шаг задания, задачу, сообщение, взаимодейс- твие (обмен сообщениями), команду. Перечислить все значения, при- писанные ранее и приписываемые ныне этим терминам в литературе по вычислительным системам, по-видимому, невозможно. Здесь мы только отметим, что все они до некоторой степени зависят от природы ра- бочей нагрузки, от языка, на котором программисты описывают свои алгоритмы для машины, от внутреннего языка машины и от способа организации системы. Таким образом, ни одна из этих мер не обла- дает свойством независимости от рабочей нагрузки и свойством не- зависимости от системы - это два свойства, необходимые для того, чтобы можно было установить некоторую меру объема информации в качестве универсальной. . - 11 - АНАЛИТИЧЕСКОЕ МОДЕЛИРОВАНИЕ НА ОСНОВЕ ТЕОРИИ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ ОБЩИЕ ПОЛОЖЕНИЯ При аналитическом моделировании исследование процессов или объектов заменяется построением их математических моделей и исс- ледованием этих моделей. В основу метода положены идентичность формы уравнений и однозначность соотношений между переменными в уравнениях, описывающих оригинал и модель. Поскольку события, происходящие в локальных вычислительных сетях, носят случайный характер, то для их изучения наиболее подходящими являются веро- ятностные математические модели теории массового обслуживания. Объектами исследования в теории массового обслуживания являются системы массового обслуживания (СМО) и сети массового обслужива- ния (СеМО). Системы массового обслуживания классифицируются по следующим признакам: - закону распределения входного потока заявок; - числу обслуживающих приборов; - закону распределения времени обслуживания в обслуживающих приборах; - числу мест в очереди; - дисциплине обслуживания. Для краткости записи при обозначении любой СМО принята сис- тема кодирования A/B/C/D/E, где на месте буквы ставятся соответс- твующие характеристики СМО: А - закон распределения интервалов времени между поступлени- ями заявок. Наиболее часто используются следующие законы распре- деления: экспоненциальное (М), эрланговское (Е), гиперэкспоненци- альное (Н), гамма-распределение (Г), детерминированное (D). Для обозначения произвольного характера распределения используется символ G; В - закон распределения времени обслуживания в приборах СМО. Здесь приняты такие же обозначения, как и для распределения ин- тервалов между поступлениями заявок; С - число обслуживающих приборов. Здесь приняты следующие обозначения: для одноканальных систем записывается 1, для много- канальных в общем случае - l (число каналов); D - число мест в очереди. Если число мест в очереди не огра- ничено, то данное обозначение может опускаться. Для конечного числа мест в очереди в общем случае приняты обозначения r или n (число мест); Е - дисциплина обслуживания. Наиболее часто используются следующие варианты дисциплины обслуживания: FIFO (первым пришел - первым вышел), LIFO (последним пришел - первым вышел), RANDOM (случайный порядок обслуживания) . При дисциплине обслуживания FIFO данное обозначение может опускаться. Примеры обозначений: М/М/1 - СМО с одним обслуживающим прибором, бесконечной оче- редью, экспоненциальными законами распределения интервалов време- ни между поступлениями заявок и времени обслуживания, дисциплиной - 12 - обслуживания FIFO; Е/Н/l/r/LIFO - СМО с несколькими обслуживающими приборами, конечной очередью, эрланговским законом распределения интервалов между поступлениями заявок, гиперэкспоненциальным распределением времени обслуживания в приборах, дисциплиной обслуживания LIFO; G/G/l - СМО с несколькими обслуживающими приборами, беско- нечной очередью, произвольными законами распределения времени между поступлениями заявок и времени обслуживания, дисциплиной обслуживания FIFO. Для моделирования ЛВС наиболее часто используются следующие типы СМО: 1) одноканальные СМО с ожиданием - представляют собой один обслуживающий прибор с бесконечной очередью. Данная СМО является наиболее распространенной при моделировании. С той или иной долей приближения с ее помощью можно моделировать практически любой узел ЛВС; 2) одноканальные СМО с потерями - представляют собой один обслуживающий прибор с конечным числом мест в очереди. Если число заявок превышает число мест в очереди, то лишние заявки теряются. Этот тип СМО может быть использован при моделировании каналов пе- редачи в ЛВС; 3) многоканальные СМО с ожиданием - представляют собой нес- колько параллельно работающих обслуживающих приборов с общей бес- конечной очередью. Данный тип СМО часто используется при модели- ровании групп абонентских терминалов ЛВС, работающих в диалоговом режиме; 4) многоканальные СМО с потерями - представляют собой нес- колько параллельно работающих обслуживающих приборов с общей оче- редью, число мест в которой ограничено. Эти СМО, как и однока- нальные с потерями, часто используются для моделирования каналов связи в ЛВС; 5) одноканальные СМО с групповым поступлением заявок - представляют собой один обслуживающий прибор с бесконечной оче- редью. Перед обслуживанием заявки группируются в пакеты по опре- деленному правилу; 6) одноканальные СМО с групповым обслуживанием заявок предс- тавляют собой один обслуживающий прибор с бесконечной очередью. Заявки обслуживаются пакетами, составляемыми по определенному правилу. Последние два типа СМО могут использоваться для модели- рования таких узлов ЛВС, как центры (узлы) коммутации. В таблице 2 приведены условные обозначения и схемы данных систем массового обслуживания. Локальная вычислительная сеть в целом может быть представле- на в виде сети массового обслуживания. Различают открытые, замк- нутые и смешанные сети.  1Открытой 0 называется сеть массового обслуживания, состоящая из М узлов, причем хотя бы в один из узлов сети поступает извне входящий поток заявок, и имеется сток заявок из сети. Для откры- тых сетей характерно то, что интенсивность поступления заявок в сеть не зависит от состояния сети, т.е. от числа заявок, уже пос- тупивших в сеть. Открытые сети используются для моделирования ЛВС, работающих в неоперативном режиме. Пример такой модели дан - 13 - на рис. 1. Здесь системы S1 и S2 моделируют работу узлов коммута- ции, системы S3 и S4 - работу серверов и системы S5 и S6 - работу межузловых каналов. В сети циркулируют два потока заявок. Каждая заявка поступает на вход соответствующего узла коммутации, где определяется место ее обработки. Затем заявка передается на "свой" сервер или по каналу связи - на "соседний" сервер, где об- рабатывается, после чего возвращается к источнику и покидает сеть.  1Замкнутой 0 называется сеть массового обслуживания с множест- вом узлов М без источника и стока, в которой циркулирует постоян- ное число заявок. Замкнутые СеМО используются для моделирования таких ЛВС, источниками информации для которых служат абонентские терминалы, работающие в диалоговом режиме. В этом случае каждая группа абонентских терминалов предтавляется в виде многоканальной системы массового обслуживания с ожиданием и включается в состав устройств сети. Различают простой и сложный режимы работы диалоговых абонен- тов. В простом режиме абоненты не производят никаких действий, кроме посылки заданий в ЛВС и обдумывания полученного ответа. Пример такой модели дан на рис. 2. Здесь системы S01 и S02 моде- лируют работу групп абонентских терминалов 1 и 2, системы S7 и S8 моделируют работу каналов связи с абонентами, системы S1 и S2 - работу узлов коммутации (моста), системы S3 и S4 - работу серве- ров и системы S5 и S6 - работу каналов межузловой связи. Абоненты с терминалов посылают запросы, которые по каналам связи поступают на узлы коммутации, а оттуда - на обработку на "свой" или ""со- седний" сервер. Дальнейшая обработка осуществляется так же, как в сети на рис. 1. При сложном режиме диалога работа абонентов представляется в виде совокупности операций некоего процесса, называемого  1техноло-  1гическим процессом 0. Каждая операция технологического процесса мо- делируется соответствующей СМО. Часть операций предусматривает обращение к ЛВС, а часть операций может такого обращения не пре- дусматривать. Пример моделирования ЛВС со сложной структурой диа- лога абонентов с помощью замкнутых СеМО дан на рис. 3. Здесь име- ются две группы абонентов, каждый абонент в процессе работы со- вершает несколько операций, причем часть из этих операций предус- матривает обращение к ЛВС. Алгоритм работы самой ЛВС такой же, как для сети на рис. 2.  1Смешанной 0 называется сеть массового обслуживания, в которой циркулирует несколько различных типов заявок (трафика), причем относительно одних типов заявок сеть замкнута, а относительно других типов заявок сеть открыта. С помощью смешанных СеМО моде- лируются такие ЛВС, часть абонентов которых работает в диалого- вом, а часть - в неоперативном режиме. Для диалоговых абонентов также различают простой и сложный режим работы. Часто смешанные СеМО моделируют ЛВС, в которых сервер дополнительно загружается задачами, решаемыми на фоне работы самой сети. Пример моделирования ЛВС с простым режимом работы диалоговых абонентов с помощью смешанных СеМО дан на рис. 4. Алгоритм работы сети для диалоговых абонентов аналогичен алгоритму работы сети на рис. 2, а алгоритм работы сети для неоперативных абонентов - ал- - 14 - горитму работы сети на рис. 1. Различают экспоненциальные и неэкспоненциальные модели ЛВС.  1Экспоненциальные модели 0 основаны на предположении о том, что по- токи заявок, поступающие в ЛВС, являются пуассоновскими, а время обслуживания в узлах ЛВС имеет экспоненциальное распределение. Для таких сетей получены точные методы для определения их харак- теристик; трудоемкость получения решения зависит в основном от размерности сети. Однако в большинстве сетей (и локальных сетей в частности) потоки не являются пуассоновскими. Модели таких сетей называются  1неэкспоненциальными 0. При анализе неэкспоненциальных сетей в общем случае отсутствуют точные решения, поэтому наибольшее применение здесь находят приближенные методы. Одним из таких методов является метод диффузионной аппрокси- мации. Использование диффузионной аппроксимации позволило, к нас- тоящему времени получить приближенные аналитические зависимости для определения характеристик всех типов СМО, рассмотренных выше. При этом не требуется точного знания функций распределения слу- чайных величин, связанных с данной СМО (интервалов между поступ- лениями заявок временем обслуживания в приборах), а достаточно только знание первого (математического ожидания) и второго (дис- персии или квадрата коэффициента вариации - ККВ) моментов этих величин. Применение диффузионной аппроксимации при анализе ЛВС осно- вано на следующем: 1) по каждому типу заявок вычисляется интенсивность поступ- ления заявок данного типа в узлы сети так, как если бы данный по- ток заявок циркулировал в сети только один; 2) по определенному правилу, зависящему от типа СМО и дис- циплины обслуживания, складываются потоки заявок от всех источни- ков; 3) по определенному правилу определяется среднее время обс- луживания в каждом узле ЛВС; 4) полученные значения подставляются в соответствующую диф- фузионную формулу и определяются характеристики узлов ЛВС; 5) определяются характеристики ЛВС в целом. Постановка задачи анализа ЛВС при этом примет следующий вид. Дано: число узлов ЛВС; тип каждого узла ЛВС (тип СМО, моделирующей данный узел); дисциплина обслуживания в каждом узле ЛВС; общее число типов источников заявок, работающих в диалоговом режиме; общее число типов источников заявок, работающих в неопера- тивном режиме; для диалоговых источников в случае сложного режима работы - число технологических процессов каждого типа, число операций в каждом технологическом процессе, среднее и ККВ времени выполнения каждой операции, матрица вероятностей передач между операциями, а также наличие или отсутствие на каждой операции обращения к ЛВС; для диалоговых источников в случае простого режима работы - число источников (терминалов) каждого типа, среднее и ККВ времени - 15 - реакции абонента на ответ сети; для неоперативных абонентов - средняя интенсивность поступ- ления заявок и ККВ времени между поступлениями заявок; по каждому типу заявок (диалоговому и неоперативному) - средняя интенсивность обслуживания в каждом узле ЛВС, ККВ времени обслуживания в узлах ЛВС и матрица вероятностей передач между уз- лами. Требуется найти: среднее значение и дисперсию (или стандартное отклонение) времени задержки заявки каждого типа в ЛВС в целом; среднее значение и дисперсию (или стандартное отклонение) времени задержки в узлах ЛВС; загрузку узлов ЛВС; вероятность потери заявки в узле ЛВС (для узлов, моделируе- мых СМО с потерями). Ограничения могут быть следующими: загрузка узлов не должна превышать 1; вероятность потери заявки не должна превышать 1; все характеристики должны быть положительны. Иногда представляет интерес определение такого показателя, как максимальное время задержки заявки каждого типа в ЛВС.  1Макси-  1мальное время 0 - это такое время, превышение которого допустимо лишь для некоторого, наперед заданного процента заявок каждого типа. Для определения максимального времени используется методи- ка, основанная на аппроксимации функции распределения времени за- держки в сети эрланговским или гиперэкспоненциальным распределе- нием, при этом необходимо задавать долю (процент) заявок, для ко- торых рассчитывается максимальное время. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА МОДЕЛИРОВАНИЯ Существует довольно значительное количество ППП, автоматизи- рующих процессы разработки и исследования аналитических моделей вычислительных систем и сетей. Рассмотрим один из них, достаточно простой и удобный в использовании, - ППП "ДИФАР". В основу его построения положены изложенные выше положения моделирования сис- тем и сетей массового обслуживания. Пакет ДИфАР предназначен для аналитического моделирования и оптимизации систем, сетей массового обслуживания и сетевых сис- тем. Он позволяет рассчитывать вероятностно-временные характерис- тики СМО, СеМО и сетевых систем, задавая в качестве параметров два момента входных потоков и обслуживания, что позволяет иссле- довать поведение систем в широком диапазоне изменений как средних значений, так и дисперсий потоков и обслуживания, а также найти оптимальное построение сетевых систем по значениям вероятност- но-временных характеристик (ВВХ), адекватных фактическим распре- делениям. Пакет ДИФАР обеспечивает расчет: - системных характеристик для одноканальных и многоканальных систем массового обслуживания без ограничений на емкости буферных накопителей (среднее значение и дисперсия времени пребывания, максимальное время пребывания для r процентов заявок, загрузка); - 16 - - системных характеристик для одноканальных и многоканальных систем массового обслуживания, учитывающих ограничения на емкости буферных накопителей (среднее значение и дисперсия времени пребы- вания, максимальное время пребывания для r процентов заявок, ве- роятность отказа в обслуживании, загрузка); - системных характеристик для одноканальных систем массового обслуживания с групповым поступлением заявок или групповым обслу- живанием заявок (среднее значение и дисперсия времени пребывания заявки, максимальное время пребывания для r процентов заявок, загрузка); - системных и сетевых характеристик открытых неоднородных сетей массового обслуживания с узлами различных типов (среднее значение и дисперсия времени пребывания в сети, максимальное вре- мя пребывания в сети для r процентов заявок, среднее значение и дисперсия времени пребывания в каждом узле сети, максимальное время пребывания в каждом узле для r процентов заявок, загрузка узлов сети, вероятности отказов в обслуживании в узлах); - системных и сетевых характеристик замкнутых и смешанных неоднородных сетей массового обслуживания с узлами различных ти- пов, с простым режимом работы диалоговых абонентов (среднее зна- чение и дисперсия времени пребывания в сети заявки каждого типа, максимальное время пребывания в сети для r процентов заявок каж- дого типа, среднее значение и дисперсия времени пребывания в каж- дом узле сети, загрузка узлов сети, вероятности отказов в обслу- живании в узлах); - системных и сетевых характеристик замкнутых и смешанных неоднородных сетей массового обслуживания с узлами различных ти- пов со сложным режимом работы диалоговых абонентов (среднее зна- чение и дисперсия времени цикла технологического процесса работы каждого диалогового абонента, максимальное время цикла для r про- центов технологических процессов каждого типа, среднее значение и дисперсия времени пребывания в сети заявки каждого типа, макси- мальное время пребывания в сети для r процентов заявок каждого типа, среднее значение и дисперсия времени пребывания в каждом узле сети, загрузка узлов сети, вероятности отказов в обслужива- нии в узлах); - показателей производительности сетевых систем, в качестве моделей которых используются открытые, замкнутые и смешанные сети массового обслуживания (локальные вычислительные сети, информаци- онно-вычислительные сети, центры коммутации пакетов и др.) . Пакет программ позволяет проводить анализ сетевых систем, включающих от 30 (замкнутые и смешанные сети со сложным режимом работы диалоговых абонентов) до 50 узлов СМО (открытые, замкнутые и смешанные сети с простым диалогом) на PC XT/AT с 512 Кбайтами оперативной памяти. Ниже приведены примеры моделирования некоторых локальных вы- числительных сетей. Результаты расчетов характеристик данных се- тей получены с помощью пакета ДИФАР. - 17 - ПРИМЕРЫ АНАЛИТИЧЕСКИХ МОДЕЛЕЙ ЛВС  2Пример 1 0. Рис. 5 иллюстрирует работу локальной сети с элект- ронной почтой на базе городской телефонной сети (модель с потеря- ми заявок). На вход каждого узла сети поступает поток заявок с некоторой интенсивностью. Системы S1 - S6 моделируют работу теле- фонных каналов. Если канал в требуемом направлении занят, то за- явка теряется. Исходные данные: Устройство Среднее время ККВ времени обслуживания обслуживания 1 7,69 с 2,0 2 7,69 с 2,0 3 7,69 с 2,0 4 7,69 с 2,0 5 7,69 с 2,0 6 7,69 с 2,0 Интенсивность поступления заявок от каждого источника - 0,3 з/с. Результаты расчета: среднее время задержки в сети - 15,0477 с; стандартное отклонение времени задержки в сети - 18,7703; максимальное время задержки в сети для 90% заявок - 35,2611 с. Характеристики устройств: Среднее время Стандартное от- Загрузка Вероятность задержки, с клонение времени потери задержки 1 7,69231 10,8786 0,451431 0,022396 2 7,69231 10,8786 0,451431 0,022396 3 7,69231 10,8786 0,451431 0,022396 4 7,69231 10,8786 0,451431 0,022396 5 7,69231 10,8786 0,451431 0,022396 6 7,69231 10,8786 0,451431 0,022396  2Пример 2. 0 Рис. 6 иллюстрирует работу локальной сети с элект- ронной почтой на телефонной сети (модель с ожиданием и без потерь заявок). Системы S1, S5, S9 моделируют работу передатчика инфор- мации (узла коммутации). Системы S2, S3, S6, S7, S10, S11 модели- руют задержку в каналах связи между соответствующими узлами. Сис- темы S4, S8, S12 моделируют работу приемника информации (ЭВМ). Принцип работы следующий. Абонент узла 1 готовит письмо, которое поступает на узел коммутации (система S1), где определяется адресат письма и осу- ществляется передача в нужном направлении. Если адресатом являет- ся абонент узла 2, то письмо передается по каналу S3, а если ад- ресат - абонент узла 3, то передача осуществляется по каналу S2. - 18 - В случае занятости канала передатчик ожидает его освобождения, после чего производит передачу. На приемном конце стоит персо- нальная ЭВМ с жестким магнитным диском, куда записывается полу- ченное письмо. Письма от абонентов других узлов передаются анало- гично. Исходные данные: Устройство Среднее время ККВ времени обслуживания обслуживания 1 12,000 с 0,5 2 3,410 с 2,0 3 3,410 с 2,0 4 0,016 с 2,0 5 12,000 с 0,5 б 3,410 с 2,0 7 3,410 с 2,0 8 0,016 с 2,0 9 12,000 с 0,5 10 З,410 с 2,0 11 3,410 с 2,0 12 0,016 с 2,0 Интенсивность поступления заявок от каждого источника - 0,04 з/с, Результаты расчета: среднее время задержки в сети - 33,1653 с; стандартное отклонение времени задержки в сети - 26,0897; максимальное время задержки в сети для 90% заявок - 67,1629 с. Характеристики устройств: Среднее время Стандартное от- Загрузка задержки, с клонение времени задержки 1 29,7505 25,6393 0,4819280 2 3,41322 1,82667 0,0013930 3 3,41322 1,82667 0,0013930 4 0,01600 0,00226 0,000001З 5 29,7505 25,6393 0,4819280 6 3,41322 1,82667 0,0013930 7 3,41322 1,82667 0,0013930 8 0,01600 0,00226 0,0000013 9 29,7505 25,6393 0,4819280 10 3,41322 1,82667 0,0013930 11 3,41322 1,82667 0,0013930 12 0,01600 0,00226 0,000001З  2Пример 3 0. Рис. 7 моделирует работу локальной сети по продаже билетов. Детально моделируется только работа одного абонентского пункта, потоки заявок от остальных пунктов сети представляются в - 19 - виде некоторого общего внешнего потока. Система S1 моделирует работу центрального процессора компь- ютера, установленного в пункте продажи билетов. Система S2 моде- лирует работу принтера данного компьютера. Система S3 моделирует задержку в канале передачи к серверу при посылке запроса на би- лет. Система S4 моделирует задержку в канале передачи от сервера на абонентский пункт при ответе на запрос. Система S5 моделирует работу сервера в центральном пункте сети. Принцип работы схемы следующий. Посетитель делает заказ на билет (операция 1). Оператор на- бирает запрос на клавиатуре и посылает его в центральную базу данных на сервер (операция 2). После получения ответа клиент при- нимает решение (операция 3). С вероятностью 0,1 требуемого билета нет, и клиент уходит. С вероятностью 0,3 требуемого билета нет, и клиент просит послать запрос на другой билет. С вероятностью 0,6 требуемый билет имеется, оператор посылает в базу данных заявку на этот билет и после получения ответа печатает билет на принтере (операция 4). Затем клиент расплачивается, проверяет билет и ухо- дит (операция 5). Работа остальных пунктов сети моделируется об- щим потоком со средней интенсивностью 100 з/мин, которые поступа- ют непосредственно на сервер. Исходные данные. Техпроцесс: Среднее время выпол- ККВ времени нения операции, мин выполнения операции 1 2,0 2,0 2 1,0 2,0 3 4,0 2,0 4 1,0 2,0 5 4,0 2,0 Локальная сеть: Среднее время обслужи- ККВ времени обслужи- вания в устройстве, мин вания в устройстве 1 0,1000 2,0 2 0,1500 2,0 3 0,0220 2,0 4 0,0022 2,0 5 0,0001 2,0 Результаты расчета. Характеристика техпроцесса: Среднее время цикла - 11,4027 мин Стандартное отклонение времени цикла - 8,8591 Максимальное время цикла для 90% случаев) - 22,9642 мин - 20 - Характеристики запроса 1: Среднее время задержки в сети - 0,245675 мин Стандартное отклонение задержки - 0,284096 Максимальное время задержки (для 90% случаев) - 0,574786 мин Характеристики запроса 2: Среднее время задержки в сети - 0,361328 мин Стандартное отклонение задержки - 0,497105 Максимальное время задержки (для 90% случаев) - 0,839882 мин Характеристики устройств: Среднее время Стандартное от- Загрузка задержки, мин клонение времени задержки 1 0,109870 0,146328 0,0311816 2 0,257241 0,357637 0,0073082 3 0,022222 0,003143 0,0000282 4 0,002222 0,031427 0,0002815 5 0,001488 0,001718 0,1001267 . ЛИТЕРАТУРА 1. Локальные вычислительные сети. Книги 1-3. Под ред. Назарова С.В. Москва "Финансы и статистика" 1995 2. Д. Феррари. Оценка производительности вычислительных систем. Москва "Мир" 1981 3. Максименков А.В., Селезнев М.Л. Основы проектирования информационно-вычислительных систем и сетей ЭВМ. Москва "Радио и связь" 1991