Способ и устройство балансировки сетевых ресурсов

Иллюстрации

Показать все

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

Реферат

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

[0001] Варианты осуществления настоящего изобретения относятся к области связи, и, более конкретно, к способу и устройству балансировки сетевых ресурсов.

УРОВЕНЬ ТЕХНИКИ

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

[0003] Технология виртуализации является ключевой технологией, которая реализует облачные вычисления. На платформе облачных вычислений существует шаблон виртуальной машины, и запускается экземпляр шаблона виртуальной машины, чтобы генерировать множество виртуальных машин для пользователей для использования. Чтобы улучшать использование сетевых ресурсов, множество виртуальных машин должны использоваться сбалансированным образом. В текущих облачных вычислениях, способ балансировки нагрузки сетевых ресурсов уведомляет клиента о состоянии ресурсов каждой виртуальной машины. Конкретно, независимый адрес протокола Интернет (IP для краткости) сначала назначается каждой виртуальной машине. Когда пользователь осуществляет доступ к сети посредством использования клиента, платформа облачных вычислений отправляет содержимое, такое как адрес IP каждой виртуальной машины и информацию нагрузки виртуальной машины, в клиент. Клиент выбирает виртуальную машину согласно информации нагрузки виртуальной машины посредством использования конкретного протокола выбора.

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

[0006] Согласно первому аспекту, обеспечивается способ балансировки сетевых ресурсов, включающий в себя:

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

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

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

[0009] Со ссылкой на второй возможный вариант воплощения первого аспекта, в третьем возможном варианте воплощения, способ дополнительно включает в себя: прием, посредством модуля балансировки, информации запроса протокола разрешения адресов ARP, отправленной предыдущим транзитным устройством модуля балансировки, где информация запроса ARP включает в себя адрес IP области, включающей в себя множество виртуальных машин, и используется, чтобы запрашивать адрес MAC, соответствующий адресу IP области; отправку, посредством модуля балансировки, адреса MAC области, включающей в себя множество виртуальных машин, в предыдущее транзитное устройство модуля балансировки; и прием, посредством модуля балансировки, пакета запроса доступа включает в себя:

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

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

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

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

[0013] Со ссылкой на второй аспект, в первом возможном варианте воплощения, отдельное назначение, посредством контроллера, идентификационной информации множеству виртуальных машин включает в себя: назначение, посредством контроллера, одного и тот же адреса IP протокола Интернет и разных адресов MAC управления доступом к среде передачи множеству виртуальных машин; и назначение, посредством контроллера согласно идентификационной информации, назначенной множеству виртуальных машин, идентификационной информации области, включающей в себя множество виртуальных машин, включает в себя: назначение, посредством контроллера согласно одному и тому же адресу IP и разным адресам MAC, назначенным множеству виртуальных машин, адреса IP, такого же как адрес IP множества виртуальных машин, и адреса MAC, отличающегося от адресов MAC множества виртуальных машин, области, включающей в себя множество виртуальных машин.

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

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

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

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

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

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

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

[0021] Со ссылкой на второй возможный вариант воплощения третьего аспекта, третий возможный вариант воплощения включает в себя: модуль приема дополнительно сконфигурирован с возможностью принимать информацию запроса протокола разрешения адресов ARP, отправленную предыдущим транзитным устройством устройства, где информация запроса ARP включает в себя адрес IP области, включающей в себя множество виртуальных машин, и используется, чтобы запрашивать адрес MAC, соответствующий адресу IP области; модуль отправки дополнительно сконфигурирован с возможностью отправлять адрес MAC области, включающей в себя множество виртуальных машин, в предыдущее транзитное устройство устройства; и то, что модуль приема сконфигурирован с возможностью принимать пакет запроса доступа, включает в себя: модуль приема сконфигурирован с возможностью принимать пакет запроса доступа, который переносит идентификационную информацию области, включающей в себя множество виртуальных машин, и который отправлен предыдущим транзитным устройством устройства согласно адресу MAC области, включающей в себя множество виртуальных машин.

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

[0023] Со ссылкой на третий или четвертый возможный вариант воплощения третьего аспекта, в пятом возможном варианте воплощения, адрес IP в сообщении запроса ARP переносится в пакете запроса доступа, который отправляется клиентом согласно адресу IP области, включающей в себя множество виртуальных машин, и который принимается предыдущим транзитным устройством устройства.

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

[0025] Со ссылкой на четвертый аспект, в первом возможном варианте воплощения, то, что модуль обработки устройства сконфигурирован с возможностью отдельно назначать идентификационную информацию множеству виртуальных машин, включает в себя: модуль обработки сконфигурирован с возможностью назначать один и тот же адрес IP протокола Интернет и разные адреса MAC управления доступом к среде передачи множеству виртуальных машин; и то, что модуль обработки сконфигурирован с возможностью назначать согласно идентификационной информации, назначенной множеству виртуальных машин, идентификационную информацию области, включающей в себя множество виртуальных машин, включает в себя: модуль обработки сконфигурирован с возможностью назначать согласно одному и тому же адресу IP и разным адресам MAC, назначенным множеству виртуальных машин, адрес IP, такой же как адрес IP множества виртуальных машин, и адрес MAC, отличающийся от адресов MAC множества виртуальных машин, области, включающей в себя множество виртуальных машин.

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

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

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

[0031] Фиг. 1 показывает схематическую диаграмму сетевой архитектуры, на которой основываются варианты осуществления настоящего изобретения;

[0032] Фиг. 2 показывает схематическую блок-схему последовательности операций способа балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения;

[0033] Фиг. 3 показывает схематическую блок-схему последовательности операций способа балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения;

[0034] Фиг. 4 показывает схематическую блок-схему устройства балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения;

[0035] Фиг. 5 показывает схематическую блок-схему устройства балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения;

[0036] Фиг. 6 показывает схематическую блок-схему устройства балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения; и

[0037] Фиг. 7 показывает схематическую блок-схему устройства балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

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

[0039] Следует понимать, что, технические решения в вариантах осуществления настоящего изобретения могут применяться к различным системам связи, таким как: система Глобальной системы мобильной связи (Global System of Mobile communication, GSM для краткости), система множественного доступа с кодовым разделением каналов (Code Division Multiple Access, CDMA для краткости), система широкополосного множественного доступа с кодовым разделением каналов (Wideband Code Division Multiple Access, WCDMA для краткости), пакетная радиосвязь общего назначения (General Packet Radio Service, GPRS для краткости), система долговременного развития (Long Term Evolution, LTE для краткости), система дуплекса с частотным разделением LTE (Frequency Division Duplex, FDD для краткости), дуплекс с временным разделением LTE (Time Division Duplex, TDD для краткости), Универсальная система мобильной связи (Universal Mobile Telecommunication System, UMTS для краткости), система Всемирной способности к взаимодействию для микроволнового доступа (Worldwide Interoperability for Microwave Access, WiMAX для краткости).

[0040] Фиг. 1 показывает схематическую диаграмму сетевой архитектуры, на которой основываются варианты осуществления настоящего изобретения. Следует понимать, что сетевая архитектура, показанная на фиг. 1, является предпочтительной прикладной архитектурой вариантов осуществления настоящего изобретения, но варианты осуществления настоящего изобретения также могут основываются на другой сетевой архитектуре, что не ограничено в вариантах осуществления настоящего изобретения.

[0041] Как показано на фиг. 1, платформа облачных вычислений включает в себя узел управления, вычислительный узел, и узел управления сетью.

[0042] Облачные вычисления являются режимом вычислений, в котором динамически масштабируемые и виртуализованные ресурсы обеспечиваются способом обслуживания по сети Интернет. Ресурсы включают в себя ряд ресурсов, которые могут динамически обновляться и виртуализироваться, и ресурсы могут совместно использоваться пользователями облачных вычислений и к ним может легко осуществляться доступ по сети Интернет. В облачных вычислениях, в общем, используется модель "оплата за использование". В модели, обеспечивается доступный, удобный, и обеспечиваемый по требованию сетевой доступ для осуществления доступа к совместно используемому пулу конфигурируемых вычислительных ресурсов (ресурсы включают в себя сеть, сервер, хранилище, прикладное программное обеспечение, и услугу). Ресурсы могут быстро предоставляться, и требуется только минимальное усилие управления, или выполняется малое количество взаимодействий с поставщиком услуг.

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

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

[0045] Фиг. 2 показывает схематическую блок-схему последовательности операций способа балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения. Способ может исполняться посредством любого соответствующего устройства, например, может исполняться посредством контроллера, что, однако, не ограничено в настоящем изобретении. Как показано на фиг. 2, способ включает в себя следующие этапы.

[0046] S201. Контроллер запускает множество виртуальных машин и отдельно назначает идентификационную информацию множеству виртуальных машин.

[0047] Контроллер может создавать виртуальную машину на платформе облачных вычислений. То есть, контроллер запускает множество виртуальных машин на платформе облачных вычислений. Контроллер назначает идентификационную информацию множеству виртуальных машин. В общем, идентификационная информация может быть адресом IP и адресом управления доступом к среде передачи (Media Access Control, MAC для краткости) виртуальной машины. Контроллер может отдельно назначать один и тот же адрес IP и разные адреса MAC множеству виртуальных машин.

[0048] S202. Контроллер назначает согласно идентификационной информации, назначенной множеству виртуальных машин, идентификационную информацию области, включающей в себя множество виртуальных машин.

[0049] Конкретно, после того, как контроллер отдельно назначает идентификационную информацию множеству виртуальных машин (то есть, контроллер отдельно назначает один и тот же адрес IP и разные адреса MAC множеству виртуальных машин на S201), контроллер назначает, на основе идентификационной информации, назначенной множеству виртуальных машин, идентификационную информацию области, включающей в себя множество виртуальных машин. Конкретно, контроллер назначает, области, включающей в себя множество виртуальных машин, адрес IP, такой же как адрес IP множества виртуальных машин, и адрес MAC, отличающийся от адресов MAC множества виртуальных машин.

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

[0051] S203. Контроллер принимает информацию нагрузки, отправленную множеством виртуальных машин.

[0052] Конкретно, контроллер может отправлять сообщение запроса множеству виртуальных машин, чтобы запрашивать информацию нагрузки множества виртуальных машин, и множество виртуальных машин отправляют соответствующую информацию нагрузки в контроллер. Альтернативно, множество виртуальных машин упреждающим образом отправляют соответствующую информацию нагрузки в контроллер.

[0053] В дополнение, этот вариант осуществления настоящего изобретения не накладывает ограничение на порядок S203 и S202.

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

[0055] Конкретно, контроллер отправляет идентификационную информацию множества виртуальных машин (адрес IP и адреса MAC множества виртуальных машин), информацию нагрузки множества виртуальных машин и идентификационную информацию области, включающей в себя множество виртуальных машин (адрес IP и адрес MAC области, включающей в себя множество виртуальных машин).

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

[0057] Необязательно, техническое решение, обеспеченное в этом варианте осуществления настоящего изобретения, может дополнительно включать в себя:

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

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

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

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

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

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

[0062] Фиг. 3 показывает схематическую блок-схему последовательности операций способа балансировки сетевых ресурсов согласно одному варианту осуществления настоящего изобретения. Способ может исполняться посредством модуля балансировки, что, однако, не ограничено в настоящем изобретении. Способ, обеспеченный в этом варианте осуществления настоящего изобретения, и способ, обеспеченный в ва