×
27.01.2016
216.014.bdae

Результат интеллектуальной деятельности: СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ

Вид РИД

Изобретение

№ охранного документа
0002573733
Дата охранного документа
27.01.2016
Аннотация: Изобретение относится к средствам для регулировки канала I/O на виртуальной платформе, которые применяются в области виртуальной технологии. Технический результат заключается в повышении эффективности распределения ресурсов. Вычисляют, посредством хоста, текущую среднюю производительность I/O множества виртуальных машин VM, работающих на хосте. Увеличивают или уменьшают, посредством хоста, рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM согласно текущей средней производительности I/O. Регулируют, посредством хоста, отношение сопоставления между очередями во внешнем устройстве, очередями во внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM. Ресурсы каналов, занятые каналами I/O между внешними устройствами и внутренними устройствами множества машин VM, динамически регулируются согласно производительности I/O множества машин VM, работающих на хосте. Когда производительность I/O уменьшается, незанятые ресурсы каналов I/O освобождаются, чтобы тем самым избежать растраты ресурсов каналов I/O. Когда производительность I/O увеличивается, ресурсы каналов I/O увеличиваются. 3 н. и 10 з.п. ф-лы, 7 ил.

Эта заявка испрашивает приоритет по китайской патентной заявке номер 201310027312.7, поданной в китайское патентное ведомство 24 января 2013 и озаглавленной "METHOD AND APPARATUS FOR ADJUSTING I/O CHANNEL ON VIRTUAL PLATFORM", которая включается сюда по ссылке во всей полноте.

Область техники, к которой относится изобретение

Настоящее изобретение относится к области виртуальных технологий, в частности к способу и устройству для регулировки канала I/O на виртуальной платформе.

Уровень техники

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

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

Фиг. 1 описывает простую технологию с множеством каналов I/O на виртуальной платформе в предшествующем уровне техники, и в качестве примера используются две виртуальные машины VM1 и VM2, где имеется множество каналов I/O (на фиг. 1 в качестве примера используются два канала I/O) между внешним устройством и внутренним устройством машины VM. Модуль обработки данных является мостом между внешним устройством и внутренним устройством машины VM, используется для копирования данных, фильтрации данных или других служб обработки данных и включает в себя множество рабочих потоков (на фиг. 1 в качестве примера используются два рабочих потока); количество рабочих потоков равняется количеству каналов I/O между внешним устройством машины VM и внутренним устройством машины VM, и каждый канал I/O соответствует одному рабочему потоку. Одиночный канал существует между внутренним устройством машины VM и мостом и между мостом и реальным устройством, и внутреннее устройство машины VM передает данные в реальное устройство через одиночный канал.

Вышеупомянутый предшествующий уровень техники имеет, по меньшей мере, следующие технические проблемы: количество каналов I/O между внешним устройством машины VM и внутренним устройством машины VM определяется, когда машина VM создается, количество каналов I/O не может изменяться в течение работы машины VM, и поэтому ресурсы каналов, занятые каналами I/O между внешним устройством машины VM и внутренним устройством машины VM, не могут изменяться. Когда производительность I/O между внешним устройством машины VM и внутренним устройством машины VM изменяется, ресурсы каналов I/O не могут регулироваться; когда производительность I/O уменьшается, незанятые ресурсы каналов I/O не могут освобождаться, что дает в результате растрату ресурсов каналов I/O; когда производительность I/O увеличивается, ресурсы каналов I/O не могут увеличиваться, что дает в результате неспособность улучшать способность передачи данных каналов I/O и ухудшенную эффективность системы.

Сущность изобретения

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

Согласно первому аспекту настоящее изобретение обеспечивает способ регулировки канала I/O на виртуальной платформе, и способ включает в себя:

вычисление, посредством хоста, текущей средней производительности I/O множества виртуальных машин VM, работающих на хосте; увеличение, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочий поток увеличивается; или уменьшение, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение; и отдельную регулировку, посредством хоста, согласно рабочим потокам для обработки машин VM после увеличения или уменьшения, отношения сопоставления между очередями во внешних устройствах множества машин VM и рабочими потоками для обработки машин VM и отношения сопоставления между очередями во внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, так что между внешними устройствами и внутренними устройствами множества машин VM формируется множество каналов передачи данных.

В первом возможном варианте осуществления, со ссылкой на первый аспект, если текущая средняя производительность I/O больше, чем первое пороговое значение, до увеличения, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, способ дополнительно включает в себя:

сравнение, посредством хоста, увеличения в использовании CPU и увеличения в производительности I/O, результирующих из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM; и если увеличение в производительности I/O больше, чем увеличение в использовании CPU, выполнение этапа увеличения, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM.

Во втором возможном варианте осуществления, со ссылкой на первый аспект, если текущая средняя производительность I/O меньше, чем второе пороговое значение, до уменьшения, посредством хоста, рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, способ дополнительно включает в себя:

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

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

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

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

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

Согласно второму аспекту настоящее изобретение обеспечивает устройство хоста для регулировки канала I/O на виртуальной платформе, и хост включает в себя:

модуль вычисления, сконфигурированный с возможностью вычислять текущую среднюю производительность I/O множества виртуальных машин VM, работающих на хосте; модуль обработки, который соединен с модулем вычисления, сконфигурированный с возможностью увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля вычисления, больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются; или уменьшать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля вычисления, меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение; и первый модуль регулировки, который соединен с модулем обработки, сконфигурированный с возможностью отдельно регулировать, согласно рабочим потокам для обработки машин VM после увеличения или уменьшения посредством модуля обработки, отношения сопоставления между очередями во внешних устройствах множества машин VM и рабочими потоками для обработки машин VM и отношения сопоставления между очередями во внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, так что между внешними устройствами и внутренними устройствами множества машин VM формируется множество каналов передачи данных.

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

модуль определения, сконфигурированный с возможностью сравнивать увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля вычисления, больше, чем первое пороговое значение; модуль обработки дополнительно сконфигурирован с возможностью увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, если увеличение в производительности I/O больше, чем увеличение в использовании CPU, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются.

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

модуль определения, сконфигурированный с возможностью определять, ведет ли уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, к неспособности реагировать на производительность множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля вычисления, меньше, чем второе пороговое значение; модуль обработки дополнительно сконфигурирован с возможностью уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, если уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, не ведет к неспособности реагировать на производительность множества машин VM, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются.

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

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

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

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

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

модуль обработки данных сконфигурирован с возможностью:

вычислять текущую среднюю производительность I/O множества машин VM; увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются; или уменьшать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение; и отдельно регулировать отношение сопоставления между очередями во внешних устройствах множества машин VM и рабочими потоками для обработки машин VM и отношение сопоставления между очередями во внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, так что между внешними устройствами и внутренними устройствами множества машин VM формируется множество каналов передачи данных.

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

сравнивать увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM; и если увеличение в производительности I/O больше, чем увеличение в использовании CPU, увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются.

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

определять, ведет ли уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, к неспособности реагировать на производительность множества машин VM, и уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, если уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, не ведет к неспособности реагировать на производительность множества машин VM, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются.

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

Дополнительно, хост формирует множество каналов передачи данных между внутренними устройствами множества машин VM и реальным устройством посредством регулировки отношения сопоставления между очередями во внутренних устройствах множества машин VM и очередями в реальном устройстве хоста. Это обеспечивает множество каналов I/O между внешними устройствами множества машин VM и реальным устройством хоста и улучшает способность передачи данных между внешними устройствами множества машин VM и реальным устройством хоста.

Краткое описание чертежей

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

Фиг. 1 является схемой архитектуры простой технологии с множеством каналов I/O на виртуальной платформе в предшествующем уровне техники;

Фиг. 2 является блок-схемой последовательности операций способа регулировки канала I/O на виртуальной платформе согласно одному варианту осуществления настоящего изобретения;

Фиг. 3 является схемой архитектуры, когда рабочий режим для I/O между внешними устройствами и внутренними устройствами множества машин VM на виртуальной платформе является режимом совместного использования согласно настоящему изобретению;

Фиг. 4 является схемой архитектуры, когда рабочий режим для I/O между внешними устройствами и внутренними устройствами множества машин VM на виртуальной платформе является гибридным режимом согласно настоящему изобретению;

Фиг. 5 является схематическим изображением структурной схемы устройства для регулировки канала I/O на виртуальной платформе согласно одному варианту осуществления настоящего изобретения;

Фиг. 6 является схематическим изображением структурной схемы устройства для регулировки канала I/O на виртуальной платформе согласно другому варианту осуществления настоящего изобретения; и

Фиг. 7 является схематическим изображением структурной схемы хоста согласно одному варианту осуществления настоящего изобретения.

Описание вариантов осуществления

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

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

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

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

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

Реальное устройство: аппаратная платформа, на которой работает виртуальная среда. Реальное устройство может включать в себя множество типов аппаратного обеспечения, например, реальное устройство некоторого вычислительного узла может включать в себя процессор (например, CPU), память и может дополнительно включать в себя высокоскоростные/низкоскоростные устройства ввода/вывода (I/O), такие как сетевой адаптер и память.

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

Фиг. 2 описывает обработку способа регулировки канала I/O на виртуальной платформе согласно одному варианту осуществления настоящего изобретения, где обработка конкретно включает в себя следующие этапы:

S201. Хост вычисляет текущую среднюю производительность I/O множества виртуальных машин VM, работающих на хосте.

Конкретно, хост получает текущую среднюю производительность I/O множества машин VM посредством сначала вычисления текущей полной производительности I/O множества машин VM, работающих на хосте, и разделения полной производительности I/O на количество машин VM, работающих на хосте.

S202. Хост увеличивает рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O больше, чем первое пороговое значение, или уменьшает рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O меньше, чем второе пороговое значение.

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

Дополнительно, если текущая средняя производительность I/O множества машин VM больше, чем первое пороговое значение, до этапа увеличения, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, способ дополнительно включает в себя:

Хост сравнивает увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM; и если увеличение в производительности I/O больше, чем увеличение в использовании CPU, выполняет этап увеличения, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM.

Увеличение в использовании CPU является увеличенным использованием CPU, результирующим из увеличения рабочих потоков для обработки машин VM, по сравнению с отсутствием увеличения рабочих потоков для обработки машин VM, и может выражаться посредством величины увеличения использования CPU и/или скорости увеличения использования CPU; увеличение в производительности I/O является увеличенной производительностью I/O, результирующей из увеличения рабочих потоков для обработки машин VM, по сравнению с отсутствием увеличения рабочих потоков для обработки машин VM, и может выражаться посредством величины увеличения производительности I/O и/или скорости увеличения производительности I/O. Следует отметить, что настоящее изобретение не ограничивает то, как сравнивать увеличение в использовании CPU и увеличение в производительности I/O, два способа измерения обеспечиваются здесь только для цели иллюстрации. Если величина увеличения производительности I/O больше, чем величина увеличения использования CPU, или скорость увеличения производительности I/O больше, чем скорость увеличения использования CPU, определяется, что рабочие потоки для обработки машин VM должны увеличиваться.

Дополнительно, если текущая средняя производительность I/O меньше, чем второе пороговое значение, до этапа уменьшения, посредством хоста, рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, способ дополнительно включает в себя:

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

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

Следует отметить, что ресурс канала I/O включает в себя рабочий поток для обработки машины VM и очередь во внешнем устройстве и внутреннем устройстве машины VM.

S203. Согласно рабочим потокам для обработки машин VM после увеличения или уменьшения хост отдельно регулирует отношение сопоставления между очередями во внешних устройствах и внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM.

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

Конкретно, обработка, на которой хост отдельно регулирует, согласно рабочим потокам для обработки машин VM после увеличения или уменьшения, отношение сопоставления между очередями во внешних устройствах множества машин VM и рабочими потоками для обработки машин VM и отношение сопоставления между очередями во внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, включает в себя:

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

Дополнительно, после того, как хост отдельно регулирует, согласно рабочим потокам для обработки машин VM после увеличения или уменьшения, отношение сопоставления между очередями во внешних устройствах и внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, способ регулировки канала I/O на виртуальной платформе дополнительно включает в себя:

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

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

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

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

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

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

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

Фиг. 3 является схематической диаграммой, когда рабочий режим I/O между внешним устройством и внутренним устройством машины VM является режимом совместного использования, как показано на фиг. 3, машины VM, работающие на хосте, являются соответственно VM1, VM2 и VM3, рабочие потоки в модуле обработки данных являются соответственно рабочим потоком 1 и рабочим потоком 2, где рабочий поток 1 отдельно обрабатывает очередь 1 во внешнем устройстве и внутреннем устройстве машин VM1, VM2 и VM3 и рабочий поток 2 отдельно обрабатывает очередь 2 во внешнем устройстве и внутреннем устройстве машин VM1, VM2 и VM3.

Для гибридного режима, когда количество рабочих потоков для обработки машин VM больше или равно количеству машин VM, работающих на хосте, хост регулирует рабочий режим I/O между внешними устройствами и внутренними устройствами множества машин VM посредством установки гибридного режима, то есть рабочие потоки в модуле обработки данных обрабатывают данные в очередях внешних устройств и внутренних устройств множества машин VM посредством применения гибридного режима, в частности, рабочие потоки в модуле обработки данных могут быть классифицированы на два типа: эксклюзивно используемый рабочий поток и совместно используемый рабочий поток, где эксклюзивно используемый рабочий поток используется, чтобы отдельно обрабатывать данные в очереди во внешнем устройстве и очереди во внутреннем устройстве машины VM, и совместно используемый рабочий поток используется, чтобы обрабатывать данные, которые не обрабатываются посредством эксклюзивно используемого рабочего потока в очередях внешних устройств и внутренних устройств, по меньшей мере, двух машин VM.

Фиг. 4 является схематической диаграммой, когда рабочий режим I/O между внешним устройством и внутренним устройством машины VM является гибридным режимом, и, как показано на фиг. 4, машины VM, работающие на хосте, являются соответственно VM1, VM2 и VM3, и имеется четыре рабочих потока в модуле обработки данных, включающих в себя эксклюзивно используемый рабочий поток 1, эксклюзивно используемый рабочий поток 2, эксклюзивно используемый рабочий поток 3 и совместно используемый рабочий поток 1. Эксклюзивно используемый рабочий поток 1 отдельно обрабатывает данные в очереди 1 во внешнем устройстве и внутреннем устройстве машины VM1, эксклюзивно используемый рабочий поток 2 отдельно обрабатывает данные в очереди 1 внешнего устройства и внутреннего устройства машины VM2, эксклюзивно используемый рабочий поток 3 отдельно обрабатывает данные в очереди 1 внешнего устройства и внутреннего устройства машины VM3, и совместно используемый рабочий поток обрабатывает данные в очереди 2 внешнего устройства и внутреннего устройства каждой машины VM из VM1, VM2 и VM3. Фиг. 4 показывает только сценарий, в котором совместно используемый рабочий поток обрабатывает данные в очередях во внешнем устройстве и внутреннем устройстве каждой машины VM, по меньшей мере, двух машин VM. Совместно используемый рабочий поток может дополнительно обрабатывать данные в множестве очередей в другом сценарии, который не ограничен настоящим изобретением.

Дополнительно, из фиг. 3 и фиг. 4 можно видеть, что, в дополнение к формированию множества каналов I/O между внешними устройствами и внутренними устройствами множества машин VM, хост также может формировать множество каналов передачи данных между внутренними устройствами множества машин VM и реальным устройством посредством регулировки отношения сопоставления между очередями во внутренних устройствах множества машин VM и очередями в реальном устройстве хоста. Это обеспечивает множество каналов I/O между внешними устройствами множества машин VM и реальным устройством хоста и улучшает способность передачи данных между внешними устройствами множества машин VM и реальным устройством хоста.

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

Фиг. 5 описывает структуру устройства 500 для регулировки канала I/O на виртуальной платформе согласно одному варианту осуществления настоящего изобретения; и устройство 500 регулировки конкретно включает в себя:

модуль 501 вычисления, сконфигурированный с возможностью вычислять текущую среднюю производительность I/O множества виртуальных машин VM, работающих на хосте;

модуль 502 обработки, который соединен с модулем 501 вычисления, сконфигурированный с возможностью увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля 501 вычисления, больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются; или уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля 501 вычисления, меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение;

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

Необязательно, устройство 500 регулировки дополнительно включает в себя:

модуль 504 определения, сконфигурированный с возможностью сравнивать увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля 501 вычисления, больше, чем первое пороговое значение;

модуль 502 обработки дополнительно сконфигурирован с возможностью увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, если модуль 504 определения определяет, что увеличение в производительности I/O больше, чем увеличение в использовании CPU, так что средняя производительность I/O множества машин VM меньше, чем первый порог, после того, как рабочие потоки увеличиваются.

Необязательно, устройство 500 регулировки дополнительно включает в себя:

модуль 504 определения, сконфигурированный с возможностью определять, ведет ли уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, к неспособности реагировать на производительность множества машин VM, когда текущая средняя производительность I/O, вычисленная посредством модуля 501 вычисления, меньше, чем второе пороговое значение;

модуль 502 обработки дополнительно сконфигурирован с возможностью уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, если модуль 504 определения определяет, что уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, не ведет к неспособности реагировать на производительность множества машин VM, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются.

Дополнительно, первый модуль 503 регулировки конкретно сконфигурирован с возможностью:

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

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

Так как второй модуль 505 регулировки формирует множество каналов передачи данных между внутренними устройствами множества машин VM и реальным устройством, множество каналов I/O формируются между внешними устройствами множества машин VM и реальным устройством хоста и между множеством машин VM и реальным устройством хоста способность передачи данных улучшается.

Как можно видеть из вышеупомянутого варианта осуществления, устройство для регулировки канала I/O на виртуальной платформе определяет, увеличивать ли или уменьшать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM согласно текущей средней производительности I/O множества машин VM; когда текущая средняя производительность I/O множества машин VM больше, чем первое пороговое значение, увеличивает рабочие потоки для обработки машин VM, то есть увеличивает ресурсы каналов I/O, чтобы улучшать способность передачи данных канала I/O; и когда текущая средняя производительность I/O множества машин VM меньше, чем второе пороговое значение, уменьшает рабочие потоки для обработки машин VM, то есть уменьшает ресурсы каналов I/O, чтобы избежать растраты ресурсов каналов I/O.

Фиг. 6 описывает структуру устройства 600 для регулировки канала I/O на виртуальной платформе согласно другому варианту осуществления настоящего изобретения, и устройство 600 регулировки включает в себя: по меньшей мере, один процессор 601, например, CPU, по меньшей мере, один сетевой интерфейс 604 или другой пользовательский интерфейс 603, память 605, и, по меньшей мере, шину 602 передачи данных. Шина 602 передачи данных сконфигурирована с возможностью осуществлять соединение и передачу данных между этими компонентами. Пользовательский интерфейс 603, необязательно включенный в устройство 600 регулировки, включает в себя дисплей, клавиатуру или указательное устройство (например, мышь, шаровой указатель, сенсорную панель, или сенсорный отображающий экран). Память 605 может включать в себя высокоскоростную память RAM и может также включать в себя энергонезависимую память, например, по меньшей мере, одну память магнитного диска. Память 605 может необязательно включать в себя, по меньшей мере, одно устройство памяти, находящееся далеко от процессора 601. В некоторых вариантах осуществления, память 605 может дополнительно включать в себя операционную систему 606 и множество программ, чтобы реализовать различные базовые службы и задачи обработки на основе аппаратного обеспечения.

Процессор 601 конкретно сконфигурирован с возможностью:

вычислять текущую среднюю производительность I/O множества виртуальных машин VM, работающих на хосте;

увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются; или уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение; и

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

Дополнительно, если текущая средняя производительность I/O больше, чем первое пороговое значение, до выполнения этапа увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, процессор 601 дополнительно сконфигурирован с возможностью: сравнивать увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM; и если увеличение в производительности I/O больше, чем увеличение в использовании CPU, выполнять этап увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM.

Если текущая средняя производительность I/O меньше, чем второе пороговое значение, до выполнения этапа уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, процессор 601 дополнительно сконфигурирован с возможностью: определять, ведет ли уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, к неспособности реагировать на производительность множества машин VM; если уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, не ведет к неспособности реагировать на производительность множества машин VM, выполнять этап уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM.

Дополнительно, то, что процессор 601 сконфигурирован с возможностью отдельно регулировать, согласно рабочим потокам для обработки машин VM после увеличения или уменьшения, отношение сопоставления между очередями во внешних устройствах и внутренних устройствах множества машин VM и рабочими потоками для обработки машин VM, включает в себя:

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

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

Из вышеупомянутого варианта осуществления можно видеть, что устройство для регулировки канала I/O на виртуальной платформе определяет, увеличивать ли или уменьшать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, согласно текущей средней производительности I/O множества машин VM; когда текущая средняя производительность I/O множества машин VM больше, чем первое пороговое значение, увеличивает рабочие потоки для обработки машин VM, то есть увеличивает ресурсы каналов I/O, чтобы улучшать способность передачи данных канала I/O; и когда текущая средняя производительность I/O множества машин VM меньше, чем второе пороговое значение, уменьшает рабочие потоки для обработки машин VM, то есть уменьшает ресурсы каналов I/O, чтобы избежать растраты ресурсов каналов I/O.

Следует отметить, что способ, раскрытый посредством вариантов осуществления настоящего изобретения, может применяться к процессору 601, или другими словами, может осуществляться посредством процессора 601. Процессор 601 может быть кристаллом интегральной схемы и имеет способность исполнения инструкций и данных и способность обработки сигналов. В процессе реализации, этапы в способах могут осуществляться посредством использования аппаратной интегрированной логической схемы в процессоре 601, или инструкции в форме программного обеспечения. Процессор может быть центральным обрабатывающим устройством (CPU), цифровым сигнальным процессором (DSP), специализированной интегральной схемой (ASIC), программируемой пользователем вентильной матрицей (FPGA), другим программируемым логическим компонентом, дискретным логическим элементом или транзисторным логическим устройством и обособленным аппаратным компонентом и может осуществлять или выполнять все способы, этапы и логическую блочную диаграмму, раскрытые посредством вариантов осуществления настоящего изобретения. Процессор общего назначения может быть микропроцессором, или любым стандартным процессором, или подобным. Этапы в способе, раскрытом посредством вариантов осуществления настоящего изобретения, могут напрямую осуществляться посредством аппаратного процессора, или могут осуществляться посредством комбинирования аппаратных и программных модулей в процессоре. Программный модуль может располагаться в запоминающем носителе, известном в данной области техники, таком как оперативное запоминающее устройство, флэш-память, постоянное запоминающее устройство, программируемое постоянное запоминающее устройство, электрически стираемая программируемая память и регистр. Запоминающий носитель располагается в процессоре 605, и процессор считывает информацию в памяти 605 и осуществляет вышеупомянутые этапы со ссылкой на аппаратное обеспечение процессора.

Фиг. 7 описывает структуру хоста 700, обеспеченного согласно одному варианту осуществления настоящего изобретения, и хост включает в себя: реальное устройство 705, внешние устройства и внутренние устройства в множестве виртуальных машин VM, работающих в реальном устройстве 705, и модуль 702 обработки данных, который располагается между внешними устройствами и внутренними устройствами множества машин VM, и мост 704, который располагается между внутренними устройствами множества машин VM и реальным устройством 705.

Внешние устройства множества машин VM включают в себя внешнее устройство 7011 машины VM1 и внешнее устройство 7012 машины VM2; внутренние устройства множества машин VM включают в себя внутреннее устройство 7031 машины VM1 и внутреннее устройство 7032 машины VM2; мост 704 является сетевым устройством или программным обеспечением, расположенным между внутренним устройством машины VM и реальным устройством хоста, осуществляет сетевое соединение между внутренним устройством машины VM и реальным устройством хоста и передает кадр данных; реальное устройство 705 является аппаратной платформой, на которой работает виртуальная среда и может включать в себя множество аппаратного обеспечения, например, реальное устройство вычислительного узла может включать в себя процессор (например, CPU) и память и может дополнительно включать в себя высокоскоростное/низкоскоростное устройство ввода/вывода (I/O), такое как сетевой адаптер, память.

Модуль 702 обработки данных сконфигурирован с возможностью:

вычислять текущую среднюю производительность I/O множества машин VM;

увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O больше, чем первое пороговое значение, так что средняя производительность I/O множества машин VM больше, чем первое пороговое значение после того, как рабочие потоки увеличиваются; или уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, когда текущая средняя производительность I/O меньше, чем второе пороговое значение, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки уменьшаются, где первое пороговое значение больше, чем второе пороговое значение; и

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

Необязательно, модуль 702 обработки данных дополнительно сконфигурирован с возможностью:

сравнивать увеличение в использовании CPU и увеличение в производительности I/O, результирующие из увеличения рабочих потоков для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM; и если увеличение в производительности I/O больше, чем увеличение в использовании CPU, увеличивать рабочие потоки для обработки машин VM между внешними устройствами и внутренними устройствами множества машин VM, так что средняя производительность I/O множества машин VM меньше, чем первое пороговое значение после того, как рабочие потоки увеличиваются.

Необязательно, модуль 702 обработки данных дополнительно сконфигурирован с возможностью:

определять, ведет ли уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, к неспособности реагировать на производительность множества машин VM; уменьшать рабочие потоки между внешними устройствами и внутренними устройствами множества машин VM, если уменьшение в использовании CPU, результирующее из уменьшения рабочих потоков между внешними устройствами и внутренними устройствами множества машин VM, не ведет к неспособности реагировать на производительность множества машин VM, так что средняя производительность I/O множества машин VM больше, чем второе пороговое значение после того, как рабочие потоки увеличиваются.

Следует отметить, что модуль 702 обработки данных может осуществлять способ, раскрытый в варианте 1 осуществления, который здесь снова не описывается, и не должен интерпретироваться как ограничение на способ, раскрытый в варианте 1 осуществления; модуль 702 обработки данных, в общем, реализуется посредством программного обеспечения, то есть реализуется посредством считывания, посредством процессора, инструкции программного кода со специальной функцией. То, что модуль 702 обработки данных осуществляется посредством программного обеспечения, является только предпочтительным решением осуществления, специалисты в данной области техники также могут осуществлять программный способ блока 702 обработки данных с помощью логики аппаратного обеспечения, такой как процессор (например, CPU, DSP), которая не ограничена настоящим изобретением.

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

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


СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
СПОСОБ И УСТРОЙСТВО ДЛЯ РЕГУЛИРОВКИ КАНАЛА I/О НА ВИРТУАЛЬНОЙ ПЛАТФОРМЕ
Источник поступления информации: Роспатент

Showing 21-30 of 705 items.
27.06.2013
№216.012.527a

Способ, устройство и система для распределения мощности нисходящей линии связи

Изобретение относится к радиосвязи. Варианты осуществления настоящего изобретения раскрывают способ, устройство и систему для распределения мощности нисходящей линии связи, которые могут решить проблему распределения мощности нисходящей линии связи в среде согласованной многоточечной передачи...
Тип: Изобретение
Номер охранного документа: 0002486707
Дата охранного документа: 27.06.2013
27.06.2013
№216.012.527e

Способ ретрансляционной передачи и сетевой узел

Изобретение относится к области техники беспроводной связи и, в частности, к способу ретрансляционной передачи и сетевому узлу, чтобы обеспечивать обратную совместимость UE в существующей LTE-системе. Изобретение раскрывает способ, который включает в себя: прием конфигурационной информации о...
Тип: Изобретение
Номер охранного документа: 0002486711
Дата охранного документа: 27.06.2013
10.07.2013
№216.012.558c

Способ осуществления переключения на местный прием, центр коммутации мобильной связи и система связи

Изобретение относится к области технологии связи и предназначено для осуществления переключения на местный прием вызова. Технический результат - обеспечение переключения на местный прием вызова. Для этого, когда оба абонента вызова находятся в зоне первого MSC центра и второго MSC центра,...
Тип: Изобретение
Номер охранного документа: 0002487503
Дата охранного документа: 10.07.2013
20.07.2013
№216.012.585e

Способ, устройство и система для управления выделением идентификаторов туннелей

Заявленное изобретение относится к способу, устройству и системе для управления выделением идентификаторов туннелей. Технический результат состоит в недопущении потерь пакетов служебных данных пользователя или прерывания обслуживания, вызываемых посредством того, что SGW модифицирует...
Тип: Изобретение
Номер охранного документа: 0002488230
Дата охранного документа: 20.07.2013
27.07.2013
№216.012.5b3b

Способ, элемент сети и мобильная станция для согласования алгоритмов шифрования

Изобретение относится к передаче данных, а именно к способам и устройствам для согласования алгоритмов шифрования. Техническим результатом является уменьшение количества ошибок передачи данных. Технический результат достигается тем, что заявленный способ согласования алгоритмов шифрования...
Тип: Изобретение
Номер охранного документа: 0002488976
Дата охранного документа: 27.07.2013
27.08.2013
№216.012.6626

Способ поискового вызова, способ обновления местоположения и устройство

Изобретение относится к средствам поискового вызова и обновления местоположения. Технический результат заключается в сокращение потерь на сигнализацию поискового вызова и экономии ресурсов поискового вызова. Принимают посредством eNodeB сообщение поискового вызова, причем сообщение поискового...
Тип: Изобретение
Номер охранного документа: 0002491787
Дата охранного документа: 27.08.2013
27.09.2013
№216.012.70de

Способ и устройство обработки передачи сигнала и распределенная базовая станция

Изобретение относится к технике связи и может использоваться в системах беспроводной связи. Технический результат состоит в повышении эффективности передачи сигнала. Для этого распределенная базовая станция включает в себя блок базовой полосы (BBU) и удаленный радиоблок (RRU), причем получают...
Тип: Изобретение
Номер охранного документа: 0002494545
Дата охранного документа: 27.09.2013
10.10.2013
№216.012.74b2

Способы, системы и устройства для получения, интерпретации и подтверждения состояния приема данных

Настоящее изобретение относится к технологиям связи. Представлены способы, системы и устройства получения, интерпретации и подтверждения состояния приема данных. Технический результат изобретения заключается в увеличении скорости передачи данных. Способ включает в себя этапы, на которых:...
Тип: Изобретение
Номер охранного документа: 0002495531
Дата охранного документа: 10.10.2013
10.10.2013
№216.012.74c3

Способ, устройство и система мобильной связи для обеспечения бесперебойности обслуживания

Заявленное изобретение относится к области мобильной связи. Технический результат состоит в том, чтобы дать возможность максимальным образом обеспечивать бесперебойность обслуживания UE после того как сота непредвиденно дала сбой в работе и не может функционировать должным образом. Для этого, в...
Тип: Изобретение
Номер охранного документа: 0002495548
Дата охранного документа: 10.10.2013
20.10.2013
№216.012.776f

Способ и устройство для формирования частотно-временных шаблонов для опорного сигнала в ofdm-системе беспроводной связи

Изобретение относится к технике связи и может использоваться в системах беспроводной связи. Технический результат состоит в повышении точности определения местоположения мобильного пользователя системы связи. Для этого способ беспроводной связи включает в себя формирование первого...
Тип: Изобретение
Номер охранного документа: 0002496235
Дата охранного документа: 20.10.2013
Showing 21-30 of 371 items.
27.06.2013
№216.012.5219

Способ кодирования сигнала и способ декодирования сигнала

Изобретение относится к способу, устройству и системе для кодирования и декодирования сигналов. Способ кодирования включает в себя этапы, на которых: преобразуют сигнал первой области в сигнал второй области; выполняют обработку Линейного Предсказания (Linear Predictive, LP) и обработку...
Тип: Изобретение
Номер охранного документа: 0002486610
Дата охранного документа: 27.06.2013
27.06.2013
№216.012.5279

Способ и устройство для определения мощности передачи

Изобретение относится к технологиям связи. В настоящем изобретении описываются способ и устройство для определения мощности передачи. Способ для определения мощности передачи включает в себя то, что: коэффициент усиления выделенного физического канала передачи данных усовершенствованного...
Тип: Изобретение
Номер охранного документа: 0002486706
Дата охранного документа: 27.06.2013
27.06.2013
№216.012.527a

Способ, устройство и система для распределения мощности нисходящей линии связи

Изобретение относится к радиосвязи. Варианты осуществления настоящего изобретения раскрывают способ, устройство и систему для распределения мощности нисходящей линии связи, которые могут решить проблему распределения мощности нисходящей линии связи в среде согласованной многоточечной передачи...
Тип: Изобретение
Номер охранного документа: 0002486707
Дата охранного документа: 27.06.2013
27.06.2013
№216.012.527e

Способ ретрансляционной передачи и сетевой узел

Изобретение относится к области техники беспроводной связи и, в частности, к способу ретрансляционной передачи и сетевому узлу, чтобы обеспечивать обратную совместимость UE в существующей LTE-системе. Изобретение раскрывает способ, который включает в себя: прием конфигурационной информации о...
Тип: Изобретение
Номер охранного документа: 0002486711
Дата охранного документа: 27.06.2013
10.07.2013
№216.012.558c

Способ осуществления переключения на местный прием, центр коммутации мобильной связи и система связи

Изобретение относится к области технологии связи и предназначено для осуществления переключения на местный прием вызова. Технический результат - обеспечение переключения на местный прием вызова. Для этого, когда оба абонента вызова находятся в зоне первого MSC центра и второго MSC центра,...
Тип: Изобретение
Номер охранного документа: 0002487503
Дата охранного документа: 10.07.2013
20.07.2013
№216.012.585e

Способ, устройство и система для управления выделением идентификаторов туннелей

Заявленное изобретение относится к способу, устройству и системе для управления выделением идентификаторов туннелей. Технический результат состоит в недопущении потерь пакетов служебных данных пользователя или прерывания обслуживания, вызываемых посредством того, что SGW модифицирует...
Тип: Изобретение
Номер охранного документа: 0002488230
Дата охранного документа: 20.07.2013
27.07.2013
№216.012.5b3b

Способ, элемент сети и мобильная станция для согласования алгоритмов шифрования

Изобретение относится к передаче данных, а именно к способам и устройствам для согласования алгоритмов шифрования. Техническим результатом является уменьшение количества ошибок передачи данных. Технический результат достигается тем, что заявленный способ согласования алгоритмов шифрования...
Тип: Изобретение
Номер охранного документа: 0002488976
Дата охранного документа: 27.07.2013
27.08.2013
№216.012.6626

Способ поискового вызова, способ обновления местоположения и устройство

Изобретение относится к средствам поискового вызова и обновления местоположения. Технический результат заключается в сокращение потерь на сигнализацию поискового вызова и экономии ресурсов поискового вызова. Принимают посредством eNodeB сообщение поискового вызова, причем сообщение поискового...
Тип: Изобретение
Номер охранного документа: 0002491787
Дата охранного документа: 27.08.2013
27.09.2013
№216.012.70de

Способ и устройство обработки передачи сигнала и распределенная базовая станция

Изобретение относится к технике связи и может использоваться в системах беспроводной связи. Технический результат состоит в повышении эффективности передачи сигнала. Для этого распределенная базовая станция включает в себя блок базовой полосы (BBU) и удаленный радиоблок (RRU), причем получают...
Тип: Изобретение
Номер охранного документа: 0002494545
Дата охранного документа: 27.09.2013
10.10.2013
№216.012.74b2

Способы, системы и устройства для получения, интерпретации и подтверждения состояния приема данных

Настоящее изобретение относится к технологиям связи. Представлены способы, системы и устройства получения, интерпретации и подтверждения состояния приема данных. Технический результат изобретения заключается в увеличении скорости передачи данных. Способ включает в себя этапы, на которых:...
Тип: Изобретение
Номер охранного документа: 0002495531
Дата охранного документа: 10.10.2013
+ добавить свой РИД