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

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

 

Изобретение относится к области планирования распределения виртуальных ресурсов центров обработки данных (ЦОД), облачных платформ и средств по организации управления ресурсами систем.

Качество работы планировщиков ресурсов в центрах обработки данных (ЦОД) определяет загрузку ресурсов ЦОД и возможность гарантированного обеспечения требуемого качества сервиса SLA (Service Level Agreement - соглашения об уровне услуг). Из уровня техники известны алгоритмы, используемые в платформе OpenStack [Pepple K. Deploying OpenStack. Sebastopol: O'Reilly, 2011] "назначение запроса на первый подходящий физический ресурс" или "выбор случайным образом физического ресурса из множества подходящих ресурсов" приемлемы по качеству получаемых отображений запросов на физические ресурсы ЦОД при их загрузке до 50%. При загрузке физических ресурсов больше 50% качество отображений, получаемых этими алгоритмами, значительно ухудшается.

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

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

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

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

Заявленное изобретение согласно еще одному варианту осуществления сочетает жадные стратегии и стратегии ограниченного перебора, который наиболее эффективен в случае, когда критическими ресурсами являются сетевые ресурсы. Алгоритм основан на "компактном" размещении в ЦОД запроса на создание виртуальной сети.

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

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

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

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

2. Из очереди выбирается очередной виртуальный элемент (в зависимости от свойств виртуального элемента сначала отработает шаг 3 или 4, потом 5).

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

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

5. Поместить в очередь Q не назначенные виртуальные элементы, которые связаны с рассматриваемым виртуальным элементом. Удалить рассматриваемый элемент из очереди Q. Если очередь Q не пуста, то перейти к шагу 2. Если очередь пуста, а множество U не пусто, то перейти к шагу 1. В ситуации, когда U пусто - все элементы запроса назначены, перейти к обработке следующего запроса.

Сущность заявленного изобретения поясняется следующими чертежами.

На фиг. 1 приведена блок-схема алгоритма планирования ресурсов.

На фиг. 2 приведена диаграмма классов заявленного технического решения.

На фиг. 3 приведена архитектура заявленного технического решения.

На фиг. 4 приведены входные данные алгоритма планирования ресурсов.

На фиг. 5 приведена условная схема работы заявленного изобретения.

В заявляемом изобретении модель физических ресурсов ЦОД задается графом Н = (Р, М, K, L), где Р - множество вычислительных узлов, М - множество хранилищ данных, К - множество коммутационных элементов сети обмена ЦОД, L - множество физических каналов передачи данных. На множествах Р, М, K и L определены векторные функции скалярного аргумента, задающие соответственно характеристики вычислительных узлов, хранилищ данных, коммутационных элементов и каналов передачи данных:

ph(p) (ph(p), ph(p), …, ph(p)),

mh(m) (mh(m), mh(m), …, mh(m)),

kh(k) (kh(k), kh(k), …, khn2(k)),

lh(l) (lh(l), lh(l), …, lhn3(l)).

где p ∈ P, m ∈ M, k ∈ K, l ∈ L. Компоненты векторной функции могут принимать целочисленные и вещественные значения. Согласно предпочтительному варианту осуществления заявленного изобретения для коммутационных элементов и каналов передачи данных определяются одинаковые характеристики.

Ресурсный запрос задается графом G(W, S, Е), где W - множество виртуальных машин, используемых приложениями, S - множество виртуальных хранилищ данных (storage-элементов), Е - множество виртуальных каналов передачи данных между виртуальными машинами и storage-элементами запроса. На множествах W, S и Е определены векторные функции скалярного аргумента, задающие характеристики запрашиваемого виртуального элемента (требуемое качество сервиса (SLA)):

wg(w) (wg1(w), wg2(1w), …, wgn (w)),

Здесь w ∈ , s ∈ S, e ∈ E. Компоненты векторной функции также принимают целочисленные или вещественные значения. Характеристики SLA элемента запроса совпадают с характеристиками соответствующего ему физического ресурса.

Назначают ресурсный запрос, который представляет собой отображение А:G→Н={W→Р, S→М, Е→{K, L}}. Выделяют три типа отношений между характеристиками элементов запросов и соответствующих характеристик физических ресурсов. Обозначают через xi характеристику i-го элемента запроса, через у j - соответствующую ей характеристику j-го физического ресурса. Указанные отношения можно записать следующим образом.

1. Недопустимость перегрузки емкости физического ресурса:

Σi ∈ Rjxi≤yj, здесь R - множество элементов запросов, назначенных на выполнение на физическом ресурсе yj.

2. Соответствие типа запрашиваемого ресурса типу физического ресурса: xi yi.

3. Наличие требуемых характеристик у физического ресурса: xi≤yi.

Отображение А:G→Н={W→Р, S→М, Е→{K, L}} считается корректным, если для всех физических ресурсов и всех их характеристик выполняются отношения, указанные выше.

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

Здесь Wp - множество виртуальных машин, назначенных на выполнение на вычислительном узле р, El - множество виртуальных каналов, отображенных на физический канал l, Ek - множество виртуальных каналов, проходящих через коммутационный элемент k, Sm - множество storage-элементов, размещенных в хранилище данных m.

В качестве исходных данных задачи назначения ресурсных запросов на физические ресурсы заданы:

1) множество запросов Z={Gi}, поступивших планировщику;

2) остаточный граф доступных ресурсов Hres (Р М K, L).

Требуется: из множества Z разместить на выполнение в ЦОД максимальное число запросов, таких, что отображение А является корректным.

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

Репликацией называется отображение R:Н→Н, дублирующее данные некоторого m ∈ М, создающее виртуальный канал поддержки консистентности данных ki ∈ K, li ∈ L, m' ∈ М, m' - реплика хранилища m (m', l1, k1, …, kn 1, ln, m).

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

Входом алгоритма назначения запросов на физические ресурсы являются остаточный граф доступных ресурсов Н res и множество ресурсных запросов {Gi}. Множество {Gi} формирует диспетчер задач. В него кроме вновь поступивших запросов могут входить и запросы, которые выполняются и для которых допустима миграция. Диспетчер задач также определяет время запуска планировщика.

Выходом алгоритма назначения запросов на физические ресурсы является множество назначений ресурсных запросов на физические ресурсы {Ai:Gi→H,i=1,n} и множество репликаций {Ri}, i 0, 1, …

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

Шаг 1. Если множество ресурсных запросов {Gi} не пусто, то выбирают очередной запрос Gi в соответствии с жадным критерием KG, в противном случае - завершают работу алгоритма.

Шаг 2. Формируют из элементов запроса Gi множество U {W S).

Шаг 3. Выбрать очередной элемент е ∈ U в соответствии с жадным критерием Kƒ, поместить е в очередь Q элементов, ожидающих назначения.

Шаг 4. Выбрать из Q элемент е в соответствии с жадным критерием KQ, выполнить следующие действия:

4а) сформировать множество физических ресурсов Ph, на которые может быть назначен данный элемент е, т.е. для которого выполнены отношения корректности отображения в случае назначения запроса е на физический ресурс. Если данное множество пусто, то вызвать процедуру ограниченного перебора. При неуспешном завершении процедуры удалить ранее назначенные элементы запроса Gi и переопределить значения характеристик физических ресурсов в соответствии с функциями, удалить запрос из множества {Gi}, перейти к шагу 1;

4b) выбрать физический ресурс ph ∈ Ph в соответствии с жадным критерием K ph;

4с) сформировать пути между ph и физическими ресурсами, на которые назначены элементы запроса, связанные виртуальными каналами с элементом е, в случае неуспеха удалить ph из Ph, перейти к шагу 4b;

4d) назначить е на ph и переопределить значения характеристик физических ресурсов в соответствии с функциями (1.1);

4е) удалить е из Q и U;

4f) добавить в Q множество элементов запроса {et}, связанных виртуальными каналами с элементом е, et ∈ U.

Шаг 5. Если Q не пусто, то перейти к шагу 4.

Шаг 6. Если U не пусто, то перейти к шагу 3, в противном случае перейти к шагу 1.

Процедура ограниченного перебора вызывается при отсутствии возможности назначить очередной элемент запроса е ни на один физический ресурс ph. Процедура ограниченного перебора выполняет поиск среди множества А уже назначенных элементов запросов такого подмножества Am ⊆ A, что элемент может быть назначен после переназначения элементов из Am. Перебор ограничивается числом m, задающим максимальное количество физических элементов, для которых возможно переназначение. При переборе рассматриваются только такие множества из m ресурсов, которые в сумме имеют достаточное количество остаточных ресурсов для назначения текущего элемента.

Общая схема процедуры ограниченного перебора.

1. Для заданного m сформировать все множества Am ⊆ A из m физических ресурсов.

2. Если для некоторого множества Am суммарная остаточная емкость ресурсов достаточна для назначения текущего элемента:

2.1) произвести снятие элементов, которые назначены на физические ресурсы из множества Am и для которых разрешена миграция;

2.2) произвести снятие всех виртуальных каналов, связанных с элементами из множества Am;

2.3) произвести попытку переназначить элементы множества Am и назначить элемент е, а также всех связанных с ними виртуальных каналов. Возможны три варианта:

i) назначить элемент е, а затем все элементы множества Am с использованием жадной схемы (шаги 2-4 основной схемы алгоритма без вызова процедуры ограниченного перебора);

ii) назначить элементы множества Am ∪ {е} с использованием жадной схемы (шаги 2-4 основной схемы алгоритма без вызова процедуры ограниченного перебора);

iii) назначить элементы множества Am ∪ {е} с использованием полного перебора;

2.4) в случае успешного назначения всех элементов вернуть успех, в противном случае восстановить исходные назначения элементов из Am.

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

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

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

Максимальная остаточная величина пропускной способности физического элемента (коммутатора или канала). Данный критерий позволяет сохранять связность графа физических ресурсов для упрощения назначения последующих запросов и утилизации возможно большего числа ресурсов. Применение этого критерия повышает качество работы алгоритма в ЦОД с древовидной топологией.

Минимальная остаточная величина пропускной способности физического элемента. При этом увеличивается утилизация сетевых ресурсов при возможно более компактном размещении запросов. Применение этого критерия повышает точность алгоритма в ЦОД с топологией fat-tree и другими аналогичными топологиями с дополнительными каналами обеспечения доступности.

Качество работы алгоритма существенно зависит от выбора жадных критериев. Критерии задаются для выбора очередного запроса KG, очередного элемента запроса Kƒ и для выбора физического ресурса для назначения этого элемента Kph.

Критерий Kƒ основан на функции стоимости r(е) назначения элемента е. Элемент характеризуется вектором значений требуемых характеристик ресурса (re, 1, re, 2, …, re, n).

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

В качестве критерия Kƒ предлагается выбирать элемент, для которого физические ресурсы в текущий момент времени имеют наибольший дефицит. Таким образом, среди элементов запроса выбирается такой элемент е, стоимость r(e) которого максимальна.

Для выбора физического ресурса ph ∈ Ph для назначения очередного элемента запроса е предлагается критерий Kh, при котором выбирается элемент ph с минимальной суммарной длиной путей до всех элементов, на которых размещены назначенные элементы запроса, связанные виртуальными каналами с назначаемым элементом е. Длина пути измеряется в количестве дуг физической сети обмена входящих в путь.

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

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

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

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

Процедура репликации возможна в случае, если одним из элементов запроса, соединяемым виртуальным каналом e(w, s), является storage-элемент s ∈ S, для которого доступна репликация. Процедура заключается в поиске хранилища данных m ∈ М, которое имеет достаточно ресурсов для назначения реплики (реплика требует столько же ресурсов, сколько и данный storage-элемент s). Кандидаты рассматриваются в порядке возрастания суммарной длины маршрутов всех виртуальных каналов e(w, s) (включающих данный storage-элемент s) к данной реплике m в соответствии с критерием Kph. Кроме того, необходимо проложить канал 1 для поддержания консистентности между репликой и исходным storage-элементом (требуемая пропускная способность канала 1 определяется интенсивностью потока данных, необходимых для поддержания консистентности). В случае невозможности прокладки канала 1 с требуемой пропускной способностью процедура переходит к рассмотрению следующего кандидата на размещение.

При успешном выполнении процедуры репликации последующее назначение виртуальных каналов, включающих данный storage-элемент s, можно производить или на данную реплику m, или storage-элемент s ∈ S. Если не удается найти хранилище данных m ∈ М с достаточным количеством ресурсов или не удается провести канал поддержания консистентности данных 1, то процедура возвращает неуспех.

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

Изобретение промышленно применимо, поскольку использует промышленно изготовленные и промышленно применимые ресурсы.

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

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

a) получают, по меньшей мере, один новый запрос на размещение данных;

b) обрабатывают по меньшей мере один новый запрос на размещение данных следующим образом:

c) выделяют по меньшей мере следующие виртуальные элементы: виртуальные машины и виртуальные хранилища данных;

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

e) если элементы, связанные виртуальными каналами с виртуальным элементом, выбранным на этапе d), не размещены в центре обработки данных (ЦОД) или виртуальный элемент, выбранный на этапе d), не связан виртуальными каналами с другими виртуальными элементами, то формируют по меньшей мере один физический ресурс, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d);

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

g) если не найден физический ресурс, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d), осуществляют поиск физического ресурса, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d) при помощи процедуры ограниченного перебора;

h) если в результате этапа g) не найден физический ресурс, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d), переходят к обработке следующего запроса на размещение данных;

i) если в результате этапа f), g) или h) найден физический ресурс, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d), удаляют по меньшей мере один виртуальный элемент, выбранный на этапе d), из очереди виртуальных элементов, ожидающих назначение;

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

k) если очередь пуста, но остались необработанные виртуальные элементы, выбранные на этапе d), то помещают в очередь следующий по меньшей мере один виртуальный элемент, выбранный на этапе d);

l) если не осталось необработанных виртуальных элементов, выбранных на этапе d), переходят к обработке следующего запроса на размещение данных;

m) если элементы, связанные виртуальными каналами с виртуальным элементом, выбранным на этапе d), размещены в центре обработки данных (ЦОД), осуществляют поиск физического ресурса, на который возможно размещение виртуального элемента, выбранного на этапе d) при помощи процедуры поиска в ширину с пересечением кандидатов;

n) если в результате этапа m) не найдено физического ресурса, на который возможно размещение виртуального элемента, выбранного на этапе d), осуществляют поиск физического ресурса, на который возможно размещение по меньшей мере одного виртуального элемента, выбранного на этапе d) при помощи процедуры ограниченного перебора;

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

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

a) добавляют генератор кандидатов на размещение;

b) принимают на вход генератора очередной виртуальный элемент из очереди, ожидающий назначения виртуальных элементов, ожидающих назначение и множество пар «ресурс-канал», причем ресурс - физический ресурс, на который уже сохранен виртуальный элемент, связанный с выбранным виртуальным элементом, а канал - виртуальный канал до этого элемента запроса;

c) для каждой пары «ресурс-канал» производят ненаправленный поиск в ширину с сохранением состояния поиска и отбирают физические ресурсы, на которые возможно размещение по меньшей мере одного виртуального элемента;

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

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

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

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

a) задают глубину перебора для полученных запросов на размещение данных;

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

c) сохраняют назначение виртуальных элементов и виртуальных каналов;

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

e) производят снятие виртуальных каналов, связанных с виртуальным элементом, размещенным на физическом ресурсе;

f) выбирают виртуальный элемент с максимальной взвешенной суммой его параметров и размещают его на выбранном физическом ресурсе с минимальной взвешенной суммой его параметров;

g) прокладывают виртуальные каналы, применяя процедуру поиска в ширину с пересечением кандидатов, для виртуальных элементов, которые изменили свое назначение.



 

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

Изобретение относится к области передачи данных и, более конкретно, к выбору временных характеристик подтверждения в сетях беспроводной связи и раскрывает способ передачи от улучшенного Узла В (eNB) указателя конфигурации подфрейма восходящего/нисходящего (UL-DL) канала передачи планирующей соты и планируемой соты в беспроводной дуплексной системе с временным разделением (TDD).

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

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

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

Изобретение относится к беспроводной связи. Технический результат заключается в обеспечении возможности использования нелицензированного спектра для связи по стандарту проекта долгосрочного развития (LTE).

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

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

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

Изобретение относится к беспроводной связи. Беспроводной терминал сконфигурирован с возможностью принимать из первой базовой станции (BS) первую и вторую информации, связанные соответственно с первым и вторым индексами бета-смещения для индикатора ранга, при этом любая из первой и второй информаций используется для каждого субкадра, содержащегося в радиокадре, посредством которого передается сигнал восходящей линии связи в BS.

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

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

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

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

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

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

Изобретение относится к области обработки естественных языков. Техническим результатом является повышение точности результатов распознавания информации.

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

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

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

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

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