Реферат: Оптимальное управление вычислениями в распределенных вычислительных системах на основе графа потоков данных

Введение

            Параллельныйкомпьютер – это набор процессоров, которые могут работать совместно для решениявычислительных задач. Это определение достаточно общее, чтобы охватить ипараллельные суперкомпьютеры с сотнями или тысячами процессоров, сетиперсональных ЭВМ, многопроцессорные рабочие станции, и другие параллельныесистемы. Параллельные компьютеры интересны тем, что они позволяютконцентрировать большие вычислительные ресурсы для решения важныхвычислительных задач. Параллелизм совсем недавно был экзотической областьюкомпьютерной науки, интересной, но очень далёкой для рядового программиста.Сегодняшнее направление развития приложений, архитектуры компьютеров и сетейпоказывает, что теперь это не так. Паралеллизм становится вездесущим, ипараллельное программирование становится центральным звеном при разработкепрограмм.

            Традиционно,достижения в области высокопроизводительных вычислений мотивировалось задачамичисленного моделирования сложных систем, таких как погода, климат, маханическиеустройства, электронные схемы, производственные процессы и химические реакции.Однако, наиболее влиятельной движущей силой разработки более быстрыхкомпьютеров на сегодняшний день является потребность в коммерческихприложениях, которые требуют от компьютера возможности обработки большихобъёмов данных изощрёнными способами. В число таких приложений входят видеоконференции, совместная среда разработки, компьютерное диагностирование вмедицине, параллельные базы данных со средствами поддержки принятия решений,продвинутая графика и виртуальная реальность, особенно в индустрии развлечений.Но несмотря на то, коммерческие приложения может определять архитектуру большинствабудущих параллельных компьютеров, традиционные научные приложения останутсяважными потребителями технологии параллельных вычислений.

            Производительностьнаиболее быстрых компьютеров растёт экспоненциально с 1945 до наших дней, всреднем в 10 раз каждые пять лет. Нет сомнений, что этот рост будетпродолжаться. Однако, для обеспечения этого роста архитектура компьютероврадикально меняется – от последовательной к параллельной.

            Важнойтенденцией, меняющей лицо компьютеров, является огромное возрастание возможностейкомпьютерных сетей. Лишь недавно, высокоскоростные сети работали на скорости 10Mbitв секунду; в конце 90-х пропускнаяспособность в 100 и 1000 Mbitв секунду стала обычнымделом. Значительно возрасла и их надёжность. Эти достижения позволяют разрабатыватьприложения, использующие процессоры на множестве удалённых компьютеров. Этаобласть параллельных вычислений называется распределённые вычисления.Основной задачей разработки программ, которые могут работать на множествекомпьютеров одновременно, всё таки является задача параллельных вычислений. Вэтом отношении, два разных слова, параллельный и распределённый, сходятся.

            Данныйкороткий обзор тенденций развития приложений, архитектуры и сетей наводит намысль, что параллелизм охватывает не только суперкомпьютеры, но и рабочиестанции, персональные компьютеры и сети. Поставщики традиционных коммерческих суперкомпьютеров (SMP, MPP, параллельныхвекторных) достаточно быстро улучшают производительность, надежность и простотуиспользования своих продуктов. Однако у этих компьютеров есть один большойнедостаток — цена, подчас недоступная для многих образовательных инаучно-исследовательских организаций. Однако потребность в вычислительныхресурсах у этих организаций велика.  Следуетиметь в виду, что производительность персональных компьютеров на базепроцессоров Intel в последние годы также значительно выросла. Такие компьютерыстали создавать серьезную конкуренцию рабочим станциям на базе RISC, особеннопо показателю цена/производительность. Одновременно стала приобретать всебольшую популярность многозадачнаые ОС Windows95, NT.  

Возникла идеясоздавать параллельные вычислительные системы (кластеры) из общедоступныхкомпьютеров на базе Intel и недорогих Ethernet-сетей. Оказалось, что на многихклассах задач и при достаточном числе узлов такие системы даютпроизводительность, сравнимую с суперкомпьютерной.

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

Модель параллельногокомпьютера состоит из некоторого числа вычислительных машин фон Ньюмана. Модельмашины фон Ньюмана включает в себя центральный процессор (CentralProcessingUnit), соединённый с блоком памяти. Процессорвыполняет программу, которая представляет собой последовательность операцийчтения/записи над <img src="/cache/referats/11318/image002.jpg" v:shapes="_x0000_s1026">
памяти. Эта простая модельобосновалась довольно прочно в течение последних 45 лет. Все вычислительныемашины соединены сетью.

Каждая машинавыполняет свою собственную программу, которая может обращаться к локальнойпамяти, посылать и принимать данные по межмашинной сети. Понятие локальности –третье фундаментальное требование к параллельной программе, в дополнение кпараллелизму и масштабируемости. Его важность зависит от отношения ценыудалённого доступа к цене локального даступа к данным. Это отношение варьируетсяот 10:1 до 1000:1 в зависимости от относительной производительности локальногокомпьютера, сети, и механизма, используемого для передачи и приёма данных черезсеть. Эта идеализированная модель достаточно хорошо согласуется с реальнойархитектурой параллельного компьютера, в качестве которой выбрана локальнаясеть компьютеров. Локальная сеть характеризуется высокой ценой удалённогодоступа. Ethernetи ATMявляются наиболеераспространёнными сетевыми технологиями на сегодняшний день. Для сети FastEthernet100Mbitsотношение времён удалённого и локального доступа в некоторых случаяхприближается к 10:1, что почти не сказывается на эффективности параллельныхалгоритмов. Что касается ЭВМ с многозадачной операционной системой, то онатакже подходит под модель фон Ньюмана, т.к. центральный процессор простоработает в режиме разделения времени. В работе приводится соответствующаяматематическая интерпретация данного факта.

Основуматематической модели параллельного алгоритма составляет граф потоков данных(ГПД). В потоковой модели параллельная программа представляется наборомвычислительных узлов-подзадач (далее задач), которые имеют фиксированноеколичество информационных входов и выходов. Узлы выполняют одни и те жеоперации с разной поступающей на входы информацией, и выдают результаты на своивыходы, также в виде числовой информации. Эти входы и выходы называются,соответственно, входными и выходными портами. Таким образом, вычислительныеузлы строго периодичны. Узлы соединены между собой каналами передачи информации,выходные порты со входными. В реальной системе узлы представляются программами,а каналы – потоками байтов данных.

<img src="/cache/referats/11318/image004.jpg" v:shapes="_x0000_s1027">
Две эти абстракции – задача и канал– достаточно хорошо отвечают требованиям модели параллельного программирования:механизм, позволяющий ясно выразить параллелизм и облегчить разработкумасштабируемых и модульных программ, абстракции, с которыми легко работать, икоторые соответствуют архитектурной модели параллельного компьютера.

Данная модель характеризуется следующимисвойствами:

1.<span Times New Roman"">   

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

2.<span Times New Roman"">   

Задача- это последовательная программа с локальными данными. Задача имеет входные ивыходные порты, которые служат интерфейсом к среде процесса.

3.<span Times New Roman"">   

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

4.<span Times New Roman"">   

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

5.<span Times New Roman"">   

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

6.<span Times New Roman"">   

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

Рассмотрим некоторые другие свойства моделизадача/канал: производительность, независимость от распределения, модульность идетерминизм.

Производительность.Абстракции последовательногопрограммирования, такие как процедуры и структуры данных, эффективны потому,что они могут просто и рационально отображаться на вычислительную машину фонНьюмана. Задача и канал производят тот же эффект по отношению к параллельномукомпьютеру. Задача представляет собой кусок кода, который может выполнятьсяпоследовательно, на одном процессоре. Если две задачи, обменивающиеся данными,распределены на разные процессоры, то канал связи между ними воспроизводитсякак межпроцессорное взаимодействие; а если на один процессор, то можетиспользоваться более быстрый механизм.

Независимость от распределения.Так как задачи взаимодействуют используяодин и тот же механизм (каналы) независимо от их расположения, результатвыполнения программы не зависит от того, где задачи выполняются. Следовательно,процесс проектирования и реализации алгоритмов может не касаться количествапроцессоров, на которых алгоритм будет выполняться; фактически, большинствореализаций алгоритмов состоят из намного большего числа задач, чем процессоров.Это прямая предпосылка к масштабируемости.

Модульность.В модульном программировании, различныекомпоненты программы разрабатываются поотдельности, как независимые модули,затем они собъединяются для получения полной программы. Взаимодействия междумодулями ограничены хорошо продуманными интерфейсами. Т.о. модульностьуменьшает сложность программ и облегчает повторное использование отлаженногокода. Задача является естественным строительным блоком. Задача инкапсулируетданные и код, который работает с этими данными; порты, через которые онапосылает и принимает данные, составляют её интерфейс. Более того, в качестве модуляможно использовать более сложную структуру, реализующую какой-то алгоритм, икоторый имеет свой интерфейс. Определённое сходство существует и собъектно-ориентированной парадигмой программирования.

Детерминизм. Алгоритм или программа детерминирована, когдавыполнение с определёнными входными данными всегда приводит к одним и тем жерезультатам. Попарные взаимодейтсвия в модели задача/канал позволяетотносительно легко гарантировать детерминизм. Каждый канал соединяет толькоодного отправителя и одного принимающего, и принимающая задача блокируется покане закончится операция приёма. Эти условия ослабляются тем, что в один и тот жевходной порт могут передаваться данный по разным каналам, т.е. от разныхпосылающих задач, но при этом формат данных должен быть один и тот же. Операцияпосылки данных в порт также может блокироваться, если принимающая задача, надругом конце канала, не успевает принимать и обрабатывать данные.

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

Передача сообщений.В иностранной литературе её называют MessagePassingInterface(MPI). Возможно, сегодня это самая популярная модель параллельногопрограммирования. Как и в модели задача/канал, MPIпрограммы состоят из множества задач, каждая из которых инкапсулируетлокальные данные. Каждая задача имеет своё уникальное имя, и модет посылать ипринимать сообщения от другой задачи путём указания её имени. В этом отношении,MPIпросто вариация модели задача/канал – вместооперации «послать в канал», используется операция «послатьзадаче X». MPIне препядствует динамическому созданию задач, выполнению несколькихзадач на одном процессоре или выполнение разных программ одними и теми жезадачами. Но на практике большинство MPIсистем создаютфиксированное количество задач при запуске программы, и не позволяют создание иуничтожение задач во время выполнения программы. Эти системы реализуют модельтипа «одна программа много данных» (SingleProgramMultipleData), так как каждая задача выполняет одни и теже действия над разными поступающими данными. Это сильно перекликается спотоковой моделью параллельного программирования.

Паралеллизм данных.Паралеллизм в данной модели используетсятогда, когда одна операция применяется к нескольким элементам структуры данных,например, «добавить число ко всем элементам массива». Т.о. программасостоит из последовательности подобных операторов. Так как каждый элементданных можно интерпретировать как независимую задачу, присущая гранулярность вычислениймала, и понятие «локальности» не очевидно. Следовательно,специализированные компиляторы часто требуют от программиста информацию о том,как данные распределяются между процессорами, другими словами, как данныедолжны разбиваться на задачи. Далее компилятор транслирует программу в SPMDформулировку, генерируя коммуникационный код автоматически.

Разделяемая память.В модели разделяемой памяти задачииспользуют общее адресное пространство для асинхронного чтения и записи.Различные механизмы, такие как замки и семафоры, могут регулировать доступ кразделяемой памяти. Преимуществом данной модели для программиста яаляется то,что не нужно явно указывать источник и приёмник данных, эта модель может сильноупростить программирование. Однако, затрудняется понимание и управление обменомданных, а также затрудняется написание детерминированииых программ.

Далее приводится несколько типичных примеровпараллельных алгоритмов. Все они описываются в терминах модели потоков данных.

Конечные разности.

            <img src="/cache/referats/11318/image005.gif" v:shapes="_x0000_s1028">

            Рассматриваетсяодномерная конечноразностная задача, в которой имеем вектор X(0)размерности Nи должны вычислить вектор X(T), где

Т.о. мы должны периодически обновлять каждыйэлемент <img src="/cache/referats/11318/image007.gif" v:shapes="_x0000_s1029">
X,так чтобы на t+1шагеобновление происходило только после того, как над соседними элементамивыполнится шаг t. ГПД данного алгоритма состоит из Nзадач, по одной на каждый элемент X. i-тая задачаполучает значение Xi(0) и вычисляет, за Tшагов, значения Xi(1), Xi(2), … Xi(T). Значит, на шаге t, она должна получить значения Xi-1(t)и Xi+1(t)от задач i-1и i+1. Каждаязадача i, за исключением 0-й и N-1-й, имеет по паре разнонаправленных левых (left) и правых (right) портов, как показано на рисунке, и накаждой итерации tвыполняет следующие действия:

1)<span Times New Roman"">   

посылаетданные Xi(t)в свои левый и правые выходные порты;

2)<span Times New Roman"">   

принимаетот своих Xi-1(t)и Xi+1(t)левого и правого соседа;

3)<span Times New Roman"">   

используетполученные значения для вычисления Xi(t+1).

Заметим, что Nзадач могут выполняться независимо, с одним лишь ограничением на порядоквыполнения, определяемом синхронизацией посредством операций приёма.Следовательно, выполнение детерминировано.

Попарные взаимодействия.

<img src="/cache/referats/11318/image008.gif" v:shapes="_x0000_s1030">
           

            Вданном примере используется похожая структура ГПД как в примере с конечнымиразностями, но требуется более сложный алгоритм обмена данных. Многие задачитребуют вычисление всех N(N-1)попарных взаимодействий I(Xi, Xj)между NвекторамиXo,X1,…XN-1. В случае, когда взаимодействия симметричны,

I(Xi, Xj)= ±I(Xi, Xj),и требуется вычислить только N(N-1) / 2взаимодействий. Например, в молекулярной динамике требуется вычислитьсуммарный вектор сил воздействующих на атом Xi, определённый как:

<img src="/cache/referats/11318/image010.gif" v:shapes="_x0000_s1031">
F(Xi, Xj)означает взаимное притяжение илиотталкивание между атомами Xiи Xj; в данном случае, F(Xi, Xj)= — F(Xi, Xj), взаимодействия симметричны.

            Простойпараллельный алгоритм для общей задачи попарных взаимодействий состоит из Nзадач. Задача iполучает значение Xiи вычисляет набор { I(Xi, Xj) | i¹j}. Сначала можно подумать, так как задача требуетинформацию от каждой другой задачи, для этого должно быть создано N(N-1)каналов. Однако, более экономичная структура ГПД использует только Nканалов.Они соединяют все задачи в однонаправленное кольцо, так что каждая задача имеетпо одному входному и выходному порту. Каждая задача сначала инициализируетбуфер (для хранения локальной переменной) и аккуммулятор, в котором будетсодержаться результат вычислений. Затем задача периодически:

1)<span Times New Roman"">   

посылает значение из буфера в свойвыходной порт;

2)<span Times New Roman"">   

принимает значение из входногопорта и записывает его в буфер;

3)<span Times New Roman"">   

вычисляетфункцию взаимодействия между принятым и локальным значением;

4)<span Times New Roman"">   

используетвычисленное значение для обновления локального аккумулятора.

Этот цикл посылки-приёма-вычисленияповторяется N-1раз, осуществляяперемещение по кольцу всех Nзначений Xi. Каждая задача видит их всех и способнавычислить все

N-1взаимодействия. Алгоритм выполняет N-1операцию на каждую задачу.

            Если взаимодействия симметричны, томожно уменьшить в два раза количество вычислений и обменов данных путёмулучшения структуры ГПД. Предположим для простоты, что Nчетно.Добавляется дополнительные Nканалов, соединяющих каждую задачу сзадачей, расположенной через [N/ 2]по кольцу. Каждый раз, когда вычисляется I(Xi, Xj)между локальным Xiи принятым Xj, вычисленное значение не толькосуммируется в аккумуляторе для Xi,но и в другом аккумуляторе, который является противоположным с Xj. После [N/ 2]итерацийаккумуляторы, ассоциированные со своими противоположными значениями,возвратятся в свои начальные задачи через новые каналы и обхединятся слокальными аккумуляторами. Следовательно, каждое симметричное взаимодействиевычислится только раз: либо как

I(Xi, Xj)на вершине содержащей Xi,либо I(Xj, Xi)на вершине содержащей Xj.

Параметрическое исследование

В случае, когда множество задач можетработать независимо и без взаимодействия друг с другом, степень паралеллизмапринимает предельное значение. Примером подобного паралеллизма может послужить,так называемое параметрическое исследование, в котором одни и те же вычислениядолжны быть проведены для набора различных входных параметров. Значенияпараметров могут считываться из входногофайла, а результаты записываться ввыходной файл.

<img src="/cache/referats/11318/image011.gif" v:shapes="_x0000_s1032">

Если время выполнения одинаково и процессорыидентичны, то достаточно разпределить задачи по ровну на каждый процессор. Вдругой ситуации, можно выбрать структуру ГПД показанную на рисунке. Задачи I(входная) и O(выходная) должнысчитывать и записывать входной и выходной файл, соответственно. Каждая рабочаязадача Wпериодическизапрашивает значения параметров от задачи I, вычисляет используя их, а затем отсылаетрезультаты задаче O. Так каквремя выполнения варьируется, входная и выходная задачи не могут расчитвать направильный порядок поступления сообщений от рабочих задач. Используетсясоединение типа много-к-одному. Возможный в этом случае недетерминизм влияетвсего лишь на порядок записи результатов в выходной файл, но не на самивычисляемые результаты.

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

В данной работе

Формулируется модель параллельной программы,называемая потоковой, на основе графа потоков данных. Она основывается наинтенсивностях трафика в каналах обмена данных между задачами.

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

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

В потоковых моделяхделается неявное предположение, что статистика трафика в дугах ГПД, а такжезагруженность задач и процессов, не меняется во времени. Такое допущениеразумно, когда эта статистика меняется очень медленно по сравнению со среднимвременем, необходимым для перераспределения задач, т.е. перехода к другойконфигурации, и когда потоки измеряются путём временного усреднения.

<span Arial",«sans-serif»; mso-fareast-font-family:Batang;mso-font-kerning:14.0pt;mso-ansi-language:RU; mso-fareast-language:KO;mso-bidi-language:AR-SA">
Постановка задачи1.<span Times New Roman"">   

Задан набор идентичных процессоров:

P = { P1, P2, … PN }

Между любыми процессорами Piи Pj(i¹j) существует общий канал связи. Если объем передаваемыхданных в единицу времени между Piи Pjравен fij,тогда ограничение на пропускную способность сети выражается как:

<img src="/cache/referats/11318/image013.gif" v:shapes="_x0000_s1033">
, где fij– максимальная пропускная способность сети.

2.<span Times New Roman"">   

Под вычислительной задачейпонимается последовательная программа, которая может выполняться на любом изпроцессоров сети. Она реализует какую-либо фиксированную операцию:вычислительный процесс, загрузку данных, вывод на экран и т.п. Назовем этупрограмму задачей.

Задача zимеет наборы входных и выходных портов, посредством которых она получаетвходные данные и выдает результаты своей работы, соответственно. Задача можетне иметь входных портов, когда она является стартовой.При этом она должна иметь хотя бы один выходной порт. Но обратное неверно –признак стартовой задачи может иметь и задача с входными портами. А если задачане имеет выходных портов, то она является завершающейили замыкающей. При этом она должнаиметь хотя бы один входной порт. Стартовые задачи обычно осуществляют загрузкувходных данных из файлов или запрашивая их у пользователя, либо самостоятельногенерируя их. Замыкающие задачи, как правило сохраняют результаты работыпараллельного алгоритма в файл или выводят их на экран. Но, вообще, содержаниезадач не играет большой роли в данной модели, – это предоставляется решатьпрограммисту параллельного алгоритма. Роль генераторов данных и интерпретациирезультатов может выполнять любая из задач. В программе обязательно должна бытьхотя бы одна стартовая задача, но может совсем не быть замыкающих. Параллельныйалгоритм завершается, если завершены все задачи, помеченые признаком стартовая. С другой стороны завершитьвыполнение параллельного алгоритма можно прерыванием выполнения всех задач.

<img src="/cache/referats/11318/image015.jpg" v:shapes="_x0000_s1034">
Входные и выходные данные представляются порциями определенного размера.Рассмотрим задачу с несколькими входными и выходными портами. Схематическоеизображение задачи показано на рисунке. В момент, когда поступают порции данныхво все входные порты, задача приступает к их обработке. Пусть это будеткакой-то вычислительный процесс. После окончания вычислений, их результатынаправляются в соответствующие выходные порты, также в виде порций данныхопределенного размера.

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

(2.1)

<img src="/cache/referats/11318/image017.gif" v:shapes="_x0000_s1036"> <img src="/cache/referats/11318/image018.gif" v:shapes="_x0000_s1035">
            Рассмотрим математическиесоотношения для модели простой вычислительной задачи – с единственным входным ивыходным портом. Пусть входные порции данных поступают в моменты времени { ti} и имеют объем вбайтах { Mi}, i= 0, 1, 2, …. Время обработки i-той порции данных  ti. Последовательность{ qi} представляет собой интервалы поступления входных данных.Заметим, что

(2.2)

<img src="/cache/referats/11318/image020.gif" v:shapes="_x0000_s1038"> <img src="/cache/referats/11318/image021.gif" v:shapes="_x0000_s1037">
так как в модели предполагается, что данные не могут накапливаться во входномбуфере, и это соответствует реальному программному механизму передачи данных.

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

ti

ti

qi

ti+1

<img src="/cache/referats/11318/image022.gif" v:shapes="_x0000_s1039 _x0000_s1040 _x0000_s1041 _x0000_s1042 _x0000_s1043 _x0000_s1044 _x0000_s1045 _x0000_s1046 _x0000_s1047 _x0000_s1048 _x0000_s1049 _x0000_s1050">
показана на рисунке.

(2.3)

<img src="/cache/referats/11318/image024.gif" v:shapes="_x0000_s1052"> <img src="/cache/referats/11318/image025.gif" v:shapes="_x0000_s1051">
            Процесс обмена по каналуданных характеризуется скоростью обмена или потокомF, который определяется следующими соотношениями:

(2.4)

<img src="/cache/referats/11318/image027.gif" v:shapes="_x0000_s1054"> <img src="/cache/referats/11318/image028.gif" v:shapes="_x0000_s1053">

<img src="/cache/referats/11318/image030.gif" v:shapes="_x0000_s1055">
, где Fi – мгновенный поток в момент времени ti, F – средний поток на интервале [t0, tk);

(2.5)

(2.6)

еще рефераты
Еще работы по компьютерным сетям