СПОСОБ ОПТИМАЛЬНОГО ПЛАНИРОВАНИЯ ИСПОЛЬЗОВАНИЯ ВИРТУАЛЬНЫХ СЕТЕВЫХ РЕСУРСОВ ЦЕНТРОВ ОБРАБОТКИ ДАННЫХ

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) прокладывают виртуальные каналы, применяя процедуру поиска в ширину с пересечением кандидатов, для виртуальных элементов, которые изменили свое назначение.