Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 700108.doc
Скачиваний:
6
Добавлен:
01.05.2022
Размер:
629.25 Кб
Скачать

2.4.2. Выбор пропускных способностей

Увеличение пропускных способностей уменьшает среднюю задержку в сети, но увеличивает стоимость, и это является основной особен­ностью задачи оптимизации. Для каждой линии имеется зависимость между ее стоимостью (зависящей также от длины) и пропускной спо­собностью С. Для каждого канала i имеем поток i; Ci- пропускная способность этого канала, а diCi - его стоимость. Предположим так­же, что задержка в сети зависит только от полного потока в кана­лах. Величины i и di считаются заданными, а Ci необходимо найти.

Определение средней задержки T требует анализа сложной систе­мы массового обслуживания. Для получения простой формулы для T де­лается ряд предположений. Во-первых, все очереди связываются с ли­ниями, выходящими из узла. С каждой i-й линией сопоставляется средняя задержка на этой линии. Пусть  - общий трафик в сети. Тогда среднее число пакетов, находящихся в сети, есть T (T - средняя задержка пакета). С другой стороны, число пакетов в каждой очереди из тех же соображений есть iTi, откуда T= iTi.

Поскольку время обслуживания пропорционально длине пакета, необходимо ввести еще один параметр m, характеризующий среднюю длину пакета. В очередь на передачу поступают как пакеты, пришед­шие из других линий, так и вновь поступившие в сеть. Эти потоки пакетов вышли из разных очередей, и поэтому интервалы между по­ступлениями отдельных пакетов распределены по весьма сложному за­кону. Если очереди представить с помощью СМО М/М/1 (что оправдыва­ется на практике) и учесть формулу для средней задержки в этой системе Ti=1/(Ci-i), то для средней задержки во всей сети, кото­рую необходимо минимизировать, получаем:

T=(i/)[1/(Ci-i )].

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

Поиск минимума времени T и соответствующих ему значений Ci осуществляется с помощью метода неопределенных множителей Лагран­жа. Распределение пропускных способностей каналов, получающихся из уравнений, оказывается равным

Ci=i/+k .

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

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

2.4.3. Метод девиации потока

Предположим теперь, что пропускные способности каналов из­вестны и требуется найти оптимальное распределение потоков в се­ти. Сначала необходимо рассмотреть распределение потоков и те ог­раничения, которым оно должно удовлетворять. Поток в канале li состоит из пакетов, идущих от множества источников ко множеству адресатов. Поскольку матрица требований определяет график, который должен идти от каждого источника s ко всем адресатам t, нужно ука­зать распределение потоков по всей сети для каждого из (s,t) типов пакетов. Следовательно, для каждого канала необходимо найти инди­видуальные потоки f(s,t,i), а полный поток в канале i есть сумма индивидуальных потоков f(s,t,i) от всех пар источник - адресат (s,t), протекающих через этот канал. Это трехпараметрическое пространство неотрицательных величин назовем "потоком" и будем обозначать символом f. Заметим, что индексы s и t пробегают мно­жество узлов сети, а индекс i - множество ее каналов.

Поток f удовлетворяет двум видам ограничений, накладываемых матрицей требований и пропускными способностями каналов связи. Для каждого узла сети можно написать уравнение сохранения для каждого класса пакетов. Эти уравнения представляют собой линейные ограни­чения, в которых для каждого s и t разность между входящими и вы­ходящими из выделенного узла потоками равна нулю (с учетом паке­тов, поступающих извне и покидающих ее).

Если имеются два потока f1 и f2, удовлетворяющие всем ограни­чениям, то на их основании можно вычислить третий поток, также удовлетворяющий этим ограничениям, а именно, f1+(1-)f2, где 01. Допустимые потоки образуют выпуклое множество, вершины ко­торого (экстремальные потоки) представляют особый интерес.

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

Ключевым моментом метода девиации потоков является способ оп­ределения "направления" отклонения потока. Для этого каждому кана­лу приписывается величина T/i=Ci/(Ci-ii)2, которая может считаться "весом" этого канала. Эта величина характеризует влияние малого изменения потока в канале на среднюю задержку, т.е. "сопро­тивление" увеличению потока. Затем определяется экстремальный по­ток f1, обладающий минимальным весом при заданном выборе весов. Если e1 является начальным потоком, а e2 - потоком, указывающим направление отклонения потока из e1, то для определения величины отклонения необходимо исследовать все точки e1+(1-)e2, где 01.

Поток f1, который минимизирует T, является наилучшим решени­ем, достижимым на первом шаге алгоритма девиации потока. На следу­ющем шаге частные производные от T и экстремальный поток пересчи­тываются уже относительно точки f2. Процесс продолжается до тех пор, пока изменения T не станут достаточно малыми.

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

Таким образом, последовательно увеличивая требования и опти­мизируя поток, или получим допустимый поток с первоначальной мат­рицей требований, если такой поток существует, или придется отка­заться от попыток его получить.