# US 10,768,963 B2 · Virtual network functions allocation in a datacenter based on extinction factor

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

- Number: US 10,768,963 B2
- Document ID: US10768963B2
- Status: Granted
- Kind: B2
- Application number: 15/665,022
- Filed: 2017-07-31
- Published: 2019-01-31
- Granted: 2020-09-08
- Earliest claimed: 2017-07-31
- Assignees: Hewlett Packard Enterprise Development LP
- Applicants: Hewlett Packard Enterprise Development LP
- Inventors: Mario Garrido Galvez; Ignacio Aldama Perez; Jose Maria Alvarez Fernandez; David Severiano Herbada; Jorge Menendez Lopez; Javier Garcia Lopez; Ruben Sevilla Giron
- Web page: https://patentgrep.com/patent/US10768963B2

## CPC

- 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/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/50: Allocation of resources, e.g. of the central processing unit [CPU]
- H04L 41/0894: Policy-based network configuration management
- G06F 2009/45562: {Creating, deleting, cloning virtual machine instances}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- H04L 41/0893: Assignment of logical groups to network elements
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

An example computing system for allocating Virtual Network Functions (VNF) in a datacenter includes a processing unit, a computation module and an allocation module. The computation module is configured to determine an extinction factor corresponding to a datacenter unit in the datacenter based on a state of the datacenter and a VNF catalogue including a plurality of VNFs; and to develop an allocation model based on the determined extinction factor. The allocation module is configured to allocate a first VNF from the plurality of VNFs in the datacenter based on the allocation model.

## Claims

### Claim 1

A computing system for allocating Virtual Network Functions (VNF) in a datacenter, the computing system comprising:
a computation module that, in operation:
based on a state of the datacenter, a VNF catalogue including a plurality of VNFs, and a set of allocation rules comprising compulsory and preferred spatial relationships of the plurality of VNFs in the datacenter, determines a plurality of extinction factors corresponding to available resources in a plurality of datacenter units in the datacenter; and
in response to the determined plurality of extinction factors, develops an allocation model indicating a particular datacenter unit to which a first VNF from the plurality of VNFs is to be allocated;
an allocation module that, in operation:
allocates a first VNF from the plurality of VNFs to the particular datacenter unit based on the allocation model, wherein for a VNF entity within the first VNF that can be allocated in multiple datacenter units of the plurality of datacenter units, the allocation module is configured to allocate the VNF entity in one or more of the multiple datacenter units that extinct a fewer number of datacenter units and in accordance with the set of allocation rules; and
the computation module being responsive to the allocation of the first VNF to the particular datacenter unit to determine an updated extinction factor corresponding to the particular datacenter unit.

### Claim 2 (depends on 1)

The system of claim 1, wherein each VNF from the plurality of VNFs comprises one or more Virtual Machines (VM) to be allocated to the datacenter.

### Claim 3 (depends on 1)

The system of claim 1, wherein the computation module is to determine the extinction factor for each datacenter unit in the datacenter.

### Claim 4 (depends on 1)

The system of claim 1, wherein the computation module further to determine the extinction factor corresponding to a server in the data center, based on the set of allocation rules.

### Claim 5 (depends on 4)

The system of claim 4, wherein the set of allocation rules further comprises at least one of affinity rules, anti-affinity rules, server exclusion rules, server update rules, or a combination thereof.

### Claim 6 (depends on 5)

The system of claim 5, wherein each VNF from the plurality of VNFs comprises one or more VM, wherein the computation module is further to define affinity groups, anti-affinity groups, or a combination thereof, based on the VNF catalogue, and the at least one of affinity rules, and anti-affinity rules, wherein the affinity groups and anti-affinity groups define related ones of the VNFs and the one or more VMs, wherein the computation module further defines an extinction factor of each affinity group.

### Claim 7 (depends on 6)

The system of claim 6, wherein the allocation model is an allocation matrix matching the affinity groups and the plurality of datacenter units, wherein the datacenter units are entities that form the datacenter and each datacenter unit comprises one or more types of available resources, wherein the one or more types of available resources comprise at least one of Cores (C), Random Access Memory (RAM), Hard Disk (HD), Non Volatile Memory (NVM), Bandwidth (BW), or a combination thereof.

### Claim 8 (depends on 1)

The system of claim 1, wherein the datacenter comprises a plurality of datacenter units, wherein each datacenter unit comprises one or more types of available resources, wherein the one or more types of available resources comprise at least one of Cores (C), Random Access Memory (RAM), Hard Disk (HD), Non Volatile Memory (NVM), Bandwidth (BW), or a combination thereof, wherein the one or more types of available resources indicate the state of the datacenter.

### Claim 9 (depends on 1)

The system of claim 1, wherein for a VNF entity within the first VNF that must be allocated in multiple datacenter units of the plurality of datacenter units, the allocation module is further configured to allocate the VNF entity in the multiple datacenter units that extinct a fewer number of datacenter units, wherein the datacenter units are the entities that form the datacenter and the VNF entity comprises more than one VM.

### Claim 10 (depends on 1)

The system of claim 1, further comprising an installing module configured to install the first VNF from the plurality of incoming VNF in the datacenter based on the allocation model.

### Claim 11 (depends on 10)

The system of claim 10, further comprising an updating module configured to update the allocation model and a datacenter database with the installation of the first VNF from the plurality of VNFs in the datacenter.

### Claim 12

A method for allocating Virtual Network Functions (VNF) in a datacenter, the method comprising:
receiving a VNF catalogue, and a set of allocation rules, wherein the VNF catalogue indicates a plurality of VNFs and the set of allocation rules comprises compulsory and preferred spatial relationships of the plurality of VNFs in the datacenter;
checking a current state of the datacenter by querying a datacenter database;
defining a plurality of extinction factors for a plurality of datacenter units in the datacenter based on the VNF catalogue, the set of allocation rules, and the current state of the datacenter, the plurality of extinction factors indicating resource availability of the plurality of datacenter units;
determining an allocation model based on the VNF catalogue, the set of allocation rules, the extinction factor, and the current state of the datacenter, the allocation model indicating an allocation of the plurality of VNFs to the plurality of datacenter units;
receiving a first VNF from the plurality of VNFs;
allocating the first VNF to the datacenter unit based on the allocation model, wherein for a VNF entity within the first VNF that can be allocated in multiple datacenter units of the plurality of datacenter units, the allocation module is configured to allocate the VNF entity in one or more of the multiple datacenter units that extinct a fewer number of datacenter units and in accordance with the set of allocation rules; and
in response to allocation the first VNF to the datacenter unit, defining an updated extinction factor for the datacenter unit.

### Claim 13 (depends on 12)

The method of claim 12, wherein each VNF from the plurality of VNFs comprises one or more Virtual Machines (VM) to be allocated in the datacenter.

### Claim 14 (depends on 12)

The method of claim 12, wherein the set of allocation rules further comprises at least one of affinity rules, anti-affinity rules, server exclusion rules, server update rules, or a combination thereof.

### Claim 15 (depends on 14)

The method of claim 14, wherein each VNF from the plurality of incoming VNF comprises one or more VM, the method further comprising defining affinity groups, anti-affinity groups, or a combination thereof based on the VNF catalogue, and the at least one of affinity rules and anti-affinity rules, wherein the method further defines an extinction factor of each affinity group.

### Claim 16 (depends on 15)

The method of claim 15, wherein the allocation model is an allocation matrix matching the affinity groups and the plurality of datacenter units, wherein the datacenter units are entities that form the datacenter and each datacenter unit comprises one or more types of available resources, wherein the one or more types of available resources comprise at least one of Cores (C), Random Access Memory (RAM), Hard Disk (HD), Non Volatile Memory (NVM), Bandwidth (BW), or a combination thereof.

### Claim 17 (depends on 12)

The method of claim 12, wherein a VNF entity within the first VNF is allocated to multiple datacenter units of the plurality of datacenter units, the method further installing the VNF entity in the multiple datacenter units that extinct a fewer number of datacenter units, wherein the datacenter units are entities that form the datacenter and the VNF entity comprises more than one VM.

### Claim 18 (depends on 12)

The method of claim 12, wherein a VNF entity within the first VNF can be allocated to a single datacenter unit, the method further installing the VNF entity in the single datacenter unit, wherein the VNF entity comprises one or more VMs.

### Claim 19 (depends on 12)

The method of claim 12, further comprising:
installing the first VNF in the datacenter unit, wherein the first VNF comprises one or more VM and the set of allocation rules further comprises compulsory and preferred spatial relationships of the one or more VM in the datacenter;
updating the allocation model; and
updating the datacenter database.

### Claim 20

A non-transitory machine-readable medium storing machine-readable instructions executable by a physical processor, wherein the medium receives a Virtual Network Functions (VNF) catalogue, a set of allocation rules, wherein each of a plurality of VNFs from the VNF catalogue comprises one or more Virtual Machines (VM); the instructions causing the processor to:
check a current state of a datacenter by querying a datacenter database;
define one or more affinity groups based on the VNF catalogue and the set of allocation rules, the one or more affinity groups defining compulsory and preferred spatial relationships of the plurality of VNFs and the one or more VMs in the datacenter;
define an extinction factor for each of a plurality of datacenter units in the datacenter based on the affinity groups and the current state of the datacenter, each extinction factor indicating resource availability of one of the plurality of datacenter units;
determine an allocation model matching the one or more VMs with the plurality of datacenter units based on the set of allocation rules, each defined extinction factor, and the current state of the datacenter;
receive a first VNF, wherein the first VNF comprises a first one or more VM;
allocate the first one or more VM to a selected datacenter unit from the plurality of datacenter units based on the allocation model, wherein for a VNF entity within the first VNF that can be allocated in multiple datacenter units of the plurality of datacenter units, the allocation module is configured to allocate the VNF entity in one or more of the multiple datacenter units that extinct a fewer number of datacenter units and within the one or more affinity groups; and
define an updated extinction factor for the selected datacenter unit reflecting the allocation of the first one or more VM to the selected datacenter unit.
