Service location management in computing systems
AssigneeMicrosoft Technology Licensing, LLC
InventorJames Johnson
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorJames Johnson
Estimating the term…
Techniques for facilitating allocation of cloud services in cloud computing systems are disclosed herein. In one embodiment, a method can include transmitting a request to service controllers configured to manage corresponding cloud services deployable in the cloud computing system, the request including a set of cloud services to be deployed in the cloud computing system. The method can also include receiving, from each of the service controllers, a list of at least some of the computing facilities arranged in order of preference for deploying one or more corresponding cloud services. The method can further includes selecting one of the computing facilities from the multiple computing facilities for deploying the set of cloud services based on the preferences of the service controllers reflected in the received lists and instructing the service controllers to deploy the one or more corresponding cloud services to the selected one of the computing facilities.
A method of deploying cloud services in a cloud computing system having multiple computing facilities interconnected by a computer network, the method comprising:
A computing device, comprising:
A computing device for managing cloud services in a cloud computing system having multiple computing facilities interconnected by a computer network, the computing device comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
No references of this kind are recorded.
Server selection for load balancing: based on a hash applied to IP addresses or costs
Partitioning or combining of resources: grid computing
Protocols: in which an application is distributed across nodes in the network
Server selection for load balancing: based on client or server locations
About 9 years 11 months of term left · ends 21 Sep 2036 (estimated)
Remote or “cloud” computing typically utilizes a collection of remote servers in datacenters to provide computing, data storage, electronic communications, or other cloud services. The remote servers can be interconnected by computer networks to form a computing fabric organized as one or more computing clusters. During operation, multiple remote servers or computing clusters can cooperate to provide a distributed computing environment that facilitates execution of user applications to provide cloud services.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
Certain cloud services prefer to be physically close to one another due to communication latency, performance, or other suitable considerations. For example, two virtual machines would prefer to be close by to exchange data for processing. Such placement preferences are typically associated with a common service controller managing similar services. For instance, an application that deploys two virtual machines can specify that the two virtual machines be hosted on a single server, within a particular network delay distance, or in a single failure domain. A virtual machine controller can then allocate and deploy the virtual machines according to the specification of the application.
FIG. 1 is a schematic diagram of a cloud computing system implementing service location management in accordance with embodiments of the disclosed technology.
FIG. 2A is a schematic diagram illustrating a computing facility suitable for the cloud computing system in FIG. 1 in accordance with embodiments of the disclosed technology.
FIG. 2B is a schematic diagram illustrating certain hardware/software components of the computing facility in FIG. 2A in accordance with embodiments of the disclosed technology.
Certain embodiments of computing systems, devices, components, modules, routines, and processes for facilitating service location management in cloud computing systems are described below. In the following description, specific details of components are included to provide a thorough understanding of certain embodiments of the disclosed technology. A person skilled in the relevant art can also understand that the disclosed technology may have additional embodiments or may be practiced without several of the details of the embodiments described below with reference to FIGS. 1-6.
As used herein, the term “cloud computing system” or “cloud” generally refers to a computer system configured to provide various cloud computing services via a computer network. A cloud computing system can include multiple “computing facilities” or “cloud facilities” interconnected by a computer network such as a wide area network or the Internet. In certain embodiments, the computing facilities can include datacenters each sited in different physical locations. For example, datacenters can be located in distinct city blocks, cities, states, metropolitan areas, countries, regions, continents, or other suitable boundaries. In other embodiments, the computing facilities can also include computing clusters, failure domains, or other suitable physical and/or logical division of a datacenter. In further embodiments, a computing facility can also include a group of datacenters in a geological location.
In certain embodiments, a computing facility can include a computer network containing network devices interconnecting remote servers or hosts to one another and/or to external networks (e.g., the Internet). For example, a computing facility can include multiple containers, racks, or other suitable enclosures each holding multiple servers. The term “network device” generally refers to a network communications component. Example network devices include routers, switches, hubs, bridges, load balancers, security gateways, or firewalls. A “host” generally refers to a computing device configured to implement one or more virtual machines, virtual routers, virtual gateways, or other suitable virtualized computing components. For example, a host can include a computing server having a hypervisor configured to support one or more virtual machines.