СПОСОБ АВТОМАТИЧЕСКОГО ЗАДАНИЯ КОНФИГУРАЦИИ OpenFlow-КОММУТАТОРОВ И OpenFlow-МАРШРУТИЗАТОРОВ Российский патент 2015 года по МПК H04L12/70 

Описание патента на изобретение RU2544741C1

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

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

Используемые в настоящее время методы управления сетевым оборудованием реализуют способ удаленного управления сетевым оборудованием по принципу «вручную» и не обладают достаточной гибкостью и быстродействием для обеспечения расширения (масштабирования) сети и равномерного распределения сетевой нагрузки в больших сетях со сложной топологией, к которым относятся программно-конфигурируемые сети. Традиционное конфигурирование каждого сетевого устройства выполняется человеком (системным администратором, администратором сети или оператором сетевого оборудования) по командным или файловым протоколам управления SNMP, Telnet, SSH, FTP. В основе архитектуры программно-конфигурируемых сетей лежит другой подход, основанный на использовании открытого протокола OpenFlow, позволяющего не «вручную», а программно управлять сетевой архитектурой. Протокол OpenFlow позволяет задавать конфигурацию сетевых устройств программно с централизованного компонента управления сетью - контроллера программно-конфигурируемой сети. Основными функциями контроллера программно-конфигурируемой сети являются добавление и удаление записей из таблицы сетевых потоков на контролируемом сетевом устройстве, подключенном к контроллеру и совместимом с протоколом OpenFlow. В таком случае контроллер обеспечивает динамический анализ текущего состояния всех подключенных устройств. На контроллере программно-конфигурируемой сети установлена сетевая операционная система, которая обеспечивает работу программной системы управления сетью. К задачам такой системы управления сетью относятся: сбор сведений о сетевом оборудовании, сбор данных о сетевых взаимодействиях сетевого оборудования и о текущем состоянии сетевого оборудования, настройка сетевого оборудования в зависимости от уровня сетевой нагрузки и текущего состояния.

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

Контроллер программно-конфигурируемой сети осуществляет конфигурацию OpenFlow-коммутаторов и OpenFlow-маршрутизаторов, изменяя записи в таблицах сетевых потоков, тем самым изменяя направление передачи пакетов в сети. Во всех существующих конфигурациях OpenFIow-оборудования таблицы сетевых потоков задаются с записями, для которых указаны одинаковые приоритеты. Вследствие этого записи в таблице располагаются в произвольном порядке. В существующих решениях, обеспечивающих управление OpenFlow-коммутаторами и OpenFlow-маршрутизаторами, все записи в таблицах сетевых потоков равноправны и порядок их обработки в таблице не задан, что приводит к необходимости перебора всех записей таблицы сетевых потоков в поисках искомой записи и, соответственно, к временным задержкам при передаче сетевых пакетов (US 2011286324, H04L 12/26, опубл. 2011-11-24; EP 2408155, H04L 12/56, опубл. 2012-01-18).

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

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

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

В соответствии со структурой байта ToS выделены три класса (Kj, 1≤j≤3) обрабатываемого сетевого трафика, каждый из которых характеризуется центром класса (µj, 1≤j≤3):

- трафик, к которому предъявляются особые требования к временной задержке передачи (D-трафик, от англ. Delay). Центр класса - вектор µ1=〈00010000〉;

- трафик, к которому предъявляются особые требования к пропускной способности маршрута (Т-трафик, от англ. Throughput). Центр класса - вектор µ2=〈00001000〉;

- трафик, к которому предъявляются особые требования к надежности передачи (R-трафик, от англ. Reliability). Центр класса - вектор µ3=〈00000100〉.

Каждому классу изначально задают значение весового коэффициента (wj, 1≤j≤3), влияющее на приоритет записи в таблице сетевых потоков, создаваемой в соответствии с анализируемым сетевым пакетом.

Каждому классу трафика в соответствие ставится параметр Open Flow-статистики для порта (Sj, 1≤j≤3), который будет учитываться при расчете приоритета записи в таблице сетевых потоков:

- для D-трафика учитывается отношение количества отправленных пакетов (TransmPack) к количеству принятых пакетов (RecPack);

- для Т-трафика учитывается отношение количества отправленных байтов (TransmBytes) к количеству принятых байтов (RecBytes);

- для R-трафика учитывается отношение суммы количества отброшенных при приеме пакетов (RecDrops) и количества отброшенных при приеме пакетов (TransmDrops) к количеству принятых пакетов (RecPack).

На фиг.1 представлена схема управления сетевыми потоками в программно-конфигурируемых сетях. Взаимодействие между OpenFlow-коммутатором (OpenFlow-маршрутизатором) и контроллером программно-конфигурируемой сети осуществляется посредством протокола OpenFlow. Для поступающего на сетевое оборудование сетевого пакета выполняется поиск записи в таблице сетевых потоков. Если запись найдена, пакет передается далее в сеть согласно инструкциям, указанным в данной записи. В случае отсутствия в таблице сетевых потоков записи, соответствующей сетевому пакету, данный пакет передается контроллеру программно-конфигурируемой сети для генерации новой записи в таблице сетевых потоков. На фиг.2 представлена схема работы контроллера программно-конфигурируемой сети. На вход контроллеру поступает пакет, для которого не было найдено соответствие с записями в таблице сетевых потоков сетевого оборудования, на выходе контроллер формирует новую запись в таблице сетевых потоков, содержащую параметры, статистику и инструкции, а также устанавливает приоритет данной записи в таблице сетевых потоков. При вычислении приоритета записи в таблице сетевых потоков контроллер программно-конфигурируемой сети учитывает тип трафика, к которому относится сетевой пакет, полученный контроллером, и приоритет данного сетевого пакета, заданный первыми тремя битами байта ToS, в случае если байт ToS не задан, сетевому пакету присваивается наименьший приоритет записи в таблице сетевых потоков.

Для отнесения сетевого пакета, полученного контроллером программно-конфигурируемой сети, к одному из определенных классов трафика вычисляется расстояние Хэмминга [Скляр Б. Цифровая связь: Теоретические основы и практическое применение. М.: Вильямс, 2003] между вектором центра соответствующего класса и вектором, представляющим байт ToS анализируемого пакета.

Весовой коэффициент Хэмминга бинарного вектора определяется как число ненулевых элементов данного вектора. Расстоянием Хэмминга - число позиций, на которых различаются соответствующие векторы значений: d i j = Σ k = 1 L | x i k x j k | , где L - длина вектора.

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

Расстояние Хэмминга между двумя векторами равно весовому коэффициенту Хэмминга их суммы. Также, весовой коэффициент Хэмминга бинарного вектора равен его расстоянию Хэмминга до нулевого вектора. Расстояние Хэмминга является метрикой на множестве бинарных векторов длины L, удовлетворяя аксиомам метрики.

Анализируемый байт ToS сетевого пакета, полученного контроллером программно-конфигурируемой сети, представляется в виде вектора x i * . Между полученным вектором x i * и текущими центрами классов вычисляется расстояние Хэмминга: d i j = Σ k = 1 8 | x i * k μ j k | , 1≤j≤3. Вектор x i * относят к классу, которому соответствует наименьшее расстояние Хэмминга min1≤j≤3 dij. Если для нескольких j выполняется равенство d i j = min 1 j 3 d i j , то вектор x i * может быть отнесен к любому классу Kj, для которого d i j = min 1 j 3 d i j .

В соответствии с установленной принадлежностью вектора x i * к классу Kj вычисляется значение приоритета записи в таблице сетевых потоков, соответствующей сетевому пакета, полученному контроллером программно-конфигурируемой сети: F=wj·Sj+Pi, где wj - весовой коэффициент, соответствующий классу Kj, Sj - учитываемый параметр OpenFlow-статистики для порта, соответствующий классу Kj, Pi - приоритет, заданный первыми тремя битами байта ToS, указанный в десятичной системе счисления.

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

Рассмотрим пример вычисления приоритета записи в таблице сетевых потоков OpenFlow-коммутатора (OpenFlow-маршрутизатора), соответствующей сетевому пакету, полученному контроллером программно-конфигурируемой сети, с заданным байтом ToS, которому соответствует двоичный вектор x 0 * = 10110100 .

Вычислим расстояние Хэмминга между вектором x 0 * и текущими центрами классов d 0 j = Σ k = 1 8 | x 0 * k μ j k | , 1≤j≤3:

d 01 = k = 1 8 | x 0 * k μ 1 k | = 3 ;

d 02 = k = 1 8 | x 0 * k μ 2 k | = 5 ;

d 03 = k = 1 8 | x 0 * k μ 3 k | = 3 .

Определим наименьшее значение расстояния Хэмминга между вектором x 0 * и центрами классов:

min 1 j 3 d 0 j = min { 3 ; 5 ; 3 } = 3 = d 01 = d 03 .

Так как для j=1 и для j=3 выполняется равенство d0j=min1≤j≤3 d0j, то, в соответствии с предложенным алгоритмом, вектор x 0 * может быть отнесен как к классу K1, так и к классу K3. Отнесем вектор x 0 * = 10110100 к классу K1 с центром µ1=〈00010000〉.

Допустим, заданы следующие весовые коэффициенты wj, соответствующие классам Kj, 1≤j≤3: w1=20; w2=15; w3=30.

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

S 1 = T r a n s m P a c k Re c P a c k ,

где TransmPack - количество отправленных пакетов, RecPack - количество принятых пакетов.

Пусть TransmPack = 90, RecPack = 100. Тогда S 1 = 90 100 = 0 , 9 .

Приоритет, заданный первыми тремя битами байта ToS, указанный в десятичной системе счисления, равен P0=5.

Вычислим значение приоритета записи в таблице сетевых потоков, советующей рассматриваемому сетевому пакету:

F=w1·S1+P0=20·0,9+5=23.

Все сетевые потоки, которым в таблице сетевых потоков соответствуют записи с более высоким приоритетом, будут обработаны раньше. Приоритезация записей в таблице сетевых потоков OpenFlow-коммутатора (Open Flow-маршрутизатора) и, соответственно, сетевых потоков позволяет сократить время обнаружения записи в таблице сетевых потоков за счет задания очередности записей.

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

Похожие патенты RU2544741C1

название год авторы номер документа
СПОСОБ АВТОМАТИЧЕСКОГО АДАПТИВНОГО УПРАВЛЕНИЯ СЕТЕВЫМИ ПОТОКАМИ В ПРОГРАММНО-КОНФИГУРИРУЕМЫХ СЕТЯХ 2013
  • Зегжда Дмитрий Петрович
  • Зегжда Петр Дмитриевич
  • Калинин Максим Олегович
  • Павленко Евгений Юрьевич
RU2530279C1
УСТРОЙСТВО ДЛЯ ПРИЕМА И ПЕРЕДАЧИ ДАННЫХ С ВОЗМОЖНОСТЬЮ ОСУЩЕСТВЛЕНИЯ ВЗАИМОДЕЙСТВИЯ С OpenFlow КОНТРОЛЛЕРОМ 2014
  • Беззубцев Станислав Олегович
  • Васин Вячеслав Викторович
  • Смелянский Руслан Леонидович
  • Шалимов Александр Владиславович
RU2584471C1
ПРИВОДИМОЕ В ДЕЙСТВИЕ КОНТРОЛЛЕРОМ ОАМ ДЛЯ OPENFLOW 2012
  • Йоха Давид
  • Керн Андраш
RU2608879C2
ЧАСТИЧНАЯ ЗАМЕНА КОММУТАТОРА ПРОГРАММНО-КОНФИГУРИРУЕМОЙ СЕТИ В IP СЕТЯХ 2015
  • Ло Минь
  • Чу Цин-Юй
  • Си Кан
  • Чао Хун-Сиан Джонатан
  • Чоу У
RU2667039C2
СЕТЕВАЯ СИСТЕМА И СПОСОБ ПОЛУЧЕНИЯ ДАННЫХ ТЕГА VLAN 2012
  • Йосида Хироказу
  • Судзуки Йодзи
  • Такасима Масанори
RU2589340C2
Способ создания защищенного L2-соединения между сетями с коммутацией пакетов 2018
  • Гузев Олег Юрьевич
  • Чижов Иван Владимирович
RU2694585C1
Способ работы кластера шлюзов безопасности 2021
  • Гузев Олег Юрьевич
  • Тычина Леонид Анатольевич
RU2757297C1
СПОСОБ ВЕРОЯТНОСТНОГО ПРИОРИТЕТНОГО ОБСЛУЖИВАНИЯ ОЧЕРЕДЕЙ И УСТРОЙСТВО ЕГО РЕАЛИЗУЮЩЕЕ 2021
  • Орешин Андрей Николаевич
  • Трегубов Роман Борисович
  • Андреев Сергей Юрьевич
  • Мясин Николай Игоревич
  • Васинев Дмитрий Александрович
RU2776658C1
СПОСОБ ВЕРОЯТНОСТНОГО ВЗВЕШЕННОГО СПРАВЕДЛИВОГО ОБСЛУЖИВАНИЯ ОЧЕРЕДЕЙ И УСТРОЙСТВО ЕГО РЕАЛИЗУЮЩЕЕ 2022
  • Трегубов Роман Борисович
  • Андреев Сергей Юрьевич
  • Королев Александр Васильевич
  • Костин Сергей Викторович
  • Коркин Алексей Георгиевич
RU2777035C1
ТЕХНОЛОГИИ ДЛЯ ПРЕДОСТАВЛЕНИЯ МАКСИМАЛЬНОЙ ГЛУБИНЫ ИДЕНТИФИКАТОРА СЕГМЕНТА УЗЛА И/ИЛИ ЛИНИИ СВЯЗИ, ИСПОЛЬЗУЮЩИЕ OSPF 2016
  • Танцура, Евгений
  • Чандари, Ума С.
RU2704714C1

Иллюстрации к изобретению RU 2 544 741 C1

Реферат патента 2015 года СПОСОБ АВТОМАТИЧЕСКОГО ЗАДАНИЯ КОНФИГУРАЦИИ OpenFlow-КОММУТАТОРОВ И OpenFlow-МАРШРУТИЗАТОРОВ

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

Формула изобретения RU 2 544 741 C1

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

Документы, цитированные в отчете о поиске Патент 2015 года RU2544741C1

Способ приготовления лака 1924
  • Петров Г.С.
SU2011A1
УСТРОЙСТВО ФОРМИРОВАНИЯ ИЗОБРАЖЕНИЯ И СПОСОБ УПРАВЛЕНИЯ УСТРОЙСТВОМ ФОРМИРОВАНИЯ ИЗОБРАЖЕНИЯ 2009
  • Мацумото Ясухиса
RU2408155C1
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем 1924
  • Волынский С.В.
SU2012A1
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем 1924
  • Волынский С.В.
SU2012A1
ДИНАМИЧЕСКОЕ КОНФИГУРИРОВАНИЕ ПОРТА СЕТЕВОГО ОБОРУДОВАНИЯ 2002
  • Эло Андерс
  • Эман Андреас
  • Лундстрем Магнус
RU2305906C2

RU 2 544 741 C1

Авторы

Зегжда Дмитрий Петрович

Зегжда Петр Дмитриевич

Калинин Максим Олегович

Верт Наталья Сергеевна

Даты

2015-03-20Публикация

2013-08-06Подача