RU2671046C2 - Центры обработки данных конечных точек с разными наборами арендаторов - Google Patents

Центры обработки данных конечных точек с разными наборами арендаторов Download PDF

Info

Publication number
RU2671046C2
RU2671046C2 RU2015155711A RU2015155711A RU2671046C2 RU 2671046 C2 RU2671046 C2 RU 2671046C2 RU 2015155711 A RU2015155711 A RU 2015155711A RU 2015155711 A RU2015155711 A RU 2015155711A RU 2671046 C2 RU2671046 C2 RU 2671046C2
Authority
RU
Russia
Prior art keywords
endpoint
data center
data
tenant
tenants
Prior art date
Application number
RU2015155711A
Other languages
English (en)
Other versions
RU2015155711A3 (ru
RU2015155711A (ru
Inventor
Срирам САМПАТХ
Тристан Уилльям СКОТТ
Удо Майлз БЕН-ШАХАР
Эрсев Самим ЭРДОГАН
Нирадж АГАРВАЛА
Original Assignee
МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи filed Critical МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи
Publication of RU2015155711A publication Critical patent/RU2015155711A/ru
Publication of RU2015155711A3 publication Critical patent/RU2015155711A3/ru
Application granted granted Critical
Publication of RU2671046C2 publication Critical patent/RU2671046C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

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

Description

УРОВЕНЬ ТЕХНИКИ
[0001] Рабочие столы являются платформами, которые можно использовать для запуска других приложений. В средах удаленных рабочих столов предоставляется платформа рабочих столов в удаленном, по сравнению с клиентской машиной, которая наблюдает рабочий стол, расположении. В этом смысле платформу удаленных рабочих столов можно считать конечной точкой запуска приложения, когда клиент подключается к этой конечной точке, чтобы получить возможности запуска приложения, предоставленные платформой рабочих столов.
[0002] Примером конечной точки запуска приложения является виртуальная машина. Виртуальная машина удаленно выполняет логику рабочих столов, но предоставляет локальной клиентской машине команды визуализации. Пользователь может взаимодействовать с клиентской машиной для запуска приложений, которые будут выполняться применительно к виртуальной машине. Другим примером конечной точки запуска приложения является сеанс, управляемый серверами управления сеансами (также называемыми сервером терминалов).
[0003] Традиционно конечные точки запуска приложений разворачиваются в "частном облаке", означающем, что центр обработки данных, который поддерживает конечную точку запуска приложения, управляется и поддерживается на предприятии, соответствующем пользователям, которых обслуживают конечные точки. В последнее время конечные точки запуска приложений развернуты в "общедоступном облаке" в центрах обработки данных, которые поддерживают нескольких арендаторов и которые, возможно, располагаются удаленно от арендаторов, которых поддерживает центр (центры) обработки данных.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0004] По меньшей мере некоторые описанные в этом документе варианты осуществления относятся к использованию посредника конечных точек для предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов. При обращении к запросу подключения к конечной точке запуска приложения для пользователя посредник выбирает центр обработки данных среди нескольких центров обработки данных, который должен предоставить конечную точку для выполнения запроса. Несколько центров обработки данных могут включать в себя центры обработки данных, которые имеют разные наборы арендаторов. Только в качестве примера, центры обработки данных могли бы включать в себя центр обработки данных предприятия, который представляет собой частное облако, которое обслуживает только субъектов в рамках предприятия, соответственно имея одного арендатора. Центры обработки данных могли бы включать в себя общедоступный центр обработки данных, который представляет собой общедоступное облако, которое обслуживает широкий спектр возможных арендаторов, которые могут подключаться по сети к общедоступному центру обработки данных, соответственно представляя теоретически еще большее количество арендаторов. Центры обработки данных также могли бы включать в себя центр обработки данных поставщика услуг размещения, который обслуживает несколько арендаторов, но больше ограничен, нежели общедоступный центр обработки данных, в плане размера и количества арендаторов, которых он обслуживает.
[0005] Посредник конечных точек идентифицирует конечную точку из выбранного центра обработки данных, а затем ассоциирует идентифицированную конечную точку с пользователем. Затем пользователю предоставляется доступ к идентифицированной конечной точке с использованием той ассоциации. Таким образом, пользователь не ограничен наличием конечной точки из одного центра обработки данных. Если существуют проблемы с предоставлением конечной точки из одного центра обработки данных, то конечную точку можно предоставить из другого центра обработки данных прозрачным для пользователя способом. Это позволяет предприятиям вести более гибкую политику касательно того, откуда они собираются предоставлять конечные точки. Например, если частное облако слишком занято, чтобы предоставить конечную точку, то вместо него общедоступное облако или поставщик услуг размещения могли бы предоставить конечную точку.
[0006] Данное краткое изложение сущности изобретения не предназначена ни для определения ключевых признаков или существенных признаков заявленного изобретения, ни для использования в качестве содействия в определении объема заявленного изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0007] Чтобы описать способ, которым можно получить вышеперечисленные и другие преимущества и признаки, конкретное описание различных вариантов осуществления будет представлено посредством ссылки на прилагаемые чертежи. Предполагая, что эти чертежи изображают только примерные варианты осуществления и поэтому не должны рассматриваться как ограничивающие объем изобретения, варианты осуществления будут описываться и объясняться с помощью дополнительной специфики и подробностей посредством использования прилагаемых чертежей, на которых:
[0008] Фиг. 1 абстрактно иллюстрирует вычислительную систему, в которой могут применяться некоторые описанные в этом документе варианты осуществления;
[0009] Фиг. 2 иллюстрирует сетевую среду, в которой могут применяться описанные в этом документе принципы, включающую в себя по меньшей мере два центра обработки данных, имеющих разные наборы арендаторов;
[0010] Фиг. 3 иллюстрирует логическую блок-схему способа для предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов; и
[0011] Фиг. 4 иллюстрирует сетевую среду, представляющую собой вариант осуществления из фиг. 2, но в которой проиллюстрировано три центра обработки данных, имеющих разные наборы арендаторов.
ПОДРОБНОЕ ОПИСАНИЕ
[0012] По меньшей мере некоторые описанные в этом документе варианты осуществления относятся к использованию посредника конечных точек для предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов. Использование нескольких центров обработки данных с разными наборами арендаторов позволяет любому данному арендатору получить более гибкий доступ к конечной точке запуска приложения независимо от того, откуда предоставляется конечная точка. Можно установить политику для определения, из какого центра обработки данных должна предоставляться конечная точка, чтобы выполнить любой данный запрос подключения.
[0013] При обращении к запросу подключения к конечной точке запуска приложения для пользователя посредник выбирает центр обработки данных среди нескольких центров обработки данных, который должен предоставить конечную точку для выполнения запроса. Несколько центров обработки данных могут включать в себя центры обработки данных, которые имеют разные наборы арендаторов. Только в качестве примера центры обработки данных могли бы включать в себя центр обработки данных предприятия, который представляет собой частное облако, которое обслуживает только субъектов в рамках предприятия, соответственно имея одного арендатора. Центры обработки данных могли бы включать в себя общедоступный центр обработки данных, который представляет собой общедоступное облако, которое обслуживает широкий спектр возможных арендаторов, которые могут подключаться по сети к общедоступному центру обработки данных, соответственно представляя теоретически еще большее количество арендаторов. Центры обработки данных также могли бы включать в себя центр обработки данных поставщика услуг размещения, который обслуживает несколько арендаторов, но больше ограничен, нежели общедоступный центр обработки данных, в плане размера и количества арендаторов, которых он обслуживает.
[0014] Посредник конечных точек идентифицирует конечную точку из выбранного центра обработки данных. Для этого посредник конечных точек мог бы осуществить связь с тем центром обработки данных, который выбран для предоставления конечной точки. Затем посредник конечных точек ассоциирует идентифицированную конечную точку с пользователем. Затем пользователю предоставляется доступ к идентифицированной конечной точке с использованием той ассоциации. Например, последующая связь от того пользователя может предоставляться ассоциированной конечной точке посредником конечных точек. Таким образом, пользователь не ограничен наличием конечной точки из одного центра обработки данных. Если существуют проблемы с предоставлением конечной точки из одного центра обработки данных, то конечную точку можно предоставить из другого центра обработки данных прозрачным для пользователя способом. Это позволяет предприятиям вести более гибкую политику касательно того, откуда они собираются предоставлять конечные точки. Например, если частное облако слишком занято, чтобы предоставить конечную точку, то вместо него общедоступное облако или поставщик услуг размещения могли бы предоставить конечную точку. Это также предоставляет клиенту выгоды масштабируемого и гибкого облака. Клиентам не нужно предварительно резервировать максимальную емкость в их центре обработки данных частного облака; и могут полагаться на общедоступное облако в пиковые периоды.
[0015] Некоторое вводное обсуждение вычислительной системы будет проводиться по отношению к фиг. 1. Затем по отношению к фиг. 2–4 будет описываться использование нескольких центров обработки данных с разными наборами арендаторов для предоставления конечных точек.
[0016] Вычислительные системы теперь все чаще принимают широкий спектр форм. Вычислительные системы могут быть, например, карманными устройствами, бытовой техникой, переносными компьютерами, настольными компьютерами, мэйнфреймами, распределенными вычислительными системами или даже устройствами, которые традиционно не считались вычислительной системой. В этом описании и в формуле изобретения термин "вычислительная система" в общих чертах задается как включающий в себя любое устройство или систему (или их сочетание), которое (которая) включает в себя по меньшей мере один физический и материальный процессор и физическое и материальное запоминающее устройство, допускающее наличие в нем исполняемых компьютером команд, которые могут исполняться процессором. Запоминающее устройство может принимать любую форму и может зависеть от сущности и формы вычислительной системы. Вычислительная система может быть распределена по сетевой среде и может включать в себя несколько составляющих вычислительных систем.
[0017] Как проиллюстрировано на фиг. 1, в самой базовой конфигурации вычислительная система 100 обычно включает в себя по меньшей мере один блок 102 обработки и запоминающее устройство 104. Запоминающее устройство 104 может быть физической системной памятью, которая может быть энергозависимой, энергонезависимой или некоторым сочетанием этих двух типов. Термин "запоминающее устройство" также может использоваться в этом документе для ссылки на энергонезависимую массовую память, например физические носители информации. Если вычислительная система является распределенной, то с тем же успехом возможность обработки, запоминания и/или хранения может быть распределенной. При использовании в данном документе термин "исполняемый модуль" или "исполняемый компонент" может относиться к программным объектам, подпрограммам или способам, которые могут исполняться в вычислительной системе. Разные компоненты, модули, механизмы и службы, описанные в этом документе, можно реализовать в виде объектов или процессов, которые исполняются в вычислительной системе (например, в виде отдельных потоков).
[0018] В последующем описании варианты осуществления описываются со ссылкой на действия, которые выполняются одной или несколькими вычислительными системами. Если такие действия реализуются в программном обеспечении, то один или несколько процессоров в ассоциированной вычислительной системе, которая выполняет действие, управляют работой вычислительной системы в ответ на исполнение исполняемых компьютером команд. Например, такие исполняемые компьютером команды можно воплотить в одном или нескольких машиночитаемых носителях, которые образуют компьютерный программный продукт. Пример такой работы включает в себя манипулирование данными. Исполняемые компьютером команды (и манипулируемые данные) можно хранить в запоминающем устройстве 104 вычислительной системы 100. Вычислительная система 100 также может содержать каналы 108 связи, которые позволяют вычислительной системе 100 осуществлять связь с другими процессорами сообщений, например, по сети 110.
[0019] Описанные в этом документе варианты осуществления могут быть выполнены в виде либо использовать специализированный или универсальный компьютер, включающий в себя аппаратные средства компьютера, например один или несколько процессоров и системную память, что более подробно обсуждается ниже. Описанные в этом документе варианты осуществления также включают в себя физические и другие машиночитаемые носители для переноса или хранения исполняемых компьютером команд и/или структур данных. Такие машиночитаемые носители могут быть любыми доступными носителями, к которым можно обращаться посредством универсальной или специализированной компьютерной системы. Машиночитаемые носители, которые хранят исполняемые компьютером команды, являются физическими носителями информации. Машиночитаемые носители, которые переносят исполняемые компьютером команды, являются передающими средами. Таким образом, в качестве примера, а не ограничения, варианты осуществления изобретения могут содержать по меньшей мере два совершенно разных вида машиночитаемых носителей: компьютерные носители информации и передающие среды.
[0020] Компьютерные носители информации включают в себя RAM, ROM, EEPROM, компакт-диск или другой накопитель на оптических дисках, накопитель на магнитных дисках или другие магнитные запоминающие устройства, либо любой другой материальный носитель, который может использоваться для хранения нужного средства программного кода в виде исполняемых компьютером команд или структур данных, и к которому [носителю] можно обращаться посредством универсального или специализированного компьютера.
[0021] "Сеть" определяется в виде одного или нескольких каналов передачи данных, которые дают возможность переноса электронных данных между компьютерными системами и/или модулями и/или другими электронными устройствами. Когда информация предается или предоставляется компьютеру по сети или другому соединению связи (одному из проводного, беспроводного или сочетания проводного или беспроводного), компьютер по существу рассматривает соединение как передающую среду. Передающие среды могут включать в себя сетевые каналы и/или каналы передачи данных, которые могут использоваться для переноса нужного средства программного кода в виде исполняемых компьютером команд или структур данных, и к которым [каналам] можно обращаться с помощью универсального или специализированного компьютера. Сочетания вышеперечисленного также следует включить в область машиночитаемых носителей.
[0022] Кроме того, после достижения различных компонентов компьютерной системы средство программного кода в виде исполняемых компьютером команд или структур данных можно автоматически перенести из передающих сред на компьютерные носители информации (или наоборот). Например, исполняемые компьютером команды или структуры данных, принятые по сети или каналу передачи данных, можно буферизовать в RAM в сетевом интерфейсном модуле (например, "NIC"), а затем передать в итоге в RAM компьютерной системы и/или на менее энергозависимые компьютерные носители информации в компьютерной системе. Таким образом, следует понимать, что компьютерные носители информации могут включаться в компоненты компьютерной системы, которые также (или даже в основном) используют передающие среды.
[0023] Исполняемые компьютером команды содержат, например, команды и данные, которые при исполнении в процессоре побуждают универсальный компьютер, специализированный компьютер или специализированное устройство обработки выполнять определенную функцию или группу функций. Исполняемые компьютером команды могут быть, например, двоичным кодом, командами промежуточного формата, например языком ассемблера, или даже исходным кодом. Несмотря на то, что предмет изобретения описан на языке, характерном для структурных признаков и/или методологических действий, необходимо понимать, что объем изобретения, определяемый прилагаемой формулой изобретения, не обязательно ограничивается описанными выше конкретными признаками или действиями. Скорее, описанные признаки и действия раскрываются в качестве примерных форм реализации формулы изобретения.
[0024] Специалисты в данной области техники примут во внимание, что изобретение может быть применено на практике в сетевых вычислительных средах со многими типами конфигураций компьютерных систем, включая персональные компьютеры, настольные компьютеры, переносные компьютеры, процессоры сообщений, карманные устройства, многопроцессорные системы, микропроцессорную или программируемую бытовую электронику, сетевые ПК, мини-компьютеры, мэйнфреймы, мобильные телефоны, PDA, пейджеры, маршрутизаторы, коммутаторы и т. п. Изобретение также может быть применено на практике в средах распределенных систем, где задачи выполняют локальные и удаленные компьютерные системы, которые связаны через сеть (либо с помощью проводных каналов передачи данных, беспроводных каналов передачи данных, либо с помощью сочетания проводных и беспроводных каналов передачи данных). В среде распределенных систем программные модули могут располагаться как на локальных, так и на удаленных запоминающих устройствах.
[0025] Фиг. 2 иллюстрирует сетевую среду 200, в которой могут применяться описанные в этом документе принципы. Среда 200 включает в себя по меньшей мере два центра 210 и 220 обработки данных, хотя многоточие 230 представляет, что также можно проиллюстрировать и другие количества центров обработки данных, включая только два (в этом случае были бы только центры 210 и 220 обработки данных) и более трех центров обработки данных.
[0026] Каждый центр обработки данных обслуживает разный набор арендаторов, но имеет по меньшей мере одного общего арендатора. Например, центр 210 обработки данных ассоциируется с соответствующим набором 211 арендаторов, а центр 220 обработки данных имеет соответствующий набор 221 арендаторов. Каждый набор арендаторов включает в себя одного или нескольких арендаторов, для обслуживания которых конфигурируется соответствующий центр обработки данных. В этом описании и в формуле изобретения "арендатор" определяется как любая совокупность из одного или нескольких пользователей, где ассоциированные данные той совокупности пользователей изолированы от других арендаторов. В случае частного облака предприятием создается частный центр обработки данных или локальный центр обработки данных с единственной целью – обслуживание пользователей предприятия. Изолированность обеспечивается физическим нахождением данных локально и средствами защиты, предотвращающими внешний доступ. В случае общедоступного облака клиенты могут обращаться к общедоступному центру обработки данных по сети. В случае общедоступного центра обработки данных арендатор обычно соответствует клиенту, что в случае предприятия может быть большей совокупностью пользователей, или даже может не превышать одного пользователя. Общедоступное облако включает в себя средства защиты изолированности, которые предотвращают смешивание данных арендаторов между арендаторами. В случае поставщика услуг размещения соответствующий центр обработки данных поставщика услуг размещения обычно меньше общедоступного центра обработки данных и обслуживает меньшее количество арендаторов, нежели общедоступный центр обработки данных.
[0027] Например, набор 211 арендаторов центра 210 обработки данных включает в себя арендатора A, символически представляя, что центр 210 обработки данных обслуживает пользователей арендатора A. Например, центр 210 обработки данных может быть частным центром обработки данных. Набор 221 арендаторов центра 220 обработки данных включает в себя арендаторов A, B, C и D, символически представляя, что центр 220 обработки данных обслуживает пользователей арендаторов A, B, C и D, изолируя соответствующие данные арендаторов от других арендаторов. Например, центр 220 обработки данных может быть общедоступным центром обработки данных или, возможно, центром обработки данных поставщика услуг размещения.
[0028] По меньшей мере один из арендаторов в наборе 211 арендаторов первого центра 210 обработки данных является общим с арендатором в наборе 221 арендаторов второго центра 220 обработки данных. Например, арендатор A находится в наборе 211 арендаторов, а также в центре 220 обработки данных. Например, центр 210 обработки данных может быть частным центром обработки данных арендатора A, тогда как арендатор A также является клиентом центра 220 обработки данных.
[0029] Набор 211 арендаторов первого центра 210 обработки данных иллюстрируется включающим в себя многоточие 212, символически представляющее, что в некоторых примерах первый центр 210 обработки данных мог бы обслуживать более одного арендатора. Также набор 221 арендаторов второго центра 220 обработки данных иллюстрируется включающим в себя многоточие 222, символически представляющее, что второй центр 220 обработки данных мог бы обслуживать другие количества арендаторов. Однако мощность обработки у первого центра 210 обработки данных меньше мощности второго центра 220 обработки данных, что обычно означает, что первый набор 211 арендаторов содержит меньше арендаторов, чем второй набор 221 арендаторов. В качестве примера первый центр 210 обработки данных может быть частным центром обработки данных арендатора A, тогда как второй центр 220 обработки данных может быть центром обработки данных поставщика услуг размещения, который обслуживает некоторое количество арендаторов, включая арендатора A. В качестве другого примера первый центр 210 обработки данных может быть центром обработки данных поставщика услуг размещения арендатора A, тогда как второй центр 220 обработки данных может быть общедоступным центром обработки данных, который обслуживает много арендаторов, включая арендатора A.
[0030] Среда 200 также включает в себя посредника 240 конечных точек. Посредником 240 конечных точек можно управлять в первом центре 210 обработки данных, во втором центре 220 обработки данных, в другом центре 230 обработки данных или вне любого центра обработки данных. Посредника конечных точек можно реализовать с использованием аппаратных средств, программного обеспечения либо сочетания аппаратных средств и программного обеспечения. Можно создать экземпляр посредника конечных точек и/или управлять им (как описано в этом документе) в ответ на исполнение одним или несколькими процессорами (например, процессорами 102) в вычислительной системе (например, вычислительной системе 100) одной или нескольких исполняемых компьютером команд, которые воплощаются в одном или нескольких машиночитаемых носителях. Такой один или несколько машиночитаемых носителей могут быть всем или частью компьютерного программного продукта.
[0031] Фиг. 3 иллюстрирует логическую блок-схему способа 300 для предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов. Способ 300 инициируется при приеме связи (этап 301). Способ 300 может выполняться конечной точкой 240 из фиг. 2, и соответственно способ 300 будет описываться ниже с частой ссылкой на фиг. 2 и 3.
[0032] Как упоминалось ранее, способ 300 инициируется при приеме связи (этап 301). Это представляется на фиг. 2 с помощью посредника 240 конечных точек, принимающего связь 251. Затем посредник конечных точек интерпретирует связь как являющуюся запросом подключения к конечной точке запуска приложения для пользователя (этап 302), который имеет отношение к арендатору центра 210 обработки данных и центра 220 обработки данных. Например, пользователь может иметь отношение к совокупности одного или нескольких пользователей арендатора A.
[0033] Соответственно, запрос предназначен посреднику конечных точек, чтобы предоставить конечную точку для пользователя арендатора A, которую пользователь может использовать для запуска одного или нескольких приложений для пользователя. Примером конечной точки является виртуальная машина или сеанс сервера терминалов. Таким образом, посредник 240 конечных точек обращается к запросу подключения к конечной точке запуска приложения для пользователя. Запрос может задавать один или несколько параметров, которые могут использоваться для предоставления конечной точки, включая, например, идентификатор приложения, тип конечной точки (например, виртуальная машина или сеанс сервера терминалов), или конфигурации аппаратных средств конечной точки (например, сколько нужно дискового пространства или памяти).
[0034] Посредник конечных точек затем выбирает центр обработки данных среди нескольких центров обработки данных, чтобы предоставить конечную точку для выполнения запроса подключения к конечной точке запуска приложения (этап 303). Например, на фиг. 2 посредник конечных точек может выбрать первый центр 210 обработки данных или второй центр 220 обработки данных, чтобы предоставить конечную точку для пользователя. Решение о том, какой центр использовать, может приниматься в ответ на политику 242, а также текущее состояние 243. Поскольку пользователь относится к арендатору A, посредник конечных точек может выбирать из двух центров 210 и 220 обработки данных. Если бы пользователь относился к другому арендатору, то были бы доступны другие варианты возможных центров обработки данных.
[0035] Политика 242 могла бы задавать, что для арендатора A, если состояние 243 первого центра 210 обработки данных меньше, чем определенный процент использования, то нужно использовать первый центр 210 обработки данных для предоставления конечной точки для пользователя, а в противном случае может использоваться второй центр 220 обработки данных для предоставления конечной точки для пользователя. Таким образом, в случае, когда центр 210 обработки данных является частным центром обработки данных, арендатор A мог бы создать частный центр обработки данных. Вместо основательного масштабирования частного центра обработки данных для обработки пиковых нагрузок для конечных точек арендатор A может заключить контракт с поставщиком центра 220 обработки данных (например, поставщиком услуг размещения или поставщиком общедоступного облака) для обработки избыточной нагрузки. С тем же успехом могла бы использоваться другая политика. Например, возможно, что пользователь уже имеет некоторое состояние, ассоциированное с конечной точкой в конкретном центре обработки данных, который пользователь желает продолжить использовать. В этом случае центр обработки данных с тем состоянием может использоваться для предоставления конечной точки.
[0036] Затем посредник 240 конечных точек идентифицирует конечную точку из выбранного центра обработки данных, которую нужно ассоциировать с пользователем (этап 304). Для этого посредник 240 конечных точек может осуществить связь с агентом назначения конечной точки в выбранном центре обработки данных. Например, если посредник 240 конечных точек выбирает первый центр 210 обработки данных, то посредник 240 конечных точек может осуществить связь с агентом 213 назначения конечной точки в первом центре 210 обработки данных, как представлено стрелкой 261. Если посредник 240 конечных точек выбирает второй центр 220 обработки данных, то посредник 240 конечных точек может осуществить связь с агентом 223 назначения конечной точки во втором центре 220 обработки данных, как представлено стрелкой 262. Если посредник 240 конечных точек работает в центре обработки данных, то посредник 240 конечных точек также может действовать как агент назначения конечной точки для того центра обработки данных.
[0037] Затем агент назначения конечной точки выбирает конечную точку для пользователя. Параметры, выбираемые для конечной точки, можно выбрать в ответ на параметры, заданные в исходном запросе, и/или в ответ на политику 242. Затем посредник конечных точек идентифицирует конечную точку (этап 305), которую нужно ассоциировать с пользователем, а затем ассоциирует идентифицированную конечную точку с тем пользователем (этап 306). Например, посредник конечных точек может предоставить инициатору запроса команды маршрутизации, чтобы пользователь позже мог использовать свою клиентскую машину для направления дальнейших команд конечной точки непосредственно в конечную точку. Например, такая команда маршрутизации конечной точки могла бы включать в себя Интернет-протокол (IP-адрес конечной точки).
[0038] В некоторых вариантах осуществления первый центр 210 обработки данных и второй центр 220 обработки данных, а также, возможно, один или несколько других центров 230 обработки данных, хотя и могут быть удаленно расположены друг от друга, соединяются друг с другом в общей адресуемой сети, например по виртуальной частной сети (VPN). Таким образом, предоставленный пользователю IP-адрес будет работать независимо от того, предоставляется ли конечная точка первым центром 210 обработки данных, вторым центром 220 обработки данных или некоторым другим центром 230 обработки данных. Это также может сделать доступной конфигурационную информацию касательно назначенной конечной точки по более крупной сети всем центрам обработки данных. Например, можно использовать общее хранилище 270 и сделать его доступным по сети каждому из центров обработки данных.
[0039] Затем посредник конечных точек предоставляет пользователю доступ к идентифицированной конечной точке (этап 306). Это представляется на фиг. 2 с помощью стрелки 252. Как часть этой ассоциации пользователь также может ассоциировать с конечной точкой виртуальный жесткий диск пользователя. Например, сетевая среда 200 включает в себя набор 280 виртуальных жестких дисков пользователя. Виртуальный жесткий диск пользователя для выбранного пользователя можно ассоциировать, чтобы он был доступен конечной точке и любому приложению, запущенному той конечной точкой. В одном подходе к ассоциации виртуального жесткого диска пользователя виртуальный жесткий диск пользователя может "перемещаться" вместе с пользователем в конечную точку, куда вошел пользователь. Например, виртуальный жесткий диск пользователя можно скопировать из частного облака в общедоступное облако, если пользователь сначала входит в конечную точку частного облака, а затем в конечную точку общедоступного облака. Во втором подходе виртуальный жесткий диск пользователя можно автоматически реплицировать с помощью системы по нескольким центрам обработки данных с частыми интервалами (возможно, каждую минуту), чтобы пользователь получил его/ее актуальные документы повсюду, где пользователь завершил вход в конечном счете.
[0040] Многоточие 241 предоставляется на фиг. 2 для представления, что может быть несколько работающих экземпляров посредника конечных точек. Например, может быть один или несколько экземпляров посредника конечных точек, работающих в первом центре 210 обработки данных, а также один или несколько экземпляров посредника конечных точек, работающих во втором центре 220 обработки данных. Перед ними можно поместить распределитель нагрузки, чтобы принимать все запросы подключения к конечной точке от любого пользователя и распределять их в соответствии с некоторой политикой выбранному посреднику конечных точек.
[0041] Фиг. 4 иллюстрирует сетевую среду 400, которая аналогична сетевой среде 200 из фиг. 2 за исключением того, что теперь иллюстрируется третий центр 430 обработки данных. Третий центр 430 обработки данных имеет размер между первым центром 210 обработки данных и вторым центром 220 обработки данных. Например, набор 431 арендаторов третьего центра 430 обработки данных включает в себя всего лишь два арендатора A и B (среди прочих, как представлено многоточием 432). Таким образом, когда посредник 240 конечных точек принимает запросы подключения, ассоциированные с арендатором A, посредник 240 может выбрать среди трех посредников конечных точек, чтобы предоставить конечную точку для пользователя. В качестве примера на фиг. 4 центр 210 обработки данных может быть частным центром обработки данных, центр 430 обработки данных может быть поставщиком услуг размещения, а центр 220 обработки данных может быть общедоступным центром обработки данных.
[0042] Также отметим, что описанные в этом документе принципы можно структурировать иерархически. Например, на фиг. 2 центр 220 обработки данных также может быть сетевой средой, которая включает в себя несколько центров обработки данных. В этом случае инициирование связи (как представлено стрелкой 262) может рассматриваться агентом 223 назначения конечной точки как то же самое, что и запрос конечной точки (этап 301), посредством этого побуждая агента 223 действовать, как описано для посредника 240 конечных точек при побуждении одного из составляющих центров обработки данных сформировать конечную точку для пользователя.
[0043] Соответственно, описанные в этом документе принципы предусматривают гибридное облачное развертывание конечных точек, посредством этого допуская более гибкое исполнение для предоставления конечной точки, которая может использоваться для запуска приложений, пользователям арендатора.
[0044] Настоящее изобретение можно воплотить в других конкретных видах без отклонения от его сущности или неотъемлемых характеристик. Описанные варианты осуществления должны рассматриваться во всех отношениях только как пояснительные, а не ограничительные. Следовательно, объем изобретения указывается прилагаемой формулой изобретения, а не предшествующим описанием. Все изменения, которые подпадают под смысл и диапазон равноценности формулы изобретения, должны включаться в ее объем.

Claims (38)

1. Компьютерно-реализуемый способ предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов, причем компьютерно-реализуемый способ выполняется одним или более процессорами, исполняющими машиноисполняемые инструкции для компьютерно-реализуемого способа, при этом компьютерно-реализуемый способ содержит этапы, на которых:
в посреднике конечных точек принимают от пользовательской вычислительной системы у заданного арендатора запрос подключения в конечную точку запуска приложения, при этом посредник конечных точек предоставляет подключения в конечные точки с по меньшей мере первым центром обработки данных с первым набором арендаторов и вторым центром обработки данных со вторым набором арендаторов, причем упомянутый заданный арендатор принадлежит как первому набору арендаторов, так и второму набору арендаторов;
в качестве реакции на сохраненную политику, которая определяет условия на предмет того, нужно ли обращаться к первому центру обработки данных или второму центру обработки данных, выбирают, посредством посредника конечных точек, один из первого и второго центров обработки данных для удовлетворения упомянутого запроса подключения в конечную точку запуска приложения, так чтобы пользовательская вычислительная система у упомянутого заданного арендатора не была ограничена иметь подключение в конечную точку только с одним центром обработки данных;
на основе одного или более параметров, указанных в упомянутом запросе, идентифицируют, посредством посредника конечных точек, конечную точку, которую нужно связать с пользовательской вычислительной системой у упомянутого заданного арендатора, и обращаются к назначению конечной точки для идентифицированной конечной точки в выбранном одном из первого центра обработки данных и второго центра обработки данных;
возвращают назначение конечной точки для идентифицированной конечной точки в пользовательскую вычислительную систему упомянутого заданного арендатора; и
связывают пользовательскую вычислительную систему упомянутого заданного арендатора с идентифицированной конечной точкой выбранного одного из первого и второго центров обработки данных.
2. Способ по п. 1, в котором упомянутый выбор посредником конечных точек одного из первого и второго центров обработки данных также основывается на учете текущего состояния по меньшей мере одного из первого и второго центров обработки данных.
3. Способ по п. 2, в котором упомянутая идентификация посредником конечных точек конечной точки, которую нужно связать с пользовательской вычислительной системой у заданного арендатора, выполняется посредством обращения к агенту назначения конечной точки в выбранном одном из первого и второго центров обработки данных.
4. Способ по п. 2, в котором упомянутые один или более параметров, указанных в запросе, содержат по меньшей мере одно из идентификатора приложения, типа конечной точки и конфигурации аппаратных средств.
5. Машиночитаемый носитель информации, содержащий машиноисполняемые команды, которые структурированы так, что при их исполнении одним или более процессорами вычислительной системы обеспечивается выполнение вычислительной системой компьютерно-реализуемого способа, содержащего этапы, на которых:
в посреднике конечных точек принимают от пользовательской вычислительной системы у заданного арендатора запрос подключения в конечную точку запуска приложения, при этом посредник конечных точек предоставляет подключения в конечные точки с по меньшей мере первым центром обработки данных с первым набором арендаторов и вторым центром обработки данных со вторым набором арендаторов, причем упомянутый заданный арендатор принадлежит как первому набору арендаторов, так и второму набору арендаторов;
в качестве реакции на сохраненную политику, которая определяет условия на предмет того, нужно ли обращаться к первому центру обработки данных или второму центру обработки данных, выбирают, посредством посредника конечных точек, один из первого и второго центров обработки данных для удовлетворения упомянутого запроса подключения в конечную точку запуска приложения, так чтобы пользовательская вычислительная система у упомянутого заданного арендатора не была ограничена иметь подключение в конечную точку только с одним центром обработки данных;
на основе одного или более параметров, указанных в упомянутом запросе, идентифицируют, посредством посредника конечных точек, конечную точку, которую нужно связать с пользовательской вычислительной системой у упомянутого заданного арендатора, и обращаются к назначению конечной точки для идентифицированной конечной точки в выбранном одном из первого центра обработки данных и второго центра обработки данных;
возвращают назначение конечной точки для идентифицированной конечной точки в пользовательскую вычислительную систему упомянутого заданного арендатора; и
связывают пользовательскую вычислительную систему упомянутого заданного арендатора с идентифицированной конечной точкой выбранного одного из первого и второго центров обработки данных.
6. Машиночитаемый носитель информации по п. 5, при этом упомянутый выбор посредником конечных точек одного из первого и второго центров обработки данных также основывается на учете текущего состояния по меньшей мере одного из первого и второго центров обработки данных.
7. Машиночитаемый носитель информации по п. 5, при этом упомянутая идентификация посредником конечных точек конечной точки, которую нужно связать с пользовательской вычислительной системой у заданного арендатора, выполняется посредством обращения к агенту назначения конечной точки в выбранном одном из первого и второго центров обработки данных.
8. Машиночитаемый носитель информации по п. 5, при этом упомянутые один или более параметров, указанных в запросе, содержат по меньшей мере одно из идентификатора приложения, типа конечной точки и конфигурации аппаратных средств.
9. Машиночитаемый носитель информации по п. 5, при этом первый центр обработки данных является частным центром обработки данных, а второй центр обработки данных является либо общедоступным центром обработки данных, либо центром обработки данных поставщика услуг размещения.
10. Система для предоставления конечных точек запуска приложений из нескольких центров обработки данных, имеющих разные наборы арендаторов, содержащая:
по меньшей мере первый центр обработки данных с первым набором арендаторов и второй центр обработки данных со вторым набором арендаторов;
пользовательская вычислительная система у заданного арендатора, каковой заданный арендатор принадлежит как первому набору арендаторов, так и второму набору арендаторов;
память, содержащая исполняемые инструкции для компьютерно-реализуемого способа, которым предоставляются конечные точки запуска приложений из первого и второго центров обработки данных;
один или более процессоров, которые при исполнении исполняемых инструкций конфигурируют посредника конечных точек выполнять упомянутый компьютерно-реализуемый способ посредством осуществления следующих действий, чтобы:
принимать от пользовательской вычислительной системы у упомянутого заданного арендатора запрос подключения в конечную точку запуска приложения, при этом посредник конечных точек предоставляет подключения в конечные точки с по меньшей мере первым центром обработки данных и вторым центром обработки данных со вторым набором арендаторов,
в качестве реакции на сохраненную политику, которая определяет условия на предмет того, нужно ли обращаться к первому центру обработки данных или второму центру обработки данных, выбирать один из первого и второго центров обработки данных для удовлетворения упомянутого запроса подключения в конечную точку запуска приложения, так чтобы пользовательская вычислительная система у упомянутого заданного арендатора не была ограничена иметь подключение в конечную точку только с одним центром обработки данных,
на основе одного или более параметров, указанных в упомянутом запросе, идентифицировать конечную точку, которую нужно связать с пользовательской вычислительной системой у упомянутого заданного арендатора, и обращаться к назначению конечной точки для идентифицированной конечной точки в выбранном одном из первого центра обработки данных и второго центра обработки данных, и
возвращать назначение конечной точки для идентифицированной конечной точки в пользовательскую вычислительную систему упомянутого заданного арендатора для обеспечения связывания пользовательской вычислительной системы этого заданного арендатора с идентифицированной конечной точкой выбранного одного из первого и второго центров обработки данных.
11. Система по п. 10, в которой посредник конечных точек функционирует в одном из первого и второго центров обработки данных.
12. Система по п. 10, в которой есть один или более других посредников конечных точек, причем по меньшей мере один посредник конечных точек функционирует в каждом из первого и второго центров обработки данных.
13. Система по п. 10, в которой первый центр обработки данных является частным центром обработки данных, а второй центр обработки данных является общедоступным центром обработки данных.
14. Система по п. 13, в которой посредник конечных точек предоставляет подключение в конечную точку с третьим центром обработки данных, который является центром обработки данных поставщика услуг размещения и имеет третий набор арендаторов, при этом упомянутый заданный арендатор является общим для первого, второго и третьего наборов арендаторов.
15. Система по п. 14, в которой посредник конечных точек не функционирует ни в одном из первого и второго центров обработки данных.
16. Система по п. 10, в которой идентифицированная конечная точка является либо виртуальной машиной, либо сеансом сервера терминалов.
17. Система по п. 10, в которой первый центр обработки данных и второй центр обработки данных соединены друг с другом в общей адресуемой сети.
18. Система по п. 10, в которой посредник конечных точек выбирает один из первого и второго центров обработки данных также на основе учета текущего состояния по меньшей мере одного из первого и второго центров обработки данных.
19. Система по п. 10, в которой посредник конечных точек идентифицирует конечную точку, которую нужно связать с пользовательской вычислительной системой у упомянутого заданного арендатора, посредством обращения к агенту назначения конечной точки в выбранном одном из первого и второго центров обработки данных.
20. Система по п. 10, в которой упомянутые один или более параметров, указанных в запросе, содержат по меньшей мере одно из идентификатора приложения, типа конечной точки и конфигурации аппаратных средств.
RU2015155711A 2013-06-27 2014-06-25 Центры обработки данных конечных точек с разными наборами арендаторов RU2671046C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/929,456 US9264289B2 (en) 2013-06-27 2013-06-27 Endpoint data centers of different tenancy sets
US13/929,456 2013-06-27
PCT/US2014/044157 WO2014210202A1 (en) 2013-06-27 2014-06-25 Endpoint data centers of different tenancy sets

Publications (3)

Publication Number Publication Date
RU2015155711A RU2015155711A (ru) 2017-06-28
RU2015155711A3 RU2015155711A3 (ru) 2018-05-10
RU2671046C2 true RU2671046C2 (ru) 2018-10-29

Family

ID=51210843

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015155711A RU2671046C2 (ru) 2013-06-27 2014-06-25 Центры обработки данных конечных точек с разными наборами арендаторов

Country Status (7)

Country Link
US (4) US9264289B2 (ru)
EP (1) EP3014440A1 (ru)
JP (1) JP6395825B2 (ru)
CN (2) CN110362408A (ru)
BR (2) BR112015031703B1 (ru)
RU (1) RU2671046C2 (ru)
WO (1) WO2014210202A1 (ru)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10749711B2 (en) 2013-07-10 2020-08-18 Nicira, Inc. Network-link method useful for a last-mile connectivity in an edge-gateway multipath system
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
CN106375415B (zh) * 2016-08-31 2019-10-22 东软集团股份有限公司 租期的动态设置方法和装置
US11252079B2 (en) 2017-01-31 2022-02-15 Vmware, Inc. High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
JP7202369B2 (ja) * 2017-09-30 2023-01-11 オラクル・インターナショナル・コーポレイション マルチテナントapiゲートウェイにおいてテナント分離を提供するためのマイクロサービスコンテナの活用
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10778466B2 (en) 2017-10-02 2020-09-15 Vmware, Inc. Processing data messages of a virtual network that are sent to and received from external service machines
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
CN108874490A (zh) * 2018-06-14 2018-11-23 上海掌门科技有限公司 界面显示方法和装置
US11121985B2 (en) * 2019-08-27 2021-09-14 Vmware, Inc. Defining different public cloud virtual networks for different entities based on different sets of measurements
US11695559B2 (en) * 2019-09-30 2023-07-04 Salesforce, Inc. Nested tenancy that permits a hierarchy having a plurality of levels
US11611507B2 (en) 2019-10-28 2023-03-21 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11438789B2 (en) 2020-01-24 2022-09-06 Vmware, Inc. Computing and using different path quality metrics for different service classes
CN111787046B (zh) * 2020-03-02 2022-09-30 北京沃东天骏信息技术有限公司 数据中心路由方法和装置
CN113783712A (zh) * 2020-06-09 2021-12-10 中兴通讯股份有限公司 默认网关管理方法、网关管理器、服务器及存储介质
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11709710B2 (en) 2020-07-30 2023-07-25 Vmware, Inc. Memory allocator for I/O operations
US12050946B2 (en) * 2020-09-21 2024-07-30 International Business Machines Corporation Just in time assembly of transactions
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
CN116783874A (zh) 2021-01-18 2023-09-19 Vm维尔股份有限公司 网络感知的负载平衡
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
US12009987B2 (en) 2021-05-03 2024-06-11 VMware LLC Methods to support dynamic transit paths through hub clustering across branches in SD-WAN
US11509571B1 (en) 2021-05-03 2022-11-22 Vmware, Inc. Cost-based routing mesh for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US12015536B2 (en) 2021-06-18 2024-06-18 VMware LLC Method and apparatus for deploying tenant deployable elements across public clouds based on harvested performance metrics of types of resource elements in the public clouds
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US12047282B2 (en) 2021-07-22 2024-07-23 VMware LLC Methods for smart bandwidth aggregation based dynamic overlay selection among preferred exits in SD-WAN
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs
US12034587B1 (en) 2023-03-27 2024-07-09 VMware LLC Identifying and remediating anomalies in a self-healing network
US12057993B1 (en) 2023-03-27 2024-08-06 VMware LLC Identifying and remediating anomalies in a self-healing network

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060239295A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation Application programming interface for inviting participants in a serverless peer to peer network
RU2432605C1 (ru) * 2008-02-26 2011-10-27 ВиЭмвеэ, Инк. Способ расширения, основанный на сервере архитектуры десктопной виртуальной машины на клиентские машины, и машиночитаемая среда
US20120131664A1 (en) * 2010-11-19 2012-05-24 Alexandre Gerber Method and apparatus for content aware optimized tunneling in a mobility environment
WO2013039846A2 (en) * 2011-09-14 2013-03-21 Microsoft Corporation Multi tenant access to applications

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581088B1 (en) * 1998-11-05 2003-06-17 Beas Systems, Inc. Smart stub or enterprise javaTM bean in a distributed processing system
US7430586B2 (en) * 2002-04-16 2008-09-30 Zoran Corporation System and method for managing memory
US7197433B2 (en) * 2004-04-09 2007-03-27 Hewlett-Packard Development Company, L.P. Workload placement among data centers based on thermal efficiency
US8984140B2 (en) * 2004-12-14 2015-03-17 Hewlett-Packard Development Company, L.P. Managing connections through an aggregation of network resources providing offloaded connections between applications over a network
US7940756B1 (en) * 2005-11-23 2011-05-10 Symantec Corporation Dynamic tagging of network data based on service level objectives
JP2007183883A (ja) * 2006-01-10 2007-07-19 Fujitsu Ltd 資源計画作成プログラム、該プログラムを記録した記録媒体、資源計画作成装置、および資源計画作成方法
US9106613B2 (en) 2006-06-19 2015-08-11 Ncr Corporation Remote self service facilities administration system
US8910234B2 (en) 2007-08-21 2014-12-09 Schneider Electric It Corporation System and method for enforcing network device provisioning policy
US7783764B2 (en) * 2008-05-27 2010-08-24 Silver Spring Networks, Inc. Multi-protocol network registration and address resolution
WO2010042578A1 (en) * 2008-10-08 2010-04-15 Citrix Systems, Inc. Systems and methods for real-time endpoint application flow control with network structure component
US9557889B2 (en) * 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US8433749B2 (en) * 2009-04-15 2013-04-30 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
JP2011018167A (ja) * 2009-07-08 2011-01-27 Fujitsu Ltd 負荷分散プログラム、負荷分散装置及び負荷分散方法
US8301874B1 (en) * 2009-10-20 2012-10-30 Wanova Technologies, Ltd. Atomic switching of images in desktop streaming over wide area networks
US9009294B2 (en) 2009-12-11 2015-04-14 International Business Machines Corporation Dynamic provisioning of resources within a cloud computing environment
US8346935B2 (en) 2010-01-15 2013-01-01 Joyent, Inc. Managing hardware resources by sending messages amongst servers in a data center
US8301746B2 (en) * 2010-01-26 2012-10-30 International Business Machines Corporation Method and system for abstracting non-functional requirements based deployment of virtual machines
US9241012B2 (en) * 2010-04-18 2016-01-19 Tropo, Inc. System and method for telephony and communication services with message-based API
US20110271005A1 (en) 2010-04-30 2011-11-03 Sonus Networks, Inc. Load balancing among voip server groups
US20120011077A1 (en) 2010-07-12 2012-01-12 Bhagat Bhavesh C Cloud Computing Governance, Cyber Security, Risk, and Compliance Business Rules System and Method
US8826451B2 (en) 2010-08-16 2014-09-02 Salesforce.Com, Inc. Mechanism for facilitating communication authentication between cloud applications and on-premise applications
US20120204187A1 (en) 2011-02-08 2012-08-09 International Business Machines Corporation Hybrid Cloud Workload Management
US8732267B2 (en) * 2011-03-15 2014-05-20 Cisco Technology, Inc. Placement of a cloud service using network topology and infrastructure performance
EP2705632B8 (en) 2011-05-06 2018-09-12 Citrix Systems, Inc. Systems and methods for cloud bridging between public and private clouds
US9223632B2 (en) 2011-05-20 2015-12-29 Microsoft Technology Licensing, Llc Cross-cloud management and troubleshooting
US9323572B2 (en) 2011-06-02 2016-04-26 International Business Machines Corporation Autoconfiguration of a cloud instance based on contextual parameters
JP2013015986A (ja) * 2011-07-04 2013-01-24 Nec Corp プリペイド課金システム、方法及びプログラム
US8817777B2 (en) 2011-08-10 2014-08-26 Microsoft Corporation Hybrid unified communications deployment between cloud and on-premise
US9250944B2 (en) * 2011-08-30 2016-02-02 International Business Machines Corporation Selection of virtual machines from pools of pre-provisioned virtual machines in a networked computing environment
US20130067469A1 (en) * 2011-09-14 2013-03-14 Microsoft Corporation Load Balancing By Endpoints
US8812687B2 (en) 2011-09-15 2014-08-19 Microsoft Corporation Managing user state of cloud desktops
US9075660B2 (en) * 2012-03-29 2015-07-07 Alcatel Lucent Apparatus and method for providing service availability to a user via selection of data centers for the user
US10142406B2 (en) * 2013-03-11 2018-11-27 Amazon Technologies, Inc. Automated data center selection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060239295A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation Application programming interface for inviting participants in a serverless peer to peer network
RU2432605C1 (ru) * 2008-02-26 2011-10-27 ВиЭмвеэ, Инк. Способ расширения, основанный на сервере архитектуры десктопной виртуальной машины на клиентские машины, и машиночитаемая среда
US20120131664A1 (en) * 2010-11-19 2012-05-24 Alexandre Gerber Method and apparatus for content aware optimized tunneling in a mobility environment
WO2013039846A2 (en) * 2011-09-14 2013-03-21 Microsoft Corporation Multi tenant access to applications

Also Published As

Publication number Publication date
BR132022012101E2 (pt) 2023-02-07
US20190222465A1 (en) 2019-07-18
EP3014440A1 (en) 2016-05-04
BR112015031703B1 (pt) 2022-05-10
US9264289B2 (en) 2016-02-16
US10574505B2 (en) 2020-02-25
CN110362408A (zh) 2019-10-22
US9722853B2 (en) 2017-08-01
US10243777B2 (en) 2019-03-26
RU2015155711A3 (ru) 2018-05-10
BR112015031703A2 (pt) 2017-07-25
WO2014210202A1 (en) 2014-12-31
RU2015155711A (ru) 2017-06-28
CN105408863B (zh) 2019-07-30
US20150006609A1 (en) 2015-01-01
JP6395825B2 (ja) 2018-09-26
US20160134461A1 (en) 2016-05-12
US20170310534A1 (en) 2017-10-26
BR112015031703A8 (pt) 2021-05-25
CN105408863A (zh) 2016-03-16
JP2016526732A (ja) 2016-09-05

Similar Documents

Publication Publication Date Title
RU2671046C2 (ru) Центры обработки данных конечных точек с разными наборами арендаторов
JP6732798B2 (ja) コンピュートクラスタ内のリソースインスタンスグループの自動スケーリング
US8307362B1 (en) Resource allocation in a virtualized environment
US9350682B1 (en) Compute instance migrations across availability zones of a provider network
EP2871553B1 (en) Systems and methods for protecting virtualized assets
US9152293B2 (en) Server IP addressing in a computing-on-demand system
US20120158806A1 (en) Provisioning network-attached storage
US20140344459A1 (en) Methods and systems for creating and managing network groups
US11201930B2 (en) Scalable message passing architecture in a cloud environment
US10860361B2 (en) Computer system providing virtual computing sessions through virtual delivery agent leasing with enhanced power savings and connectivity and related methods
US11627169B2 (en) Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control
CN108293047B (zh) 由用户访问跨多个分布式计算网络的资源的系统和方法
JP2023545985A (ja) エッジ・コンピューティング環境におけるタスク・フローの管理
US10637924B2 (en) Cloud metadata discovery API
US10911371B1 (en) Policy-based allocation of provider network resources
JP7212158B2 (ja) プロバイダネットワークサービス拡張
US10824476B1 (en) Multi-homed computing instance processes
US11783325B1 (en) Removal probability-based weighting for resource access
US20230148314A1 (en) Fast Launch Based on Hibernated Pre-launch Sessions
US11842224B1 (en) Synchronous and asynchronous responses to data requests from remote devices
Galloway et al. Deploying a cost efficient geographically distributed private cloud architecture
CN114868362A (zh) 扩展第3代合作伙伴计划(3gpp)实时上行链路流式传输框架(flus)信宿能力描述