CN115086175B - Resource optimization method and device - Google Patents
Resource optimization method and device Download PDFInfo
- Publication number
- CN115086175B CN115086175B CN202210451914.4A CN202210451914A CN115086175B CN 115086175 B CN115086175 B CN 115086175B CN 202210451914 A CN202210451914 A CN 202210451914A CN 115086175 B CN115086175 B CN 115086175B
- Authority
- CN
- China
- Prior art keywords
- virtual network
- service function
- function chain
- availability
- network function
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000005457 optimization Methods 0.000 title claims abstract description 26
- 230000006870 function Effects 0.000 claims abstract description 859
- 238000012546 transfer Methods 0.000 claims description 85
- 238000003860 storage Methods 0.000 claims description 17
- 238000013507 mapping Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0836—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides a method and a device for optimizing resources, wherein the method comprises the following steps: determining virtual network functions deployed on the target physical node and backup of the virtual network functions based on availability requirements and latency constraints of service function chain requests, the service function chain requests including one or more different types of virtual network functions; based on the resource information of the target physical node with the deployed virtual network functions of the same type, the virtual network functions deployed on the target physical node are adjusted with the minimum resource consumption as a target. The invention effectively improves the availability of service function chain requests by deploying the backup of the virtual network function on the target physical node, determines the deployment of the virtual network function by combining the corresponding time delay constraint condition, and adjusts the original deployment scheme under the condition that a plurality of physical nodes deploy the same type of virtual network function, thereby realizing the optimization of network resources.
Description
Technical Field
The present invention relates to the field of network function virtualization technologies, and in particular, to a method and an apparatus for resource optimization.
Background
In the big background of the information age, the internet of things technology and cloud computing have been widely applied to daily life, and based on these emerging technologies, a great deal of network applications such as smart home, smart city, internet of vehicles and the like are induced. In this case, the network is facing a fast change process. Under the traditional network architecture, the adopted special network function supports a hardware system, the network is difficult to adjust and improve according to the continuous change of the service demands of users, and in addition, the cost of physical equipment and the cost of energy resources are also continuously increasing. Therefore, network virtualization and clouding have become a trend, and a new network architecture, i.e. network function virtualization, has been promoted.
The network function virtualization applies the virtualization means to decouple the corresponding network function from the hardware physical equipment, thereby providing a new idea for the development of the communication network. However, in the actual production and development environment, along with popularization and development of the internet, the scenes of the communication network are increasingly complex, the requirements of application scenes such as intelligent home, unmanned operation and the like are more complex and various, the requirements on performance indexes such as reliability, time delay and the like are also increasingly improved, the reliability of software equipment is far lower than that of hardware equipment, the backup research on virtual network functions in the existing work research is not perfect, the consumption of network resources is increased when the availability of the virtual network functions is pursued, a plurality of service requests with higher time delay requirements exist in the cloud network, operators are required to meet the time delay requirements of network service function requests in the deployment process, different virtual network function arrangement modes can generate time delays of different degrees, and resource expenses of different degrees can be brought.
Therefore, by optimizing the deployment of virtual network functions, reducing resource consumption while meeting the availability and time-consuming requirements of virtual network functions is a technical problem that needs to be solved in the art.
Disclosure of Invention
Aiming at the problems existing in the prior art, the invention provides a resource method and a resource device.
In a first aspect, the present invention provides a method for resource optimization, comprising:
determining virtual network functions deployed on a target physical node based on availability requirements and latency constraints of service function chain requests, the set of service function chain requests comprising one or more different types of virtual network functions;
and adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the deployed virtual network function.
Optionally, the determining the virtual network function deployed on the target physical node based on the availability requirement and the latency constraint condition of the service function chain request includes:
determining virtual network functions which need to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the low-priority guarantee strategy of the availability;
Determining whether the availability of the service function chain request after backup meets the availability requirement of the service function chain request or not based on an availability calculation method;
under the condition that the availability of the service function chain request after backup meets the availability requirement, determining whether the delay of the service function chain request after backup meets the delay constraint condition based on a delay model;
and determining one or more backups of the virtual network function and/or the virtual network function deployed on the target physical node under the condition that the total delay of the service function chain requests after backups meets the delay constraint condition.
Optionally, the determining the virtual network function to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy includes:
determining availability of a first component based on availability of each virtual network function in a virtual network function set requested by the service function chain and availability of the target physical node, wherein the first component is composed of all the virtual network functions and target physical nodes in initial deployment of the virtual network functions in the service function chain request;
Determining availability of the service function chain request based on the availability of the first component;
in the case that the availability of the service function chain request does not meet the availability requirement of the service function chain request, providing backup for the virtual network function in the first component with the lowest availability is prioritized based on the availability of the first component.
Optionally, after determining the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy, the method includes:
determining the availability of a second component based on the availability of the virtual network function after the virtual network function set backup requested by the service function chain and the availability of the target physical node of the virtual network function deployment;
updating the availability of the service function chain request based on the availability of the second component;
and if the updated availability of the service function chain request meets the availability requirement of the service function chain request, determining the number of backups included by the virtual network functions after the virtual network functions of the service function chain request are intensively backuped and the target physical nodes of the backup deployment based on the composition of the second component.
Optionally, the determining, based on a latency model, whether the latency of the service function chain request after the backup meets the latency constraint condition when the availability of the service function chain request after the backup meets the availability requirement includes:
determining a mapping relation between virtual links and physical links between any virtual network functions based on target physical nodes of virtual network function deployment after virtual network function centralized backup of the service function chain request;
based on the mapping relation, determining the time delay of the virtual network function set requested by the service function chain on the corresponding physical link;
determining the time delay of the service function chain request on the target physical node based on the time delay of the target physical node deployed by the virtual network function after backup;
determining whether the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request, wherein the total time delay of the service function chain request is the sum of the time delay of a virtual network function set of the service function chain request on a corresponding physical link and the time delay of the service function chain request on a target physical node.
Optionally, the method further comprises:
if the total time delay of the service function chain request does not meet the time delay constraint condition of the service function chain request, decomposing the service function chain request into a plurality of independent virtual network functions;
based on a first-fit algorithm, deploying the decomposed multiple independent virtual network functions to physical nodes with deployed virtual network functions of the same type;
and determining a target physical node of each virtual network function deployment in the service function chain request until the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request.
Optionally, the adjusting the virtual network function deployed on the target physical node with minimum resource consumption based on the resource information of the target physical node with the same type of the virtual network function deployed includes:
determining a first set of all the service function chain requests comprising the same type of virtual network function;
selecting the service function chain request with the minimum consumption flow as a first service function chain request in the first set;
determining a second set formed by each virtual network function in the first service function chain request;
Taking the first virtual network function in the second set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets transfer conditions, and the resource consumption corresponding to a transferred first service function chain request is minimum;
the transfer physical node is a target physical node which is deployed in other service function chain requests in the first set and has the same type as the virtual network function to be transferred; the transfer condition is that the transfer physical node has deployed a virtual network function of the same type as the virtual network function to be transferred, and after the virtual network function to be transferred is replaced by the virtual network function of the same type deployed by the transfer physical node, the total delay of the transferred first service function chain request meets the delay constraint condition of the first service function chain request.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the second virtual network function in the second set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred first service function chain request is minimum.
Optionally, the method further comprises:
selecting the service function chain request with the minimum consumption flow as a second service function chain request in the first set, wherein the second service function chain request is different from the first service function chain request;
determining a third set of virtual network functions in the second service function chain request;
determining a transfer physical node of the virtual network function to be transferred by taking a third virtual network function in the third set as the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum;
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the fourth virtual network function in the third set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the fourth virtual network function in the third set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
In a second aspect, the present invention also provides a resource optimization apparatus, including:
the deployment module is used for determining virtual network functions deployed on the target physical node based on the availability requirement and time delay constraint condition of the service function chain request, wherein the virtual network function set of the service function chain request comprises one or more virtual network functions of different types;
and the adjusting module is used for adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the deployed virtual network function.
In a third aspect, the invention provides an electronic device comprising a memory and a memory storing a computer program, the processor implementing the method of the first aspect or the resource optimization when executing the program.
In a fourth aspect, the present invention provides a processor-readable storage medium storing a computer program for causing the processor to perform the method of resource optimization of the first aspect.
According to the resource optimization method and device, the backup of the virtual network function is deployed on the target physical node, the availability of the service function chain request is effectively improved, the deployment of the virtual network function is determined by combining the time delay constraint condition of the service function chain request, and the original deployment scheme is adjusted under the condition that the same type of virtual network function exists in a plurality of service function chain requests, so that the network resource is optimized.
Drawings
In order to more clearly illustrate the invention or the technical solutions of the prior art, the following description will briefly explain the drawings used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are some embodiments of the invention, and other drawings can be obtained according to the drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow diagram of a method of resource optimization provided by the present invention;
FIG. 2 is a business logic relationship diagram corresponding to the resource optimization method provided by the invention;
FIG. 3 is a corresponding flow chart of the availability calculation method provided by the present invention;
FIG. 4 is a schematic flow chart of an implementation of mapping service function chain requests to physical nodes according to the present invention;
FIG. 5 is a flow chart of a virtual network function deployment adjustment algorithm provided by the present invention;
FIG. 6 is a schematic diagram of a resource optimizing apparatus provided by the present invention;
fig. 7 is a schematic diagram of the physical structure of the electronic device provided by the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is apparent that the described embodiments are some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The method and apparatus for resource optimization of the present invention are described below in conjunction with FIGS. 1-7.
FIG. 1 is a flow diagram of a method of resource optimization provided by the present invention; as shown in fig. 1, the method includes:
specifically, after a service function chain request is received, an availability requirement and a time delay constraint condition included in the request are obtained, and different service functions may correspond to different availability requirements and time delay constraint conditions. The set of virtual network functions (Virtualization Network Function, VNF) requested by the service function chain comprises one or more virtual network functions of different types, the virtual network functions of the service function chainThe virtual network function set may be expressed as v= { VNF 1 ,VNF 2 ,VNF 3 ,…,VNF n }. n is the number of virtual network functions requested by the service function chain. Virtual network functions realizing the same function are divided into one type, and different types of virtual network functions realize different functions.
Each virtual network function is deployed on a physical node, where the physical node is typically a physical device with storage and computing capabilities, such as a server, that implements the function of the virtual network function through the resources of the physical node, etc.
The availability requirement mainly refers to the proportion of the normal work of the virtual network function set requested by the service function chain to the total work duration; a higher ratio indicates a higher availability of the virtual network function set requested by the service function chain, and also indicates a higher availability of the service function chain, and vice versa. Because the virtual network functions in the virtual network function set are all deployed on the physical nodes, the availability of the physical devices is also generally considered. In order to improve the availability or meet the availability requirement of the service function chain request, the availability of the virtual network function can be improved by backing up each virtual network function, so that the availability of the whole service function chain request is improved.
The delay constraint condition is generally different according to different service requirements, for example, the corresponding delay requirement is different, for example, the service high definition video with higher timeliness requirement is higher, and the delay constraint condition in the corresponding service function chain request is higher.
According to the availability requirement, determining the number of virtual network functions to be backed up, specifically backing up, determining physical nodes for specific deployment of the virtual network functions by combining time delay constraint conditions, and under the condition that the conditions are met, primarily determining deployment schemes of the virtual network functions in the virtual network function set requested by the service function chain.
In particular, after determining the deployment schemes of virtual network functions in the virtual network function set for all service function chain requests, there may be a plurality of service function chain requests including the same type of virtual network function. In order to save resources and increase the utilization rate of resources, resources requested by multiple service function chains requiring the same type of virtual network function may be integrated, for example, the virtual network function set corresponding to the service function chain request a includes { VNF 1 ,VNF 2 ,VNF 3 -a }; the virtual network function set corresponding to the service function chain request B includes { VNF 2 ,VNF 4 ,VNF 5 -a }; the virtual network function set corresponding to the service function chain request C includes { VNF 2 ,VNF 3 ,VNF 5 -a }; wherein the VNF 1 ,VNF 2 ,VNF 3 ,VNF 4 ,VNF 5 Representing different types of virtual network functions, respectively, each deployed on a different physical node. The VNF in service function chain request a may be requested 2 And serving VNF in function chain request B 2 All request VNF in C through service function chain 2 To realize the same function, omitting the VNF in the deployment service function chain request A 2 Resources on physical nodes of (a) and deploying VNFs in service function chain request B 2 Resources on physical nodes of (a); or a VNF requested in any one of the three service function chain requests 2 To realize VNF in other two service function chain requests 2 Is a function of (2); or VNF in any two requests 2 To implement VNF in these three requests 2 Is provided. In the above way, the resource consumption on the physical node is reduced. And finally, the scheme corresponding to the minimum resource consumption is used as the final adjustment deployment scheme.
Optionally, the determining the virtual network function deployed on the target physical node based on the availability requirement and the latency constraint condition of the service function chain request includes:
determining virtual network functions which need to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the low-priority guarantee strategy of the availability;
Determining whether the availability of the service function chain request after backup meets the availability requirement of the service function chain request or not based on an availability calculation method;
under the condition that the availability of the service function chain request after backup meets the availability requirement, determining whether the delay of the service function chain request after backup meets the delay constraint condition based on a delay model;
and determining one or more backups of the virtual network function and/or the virtual network function deployed on the target physical node under the condition that the total delay of the service function chain requests after backups meets the delay constraint condition.
Specifically, a plurality of service function chain requests are received, each requested virtual network function set comprises one or more virtual network functions, all virtual network functions and physical nodes deployed by the virtual network functions are traversed, the availability of each virtual network function and the physical nodes deployed by the virtual network functions are determined, and the virtual network functions needing to be backed up in a certain service function chain request are determined according to an availability low-priority guarantee strategy; the virtual network functions that need to be backed up may be one or more;
Determining whether the availability of the backed-up service function chain request meets the availability requirement of the service function chain request according to an availability calculation method; if not, it is determined whether a backup needs to be added to a certain virtual network function in the service function chain request, so as to improve the availability of the virtual network function, and further improve the availability of the service function chain request. Until the availability requirement of the service function chain request is met;
under the condition that the availability of the service function chain request after backup meets the availability requirement of the service function chain request, determining whether the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request according to a time delay model, wherein the time delay model comprises the time delay on a physical link of virtual link mapping among virtual network functions and the processing time delay of a physical node deployed by the virtual network functions.
If the total time delay of the service function chain request obtained by calculation does not meet the time delay constraint condition of the service function chain request, dividing the service function chain request into a plurality of independent virtual network functions, and determining a corresponding deployment scheme until the service function chain request meets the time delay constraint condition of the service function chain request.
In case the total latency of the backed-up service function chain requests meets the latency constraint, it is determined which virtual network function or functions are deployed on which target node and on which target node the backup of the virtual network function or functions is deployed.
Fig. 2 is a business logic relationship diagram corresponding to the resource optimization method provided by the invention, as shown in fig. 2, after a service function chain request is received, firstly calculating the availability of the service function chain request, determining whether the availability requirement of the service function chain request is met, if not, improving the availability of the service function chain request by backup, then calculating the time delay of the service function chain request, forming a preliminary deployment scheme of virtual network functions in the service function chain request according to time delay constraint conditions, and finally adjusting a target physical node of one or a plurality of virtual network function deployments according to resource consumption conditions to further optimize the deployment scheme.
Optionally, the determining the virtual network function to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy includes:
Determining availability of a first component based on availability of each virtual network function in a virtual network function set requested by the service function chain and availability of the target physical node, wherein the first component is composed of all the virtual network functions and target physical nodes in initial deployment of the virtual network functions in the service function chain request;
determining availability of the service function chain request based on the availability of the first component;
in the case that the availability of the service function chain request does not meet the availability requirement of the service function chain request, providing backup for the virtual network function in the first component with the lowest availability is prioritized based on the availability of the first component.
In particular, availability is an important indicator for measuring whether a service function chain deployed by us can be continuously available, and in the invention, the availability represents the probability that a single VNF node or physical device can normally operate in a unit time. The operation process of the VNF node of the single virtual network function is expressed as a normal operation time (Uptime) and a down time (Downtime), and the operation process of the physical device is also expressed in the same manner. Thus, the availability of a single VNF node or physical device may be expressed as a ratio of normal running time (or average dead time) to total time as shown in the following equation 1-1:
Where a represents the availability of a single VNF node or the availability of a single physical device.
While physical devices deploying VNF nodes may also fail, so taking one physical node and the VNF node deployed thereon as one component, assuming one VNF node is deployed in one physical node, referred to as a first component in the present invention, the availability of each first component may be expressed as the product of the availability of the physical node and the availability of the VNF node deployed thereon, as shown in equations 1-2:
wherein,,representing the first component c i Availability of->Indicating the availability of the physical device i +.>Representing a VNF operating on a physical device i i Availability of (c).
To ensure that the entire service function chain is available, if each component is guaranteed to be available, then the availability of two adjacent first components can be expressed as the product of the two, as shown in formulas 1-3:
wherein A is seq Indicating the availability of two adjacent first components in the service function chain,representing the first component c i Availability of->Representing the first component c j Seq represents the number of components included in the service function chain.
The entire service function chain request is made up of a plurality of components and the availability of the corresponding entire service function chain request is expressed as:
Wherein A is sfc Indicating availability of the entire service function chain request, A seq Indicating the availability of two adjacent first components in the service function chain,representing the first component c i Availability of->Representing the first component c j Seq represents the number of components included in the service function chain.
If the availability of the service function chain request calculated according to formulas 1-4 does not meet the availability requirement of the service function chain request, the virtual network function in the service function chain request needs to provide backup. And ordering the availability of each first component in the service function chain request, finding out the first component with the lowest availability, determining the virtual network function in the first component, and providing backup for the virtual network function.
Optionally, after determining the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy, the method includes:
determining the availability of a second component based on the availability of the virtual network function after the virtual network function set backup requested by the service function chain and the availability of the target physical node of the virtual network function deployment;
Updating the availability of the service function chain request based on the availability of the second component;
and if the updated availability of the service function chain request meets the availability requirement of the service function chain request, determining the number of backups included by the virtual network functions after the virtual network functions of the service function chain request are intensively backuped and the target physical nodes of the backup deployment based on the composition of the second component.
Specifically, in order to improve the availability of the entire service function chain request, a backup is provided for the virtual network functions in the virtual network function set requested by the service function chain, and when the virtual network function fails, the VNF node for backup is started, so that the service function chain can be ensured to continuously provide services for the user. And the backup VNF nodes are independent from each other. Assuming that θ backups are provided for VNF nodes deployed on one physical node, and the availability of the backups of each VNF node is independent, the availability of the service function chain request after backups needs to be expressed by the availability of the second component, and the corresponding formula is:
wherein,,representing a second component unit c i Availability of- >Indicating the availability of the physical device i +.>Representing a virtual network function VNF deployed on a physical device i i Availability of θ i For a VNF deployed on physical device i i Number of VNF backups of the same type.
To ensure that the entire service function chain is available, it is necessary to ensure that the physical devices are available and that at least one VNF is available in the physical devices, and thus the availability of the entire service function chain can be expressed as:
wherein A is sfc Indicating the availability of the entire service function chain, seq indicates the number of components included in this service function chain, θ i VNF deployed on physical node i for linking with the service function i Number of VNF backups of the same type.
In the case that the availability of the entire service function chain thus calculated meets the availability requirement of the service function chain request, it is determined that each second component in the service function chain request has a configuration, and that each virtual network function in the second component has several backups, and the virtual network function and its backup are deployed at which physical node (physical device). That is, the number of backups of each virtual network function in the virtual network service set requested by the service function chain, and the physical node where each virtual network function is deployed are determined.
When determining the placement strategy of the backup, that is, determining which physical node the backup virtual network function is placed on, the virtual network function backup of the same type is preferably deployed on the physical node where the original virtual network function is deployed. Such as deploying VNFs in the physical device 1 a And the VNF is to be applied in case the physical device 1 is in operation a Is a backup VNF of (a) a` Also in the physical device 1. In the prior art, most of backup placement calculates which physical machine the backup is to be placed on according to a scheduling algorithm, so that the phenomenon of flow synchronization or migration from one physical machine to another physical machine is caused, resource waste is caused, the backup service is preferentially placed on a physical node of the service in operation, local data is synchronized in real time, and the cost of flow is reduced. A corresponding flow chart of the above-described availability calculation method is shown in fig. 3.
The method is a deployment scheme of virtual network functions determined for a single service function chain request, and the same method can be adopted if a plurality of service function chain requests exist.
Optionally, the determining, based on a latency model, whether the latency of the service function chain request after the backup meets the latency constraint condition when the availability of the service function chain request after the backup meets the availability requirement includes:
Determining a mapping relation between virtual links and physical links between any virtual network functions based on target physical nodes of virtual network function deployment after virtual network function centralized backup of the service function chain request;
based on the mapping relation, determining the time delay of the virtual network function set requested by the service function chain on the corresponding physical link;
determining the time delay of the service function chain request on the target physical node based on the time delay of the target physical node deployed by the virtual network function after backup;
determining whether the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request, wherein the total time delay of the service function chain request is the sum of the time delay of a virtual network function set of the service function chain request on a corresponding physical link and the time delay of the service function chain request on a target physical node.
Specifically, after the availability requirement of the service function chain request is guaranteed, the time delay constraint condition of the service function chain request needs to be considered. The specific measurement index is time delay, which is a very important performance index in the process of VNF deployment. Each service function chain requests a physical node of the corresponding virtual network function deployment, and can determine the mapping relationship between the virtual link between any two virtual network functions and the physical link.
Determining a time delay on a virtual link between all virtual network functions included in the virtual network function set requested by the service function chain according to the mapping relation; and determining the processing delay of the service function chain request at the target physical node according to the target physical nodes deployed by all the virtual network functions. And further determining that the total delay of the entire service function connection request is the sum of the delay on the virtual link between all virtual network functions included in the virtual network function of the service function chain request and the delay of the service function chain request on the target physical node.
The delay of the virtual network function set requested by the service function chain on the corresponding physical link can be subdivided into propagation delay, transmission delay and queuing delay. Wherein the propagation delay is related to the length of the deployed physical link, in a proportional proportion to its length; the transmission delay refers to the time from the beginning to the end of transmission of the transmission data stream, and is related to the packet size of the transmission data stream and the bandwidth capacity of the physical link; queuing delay depends on the size of the resource utilization of the deployed physical link, i.e., the ratio of the allocated bandwidth of the target physical link to the other bandwidth capacity, and is typically controlled to be less than fifty percent, thereby effectively reducing queuing delay.
The time delay of the service function chain request on the physical link (n, n') is divided into three parts of propagation time delay, transmission time delay and queuing time delay, and the three parts are expressed as shown in a formula 2-1:
wherein,,representing the delay on the physical link (n, n ') when the service function chain request i is mapped to the physical link (n, n') ∈>Representing propagation delay on the physical link (n, n') +.>Representing a transmission delay over the physical link (n, n'); />When the service function chain request I is mapped to the physical link (n, n '), the bandwidth utilization of the physical link (n, n'), E represents a physical link set in the physical network formed by the physical nodes where the virtual network function VNF node is deployed, I represents a set of all service function chain requests, (n, n ') represents a physical link between the physical node n and the physical node n', and I represents any service function chain request.
The first term on the right of equation 2-1 represents the propagation delay of a service function chain request on a physical link (n, n'), related to the length of the deployed service function chain; the second term represents the transmission delay of the service function chain request on the physical link (n, n '), related to the packet size of the transport data stream and the bandwidth capacity of the deployed physical link (n, n'). The third term is queuing delay for servicing the function chain request, specifically expressed as the product of queuing delay and link resource utilization.
The delay of the service function chain request on the target physical node, namely the processing delay of the service function chain request on the target physical node, is related to the resource utilization rate of the target physical node, namely the ratio of the allocated resources of the target physical node to the total resource capacity of the target physical node.
The delay of the service function chain request on the physical node n, i.e. the processing delay, is defined in analogy to the delay of the physical link, and is related to the resource utilization of the target node, as shown in formula 2-2:
wherein,,representing the utilization of the CPU of the physical node n where the service function chain request i is deployed, +.>Representing the processing delay per packet processed at physical node n.
In summary, the total delay of a service function chain request may be expressed as the sum of the delay on the virtual link between all virtual network functions included in the virtual network function of the service function chain request and the delay of the service function chain request on the target physical node, specifically expressed as:
wherein,,indicating whether the virtual link (v, v ') in the service function chain request i is mapped to the physical link (n, n'); />Representing service function chainsRequesting whether the virtual network function v in i is deployed at the physical node n; / >Representing the maximum acceptable delay of the service function chain request; e (E) i A set of all virtual links (v, v') representing service function chain requests i; e represents the set of physical links (n, n') to which the service function chain request i is mapped; n (N) i A set of all virtual network functions v representing service function chain requests i; n represents the set of physical nodes N that serve each virtual network function deployment of function chain request i.
When the value is 0, the virtual link (v, v ') in the service function chain request i is mapped to the physical link (n, n'), and when the value is 1, the virtual link (v, v ') in the service function chain request i is not mapped to the physical link (n, n');when the value is 0, the virtual network function v in the service function chain request i is deployed at the physical node n, and when the value is 1, the virtual network function v in the service function chain request i is not deployed at the physical node n.
When a plurality of service function chain requests exist, sorting according to the maximum acceptable time delay of the service function chain requests, sequentially selecting the service function chain requests with the minimum acceptable time delay in the sorting according to the ascending order, calculating according to the formula 2-3 to obtain the total time delay of the service function chain requests, comparing the total time delay of the service function chain requests with the time delay constraint condition of the service function chain requests, and determining whether the total time delay of the service function chain requests after backup meets the time delay constraint condition of the original service function chain requests.
Optionally, if the total delay of the service function chain request does not meet the delay constraint condition of the service function chain request, decomposing the service function chain request into a plurality of independent virtual network functions;
based on a first-fit algorithm, deploying the decomposed multiple independent virtual network functions to physical nodes with deployed virtual network functions of the same type;
and determining a target physical node of each virtual network function deployment in the service function chain request until the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request.
Specifically, if the total time delay of the service function chain request after the backup is calculated and obtained does not meet the time delay constraint condition of the original service function service chain request, decomposing the service function chain request into a plurality of independent virtual network functions; mapping the decomposed virtual network functions to different target physical nodes according to a first-fit algorithm, wherein the target physical nodes are deployed with the same type of virtual network functions, calculating the total time delay of the service function chain request according to a formula 2-3 until the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request, and determining the target physical nodes deployed by each virtual network function in the service function chain request.
All service function chain requests can determine the total time delay according to the method, and the total time delay is compared with the time delay constraint condition of the service function chain requests, and the target physical node of the deployment of each virtual network function in all service function chain requests is determined under the condition that the time delay constraint condition is met. The implementation flow of the service function chain request mapping to the physical node is shown in fig. 4.
Optionally, the adjusting the virtual network function deployed on the target physical node with minimum resource consumption based on the resource information of the target physical node with the same type of the virtual network function deployed includes:
determining a first set of all the service function chain requests comprising the same type of virtual network function;
selecting the service function chain request with the minimum consumption flow as a first service function chain request in the first set;
determining a second set formed by each virtual network function in the first service function chain request;
taking the first virtual network function in the second set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets transfer conditions, and the resource consumption corresponding to a transferred first service function chain request is minimum;
The transfer physical node is a target physical node which is deployed in other service function chain requests in the first set and has the same type as the virtual network function to be transferred; the transfer condition is that the transfer physical node has deployed a virtual network function of the same type as the virtual network function to be transferred, and after the virtual network function to be transferred is replaced by the virtual network function of the same type deployed by the transfer physical node, the total delay of the transferred first service function chain request meets the delay constraint condition of the first service function chain request.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the second virtual network function in the second set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred first service function chain request is minimum.
Specifically, through the above determination of the availability requirement and the time delay constraint condition of the service function chain request, the number of backups of the virtual network functions in the virtual network function set for each service function chain request, and the deployment scheme of the virtual network functions have been determined. There may be situations where multiple physical nodes deploy virtual network functions of the same type, which would result in a significant amount of unnecessary overhead of underlying resources, and therefore adjustments to the deployment scheme of virtual network functions in service function chain requests are required. The basic resource overhead is reduced mainly by adjusting the virtual network function type on the physical node.
Through sharing of the virtual network functions, namely one virtual network function can simultaneously provide the needed services for a plurality of service function chain requests, so that the resource utilization rate can be improved, and the operation cost can be reduced.
Based on this technique, it is necessary to ensure that each virtual network function is mapped to only one physical node, as shown in formulas 3-4:
wherein,,the virtual network function VNF node v in the service function chain request i is represented as deployed on the physical node n.
The resources consumed by the physical nodes in the physical network include memory overhead and CPU overhead, and in order for the physical nodes to be able to carry VNF nodes deployed thereon, it is required that the available resources of the physical nodes be no less than the resources consumed by all VNF nodes deployed thereon. The CPU resource consumed by the VNF node on the physical node is mainly two parts of the basic resource overhead of the CPU and the CPU resource consumed by the processing service function request when the VNF is instantiated, and the CPU resource consumption can be expressed as:
wherein,,representing CPU base resources consumed by instantiating a type p VNF, ++>Representing whether a p-type VNF node has been deployed on physical node n +.>Representing CPU resources consumed by the virtual network function v in the service function chain request i when processing the request; />Indicating whether the virtual network function is deployed on the physical node n; />Representing CPU resources available on physical node n; n represents a set of physical nodes N that serve each virtual network function deployment of function chain request i; the virtual network functions are divided into different types according to the specific functions to be realized, all the VNFs of the types form a set P, and P can be used for representing any one type, and the specific types are determined according to the specific functions included in the virtual network function set requested by different service function chains.
The first term on the left side of the formula represents the base resources of the CPU consumed when instantiating a p-type VNF, and the second term represents the CPU resources consumed to process the service function chain request.
The total CPU consumption in a physical network consisting of physical nodes deployed to service all virtual network functions in a virtual network function set requested by a function chain can be expressed as:
similar to the CPU resources consumed by the physical node, the memory resources consumed by the instantiation VNF are also composed of two parts, which are respectively the basic resource overhead of the memory and the memory resources consumed by the processing service function request when the VNF is instantiated, and the memory resource constraint can be expressed as:
wherein,,representing memory resources consumed by instantiating a VNF of type p; / >Representing the memory resources consumed by the virtual network function v in the service function chain request i when processing the request; />Representing the memory resources available on physical node n.
The first term on the left side of the formula represents the basic resources of memory consumed when instantiating a p-type VNF, and the second term represents the memory resources consumed by processing a service function request.
The total memory consumption in the physical network formed by the deployed physical nodes of all virtual network functions in the virtual network function set requested by the service function chain can be expressed as:
in addition, the bandwidth of the physical link may also be constrained by the network bandwidth that is actually employed. For each service function chain request in the network, it is first ensured that the virtual link (v, v ') is mapped onto the physical link (n, n'), and then that the bandwidth resource overhead between two VNF nodes is smaller than the bandwidth capacity of the physical link, specifically expressed as:
wherein,,representing bandwidth resource overhead between two instantiated virtual network functions, +.>Representing that virtual links (v, v ') between virtual network functions v and v ' in service function chain request i are mapped to physical links (n, n '), T (n,n′) Representing bandwidth resource capacity of a physical link (n, n'), E representsAll virtual network function deployments serving function chain requests are grouped into physical links in a physical network.
And triggering different service function chain requests according to different requirements, wherein the flow of each service function chain request passes through the corresponding virtual network functions according to the corresponding sequence, and if two adjacent virtual network functions are not deployed on the same physical node, the virtual links formed by the two VNs are required to be mapped onto the corresponding physical links, so that the service function chain can be ensured to normally run. For an operating physical link, its bandwidth resource consumption is related to its hop distance, which in turn is related to the network topology in the cloud.
The bandwidth resource overhead of all service function chain requests in the whole network can be expressed as:
wherein l nn′ Representing the number of hops between physical nodes n and n'; e represents the set of physical links (n, n') to which the service function chain request i is mapped; (n, n ') represents a physical link between the physical node n and the physical node n'; i represents a set of all service function chain requests, I represents any one service function chain request; e (E) i A set of all virtual links (v, v') representing service function chain requests i; (v, v ') represents a virtual link between the virtual network function v and the virtual network function v'.
Finally, the following optimization objective function is obtained in a weighted summation manner:
F total =α·R CPU +β·R mem +λ·R band (3-11)
wherein F is total Representing total resource overhead, R CPU Representing CPU resource overhead, R mem Representing memory resource overhead, R band And the cost of bandwidth resources is represented, and alpha, beta and lambda represent the cost of CPU resources, the cost of memory resources and the weight coefficient corresponding to the cost of bandwidth resources.
Protecting coverUnder the condition of barrier time delay constraint conditions, the total resource overhead is minimized, namely F is calculated total Is a minimum of (2).
To determine this minimum value, the present invention proposes a virtual network function deployment adjustment algorithm, and fig. 5 is a schematic flow chart of the virtual network function deployment adjustment algorithm provided by the present invention. As shown in fig. 5, first, all service function chain requests are classified according to virtual network functions including the same type, a corresponding set η is determined, in the set, one service function chain request is sequentially selected according to the minimum consumption flow, the service function chain request with the minimum first consumption flow is used as a first service function chain request, each virtual network function in the first service function chain request and a target physical node where the virtual network function is deployed are sequentially determined according to whether the virtual network function in the first service function chain request is transferred from the target physical node to other physical nodes after the virtual network function in the first service function chain request is deployed in other physical nodes in the other service function chain requests of the set η, and whether the first service function chain request meets a corresponding time delay constraint condition is determined.
When there are a plurality of other physical nodes to be transferred, the first service function chain request satisfies the time delay constraint condition, and the other physical node consuming the minimum basic resource is used as a new target physical node for transferring the virtual network function in the first service function chain request. It is also understood that the same functionality is achieved by replacing the original virtual network functionality with a virtual network functionality of the same type deployed on the new target physical node.
When the first service function chain request is transferred to any other physical node, the first service function chain request does not meet the time delay constraint condition, and the original deployment state is kept unchanged.
And determining the transferred physical nodes or keeping the original deployment state sequentially according to the method until all the virtual network functions in the first service function chain request.
Optionally, selecting the service function chain request with the smallest consumption flow as a second service function chain request in the first set, wherein the second service function chain request is different from the first service function chain request;
determining a third set of virtual network functions in the second service function chain request;
and taking the third virtual network function in the third set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the fourth virtual network function in the third set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
Specifically, after all virtual network functions in the first service function chain request sequentially determine the transferred physical nodes, selecting the next service function chain request with the minimum consumption flow from the set eta as a second service function chain request, and determining the transferred physical nodes of all virtual network functions in the second service function chain request according to the same method.
Until all service function chain requests in the set eta determine the transferred physical nodes or maintain the original deployment state through the method.
After all service function chain requests in the set eta determine the transferred physical nodes through the method, after the virtual network functions deployed on a certain physical node are transferred to other physical nodes, the resources corresponding to the physical node can be released.
According to the resource optimization method provided by the invention, the backup of the virtual network function is deployed on the target physical node, the availability of the service function chain request is effectively improved, the deployment of the virtual network function is determined by combining the delay constraint condition of the service function chain request, and the original deployment scheme is adjusted under the condition that a plurality of service function chain requests have the same type of virtual network function, so that the optimization of network resources is realized.
The resource optimizing device provided by the invention is described below, and the resource optimizing device described below and the resource optimizing method described above can be referred to correspondingly.
Fig. 6 is a schematic structural diagram of an apparatus for device authentication according to the present invention, as shown in fig. 6, the apparatus includes:
a deployment module 601, configured to determine a virtual network function deployed on a target physical node based on an availability requirement and a latency constraint condition of a service function chain request, where a set of virtual network functions of the service function chain request includes one or more virtual network functions of different types;
an adjustment module 602, configured to adjust the virtual network function deployed on the target physical node, with minimum resource consumption as a target, based on the resource information of the target physical node deployed with the same type of virtual network function.
It should be noted that, in the embodiment of the present application, the division of the units is schematic, which is merely a logic function division, and other division manners may be implemented in actual practice. In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a processor-readable storage medium. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution, in the form of a software product stored in a storage medium, including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
It should be noted that, the device for equipment authentication provided by the present invention can implement all the method steps implemented by the method embodiment, and can achieve the same technical effects, and the parts and beneficial effects that are the same as those of the method embodiment in the device for equipment authentication provided by the present invention are not specifically described herein.
Fig. 7 illustrates a physical schematic diagram of an electronic device, as shown in fig. 7, which may include: processor 710, communication interface (Communication Interface) 720, memory 730, and communication bus 740, wherein processor 710, communication interface 720, memory 730 communicate with each other via communication bus 740. Processor 710 may call a computer program in memory 730 to perform a method of resource optimization, including, for example:
determining a virtual network function deployed on a target physical node or a backup of the virtual network function and the virtual network function based on availability requirements and latency constraints of service function chain requests, the set of service function chain requests comprising one or more different types of virtual network functions;
And adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the deployed virtual network function.
Optionally, the determining the virtual network function deployed on the target physical node based on the availability requirement and the latency constraint condition of the service function chain request includes:
determining virtual network functions which need to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the low-priority guarantee strategy of the availability;
determining whether the availability of the service function chain request after backup meets the availability requirement of the service function chain request or not based on an availability calculation method;
under the condition that the availability of the service function chain request after backup meets the availability requirement, determining whether the delay of the service function chain request after backup meets the delay constraint condition based on a delay model;
and determining one or more backups of the virtual network function and/or the virtual network function deployed on the target physical node under the condition that the total delay of the service function chain requests after backups meets the delay constraint condition.
Optionally, the determining the virtual network function to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy includes:
determining availability of a first component based on availability of each virtual network function in a virtual network function set requested by the service function chain and availability of the target physical node, wherein the first component is composed of all the virtual network functions and target physical nodes in initial deployment of the virtual network functions in the service function chain request;
determining availability of the service function chain request based on the availability of the first component;
in the case that the availability of the service function chain request does not meet the availability requirement of the service function chain request, providing backup for the virtual network function in the first component with the lowest availability is prioritized based on the availability of the first component.
Optionally, after determining the availability of each virtual network function in the virtual network function set requested by the service function chain and the availability low-priority guarantee policy, the method includes:
Determining the availability of a second component based on the availability of the virtual network function after the virtual network function set backup requested by the service function chain and the availability of the target physical node of the virtual network function deployment;
updating the availability of the service function chain request based on the availability of the second component;
and if the updated availability of the service function chain request meets the availability requirement of the service function chain request, determining the number of backups included by the virtual network functions after the virtual network functions of the service function chain request are intensively backuped and the target physical nodes of the backup deployment based on the composition of the second component.
Optionally, the determining, based on a latency model, whether the latency of the service function chain request after the backup meets the latency constraint condition when the availability of the service function chain request after the backup meets the availability requirement includes:
determining a mapping relation between virtual links and physical links between any virtual network functions based on target physical nodes of virtual network function deployment after virtual network function centralized backup of the service function chain request;
Based on the mapping relation, determining the time delay of the virtual network function set requested by the service function chain on the corresponding physical link;
determining the time delay of the service function chain request on the target physical node based on the time delay of the target physical node deployed by the virtual network function after backup;
determining whether the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request, wherein the total time delay of the service function chain request is the sum of the time delay of a virtual network function set of the service function chain request on a corresponding physical link and the time delay of the service function chain request on a target physical node.
Optionally, the adjusting the virtual network function deployed on the target physical node with minimum resource consumption based on the resource information of the target physical node with the same type of the virtual network function deployed includes:
determining a first set of all the service function chain requests comprising the same type of virtual network function;
selecting the service function chain request with the minimum consumption flow as a first service function chain request in the first set;
Determining a second set formed by each virtual network function in the first service function chain request;
taking the first virtual network function in the second set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets transfer conditions, and the resource consumption corresponding to a transferred first service function chain request is minimum;
the transfer physical node is a target physical node which is deployed in other service function chain requests in the first set and has the same type as the virtual network function to be transferred; the transfer condition is that the transfer physical node has deployed a virtual network function of the same type as the virtual network function to be transferred, and after the virtual network function to be transferred is replaced by the virtual network function of the same type deployed by the transfer physical node, the total delay of the transferred first service function chain request meets the delay constraint condition of the first service function chain request.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the second virtual network function in the second set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred first service function chain request is minimum.
Optionally, the method further comprises:
selecting the service function chain request with the minimum consumption flow as a second service function chain request in the first set, wherein the second service function chain request is different from the first service function chain request;
determining a third set of virtual network functions in the second service function chain request;
and taking the third virtual network function in the third set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
Optionally, the method further comprises:
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the fourth virtual network function in the third set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
Further, the logic instructions in the memory 730 described above may be implemented in the form of software functional units and may be stored in a computer readable storage medium when sold or used as a stand alone product. Based on this understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
It should be noted that, the electronic device provided by the present invention can implement all the method steps implemented by the method embodiments and achieve the same technical effects, and specific details of the same parts and beneficial effects as those of the resource optimization method embodiments provided by the present invention in the electronic device provided by the present invention are not repeated here.
In another aspect, the present invention also provides a computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, are capable of performing a method of resource optimization provided by the above methods, for example comprising:
determining a virtual network function deployed on a target physical node or a backup of the virtual network function and the virtual network function based on availability requirements and latency constraints of service function chain requests, the set of service function chain requests comprising one or more different types of virtual network functions;
and adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the deployed virtual network function.
In another aspect, embodiments of the present application further provide a processor-readable storage medium storing a computer program, where the computer program is configured to cause the processor to perform a method for resource optimization provided in the foregoing embodiments, for example, including:
determining a virtual network function deployed on a target physical node or a backup of the virtual network function and the virtual network function based on availability requirements and latency constraints of service function chain requests, the set of service function chain requests comprising one or more different types of virtual network functions;
and adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the deployed virtual network function.
The processor-readable storage medium may be any available medium or data storage device that can be accessed by a processor, including, but not limited to, magnetic storage (e.g., floppy disks, hard disks, magnetic tape, magneto-optical disks (MOs), etc.), optical storage (e.g., CD, DVD, BD, HVD, etc.), semiconductor storage (e.g., ROM, EPROM, EEPROM, nonvolatile storage (NAND FLASH), solid State Disk (SSD)), and the like.
The apparatus embodiments described above are merely illustrative, wherein the elements illustrated as separate elements may or may not be physically separate, and the elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
From the above description of the embodiments, it will be apparent to those skilled in the art that the embodiments may be implemented by means of software plus necessary general hardware platforms, or of course may be implemented by means of hardware. Based on this understanding, the foregoing technical solution may be embodied essentially or in a part contributing to the prior art in the form of a software product, which may be stored in a computer readable storage medium, such as ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method described in the respective embodiments or some parts of the embodiments.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims (9)
1. A method of resource optimization, comprising:
determining a virtual network function deployed on a target physical node or determining a virtual network function deployed on the target physical node and a backup of the virtual network function based on availability requirements and latency constraints of service function chain requests, the set of service function chain requests comprising one or more different types of virtual network functions;
adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node deployed with the same type of the virtual network function;
The determining the virtual network function deployed on the target physical node or determining the virtual network function deployed on the target physical node and the backup of the virtual network function based on the availability requirement and the time delay constraint condition of the service function chain request comprises:
determining virtual network functions which need to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the low-priority guarantee strategy of the availability;
determining whether the availability of the service function chain request after backup meets the availability requirement of the service function chain request or not based on an availability calculation method;
under the condition that the availability of the service function chain request after backup meets the availability requirement, determining whether the delay of the service function chain request after backup meets the delay constraint condition based on a delay model;
and determining one or more backups of the virtual network function and/or the virtual network function deployed on the target physical node under the condition that the total delay of the service function chain requests after backups meets the delay constraint condition.
2. The method for optimizing resources according to claim 1, wherein the determining the virtual network functions in the set of virtual network functions requested by the service function chain that need backup based on the availability of each virtual network function in the set of virtual network functions requested by the service function chain and the availability low priority guarantee policy includes:
determining availability of a first component based on availability of each virtual network function in a virtual network function set requested by the service function chain and availability of the target physical node, wherein the first component is composed of all the virtual network functions and target physical nodes in initial deployment of the virtual network functions in the service function chain request;
determining availability of the service function chain request based on the availability of the first component;
in the case that the availability of the service function chain request does not meet the availability requirement of the service function chain request, providing backup for the virtual network function in the first component with the lowest availability is prioritized based on the availability of the first component.
3. The method for optimizing resources according to claim 2, wherein after determining the availability of each virtual network function in the set of virtual network functions requested by the service function chain and the availability low priority guarantee policy, the method comprises:
Determining the availability of a second component based on the availability of the virtual network function after the virtual network function set backup requested by the service function chain and the availability of the target physical node of the virtual network function deployment;
updating the availability of the service function chain request based on the availability of the second component;
and if the updated availability of the service function chain request meets the availability requirement of the service function chain request, determining the number of backups included by the virtual network functions after the virtual network functions of the service function chain request are intensively backuped and the target physical nodes of the backup deployment based on the composition of the second component.
4. The method according to claim 1, wherein determining whether the delay of the service function chain request after backup satisfies the delay constraint condition based on a delay model in a case where the availability of the service function chain request after backup satisfies the availability requirement comprises:
determining a mapping relation between virtual links and physical links between any virtual network functions based on target physical nodes of virtual network function deployment after virtual network function centralized backup of the service function chain request;
Based on the mapping relation, determining the time delay of the virtual network function set requested by the service function chain on the corresponding physical link;
determining the time delay of the service function chain request on the target physical node based on the time delay of the target physical node deployed by the virtual network function after backup;
determining whether the total time delay of the service function chain request meets the time delay constraint condition of the service function chain request, wherein the total time delay of the service function chain request is the sum of the time delay of a virtual network function set of the service function chain request on a corresponding physical link and the time delay of the service function chain request on a target physical node.
5. The method according to claim 1, wherein the adjusting the virtual network function deployed on the target physical node with the minimum resource consumption as a goal based on the resource information of the target physical node where the same type of the virtual network function has been deployed, comprises:
determining a first set of all the service function chain requests comprising the same type of virtual network function;
selecting the service function chain request with the minimum consumption flow as a first service function chain request in the first set;
Determining a second set formed by each virtual network function in the first service function chain request;
taking the first virtual network function in the second set as a virtual network function to be transferred, determining a transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets transfer conditions, and the resource consumption corresponding to a transferred first service function chain request is minimum;
the transfer physical node is a target physical node which is deployed in other service function chain requests in the first set and has the same type as the virtual network function to be transferred; the transfer condition is that the transfer physical node has deployed a virtual network function of the same type as the virtual network function to be transferred, and after the virtual network function to be transferred is replaced by the virtual network function of the same type deployed by the transfer physical node, the total delay of the transferred first service function chain request meets the delay constraint condition of the first service function chain request.
6. The method of resource optimization of claim 5, further comprising:
if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the second virtual network function in the second set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred first service function chain request is minimum;
Selecting the service function chain request with the minimum consumption flow as a second service function chain request in the first set, wherein the second service function chain request is different from the first service function chain request;
determining a third set of virtual network functions in the second service function chain request;
determining a transfer physical node of the virtual network function to be transferred by taking a third virtual network function in the third set as the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum;
and if the transfer physical node of the first virtual network function does not meet the transfer condition, taking the fourth virtual network function in the third set as a virtual network function to be transferred, determining the transfer physical node of the virtual network function to be transferred, wherein the transfer physical node meets the transfer condition, and the resource consumption corresponding to the transferred second service function chain request is minimum.
7. An apparatus for resource optimization, comprising:
a deployment module, configured to determine a virtual network function deployed on a target physical node, or determine a virtual network function deployed on the target physical node and a backup of the virtual network function, based on availability requirements and latency constraints of service function chain requests, where a set of the virtual network functions requested by the service function chain includes one or more virtual network functions of different types;
The adjusting module is used for adjusting the virtual network function deployed on the target physical node by taking the minimum resource consumption as a target based on the resource information of the target physical node with the same type of the virtual network function deployed;
the deployment module is specifically configured to, in a process of determining a virtual network function deployed on a target physical node or determining a virtual network function deployed on the target physical node and a backup of the virtual network function based on an availability requirement and a latency constraint condition of a service function chain request:
determining virtual network functions which need to be backed up in the virtual network function set requested by the service function chain based on the availability of each virtual network function in the virtual network function set requested by the service function chain and the low-priority guarantee strategy of the availability;
determining whether the availability of the service function chain request after backup meets the availability requirement of the service function chain request or not based on an availability calculation method;
under the condition that the availability of the service function chain request after backup meets the availability requirement, determining whether the delay of the service function chain request after backup meets the delay constraint condition based on a delay model;
And determining one or more backups of the virtual network function and/or the virtual network function deployed on the target physical node under the condition that the total delay of the service function chain requests after backups meets the delay constraint condition.
8. A resource-optimized electronic device comprising a processor and a memory storing a computer program, characterized in that the processor, when executing the computer program, implements the method of resource optimization according to any of claims 1 to 6.
9. A processor readable storage medium having stored thereon a computer program, wherein the computer program when executed by a processor implements the method of resource optimization of any of claims 1 to 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210451914.4A CN115086175B (en) | 2022-04-26 | 2022-04-26 | Resource optimization method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210451914.4A CN115086175B (en) | 2022-04-26 | 2022-04-26 | Resource optimization method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115086175A CN115086175A (en) | 2022-09-20 |
CN115086175B true CN115086175B (en) | 2023-06-30 |
Family
ID=83246541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210451914.4A Active CN115086175B (en) | 2022-04-26 | 2022-04-26 | Resource optimization method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115086175B (en) |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017080391A1 (en) * | 2015-11-09 | 2017-05-18 | 中兴通讯股份有限公司 | Network service deployment method and device |
CN108322333A (en) * | 2017-12-28 | 2018-07-24 | 广东电网有限责任公司电力调度控制中心 | A kind of laying method of the virtual network function based on genetic algorithm |
WO2018134911A1 (en) * | 2017-01-18 | 2018-07-26 | Nec Corporation | Resource allocation system, method, and program |
CN108616394A (en) * | 2018-04-25 | 2018-10-02 | 电子科技大学 | A kind of backup of virtual network function and dispositions method |
CN108965014A (en) * | 2018-07-25 | 2018-12-07 | 北京智芯微电子科技有限公司 | The service chaining backup method and system of QoS perception |
CN110134493A (en) * | 2019-05-05 | 2019-08-16 | 西安邮电大学 | A kind of service function chain Deployment Algorithm avoided based on resource fragmentation |
CN110190987A (en) * | 2019-05-08 | 2019-08-30 | 南京邮电大学 | Based on backup income and the virtual network function reliability dispositions method remapped |
CN110198234A (en) * | 2019-05-15 | 2019-09-03 | 中国科学技术大学苏州研究院 | Virtual switch and virtual network function combine dispositions method in software defined network |
CN111639741A (en) * | 2020-04-08 | 2020-09-08 | 北京邮电大学 | Automatic service combination agent system for multi-objective QoS optimization |
WO2020255025A1 (en) * | 2019-06-18 | 2020-12-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for deploying a new service function chain (sfc) based on similarities with previously deployed sfcs |
CN112543119A (en) * | 2020-11-27 | 2021-03-23 | 西安交通大学 | Service function chain reliability deployment method based on deep reinforcement learning |
CN112737854A (en) * | 2020-12-30 | 2021-04-30 | 国网河南省电力公司信息通信公司 | Service chain migration method and device based on energy consumption and service quality |
CN112738820A (en) * | 2020-12-22 | 2021-04-30 | 国网北京市电力公司 | Dynamic deployment method and device of service function chain and computer equipment |
CN112910693A (en) * | 2021-01-20 | 2021-06-04 | 福州大学 | SFC deployment method based on VNF collocation influence analysis |
CN113055234A (en) * | 2021-03-18 | 2021-06-29 | 湘潭大学 | Service function chain deployment method based on edge calculation |
WO2021136074A1 (en) * | 2019-12-31 | 2021-07-08 | 华为技术有限公司 | Virtual network function deployment method, apparatus and system |
CN113422812A (en) * | 2021-06-08 | 2021-09-21 | 北京邮电大学 | Service chain deployment method and device |
CN113490231A (en) * | 2021-06-29 | 2021-10-08 | 北京邮电大学 | Network slice availability guarantee method and device |
CN113708972A (en) * | 2021-08-31 | 2021-11-26 | 广东工业大学 | Service function chain deployment method and device, electronic equipment and storage medium |
CN113904923A (en) * | 2021-09-27 | 2022-01-07 | 重庆电子工程职业学院 | Service function chain joint optimization method based on software defined network |
CN114071582A (en) * | 2021-10-14 | 2022-02-18 | 北京邮电大学 | Service chain deployment method and device for cloud-edge collaborative Internet of things |
CN114244713A (en) * | 2021-10-29 | 2022-03-25 | 国网浙江省电力有限公司嘉兴供电公司 | Resource backup method and device for power 5G network slice |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7532586B2 (en) * | 2005-07-18 | 2009-05-12 | Sbc Knowledge Ventures, L.P. | Method of augmenting deployed networks |
US9870244B2 (en) * | 2014-12-29 | 2018-01-16 | International Business Machines Corporation | Optimized migration of virtual objects across environments in a cloud computing environment |
US10419530B2 (en) * | 2015-11-02 | 2019-09-17 | Telefonaktiebolaget Lm Ericsson (Publ) | System and methods for intelligent service function placement and autoscale based on machine learning |
US10361915B2 (en) * | 2016-09-30 | 2019-07-23 | International Business Machines Corporation | System, method and computer program product for network function optimization based on locality and function type |
US11349708B2 (en) * | 2017-03-09 | 2022-05-31 | Telefonaktiebolaget L M Ericsson (Publ) | Configuration generation for virtual network functions (VNFs) with requested service availability |
CN107888425B (en) * | 2017-11-27 | 2019-12-06 | 北京邮电大学 | network slice deployment method and device for mobile communication system |
-
2022
- 2022-04-26 CN CN202210451914.4A patent/CN115086175B/en active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017080391A1 (en) * | 2015-11-09 | 2017-05-18 | 中兴通讯股份有限公司 | Network service deployment method and device |
WO2018134911A1 (en) * | 2017-01-18 | 2018-07-26 | Nec Corporation | Resource allocation system, method, and program |
CN108322333A (en) * | 2017-12-28 | 2018-07-24 | 广东电网有限责任公司电力调度控制中心 | A kind of laying method of the virtual network function based on genetic algorithm |
CN108616394A (en) * | 2018-04-25 | 2018-10-02 | 电子科技大学 | A kind of backup of virtual network function and dispositions method |
CN108965014A (en) * | 2018-07-25 | 2018-12-07 | 北京智芯微电子科技有限公司 | The service chaining backup method and system of QoS perception |
CN110134493A (en) * | 2019-05-05 | 2019-08-16 | 西安邮电大学 | A kind of service function chain Deployment Algorithm avoided based on resource fragmentation |
CN110190987A (en) * | 2019-05-08 | 2019-08-30 | 南京邮电大学 | Based on backup income and the virtual network function reliability dispositions method remapped |
CN110198234A (en) * | 2019-05-15 | 2019-09-03 | 中国科学技术大学苏州研究院 | Virtual switch and virtual network function combine dispositions method in software defined network |
WO2020255025A1 (en) * | 2019-06-18 | 2020-12-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for deploying a new service function chain (sfc) based on similarities with previously deployed sfcs |
WO2021136074A1 (en) * | 2019-12-31 | 2021-07-08 | 华为技术有限公司 | Virtual network function deployment method, apparatus and system |
CN111639741A (en) * | 2020-04-08 | 2020-09-08 | 北京邮电大学 | Automatic service combination agent system for multi-objective QoS optimization |
CN112543119A (en) * | 2020-11-27 | 2021-03-23 | 西安交通大学 | Service function chain reliability deployment method based on deep reinforcement learning |
CN112738820A (en) * | 2020-12-22 | 2021-04-30 | 国网北京市电力公司 | Dynamic deployment method and device of service function chain and computer equipment |
CN112737854A (en) * | 2020-12-30 | 2021-04-30 | 国网河南省电力公司信息通信公司 | Service chain migration method and device based on energy consumption and service quality |
CN112910693A (en) * | 2021-01-20 | 2021-06-04 | 福州大学 | SFC deployment method based on VNF collocation influence analysis |
CN113055234A (en) * | 2021-03-18 | 2021-06-29 | 湘潭大学 | Service function chain deployment method based on edge calculation |
CN113422812A (en) * | 2021-06-08 | 2021-09-21 | 北京邮电大学 | Service chain deployment method and device |
CN113490231A (en) * | 2021-06-29 | 2021-10-08 | 北京邮电大学 | Network slice availability guarantee method and device |
CN113708972A (en) * | 2021-08-31 | 2021-11-26 | 广东工业大学 | Service function chain deployment method and device, electronic equipment and storage medium |
CN113904923A (en) * | 2021-09-27 | 2022-01-07 | 重庆电子工程职业学院 | Service function chain joint optimization method based on software defined network |
CN114071582A (en) * | 2021-10-14 | 2022-02-18 | 北京邮电大学 | Service chain deployment method and device for cloud-edge collaborative Internet of things |
CN114244713A (en) * | 2021-10-29 | 2022-03-25 | 国网浙江省电力有限公司嘉兴供电公司 | Resource backup method and device for power 5G network slice |
Non-Patent Citations (7)
Title |
---|
Availability aware VNF deployment in datacenter through shared redundancy and multi-tenancy;Defang Li等;《IEEE Trans. Network and Service Management》;第16卷(第4期);第1651-1664页 * |
Joint Availability Guarantee and Resource Optimization of Virtual Network Function Placement in Data Center Networks;Bo Cheng等;《IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT》;第17卷(第2期);第821-832页 * |
Resource Optimization and Delay-aware Virtual Network Function Placement for Mapping SFC Requests in NFV-enabled Networks;Bo Cheng等;《2020 IEEE 13th International Conference on Cloud Computing》;第268-272页 * |
一种时延约束下可靠性保证的服务功能链部署方法;孙士清;彭建华;游伟;;计算机应用研究(第08期);全文 * |
人工智能应用下NFV服务功能链的优化部署研究;徐金烨;;通讯世界(第12期);全文 * |
基于Q-learning算法的vEPC虚拟网络功能部署方法;袁泉;汤红波;黄开枝;王晓雷;赵宇;;通信学报(第08期);全文 * |
物联网服务提供机理和方法研究;陈俊亮等;《科技创新导报》(第9期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115086175A (en) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110190987B (en) | Virtual network function reliability deployment method based on backup income and remapping | |
US7827435B2 (en) | Method for using a priority queue to perform job scheduling on a cluster based on node rank and performance | |
US20170237647A1 (en) | Virtual network function resource allocation and management system | |
CN112738820A (en) | Dynamic deployment method and device of service function chain and computer equipment | |
CN108965014A (en) | The service chaining backup method and system of QoS perception | |
CN108616394B (en) | Virtual network function backup and deployment method | |
CN103595805A (en) | Data placement method based on distributed cluster | |
CN107992353A (en) | A kind of container dynamic migration method and system based on minimum transition amount | |
CN111258980B (en) | Dynamic file placement method based on combined prediction in cloud storage system | |
CN111147604B (en) | Load balancing method for edge calculation of Internet of vehicles | |
CN106681839B (en) | Elastic calculation dynamic allocation method | |
CN106339181A (en) | Method and system for processing data in storage system | |
CN111901170A (en) | Reliability-aware service function chain backup protection method | |
CN111381928A (en) | Virtual machine migration method, cloud computing management platform and storage medium | |
CN114625500B (en) | Topology-aware microservice application scheduling method and application in cloud environment | |
CN112737854A (en) | Service chain migration method and device based on energy consumption and service quality | |
CN110597598B (en) | Control method for virtual machine migration in cloud environment | |
CN114691372A (en) | Group intelligent control method of multimedia end edge cloud system | |
CN115086175B (en) | Resource optimization method and device | |
CN112130927B (en) | Reliability-enhanced mobile edge computing task unloading method | |
WO2021000694A1 (en) | Method for deploying services and scheduling apparatus | |
CN114978913B (en) | Cross-domain deployment method and system for service function chains based on cut chains | |
CN114650225B (en) | Service function chain SFC mapping method based on particle swarm optimization algorithm | |
Rabinia et al. | Data sharing-aware online algorithms for task allocation in edge computing systems | |
CN114595000B (en) | Edge-intelligence-oriented high-elasticity multi-node collaborative model unloading method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |