# US 2018/0321981 A1 · System and method for self organizing data center

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0321981 A1
- Document ID: US20180321981A1
- Status: Published application
- Kind: A1
- Application number: 15/792,577
- Filed: 2017-10-24
- Published: 2018-11-08
- Earliest claimed: 2017-05-04
- Assignees: Huawei Technologies Co., Ltd.
- Inventors: William Carson MCCORMICK
- Web page: https://patentgrep.com/patent/US20180321981A1

## CPC

- H04L 5/0035: {Resource allocation in a cooperative multipoint environment}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/4875: {with migration policy, e.g. auction, contract negotiation}
- G06F 9/5027: {the resource being a machine, e.g. CPUs, Servers, Terminals}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 9/5083: {Techniques for rebalancing the load in a distributed system}
- G06F 2009/45562: {Creating, deleting, cloning virtual machine instances}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- G06F 2209/483: Multiproc
- H04L 47/781: {Centralised allocation of resources}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A self organizing data center comprising: a plurality of services, each service configured to select and modify its placement; and a plurality of servers, each server configured to select and modify its resource allocation to each placement. A service or service application executing in the data center can request to modify its resource allocation. The data center, upon receiving a request to modify the resource allocation, runs an auction among the services and determines the proposed new resource allocation and its conditions. The service transmits an answer to the data server and if the answer indicates acceptance of the new resource allocation, the data center implements the new resource allocation.

## Claims

### Claim 1

A method of managing a data center, the method comprising:
a server of the data center receiving a request for a resource allocation from a first service instantiated by one or more applications executing in the data center;
responsive to the request from the first service, the server defining a respective new resource allocation for the first service, and providing a corresponding new resource allocation result to the first service.

### Claim 2 (depends on 1)

The method as claimed in claim 1, wherein the server is selected by the first service, in accordance with a Stochastic Local Search.

### Claim 3 (depends on 1)

The method as claimed in claim 1, further comprising steps of:
receiving a Commit Auction message from the first service, the Commit Auction message indicating that the first service accepts the new resource allocation result; and
responsive to the Commit Auction message, the server implementing the new resource allocation for the first service.

### Claim 4 (depends on 1)

The method as claimed in claim 1, further comprising steps of:
receiving a Rollback Auction message from the first service, the Rollback Auction message indicating that the first service rejects the resource allocation result; and
responsive to the Rollback Auction message, the server discarding the new resource allocation for the first service.

### Claim 5 (depends on 1)

The method as claimed in claim 1, wherein defining the resource allocation comprises the server defining the new resource allocation in accordance with an Algorithmic Game Theory based auction.

### Claim 6 (depends on 5)

The method as claimed in claim 5, wherein the Algorithmic Game Theory based auction encompasses the first service and at least one other service to which resources of the server are allocated, and generates a respective new resource allocation for the first service and each of the at least one other service.

### Claim 7 (depends on 1)

The method as claimed in claim 1, wherein defining a respective resource allocation for the first service further comprises defining a respective new resource allocation for at least one other service to which resources of the server are allocated.

### Claim 8 (depends on 7)

The method as claimed in claim 7, further comprising steps of:
receiving a Commit Auction message from the first service, the Commit Auction message indicating that the first service accepts the new resource allocation result; and
responsive to the Commit Auction message, the server implementing the respective new resource allocation for the first service and the respective new resource allocation for each of the at least one other service.

### Claim 9

A server configured to manage resources of a data center, the server comprising:
a non-transitory computer readable storage medium storing software instructions for controlling the server to:
receive a request for a resource allocation from a first service instantiated by one or more applications executing in the data center;
responsive to the request from the first service, define a respective new resource allocation for the first service; and
provide a corresponding new resource allocation result to the first service.

### Claim 10 (depends on 9)

The server as claimed in claim 9, further configured to:
receive a Commit Auction message from the first service, the Commit Auction message indicating that the first service accepts the new resource allocation result; and
implement the new resource allocation for the first service.

### Claim 11 (depends on 9)

The server as claimed in claim 9, further configured to:
receive a Rollback Auction message from the first service, the Rollback Auction message indicating that the first service rejects the new resource allocation result; and
discard the new resource allocation for the first service.

### Claim 12 (depends on 9)

The server as claimed in claim 9, wherein defining the new resource allocation comprises defining the new resource allocation in accordance with an Algorithmic Game Theory based auction.

### Claim 13 (depends on 12)

The server as claimed in claim 12, wherein the Algorithmic Game Theory based auction encompasses the first service and at least one other service to which resources of the server are allocated, and generates a respective new resource allocation for each of the first service and each of the at least one other service.

### Claim 14 (depends on 9)

The server as claimed in claim 9, wherein defining a new respective resource allocation for the first service further comprises defining a respective new resource allocation for at least one other service to which resources of the server have been allocated.

### Claim 15 (depends on 14)

The server as claimed in claim 14, further configured to:
receive a Commit Auction message from the first service, the Commit Auction message indicating that the first service accepts the new resource allocation result; and
responsive to the Commit Auction message, implement the respective new resource allocation for the first service and the respective new resource allocation for the at least one other service.
