Научная статья на тему 'Многопоточная маршрутизация в программно-конфигурируемых сетях'

Многопоточная маршрутизация в программно-конфигурируемых сетях Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
632
113
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОНТРОЛЛЕР / КОММУТАТОР / КАЧЕСТВО ОБСЛУЖИВАНИЯ / ПРОГРАММНО-КОНФИГУРИРУЕМАЯ СЕТЬ / МНОГОПОТОЧНАЯ МАРШРУТИЗАЦИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Черников А.С., Паус А.С.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Черников А.С., Паус А.С.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Многопоточная маршрутизация в программно-конфигурируемых сетях»

Ссылка на статью:

// Радиооптика. МГТУ им. Н.Э. Баумана. Электрон. журн. 2016. № 06. С. 35-46.

Б01: 10.7463/^ор1.0616.0850725

Представлена в редакцию: 06.10.2016 Исправлена: 20.10.2016

© МГТУ им. Н.Э. Баумана УДК 519.872.5

Многопоточная маршрутизация в программно-конфигурируемых сетях

Черников А. С.1'*, Паус А. С.1 "сЬепик^Ьтаиди

:МГТУ им. Н.Э. Баумана, Москва, Россия

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

Ключевые слова: программно-конфигурируемая сеть, многопоточная маршрутизация, коммутатор, контроллер, качество обслуживания

Введение

В последние годы всё больше начинает распространяться программно-конфигурируемая архитектура компьютерных сетей, которая является следующим поколением традиционной компьютерной сети [1]. Такая архитектура позволяет повысить эффективность сетевого оборудования на 25-30%, снизить на 30% эксплуатационные затраты, повысить управляемость и безопасность сети, дает возможность программно создавать новые сервисы и оперативно загружать их в сетевое оборудование [2].

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

Радиооптика

Сетевое научное издание МГТУ * ш. Н. Э. Баум1 т н а

Кйр://гас1к>ор11С5.ш

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

1. Реализация концепции качества обслуживания в традиционной и программно-конфигурируемой сетях

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

Технология обеспечения качества обслуживания оперирует четырьмя параметрами

[3]:

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

2. Задержка при передаче пакета, измеряется в миллисекундах.

3. Фазовое колебание задержки при передаче пакетов — джиттер.

4. Потеря пакетов. Определяет количество пакетов, потерянных в сети во время передачи.

В традиционных сетях на сетевом уровне присутствуют некоторые реализации концепции качества обслуживания. Примером таких технологий может служить протокол RSVP (RFC 2205) [4], а также набор стандартов, позволяющих реализовывать выделить приоритет для трафика (RFC-2474 и RFC-2475) [5]. Также, имеются средства обеспечения качества обслуживания на канальном и транспортном уровне передачи. Это такие средства, как:

1. Протокол повторной передачи, протокол контроля передачи (Transmission Control Protocol, TCP) [6].

2. Средства канального кодирования, известные так же под названием «прямое исправление ошибок» (Forward Error Correction, FEC) [7].

3. Автоматический запрос повторения в реальном времени (Real-time Automatic Repeat Request, RtARR) [8].

Для многопоточной маршрутизации, в традиционных сетях существуют две основные технологии - ECMP и MPTCP. Более распространенной технологией является протокол Equal Cost Multi Path (ECMP) [9]. Маршрутизаторы сети используют данный протокол для маршрутизации потоков трафика с одинаковым местом назначения через разные пути следования с одинаковыми стоимостями передачи. Распределение потоков по различным путям выполняется с помощью алгоритма Round-Robin [10]. Однако, из-за специфических особенностей алгоритма в некоторых случаях подобная балансировка принимается алгоритмами протокола TCP как потеря пакетов. Как результат уменьшается плавающее окно,

и в конечном итоге единственная изначальная TCP-сессия оказывается производительнее нескольких ECMP - маршрутов [9].

Реализация концепции качества обслуживания в программно-конфигурируемой сети до сих пор не ставилась в полной мере [2]. Учитывая возможность конфигурирования маршрута следования каждого отдельного трафика на уровне программно-конфигурируемых коммутаторов, в данной работе было принято взять идею технологии многопоточной маршрутизации трафика и реализовать ее в программно-конфигурируемой сети. Данная реализация должна:

1. Уменьшить задержку доставки пакетов.

2. Снизить процент потерь пакетов.

3. Увеличить пропускную способность сети.

Технологии многопоточной маршрутизации заключается в создании нескольких путей прохождения трафика между пограничными коммутаторами программно-конфигурируемой сети. Данный принцип изображен на рисунке 1.

В традиционных сетях существует только один путь прохождения трафика между двумя узлами сети (исключения составляют некоторые редкие технологии, такие как Cisco - Multicast only Fast Re-Route [11]).

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

2. Концепция многопоточной маршрутизации в программно - конфигурируемой сети

Грфрвищные OuniyiaKfftJ

Рисунок 1 - Многопоточное решение маршрутизации.

нескольких TCP-сессий по разным каналам. В результате появляется сразу несколько преимуществ:

1. Создание нескольких маршрутов между отправителем и получателем позволяет максимально продуктивно использовать возможности и пропускные способности сети.

2. Повышается скорость передачи данных внутри сети, что актуально для высокона-груженных сервисов, таких как картографические сервисы и другие.

3. Уменьшается время простоя трафика при обрыве какого-то из каналов благодаря быстрому переключению на альтернативный маршрут.

4. Увеличивается надежность доставки чувствительных к потерям и задержкам сервисов путем отправки корректирующих кодов (например, код Хэмминга) или дублирующего трафика по другим маршрутам при небольшом увеличении трафика в сети.

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

1. Должна выполняться равномерная загрузка сети.

2. Маршруты должны строиться, исходя из требований сетевого приложения, в том числе - с учетом пропускной способности;

3. Маршруты должны иметь наименьшую стоимость в терминах сетевого приложения, требующего данный маршрут.

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

2.1 Моделирование программно-конфигурируемой сети

Для исследования возможных вариантов построения программно-конфигурируемой сети необходимо такую сеть смоделировать. Так как подобная сеть является графом, для моделирования необходимо задать общее количество узлов сети и все существующие каналы между этими узлами. Подобную задачу было решено выполнить в виде матрицы смежности. Матрица имеет размерность п на п, где п - количество вершин в графе. На пересечении 1-ого столбца и ]-ой строки записывается вес дуги. Так как оборудование программно-конфигурируемой сети использует дуплексный режим, что означает, что пропускные способности в обе стороны канала равны, на пересечении 1- ой строки и ]-ого столбца и ]-ой строки и 1-ого столбца располагаются одни и те же значения.

2.1.1 Выбор количества вершин графа моделируемой сети

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

Моделирование выполнялось на количестве вершин: 5, 7, 9, 11, 13, 15, 17, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100. От 5 и до 20 вершин шаг изменения их количества равен 2 для более наглядного представления результатов, так как в ходе экспериментов было замечен разброс значений времени выполнения алгоритма более высокий, чем при большем количестве вершин. При количестве вершин большем 20 такой разброс не наблюдался, в связи с чем было решено взять более крупный шаг изменения количества вершин - 5.

2.1.2 Определение значений весов дуг в графе

Значение веса канала связи между двумя вершинами задается функцией распределения, как среднее значение из двенадцати случайных значений равномерного распределения. Данный метод рекомендован Дональдом Кнутом [12]. Плотность распределения вычисляется по формуле

(1)

где параметр ц — математическое ожидание (среднее значение), медиана и мода распределения, параметр о — среднеквадратическое отклонение, о 2 — дисперсия распределения.

Диапазон изменения значений веса дуг в графе в моделируемых условиях был выбран от 1 до 9. График плотности распределения вероятности выбора программой того или иного значения веса представлен на рисунке 3.

0,5

го

о 0,4

ю

$ 0,3

13

2 0,2

н

к

о

^ 0 1

Ой

0,

4 5 6

Вес ребра

Рисунок 3 - График вероятности выбора того или иного веса ребра в модулируемой сети.

1

2

3

7

8

9

Гауссовское распределение было выбрано исходя из того, что в программно-конфигурируемой сети (как и в традиционной) преобладают каналы одинаковых пропускных способностей. Вероятность появления медленного канала с малой пропускной способностью (вес «1» или близкий) или сверхскоростного канала с широкой полосой пропускания (вес «9» или близкий) мала, что отражает представленный график.

2.1.3 Связность программно-конфигурируемой сети

Основная идея многопоточной маршрутизации заключается в направлении различных потоков данных с одной точки до другой по различным путям. Это означает, что каждый коммутатор программно-конфигурируемой сети должен быть связан с множеством других коммутаторов для вариативности выбора маршрутов. Компанией ЦПИКС рекомендуется обеспечивать количество связей для каждого коммутатора с более чем 20% узлов сети для успешного функционирования алгоритма.

Тестирование разработанной программы выполнялось на следующем количестве узлов: 5, 7, 9, 11, 13, 15, 17, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100. Исходя из того, что для 5 и близлежащих количествах вершин 20% будет составлять примерно одну вершин, то есть каждый коммутатор сети будет иметь всего лишь одну связь, для количества вершин от 5 до 9 количество связей составляет около 60%, для количества вершин от 10 до 49 - 40%, для количества вершин от 50 и далее - 20%.

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

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

2.2 Анализ применимости алгоритмов поиска маршрутов в графе

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

1. Алгоритм Дейкстры.

2. Алгоритм Беллмана-Мура.

3. Алгоритм Флойда-Уолшелла.

4. Муравьиный алгоритм.

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

100 единиц [13]. В случае многопоточной маршрутизации рассматриваются сети от 5 до 100 вершин, как было сказано выше, следовательно, рассмотрение данного алгоритма было признано нецелесообразным.

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

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

Результаты эксперимента замера времени построения маршрута при моделирования алгоритмов Дейкстры, Беллмана-Мура и Флойда-Уоршелла представлены на рисунке 3.

Ал. Дейкстры Ал. Беллмана-Мура Ал. Флойда-Уоршелла 10000 -

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 -

5 7 9 11 13 15 17 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100

Количество вершин Рисунок 3. Сравнение 3-х алгоритмов.

На программно-конфигурируемых сетях самого маленького размера, сетях с количеством вершин от 5 (теоретически от 1) и до 10, самым эффективным алгоритмом является алгоритм Флойда-Уоршелла. Начиная с 11 вершин и до 18 самым быстрым временем построения маршрута обладает алгоритм Беллмана-Мура, а в случае 19 и более вершин -алгоритм Дейкстры.

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

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

2.3 Поиск максимальной пропускной способности

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

Существуют следующие алгоритмы, позволяющие вычислить максимальный поток между двумя узлами во взвешенном ориентированном графе [14] :

1. Алгоритм Форда-Фалкенсона.

2. Алгоритм Диница.

Для оценки эффективности данных алгоритмов при вычислении максимального потока в произвольной сети была промоделирована работа данных алгоритмов в компиляторе и было замерено время, за которое программа найдет максимальный поток между двумя вершинами. Результаты эксперимента замера времени построения полного потока между двумя вершинами при моделирования алгоритмов Форда - Фалкерсона и Диница представлены на рисунке 4.

Форд-Фалкерсон

Диниц

3000

2250

а с

§ 1500

с

к

е р

Ой

750

5 7 9 11 13 15 17 19 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100

Количество вершин

Рисунок 4. График сравнения времени нахождения максимального потока для алгоритмов Форда-

Фалкерсона и Диница.

0

Как видно из рис.4, значения времени поиска при использовании обоих алгоритмов отличаются незначительно. Но все же при увеличении числа вершин алгоритм Форда-Фалкерсона выполняется несколько медленнее алгоритма Диница. Таким образом, для вычисления максимальной пропускной способности был выбран алгоритм Диница.

2.4 Удаление, обрыв и перестроение маршрутов

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

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

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

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

Заключение

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

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

Список литературы

1. Робачевский Андрей. Программируемый Интернет [Электронный ресурс]: Российский НИИ развития общественных сетей. Режим доступа: http://www.ripn.net/articles/SDN/ (дата обращения: 01.02.2015).

2. E. Chemeritskiy, R. Smeliansky. On QoS Management in SDN by Multipath Routing [Электронный ресурс] // Science and Technology Conference (Modern Networking Technologies) (MoNeTeC), 2014 International. Режим доступа:

http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&arnumber=6995581&sortType %3Dasc p Sequence%26filter%3DAND(p IS Number%3A6995568) (дата обращения: 15.05.2015).

3. Яновский Г.Г. Качество обслуживания в сетях IP. Вестник связи. 2008. №1. C. 15-31.

4. Resource ReSerVation Protocol [Электронный ресурс]: RFC Base. Режим доступа: http://www.rfc-base.org/rfc-2205.html (дата обращения: 04.03.2015).

5. Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers [Электронный ресурс]: RFC Base. Режим доступа: http://www.rfc-base.org/rfc-2474.html (дата обращения: 04.03.2015).

6. TCP/IP Overview [Электронный ресурс]: база знаний компании Cisco. Режим доступа: http://www.cisco.com/c/en/us/support/docs/ip/routing-information-protocol-rip/13769-5.html#tcp (дата обращения: 07.03.2015).

7. Морелос-Сарагоса, Р. Искусство помехо-устойчивого кодирования. Методы, алгоритмы, применение. М. : Техносфера, 2005. 320 с.

8. Multicast only Fast Re-Route [Электронный ресурс]: CISCO. Режим доступа: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipmulti serv/configuration/xe-3s/imc-serv-xe-3s-book/imc_mofrr.pdf (дата обращения: 14.04.2015).

9. BGP and equal-cost multipath (ECMP). [Электронный ресурс]: Noction. Режим доступа: http://www.noction.com/blog/equal-cost-multipath-ecmp (дата обращения: 14.04.2015).

10. Round Robin. [Электронный ресурс]: WhatIs.com. Режим доступа: http://whatis.techtarget.com/definition/round-robin (дата обращения: 17.04.2015).

11. Multicast only Fast Re-Route [Электронный ресурс]: CISCO. Режим доступа: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipmulti serv/configuration/xe-3s/imc-serv-xe-3s-book/imc mofrr.pdf (дата обращения: 14.04.2015).

12. Дональд Кнут. Искусство программирования: учебник. 3-е изд., под общей редакцией Ю.В. Козаченко. М.: Издательский дом Вильямс, 2002.

13. T. Stutzle, M. Lôpez-Ibânez, P. Pellegrini, M. Maur, M. de Oca, M. Birattari, Michael Maur, M. Dorigo, Parameter Adaptation in Ant Colony Optimization // Technical Report, IRIDIA, Université Libre de Bruxelles, 2010.

14. Корзников А. Д. Новый алгоритм решения задачи о максимальном потоке // Наука и техника. 2013. №5. Режим доступа: http://cyberleninka.ru/article/n/novyy-algoritm-resheniya-zadachi-o-maksimalnom-potoke (дата обращения: 13.04.2015).

Radiooptics of the Bauman MSTU, 2016, no. 06, pp. 35-46.

DOI: 10.7463/rdopt.0616.0850725

Received: 06.10.2016

Revised: 20.10.2016

© Bauman Moscow State Technical Unversity

Multi-threaded Routing in Software-defined Networking

A.S. Chernikov1'*, A.S. Paus1 >Wmik:gbm5tu-ru

1Bauman Moscow State Technical University, Moscow, Russia

Radiooptics

Keywords: software-defined networking, multi-threaded routing, switch, controller, quality of service

Unlike traditional networks, software-defined ones, which emerged not long ago, have not been completely investigated yet, including as it relates to the service quality concept implementation. The paper makes an attempt to implement the idea of multi-threaded traffic routing technology, used in traditional networks, in software-defined networking.

Using a mathematical graph theory we have simulated the architecture of software-defined networking in the form of adjacency matrices of various dimensions. On the basis of comparative analysis we have formulated recommendations on the application of the Floyd-Warshall,

Bellman-Ford-Moore and Dijkstra's algorithms to find the shortest paths, as well as the Ford-Fulkerson and Dinitz's algorithms for computing the maximum flow in a flow network in case of choosing network architectures of diverse complexity.

We have considered different ways out of abnormal situations related to traffic dropouts caused by switch failures, network cable disconnection and other problems.

Using a mathematical graph theory to describe the networks we have developed a multithreaded routing algorithm in software-defined networks. The algorithm involved in the controller of software-defined networking allows:

• to increase the speed of data transmission and, consequently, a network bandwidth through creating the several communication channels among the end-devices that is of particular relevance for high-load services;

• to implement route optimization in a network taking into account the requirements for individual network applications;

• to increase a uniformity of the network load;

• to reduce traffic downtime in case of channel break due to the rapid switch to an alternative route;

• to increase the delivery reliability of services sensitive to losses and delays by sending the correcting codes (for example, the Hamming code) or the replicated traffic on other routes.

As a result of controlling the network flow parameters by controller, network applications start operating better, and end-users' capabilities and efficiency becomes more.

References

1. Robachevskii Andrei. Programmiruemyi Internet [Programmable Internet] [Electronic resource]. Rossiiskii NII razvitiia obshchestvennykh setei = Russian Research Institute of Social Network Development. Available at: http://www.ripn.net/articles/SDN/, accessed 01.02.2015.

2. Chemeritskiy E., Smeliansky R. On QoS Management in SDN by Multipath Routing [Electronic resource]. Science and Technology Conference (Modern Networking Technologies) (MoNeTeC), 2014 International. Available at:

http://ieeexplore.ieee.org/xpl/articleDetails.isp9reload=true&arnumber=6995581&sortType%3 Dasc p Sequence%26filter%3DAND(p IS Number%3A6995568), accessed 15.05.2015.

3. Ianovskii G.G. Kachestvo obsluzhivaniia v setiakh IP. Vestnik sviazi = Communication Bulletin. 2008. No. 1. pp. 15-31. [In Russian]

4. Resource ReSerVation Protocol [Electronic resource]. RFC Base. Available at: http://www.rfc-base.org/rfc-2205.html, accessed 04.03.2015.

5. Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers [Electronic resource]. RFC Base. Available at: http://www.rfc-base.org/rfc-2474.html (Accessed date: 04.03.2015).

6. TCP/IP Overview [Electronic resource]. Baza znanii kompanii Cisco [Cisco Knowledge Database]. Available at: http://www.cisco.com/c/en/us/support/docs/ip/routing-information-protocol-rip/13769-5.html#tcp, accessed 07.03.2015.

7. Morelos-Zaragoza R. Iskusstvo pomekho-ustoichivogo kodirovaniia. Metody, algoritmy, primenenie. Tekhnosfera. Moscow, 2005. 320 p.

8. Multicast only Fast Re-Route [Electronic resource]. CISCO. Available at: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipmulti_serv/configuration/xe-3s/imc-serv-xe-3s-book/imc mofrr.pdf, accessed 14.04.2015.

9. BGP and equal-cost multipath (ECMP). [Electronic resource]. Noction. Available at: http://www.noction.com/blog/equal-cost-multipath-ecmp, accessed 14.04.2015.

10. Round Robin. [Electronic resource]. WhatIs.com. Available at: http://whatis.techtarget.com/definition/round-robin, accessed 17.04.2015.

11. Multicast only Fast Re-Route [Electronic resource]. CISCO. Available at: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipmulti_serv/configuration/xe-3s/imc-serv-xe-3s-book/imc_mofrr.pdf, accessed 14.04.2015.

rd

12. Knuth Donald. The Art of Computer Programming: Textbook. 3 ed., under the general editorship of Iu.V. Kozachenko. Williams Publishing House, Moscow, 2002. [In Russian]

13. Stützle T., Lôpez-Ibânez M., Pellegrini P., Maur M., de Oca M., Birattari M., Maur Michael, Dorigo M. Parameter Adaptation in Ant Colony Optimization. IRIDIA, Technical Report, Université Libre de Bruxelles, 2010.

14. Korznikov A.D. Novyi algoritm resheniia zadachi o maksimal'nom potoke. Nauka i tekhnika = Science and Technology. 2013. No. 5. Available at: http://cyberleninka.ru/article/n/novyy-algoritm-resheniya-zadachi-o-maksimalnom-potoke, accessed 13.04.2015.

i Надоели баннеры? Вы всегда можете отключить рекламу.