Централизованный метод балансировки нагрузки в низкоорбитальной спутниковой системе
Ключевые слова: спутниковые системы, низкая земная орбита, балансировка нагрузки, многопутевая маршрутизация, прогнозирование.
Предложен централизованный метод балансировки нагрузки в низкоорбитальной спутниковой системе (НСС). Балансировка нагрузки—это процесс распределения потоков данных по сети с целью обеспечения равномерной загрузки линий, что приводит к повышению пропускной способности сети и улучшению скоростных и временных показателей д оставки потоков. В пред ложенном методе балансировка нагрузки реализуется многопутевой маршрутизацией, суть которой в передаче одного информационного потока по множеству маршрутов в определенных пропорциях. Согласно предложенному методу время разбито на временные отрезки. В течение временных отрезков спутники оценивают статистические свойства потоков данных. Спутники отправляют оценки на центральную земную станцию (ЦЗС). На основе истории оценок свойств потоков данных за предыдущие отрезки времени ЦЗС прогнозирует свойства потоков на следующий временной отрезок. Затем ЦЗС берет набор маршрутов и рассчитывает на основе ожидаемых свойств потоков данных пропорции распределения потоков данных по маршрутам на следующий временной отрезок. ЦЗС передает спутникам наборы маршрутов и пропорции распределения потоков данных. Спутники используют их в следующем временном отрезке. Имитационное моделирование показало, что метод обеспечивает низкую вероятность отбрасывания пакетов. Предложенный метод создан для НСС с межспутниковыми линиями, но может применяться и для других сетей с постоянной или предсказуемой динамической топологией.
Иванов В.И.,
Введение
В низкоорбитальных спутниковых системах (НСС) из-за неравномерного распределения абонентов по поверхности земли возникает проблема балансировки нагрузки. В спутниковых системах связи (ССС) преобладают распределенные методы балансировки нагрузки. В распределенных методах балансировки нагрузки спутники узнают о перегрузке линий. Если линия сильно загружена или уже перегружена, то спутник по определенному алгоритму без взаимодействия с другими спутниками при принятии решения или, взаимодействуя только с небольшой группой соседних спутников, уменьшает скорость передачи своих потоков данных через линию, либо перенаправляет поток данных по другому маршруту в обход линии.
Недостаток распределенных алгоритмов в том, что спутники действуют не согласованно при принятии решений о распределении потоков данных и, исходя из неполной информации о состоянии линий спутниковой системы. Централизованные алгоритмы напротив используют всю доступную информацию о состоянии линий и либо все расчеты может проводить центральная земная станция (ЦЗС), либо спутники согласованно рассчитывают распределение потоков данных по линиям, т.е. находят решение проблемы балансировки нагрузки. В литературе мало освещен вопрос централизованных алгоритмов для ССС, поэтому в данной работе предлагается новый централизованный алгоритм балансировки нагрузки для НСС.
Рассмотрим принцип действия метода и результаты моделирования.
Принцип действия
Пусть в низкоорбитальной спутниковой системе используется многопутевая маршрутизация. Один спутник передает поток данных другому спутнику, распределяя
весь поток по множеству маршрутов в определенных пропорциях.
Приведем формулировку проблемы балансировки нагрузки. Дана низкоорбитальная спутниковая система. Спутниковую систему представим в виде графа С = (5, Ь, С, У), где 5 — совокупность спутников, /. — совокупность линий, С - совокупность значений емкости каждой линии, V - совокупность значений объема буфера каждой линии.
Потоки данных в спутниковой системе образуются объединением потоков данных между парами терминал-источник и терминал-получатель. Назовем эти потоки данных элементарными. Терминал-источник заменим на спутник-источник, который является спутником, к которому подключен терминал-источник, и то же сделаем с терминалом-получателем. Элементарные потоки данных с одинаковым спутником-источником и спутником-отправителем объединим в один агрегированный поток данных. В результате потоки данных в спутниковой системе представляются совокупностью агрегированных потоков данных между всеми парами спутников.
Дано множество агрегированных потоков
^ ~ »/!»}' е ^ между всеми парами спутников. По-
ток данных между спутником / и спутником У представляется набором параметров /у = (>., о. Я), где А. - средняя интенсивность потока данных, — среднеквадратическое отклонение, Н - параметр Херста. Причина, по которой выбраны эти параметры, следующая.
В сетях, которые предоставляют спектр современных услуг связи (интернет, голосовая и видеосвязь, потоковое мультимедиа, электронная почта, передача файлов и т.д.), статистические свойства агрегированных потоков данных от множества пользователей описываются самоподобными процессами. Таким образом, если рассматривать спутниковую систему, которая предоставляет современные услуги связи, то агрегированные потоки данных между спутниками обязательно будут самоподобными.
Отсюда следует, что необходимо учитывать статистические свойства самоподобных потоков данных. Хоро-
шей аппроксимацией самоподобных потоков данных в реальных сетях является модель фрактального броуновского потока данных [1][2][3]:
£&) = А* I оВн СО.
(1)
(2)
Зададим вектор пропорций 11 ...Г«К0,
2 **</*» 1
гИкегИ . Вектор пропорций Гу определяет распре-
деление потока данных /у по множеству маршрутов ту. Поток данных разделяется на совокупность потоков данных, идущих по разным маршрутам. Сумма интенсивностей отдельных потоков данных, идущих по разным маршрутам равна интенсивности исходного потока данных, интенсивность отдельных потоков данных пропорциональна коэффициенту пропорциональности из вектора пропорций:
(3)
Для пропорций зададим аналогичные множества, что и для маршрутов.
(4)
Целью алгоритма балансировки является нахождение такого распределения потоков /? при заданном графе спутниковой системы б, множестве потоков данных Я и наборе маршрутов М, при котором минимизируется ве-
роятность потери пакетов Р в целом по спутниковой системе.
Выразим это в виде целевой функции
Р = и(Я. Ш. Р. 6)).
(5)
где 4(0 - объем данных, поступивший в интервале времени (О, I].
Модель фрактального броуновского потока данных имеет три параметра (X, ст, Я), где X - средняя интенсивность потока данных, ст - среднеквадратическое отклонение.
Процесс 5/КО - это нормированное фрактальное броуновское движение с нулевым математическим ожиданием М[В„Ю] = 0,У t и дисперсией ^[ВНЬУ\ = М2Н, V t _
Параметр Херста Н е [0,5,1) характеризует степень самоподобия потока данных. При Я = 0,5 поток данных является классическим броуновским движением, а его приращения — белым гауссовским шумом, т.е. поток является полностью не самоподобным. Чем больше значение Н, тем больше степень самоподобности потока данных.
Согласно модели фрактального броуновского потока данных достаточно знать три параметра (X., ст, Я) для оценки статистических свойств агрегированного потоков данных между спутниками. Поэтому выбираем (Я., ст, Я) в качестве статистических характеристик агрегированных потоков данных между спутниками.
Продолжим задание проблемы балансировки нагрузки. Пусть ту - множество маршрутов от спутника /' к спутнику у. М, - множество маршрутов от спутника / ко всем остальным спутникам. Пусть М - множество всех маршрутов. Соотношение между множествами следующее:
Таким образом, задача балансировки нагрузки - это проблема оптимизации, которая задается следующим образом:
Зададим обозначения:
Хукаь - интенсивность потока данных от спутника / к спутнику У, который проходит по маршруту т<,*, на выходе из линии от спутника о к спутнику Ь. Интенсивность меняется в зависимости от загрузки линий.
гцкаь = {0,1} — если коэффициент равен нулю, то поток данных от спутника / к спутнику у, который проходит по маршруту тук, не проходит через линию от спутника а к спутнику Ь, если 1, то наоборот.
Минимизировать целевую функцию:
тт Р = ЩЯ(М, ^ С)) При условии:
(6)
31^киЬ - Си1- I./. с. Ь 6 5,1 у у, а Ь,к ч 2. к я [1, [т.у |]
(7)
А/..к >0, £ *;,кег.*се[1, |ту [] (8)
=\* 1 *е к е I1, И/ О
2 Пук-1 гакега
а*ъ
(9)
(Ю)
(И)
Условие (7) означает, что скорость выходных потоков данных из линии не может превышать ее емкости. Условие (8) означает, что интенсивность потока данных по маршруту может быть больше или равна 0. Условия (9) и (10) означают, что сумма пропорций распределения потока данных по маршрутам равна 1 и сумма интенсивностей потоков данных по маршруту равна интенсивности исходного потока данных до разделения. Условие (11) означает, что суммарный объем пакетов, находящихся в буфере, не может превышать его емкость. При переполнении буфера пакеты отбрасываются. Таким образом, мы задали проблему оптимизации балансировки нагрузки.
Метод балансировки нагрузки работает следующим образом. Время разбито на временные отрезки. В течение временных отрезков спутники оценивают статистические свойства агрегированных потоков данных. Спутники отправляют оценки на ЦЗС. На основе истории оценок свойств потоков данных за предыдущие отрезки времени ЦЗС прогнозирует свойства потоков на следующий временной отрезок. Для прогнозирования выбран алгоритм локальной аппроксимации [4]. Затем ЦЗС берет набор маршрутов и на основе ожидаемых свойств потоков данных решает проблему оптимизации балансировки нагрузки и находит пропорции распределения потоков данных по маршрутам на следующий временной отрезок.
После расчета ЦЗС передает спутникам наборы маршрутов и пропорции распределения потоков данных. Спутники используют их в следующем временном отрезке.
Для решения проблемы оптимизации выбран генетический алгоритм. Решением или особью генетического алгоритма является набор коэффициентов распределения потоков данных 11. Рассмотрим метод выбора коэффициентов распределения. Предпочтительней передавать данные более короткими путями. В этом случае один поток данных загружает меньше линий. Поэтому пропорции распределения потоков данных должны быть такими, чтобы, чем короче маршрут, тем больше доля потоков данных направляется по этому маршруту. Для того, чтобы создать пропорции распределения подобным образом, удобно воспользоваться экспоненциальной функцией у = е'. Последовательность действий следующая:
1. Зададимся минимальным и максимальным значением л'т(„ = 1 и хтах = 2Ы, где N - количество маршрутов в наборе маршрутов, выберем случайное значение X в диапазоне [0,1].
2. Создаем N + 1 значений х, распределенных через равные промежутки на отрезке [хтт, х|Ш1Х].
3. По набор значений дг определяем значения у.
4. Нормируем значения у по формуле
У = (У ~.Утт ) / (Утах-Лт)-
5. Вычитаем из следующего значения у предыдущее. В результате получаем N экспоненциально возрастающих чисел больше 0, сумма которых равна 1. Эти числа используем в качестве пропорций распределения потоков данных по N маршрутам.
Меняя параметр X от нуля до единицы, можно менять распределение от равномерного до такого, где практически весь объем потоков данных принадлежит кратчайшему маршруту.
На рис. 1 изображены пропорции распределения для 8 маршрутов с разными значениями X. Таким образом, чтобы создать случайное решение для каждого набора маршрутов, выбираем случайное значение X и определяем распределение. При этом подходе нельзя добиться распределения, где все потоки данных передаются по кратчайшему пути, а также крайне низкая вероятность того, что выпадет нулевое значение X. Поэтому с вероятностью 2% 100% потоков данных передаем по кратчайшему пути, с вероятностью 2% выбираем равномерное распределение и с вероятностью 96% выбираем экспоненциальное распределение.
0,01 -Л= 0.15 -л=о.з
-JU0.7 -X 0.9
Рис. 1. Пропорции распределения потоков данных по маршрутам
Тем не менее, сочетание, когда в одном распределении выбирается кратчайший путь, а в других нет, может дать лучше результат, чем, если бы все выбирали кратчайшие пути. Поэтому воспользуемся распределением случайного вида. Для этого сначала воспользуемся описанным выше алгоритмом, а затем случайным образом перетасуем значения пропорций.
Назовем первый подход экспоненциальным, а второй случайным. Методом перебора было выбрано соотношение 0,15/0,85, где 0,85 - это вероятность выбора экспоненциального распределения.
Рассмотрим оператор мутации. Для каждого потока данных в системе пересчитываем с вероятностью мутации распределение потока данных по маршрутам. Рассмотрим оператор кроссовера. Воспользуемся одноточечным кроссовером. Решение представляется набором пропорций распределения потоков данных по маршрутам. Выберем случайно точку замены решения и с вероятностью кроссовера, начиная с этой точки, поменяем наборы пропорций распределения потоков данных между двумя решениями. В качестве оператора селекции воспользуемся рулеточным отбором со стратегией элитизма.
Цикл алгоритма следующий:
1. Создаем начальную популяцию решений
2. Отбор. Сортируем решения по возрастанию вероятности потери пакетов и отбираем долю лучших решений в соответствии со стратегией элитизма в число элитных решений.
3. Среди оставшихся решений пропорционально их вероятности потери пакетов отбираем особей для кроссовера и мутации.
4. Объединяем отобранные особи на шаге 3 и элитные особи в одну популяцию.
5. Проводим кроссовер особей популяции, пока не останется только одна или не одной особи.
6. Проводим мутацию.
7. Сортируем по возрастанию значения вероятности потери пакетов и отбираем первые решения в количестве равном размеру популяции минус количество элитных особей. В результате получаем новое поколение.
8. Повторяем все, начиная с шага 2, пока количество циклов не превысит максимальное количество поколений.
Имитационное моделирование
В качестве спутниковой группировки используем модель низкоорбитальной спутниковой системы Iridium. Параметры представлены в табл. 1.
Таблица 1
Параметры спутникового созвездия Iridium
Высота орбиты
Количество плоскостей
Количество спутников в плоскости
Наклонение орбиты
Разница долготы восходящего узла между плоскостями
Разница долготы восходящего узла между противоположно вращающимися плоскостями
Миннмальный угол места
Количество межспутниковых линий
Емкость межспутниковых линий
Емкость лнний вверх/вннз
Граничная широта межспутниковых линий
780 км
11
86,4°
31,6°
22°
8,2°
25 Мбит/с
1,5 Мбит/с
60°
кратчайших путей приходит с меньшей задержкой, чем у алгоритма балансировки нагрузки. Это связано с тем, что используется кратчайший путь. В конечном счете, максимальная задержка в системе меньше у алгоритма балансировки нагрузки. Это происходит благодаря эффективному распределению потоков данных, которое уменьшает задержку очередей.
Заключение
Представлен новый централизованный метод балансировки нагрузки в низкоорбитальной спутниковой системе (НСС). Имитационное моделирование показало, что метод обеспечивает низкую вероятность отбрасывания пакетов. Предложенный метод создан для НСС с меж-спутниковыми линиями, но может применяться и для других сетей с постоянной или предсказуемой динамической топологией.
The centralized load balancing method for low earth orbit satellite system Valeriy Ivanov, [email protected] Abstract
This paper presents centralized load balancing method for low earth orbit satellite system (LEOSS). Load balancing is a network flows distribution in order to obtain even line load. Even line load leads to network capacity increase and to the improvement of flow delivery rate and time parameters. In proposed method, load balancing is implemented through multipath routing which is a one data flow transmission in certain proportions through a set of routes. According to proposed method, time is divided into time slices. During time slices, satellites estimate statistical properties of data flows and send estimations to central earth station (CES). CES predicts statistical properties of data flows in the next time slice based on history of statistical properties in previous time slices. After that, CES takes route set and calculates proportions of flow distribution between routes in the next time slice based on prediction of flows' statistical properties. CES sends route set and proportions of distribution to the satellites. Satellites use them in the next time slice. Simulation showed that proposed method provides low rate of packet dropping. Proposed method is created for LEOSS with intersatellite links, but it can be used in other networks with constant or predictive dynamic topology as well.
Keywords: satellite systems, low earth orbit, load balancing, multipath routing, prediction.
References
1. W.E. Leland etal. On the self-similar nature of Ethernet traffic (extended version). Networking, IEEE/ACM Transactions on (Volume:2, Issue:1), Feb 1994, pp. 1-15.
2. Floyd S. Paxson V Wide-Area Traffic: The Failure of Poisson Modeling. Proc. ACM Sigcomm, London, UK, 1994. pp. 257-268.
3. R. Sherman, M.S. Taqqu et al. J.Beran Long-Range Dependence in Variable-Bit-Rate Video Traffic. IEEE Trans. Commun. Vol. 43, 1995, pp. 1566-1579.
4. LoskutovAYu. Time series analysis. Course of lectures. Faculty of Physics, Moscow State University. URL: chaos.phys.msu.ru/ loskutov/PDF/Lectures_time_series_analysis.pdf. 10.12.2013.
5. Taleb T. et al. Explicit Load Balancing Technique for NGEO Satellite IP Networks With On-Board Processing Capabili-ties . IEEE/ACM Transactions on Networking. Vol. 17, Issue 1, Feb. 2009. pp. 281-293.
Литература
1. W.E. Leland и др. On the self-similar nature of Ethernet traffic (extended version) // Networking, IEEE/ACM Transactions on (Volume:2, Issue: 1), Feb 1994, pp. 1-15.
2. Floyd S. Paxson V. Wide-Area Traffic: The Failure of Poisson Modeling // Proc. ACM Sigcomm, London, UK, 1994. pp. 257-268.
3. R. Sherman. M.S. Taqqu et al. J.Beran Long-Range Dependence in Variable-Bit-Rate Video Traffic // IEEE Trans. Commun. Vol. 43, 1995, pp. 1566-1579.
4. Лоскутов А.Ю. Анализ временных рядов. Курс лекций. Физический факультет МГУ. URL: chaos.phys.msu.ru/ loskutov/PDF/Lectures_time_series_analysis.pdf. 10.12.2013.
5. Taleb Т. et al. Explicit Load Balancing Technique for NGEO Satellite IP Networks With On-Board Processing Capabilities // IEEE/ACM Transactions on Networking. Vol. 17, Issue I, Feb. 2009. pp. 281-293.