Provisioning of network services based on virtual network function performance characteristics

US10122610B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10122610-B2
Application numberUS-201615081378-A
CountryUS
Kind codeB2
Filing dateMar 25, 2016
Priority dateMar 25, 2016
Publication dateNov 6, 2018
Grant dateNov 6, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method includes performing, by a processor: receiving a selection of a network service, determining a plurality of Virtual Network Functions (VNFs) and a plurality of Virtual Machines (VMs) based on the selection of the network service, the plurality of VNFs being configured to run on the plurality of VMs, generating a plurality of tuples, each of the plurality of tuples corresponding to a combination of one of the plurality of VNFs and one of the plurality of VMs where the one of the plurality of VNFs is configured to run on the one of the plurality of VMs, receiving a plurality of VNF performance parameters, estimating values for each of the plurality of VNF performance parameters for each of the plurality of tuples, respectively, processing the values for each of the plurality of VNF performance parameters to generate a plurality of scores for the plurality of tuples, respectively, generating a plurality of VNF Forwarding Graphs (FGs), each of the VNF FGs corresponding to a combination of ones of the plurality of tuples that support the network service, generating a plurality of grade scores for the plurality of VNF FGs, respectively, based on the plurality of scores for the plurality of tuples, and provisioning the network service on one of the plurality of VNF FGs based on the plurality of grade scores.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: performing by a processor: receiving a selection of a network service; determining a plurality of Virtual Network Functions (VNFs) and a plurality of Virtual Machines (VMs) based on the selection of the network service, the plurality of VNFs being configured to run on the plurality of VMs; generating a plurality of tuples, each of the plurality of tuples corresponding to a combination of one of the plurality of VNFs and one of the plurality of VMs where the one of the plurality of VNFs is configured to run on the one of the plurality of VMs; receiving a plurality of VNF performance parameters; estimating values for each of the plurality of VNF performance parameters for each of the plurality of tuples, respectively, wherein: estimation of a first value of one of the VNF performance parameters is based on past performance data of the selected network service being provisioned on a VM corresponding to one of the plurality of tuples when a VNF corresponding to the same one of the plurality of tuples is not being run on the VM; and estimation of a second value of one of the VNF performance parameters is based on past performance data of the selected network service being provisioned on one of: a VNF corresponding to one of the plurality of tuples when the VNF is being run on a VM corresponding to the same one of the plurality of tuples; and a VNF corresponding to one of the plurality of tuples when the VNF is not being run on a VM corresponding to the same one of the plurality of tuples; processing the values for each of the plurality of VNF performance parameters to generate a plurality of scores for the plurality of tuples, respectively; generating a plurality of VNF Forwarding Graphs (FGs), each of the VNF FGs corresponding to a combination of ones of the plurality of tuples that support the network service; generating a plurality of grade scores for the plurality of VNF FGs, respectively, based on the plurality of scores for the plurality of tuples; and provisioning the network service on one of the plurality of VNF FGs based on the plurality of grade scores. 2. The method of claim 1 , wherein the plurality of VNF performance parameters comprises memory usage, processor usage, and network throughput. 3. The method of claim 2 , further comprising: receiving a plurality of weights corresponding to the plurality of VNF performance parameters, respectively; wherein processing the values for each of the plurality of VNF performance parameters comprises processing the values for each of the plurality of VNF performance parameters based on the plurality of weights. 4. The method of claim 3 , further comprising: receiving a VNF performance threshold; and determining a portion of the plurality of tuples having scores that satisfy the VNF performance threshold; wherein each of the VNF FGs corresponds to a combination of ones of the portion of plurality of tuples having scores that satisfy the VNF performance threshold and that support the network service. 5. The method of claim 1 , wherein: for a first one the tuples, estimating a first value of one of the VNF performance parameters based on past performance data of the selected network service being provisioned on a first VM corresponding to the first one of the tuples when a first VNF corresponding to the first one of the tuples is not being run on the first VM; and for a second one of the tuples, estimating a second value of one of the VNF performance parameters based on past performance data of the selected network service being provisioned on one of: a second VNF corresponding to a second one of the tuples when the second VNF is being run on a second VM corresponding to the second one of the plurality of tuples; and the second VNF corresponding to the second one of the tuples when the second VNF is not being run on the second VM corresponding to the second one of the tuples. 6. The method of claim 1 , wherein provisioning the network service on one of the plurality of VNF FGs based on the plurality of grade scores comprises: provisioning the network service on one of the plurality of VNF FGs having a corresponding one of the plurality of grade scores based on a difference between the corresponding one of the plurality of grade scores and a grade score threshold. 7. The method of claim 1 , wherein provisioning the network service on one of the plurality of VNF FGs based on the plurality of grade scores comprises: provisioning the network service on one of the plurality of VNF FGs having a corresponding one of the plurality of grade scores based on a difference between the corresponding one of the plurality of grade scores and ones of the plurality of grade scores corresponding to other ones of the plurality of VNF FGs. 8. The method of claim 1 , wherein provisioning the network service on one of the plurality of VNF FGs based on the plurality of grade scores comprises: provisioning the network service on one of the plurality of VNF FGs having a corresponding one of the plurality of grade scores based on a difference between the corresponding one of the plurality of grade scores and a grade score threshold range. 9. A system comprising: a processor; and a memory coupled to the processor and comprising computer readable program code embodied in the memory that is executable by the processor to perform: receiving a selection of a network service; determining a plurality of Virtual Network Functions (VNFs) and a plurality of Virtual Machines (VMs) based on the selection of the network service, the plurality of VNFs being configured to run on the plurality of VMs; generating a plurality of tuples, each of the plurality of tuples corresponding to a combination of one of the plurality of VNFs and one of the plurality of VMs where the one of the plurality of VNFs is configured to run on the one of the plurality of VMs; receiving a plurality of VNF performance parameters; estimating values for each of the plurality of VNF performance parameters for each of the plurality of tuples, respectively, wherein: estimation of a first value of one of the VNF performance parameters is based on past performance data of the selected network service being provisioned on a VM corresponding to one of the plurality of tuples when a VNF corresponding to the same one of the plurality of tuples is not being run on the VM; and estimation of a second value of one of the VNF performance parameters is based on past performance data of the selected network service being provisioned on one of: a VNF corresponding to one of the plurality of tuples when the VNF is being run on a VM corresponding to the same one of the plurality of tuples; and a VNF corresponding to one of the plurality of tuples when the VNF is not being run on a VM corresponding to the same one of the plurality of tuples; processing the values for each of the plurality of VNF performance parameters to generate a plurality of scores for the plurality of tuples, respectively; generating a plurality of VNF Forwarding Graphs (FGs), each of the VNF FGs corresponding to a combination of ones of the plurality of tuples that support the network service; generating a plurality of first grade scores for the plurality of VNF FGs, respectively, based on the plurality of scores for the plurality of tuples; receiving a plurality of VNF FG edge performance parameters; estimating values for each of the plurality of VNF FG edge performance parameters for each of the plurality of VNF FGs; processing the values for each of the plurality of VNF FG edge performance parameters to generate a plurality of edge performance scores for the plurality of VNF FGs; generating a plurali

Assignees

Inventors

Classifications

  • using virtualisation of network functions or resources, e.g. SDN or NFV entities · CPC title

  • H04L43/16Primary

    Threshold monitoring · CPC title

  • of virtual routers · CPC title

  • Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities (flow or congestion control using dynamic resource allocation, e.g. in-call renegotiation, H04L47/76) · CPC title

  • Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10122610B2 cover?
A method includes performing, by a processor: receiving a selection of a network service, determining a plurality of Virtual Network Functions (VNFs) and a plurality of Virtual Machines (VMs) based on the selection of the network service, the plurality of VNFs being configured to run on the plurality of VMs, generating a plurality of tuples, each of the plurality of tuples corresponding to a co…
Who is the assignee on this patent?
Ca Inc
What technology area does this patent fall under?
Primary CPC classification H04L43/16. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 06 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).