CN110224873B - NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing - Google Patents

NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing Download PDF

Info

Publication number
CN110224873B
CN110224873B CN201910548847.6A CN201910548847A CN110224873B CN 110224873 B CN110224873 B CN 110224873B CN 201910548847 A CN201910548847 A CN 201910548847A CN 110224873 B CN110224873 B CN 110224873B
Authority
CN
China
Prior art keywords
deployment
vnf
node
physical
sfc
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
Application number
CN201910548847.6A
Other languages
Chinese (zh)
Other versions
CN110224873A (en
Inventor
王颖
郭翰涛
李文璟
喻鹏
樊娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910548847.6A priority Critical patent/CN110224873B/en
Publication of CN110224873A publication Critical patent/CN110224873A/en
Application granted granted Critical
Publication of CN110224873B publication Critical patent/CN110224873B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components

Abstract

The embodiment of the invention provides a NFV arranging method and device based on VNF instance multiplexing, wherein the method comprises the following steps: the method comprises the steps of obtaining a plurality of preset SFCs and a preset physical network topology structure diagram, traversing the SFCs, determining the number of VNFs with reusable types, calculating the centrality value of each physical node and sequencing aiming at all the physical nodes, determining the physical nodes sequenced in the front as candidate deployment nodes, selecting a target deployment node for the VNFs with the reusable types according to the size relation of weighted values between different candidate deployment stages in each SFC, deploying the VNFs on a created first deployment object aiming at the VNFs with the reusable types and based on the residual resources of the VNF target deployment nodes, and deploying the VNFs on a created second deployment object aiming at the VNFs with the non-reusable types and based on a preset deployment strategy. The invention can reduce the resource overhead after VNF deployment.

Description

NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a VNF instance multiplexing-based NFV orchestration method and apparatus.
Background
With the rapid development of communication technology, the Network scale is continuously enlarged and the Service is continuously expanded, the Network Service requirements and the requirements of high QoS (Quality of Service) tend to be diversified, so that operators need to spend a large amount of money to prepare various specialized Network devices to meet the diversified Service requirements when networking, and NFV (Network Functions Virtualization) is generated at the same time. NFV is a new concept of network architecture, and utilizes virtualization technology to divide the network node level functions into several functional blocks, which are implemented in software, and are not limited to hardware architecture. The NFV technology realizes the decoupling of network element functions and special hardware equipment, allows services to be operated on industry standard server hardware as software, enables network services to have greater agility and expandability, and can fully and flexibly share resources. The NFV technology meets constantly changing requirements through matching links of different VNFs (virtual Network functions) to realize rapid development and deployment of new services, and performs automatic deployment, elastic expansion, fault isolation, self-healing, and the like based on actual service requirements.
Although network virtualization can reduce the burden of an operator, how to deploy each VNF reasonably, meet the resource and sequence requirements of each SFC (Service Function Chains), ensure as low physical resource consumption as possible, improve resource utilization efficiency, and is a challenge of the current NFV orchestration problem. The current method for NFV orchestration is: under the condition that all the SFCs, VNFs included in each SFC, and a physical network topology structure diagram are known, the shortest path corresponding to each SFC is calculated based on physical nodes in the physical network topology structure diagram where the VNFs in each SFC can be deployed, for example, the minimum number of physical nodes where the SFCs can be deployed is the shortest path corresponding to the SFC, then, based on the size of the number of resources required by each SFC, the betweenness centrality value of each physical node on each shortest path is calculated, and then, the physical node corresponding to the maximum betweenness centrality value on each shortest path is selected as a candidate deployment node, a corresponding VNF instance is created for the VNF in the SFC on the candidate deployment node, and the VNF is deployed on the created VNF instance, for example, the VNF instance may be a virtual firewall, a virtual gateway, or the like.
However, in the existing orchestration method for the NVFs, when the VNF instance corresponding to the VNF is created on the physical node corresponding to the shortest path and having the maximum betweenness centrality value, because the selected candidate deployment node is located on the shortest path of each SFC, and the size of the resource that can be provided by the physical node is fixed, when the size of the resource left by a certain physical node is not enough to create the resource required by the VNF instance corresponding to the VNF in a certain SFC, it is necessary to create the VNF instance corresponding to the VNF in the SFC on another physical node, so that another SFC may need to bypass when multiplexing the VNF instance corresponding to the VNF, thereby causing the deployment path of the SFC to increase and the resource overhead to be large.
Disclosure of Invention
The embodiment of the invention aims to provide a NFV arranging method and device based on VNF instance multiplexing, so as to reduce resource overhead after a virtual network function VNF is deployed. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present invention provides an NFV orchestration method based on VNF instance multiplexing, where the method includes:
acquiring multiple preset Service Function Chains (SFCs) and a preset physical network topology structure diagram, wherein each SFC at least comprises a Virtual Network Function (VNF), and each VNF is of a preset type, and the preset type is a reusable type or an un-reusable type; the preset physical network topology structure chart comprises the following steps: a plurality of physical nodes and physical links between the physical nodes;
traversing the preset SFCs, and determining the number of VNFs with reusable types in the preset SFCs;
calculating the centrality values of all physical nodes in the preset physical network topology structure diagram, and sequencing the centrality values in a descending order, wherein the centrality values are used for representing the importance degree of the physical nodes in the preset physical network topology structure diagram;
determining physical nodes which are ranked at the front and correspond to the centrality values with the same number as the number of the centrality values as candidate deployment nodes;
aiming at each SFC in the multiple preset SFCs, selecting a target deployment node for each VNF with a reusable type in each SFC according to the calculated magnitude relation of weighted values between different candidate deployment stages in each SFC, wherein the target deployment node is selected from the candidate deployment nodes; each SFC comprises a plurality of candidate deployment phases, and the weighted values among the different candidate deployment phases are as follows: a weighted value between a current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase;
for each VNF with the reusable type in each SFC, creating a first deployment object on a target deployment node corresponding to the VNF based on the remaining resources of the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object;
for each VNF with the non-reusable type in each SFC, creating a corresponding second deployment object for the VNF, and deploying the VNF on the second deployment object based on a preset deployment policy.
Optionally, the step of traversing the preset SFCs and determining the number of VNFs with reusable types in the preset SFCs includes:
traversing the preset SFCs, and determining the occurrence frequency of each VNF in each SFC;
determining the VNFs with the occurrence times larger than a preset number as VNFs with reusable types;
the number of all VNFs with reusable type is counted.
Optionally, the step of calculating a centrality value of each physical node for all physical nodes in the preset physical network topology structure diagram includes:
initializing an initial centrality value of each physical node in the preset physical network topology structure diagram;
traversing the preset SFCs, and calculating the centrality value of each physical node on the shortest path between the starting node and the target node of each SFC;
and performing centrality value propagation calculation on all physical nodes in the preset physical network topology structure chart by utilizing a horizontal segmentation technology and a webpage ranking algorithm to obtain a centrality value corresponding to each physical node.
Optionally, the process of performing, by using a horizontal segmentation technique and a web page ranking algorithm, centrality value propagation calculation on all physical nodes in the preset physical network topology structure diagram to obtain the centrality value corresponding to each physical node includes:
traversing the preset SFCs, and adding corresponding labels to the centrality values corresponding to the physical nodes contained in each SFC path; the label is used for identifying the SFC path where the centrality value corresponding to the physical node is located;
traversing each physical node in the preset physical network topology structure chart, and transmitting the centrality value corresponding to the current physical node and the corresponding label to the next physical node in communication connection with the current physical node, so that the centrality value of the current physical node is attenuated according to a preset expression, wherein the preset expression is as follows:
Figure BDA0002104802300000031
where a represents the degree of attenuation of the centrality value of the current physical node, β represents the proportion of bandwidth overhead to total overhead,
Figure BDA0002104802300000032
indicates the number of CPU resource units, L, required by a VNF in the ith SFCcostRepresenting the overhead required by creating a deployment object to occupy one unit bandwidth resource of a physical link;
adding the centrality values corresponding to different labels aiming at each physical node in the preset physical network topology structure chart to obtain a first centrality value, taking the maximum centrality value from the centrality values corresponding to the same labels as a second centrality value, and determining the sum of the first centrality value and the second centrality value as the current centrality value of the physical node;
aiming at all physical nodes in the preset physical network topology structure chart, traversing and judging whether the difference value between the current centrality value of each physical node and the previous centrality value of the current centrality value is zero or not; the current centrality value is a centrality value obtained by the physical node in the current propagation times in the centrality value propagation calculation;
if the difference value between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, determining the current centrality value of each physical node as the centrality value of the physical node;
and if the difference values of the current centrality values of all the physical nodes and the previous centrality value of the current centrality value are not all zero, returning to execute the step of traversing the plurality of preset SFCs and adding corresponding labels to the centrality values corresponding to the physical nodes contained in each SFC path.
Optionally, the step of selecting, for each SFC of the preset SFCs, a target deployment node for each VNF having a reusable type in each SFC according to a calculated magnitude relationship of weighted values between different candidate deployment stages in each SFC includes:
for each VNF with the reusable type in the SFC, determining the deployment of the VNF as a candidate deployment stage of the SFC;
determining a starting node of the SFC as a first target deployment node of a first candidate deployment stage of the SFC, and determining a target node of the SFC as a first target deployment node of a last candidate deployment stage of the SFC;
determining each candidate deployment node as a first target deployment node corresponding to each candidate deployment phase of the SFC except for a first candidate deployment phase and a last candidate deployment phase;
traversing each candidate deployment stage of the SFC, and calculating a weighted value between the current candidate deployment stage and the next stage of the current candidate deployment stage based on the overhead required by creating one deployment object and the overhead required by creating one deployment object to occupy one unit bandwidth resource of a physical link;
and determining the first target deployment node of each candidate deployment stage on the corresponding path as the target deployment node of each candidate deployment stage in the SFC, wherein the sum of weighted values between the candidate deployment stages in the SFC is minimum.
Optionally, the step of creating, for each VNF in each SFC having a reusable type, a first deployment object on a target deployment node corresponding to the VNF based on remaining resources of the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object includes:
judging whether a first deployment object is created on a target deployment node corresponding to the VNF;
if the first deployment object is not created on the target deployment node corresponding to the VNF, creating the first deployment object on the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object;
if a first deployment object is created on a target deployment node corresponding to the VNF, judging whether the residual resources of the first deployment object are smaller than a preset threshold value;
if the remaining resources of the first deployment object are smaller than a preset threshold, creating a third deployment object on a target deployment node corresponding to the VNF, and deploying the VNF on the third deployment object;
and if the residual resources of the first deployment object are greater than or equal to a preset threshold value, deploying the VNF on the first deployment object.
Optionally, the step of deploying the VNF on the second deployment object based on a preset deployment policy includes:
creating a second deployment object on a physical node on a shortest path between two target deployment nodes adjacent to the VNF, and deploying the VNF on the second deployment object;
or, creating a second deployment object on a physical node on the shortest path between the starting node and the target node of the SFC where the VNF is located, and deploying the VNF on the second deployment object;
or, creating a second deployment object on a physical node on a shortest path between a start node of an SFC where the VNF is located and a target deployment node adjacent to the VNF, and deploying the VNF on the second deployment object;
or, a second deployment object is created on a physical node on the shortest path between a target deployment node adjacent to the VNF and a target node of the SFC where the VNF is located, and the VNF is deployed on the second deployment object.
In a second aspect, an embodiment of the present invention provides an NFV orchestration apparatus based on VNF instance multiplexing, where the apparatus includes:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring a plurality of SFCs (service function chains) and a preset physical network topology structure diagram, each SFC at least comprises a Virtual Network Function (VNF), the VNFs have preset types, and the preset types are reusable types or non-reusable types; the preset physical network topology structure chart comprises the following steps: a plurality of physical nodes and physical links between the physical nodes;
a first determining module, configured to traverse the preset SFCs and determine the number of VNFs with reusable types in the preset SFCs;
the calculation module is used for calculating the centrality values of all the physical nodes in the preset physical network topology structure diagram and sequencing the centrality values in a descending order, wherein the centrality values are used for expressing the importance degree of the physical nodes in the preset physical network topology structure diagram;
a second determining module, configured to determine, as candidate deployment nodes, physical nodes corresponding to the centrality values that are ranked in the front and have the same number as the number of the centrality values;
a selecting module, configured to select, for each SFC of the multiple preset SFCs, a target deployment node for each VNF of the SFCs, the VNF having a reusable type, according to a magnitude relationship of weighted values between different candidate deployment stages in the SFCs, where the weighted values are obtained through calculation, and the target deployment node is selected from the candidate deployment nodes; each SFC comprises a plurality of candidate deployment phases, and the weighted values among the different candidate deployment phases are as follows: a weighted value between a current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase;
a first deployment module, configured to, for a VNF that has a reusable type in each SFC, create a first deployment object on a target deployment node corresponding to the VNF based on remaining resources of the target deployment node corresponding to the VNF, and deploy the VNF on the first deployment object;
and the second deployment module is used for creating a corresponding second deployment object for each VNF with the non-reusable type in each SFC, and deploying the VNF on the second deployment object based on a preset deployment policy.
In a third aspect, an embodiment of the present invention further provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, where the processor, the communication interface, and the memory complete mutual communication through the communication bus;
a memory for storing a computer program;
a processor, configured to implement the NFV orchestration method based on VNF instance multiplexing according to the first aspect when executing a program stored in a memory.
In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a computer, the computer is caused to execute the NFV orchestration method based on VNF instance multiplexing according to the first aspect.
In a fifth aspect, an embodiment of the present invention further provides a computer program product including instructions, which when run on a computer, cause the computer to execute any one of the above NFV orchestration methods based on VNF instance reuse.
According to the NFV orchestration method and device based on VNF instance multiplexing provided by the embodiments of the present invention, because the candidate deployment node is selected from the entire physical network topology structure diagram and is not only the physical node located on the shortest path of the SFC, but the target deployment node of the VNF having the reusable type is selected from the candidate deployment nodes, and the first deployment object deployed by the VNF having the reusable type is created based on the remaining resources of the target deployment node corresponding to the VNF, a situation that other SFCs need to be bypassed when multiplexing the VNF due to the fact that the remaining resources of the target deployment node are insufficient and need to be created on other physical nodes is avoided, so that VNFs having the reusable type in a plurality of SFCs can be shared, and costs for creating the deployment object and link costs in each SFC are reduced, thereby reducing overall resource costs. Of course, not all of the advantages described above need to be achieved at the same time in the practice of any one product or method of the invention.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic flowchart of an NFV orchestration method based on VNF instance multiplexing according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart of one embodiment of S102 in FIG. 1;
FIG. 3 is a schematic structural diagram of an SFC according to an embodiment of the present invention;
FIG. 4 is a schematic flow chart of one embodiment of S103 in FIG. 1;
FIG. 5 is a schematic flow chart of one embodiment of S1033 in FIG. 4;
FIG. 6 is a schematic flow chart of one embodiment of S105 in FIG. 1;
FIG. 7 is a schematic flow chart of a deployment method according to an embodiment of the present invention;
FIG. 8 is a schematic flow chart of one embodiment of S106 in FIG. 1;
fig. 9a is a simulation diagram of a relationship between VNF utilization and SFC number according to an embodiment of the present invention;
FIG. 9b is a simulation diagram of the relationship between the example overhead and the SFC number according to the embodiment of the present invention;
FIG. 9c is a simulation diagram of the relationship between the link overhead and the SFC number according to the embodiment of the present invention;
fig. 9d is a VNF number, path hop count and cost simulation diagram according to an embodiment of the present invention;
fig. 10 is a schematic structural diagram of an NFV orchestration device based on VNF instance multiplexing according to an embodiment of the present invention;
FIG. 11 is a schematic diagram of a structure of a determination module according to an embodiment of the present invention;
FIG. 12 is a schematic diagram of a computing module according to an embodiment of the present invention;
FIG. 13 is a schematic diagram of another configuration of a computing module in an embodiment of the invention;
FIG. 14 is a schematic diagram of a structure of a selection module according to an embodiment of the present invention;
FIG. 15 is a schematic structural diagram of a deployment module according to an embodiment of the present invention;
FIG. 16 is a schematic structural diagram of a deployment module according to an embodiment of the present invention;
fig. 17 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As shown in fig. 1, fig. 1 is a schematic flowchart of an NFV orchestration method based on VNF instance multiplexing according to an embodiment of the present invention, where the method may include:
s101, acquiring a plurality of preset SFCs and a preset physical network topology structure diagram.
In the embodiment of the invention, under the condition that the SFC and the physical network topological structure are known, all known SFCs and known physical network topological structure diagrams are obtained, the preset SFC is the known SFC, and the preset physical network topological structure diagram is the known physical network topological structure diagram. Each SFC at least comprises one VNF, each VNF corresponds to a preset type, and the type of the VNF is known when the SFC is known. The VNFs may be of a type such as a virtual firewall, a virtual gateway, a virtual traffic equalizer, and the like, and further, different types of VNFs may be divided into two preset types, i.e., a reusable type and an un-reusable type. The reusable type of VNF is used to indicate that the VNF is included in at least two SFCs, and the non-reusable type of VNF is used to indicate that the VNF is included in only one SFC.
The preset physical network topology structure diagram may include: a plurality of physical nodes and physical links between each physical node. For example, the preset physical network topology structure diagram may be represented as a weighted undirected connectivity graph G ═ N, L, where N represents a set of physical nodes, L represents a set of physical links, the physical nodes may be server nodes, and the like, and the physical links between the physical nodes may be communication connections or physical connections between the server nodes. The preset physical network topology structure can be a data center network topology structure or a communication network topology structure.
S102, traversing a plurality of preset SFCs, and determining the number of VNFs with reusable types in the plurality of preset SFCs.
For all the obtained SFCs, traversing the SFCs, and further determining the number of VNFs with reusable types in all the SFCs, referring to fig. 2, where fig. 2 is an implementation manner of S102 in the embodiment of the present invention, and the implementation manner may include:
s1021, traversing a plurality of preset SFCs, and determining the occurrence frequency of each VNF in each SFC.
Exemplarily, as shown in fig. 3, fig. 3 is a schematic structural diagram of an SFC provided by an embodiment of the present invention, and 3 service function chains SFC in fig. 3 are SFC1, SFC2, and SFC3, respectively, where SFC1 includes virtual network functions VNF1, VNF2, and VNF3, SFC2 includes VNF1, VNF3, and VNF4, and SFC3 includes VNF2, the number of occurrences of VNF1 is 2, the number of occurrences of VNF2 is 2, the number of occurrences of VNF3 is 2, and the number of occurrences of VNF4 is 1.
And S1022, determining the VNFs with the occurrence times larger than the preset number as VNFs with reusable types.
For example, the preset number may be 1, and as shown in fig. 3, VNFs with occurrence numbers greater than 1 are VNF1, VNF2, and VNF3, VNF1, VNF2, and VNF3 are determined to be VNFs with reusable types, VNF4 is determined to be 1, and not greater than the preset number of 1, and VNF4 is determined to be a VNF with non-reusable types. The specific preset number can be set by those skilled in the art according to actual requirements.
And S1023, counting the number of all VNFs with reusable types.
Exemplarily, as shown in fig. 3, the number of occurrences of VNF1 is 2, the number of occurrences of VNF2 is 2, the number of occurrences of VNF3 is 2, and VNF1, VNF2, and VNF3 are determined to be VNFs having a reusable type, and then the number of all VNFs having the reusable type is 2+2+2, that is, 6.
Referring to fig. 1, S103, for all physical nodes in the preset physical network topology structure diagram, the centrality values of the physical nodes are calculated, and the centrality values are sorted in a descending order.
And calculating the centrality value of each physical node in the physical network topology structure chart, wherein the centrality value is used for representing the importance degree of the physical node in the preset physical network topology structure chart. Specifically, an embodiment of calculating the centrality value of the physical node may be seen in fig. 4, and the embodiment may include:
and S1031, initializing an initial centrality value of each physical node in the preset physical network topology structure diagram.
For each physical node in the physical network topology structure diagram, an initial centrality value of each physical node may be initialized first, for example, the initial centrality value of each physical node may be set to 0, and specifically, a person skilled in the art may set the initial centrality value of each physical node according to an actual situation.
S1032, traversing a plurality of preset SFCs, and calculating the centrality value of each physical node on the shortest path between the starting node and the target node of each SFC.
Traversing each SFC, and increasing the centrality value of each physical node on the shortest path between the starting node and the target node of each SFC according to a first preset expression, wherein the first preset expression can be as follows:
Figure BDA0002104802300000101
where B denotes the increase degree of the centrality value of the physical node on the shortest path between the start node and the target node of the SFC, α denotes the VNF instance cost in proportion to the total cost,
Figure BDA0002104802300000102
indicates the number of CPU resource units, V, required by a VNF in the ith SFCcostRepresents the overhead of creating one VNF instance, and represents the processing power of each VNF instance.
In an embodiment of the present invention, the VNF instance may refer to a deployment object, and the deployment object is used to deploy a VNF with a reusable type.
S1033, performing centrality value propagation calculation on all physical nodes in the preset physical network topology structure chart by using a horizontal segmentation technology and a webpage ranking algorithm to obtain centrality values corresponding to the physical nodes.
The horizontal split technique is a technique for avoiding the occurrence of routing loops and accelerating route convergence. Since a router may receive routing information sent by itself, which is useless, the horizontal split technique does not advertise back any route update information received from the terminal, but only those routes that are not cleared by counting to infinity.
The webpage ranking algorithm, also called PageRank algorithm, has the following principle: an initial stage: the Web pages construct a Web (World Wide Web) graph through a link relationship, each page is set with the same PageRank value, and the final PageRank value obtained by each page can be obtained through a plurality of rounds of calculation. The current PageRank value of the web page is updated as each round of computation progresses. The calculation method for updating the PageRank score of the page in one round comprises the following steps: in a round of calculation of updating the PageRank scores of the pages, each page averagely distributes the current PageRank value of each page to the outgoing links included in the page, so that each link obtains a corresponding weight value. And each page sums all the weights transmitted into the incoming chain pointing to the page, so as to obtain a new PageRank score. When each page obtains the updated PageRank value, a round of PageRank calculation is finished.
In the embodiment of the present invention, by using the principle of horizontal segmentation technology and PageRank algorithm, a centrality value propagation calculation is performed on all physical nodes in a preset physical network topology structure diagram to obtain a centrality value corresponding to each physical node, and a specific implementation manner is shown in fig. 5, which may include:
s10331, traversing a plurality of preset SFCs, and adding corresponding labels to the centrality values corresponding to the physical nodes included in each SFC path.
And traversing each SFC, and adding a corresponding label for the centrality value corresponding to the physical node contained in each SFC path, wherein the label is used for identifying the SFC path where the centrality value corresponding to the physical node is located. For example, the path of the SFC1 includes a physical node H, a physical node J, and a physical node K, and then labels a are added to the centrality values corresponding to the physical node H, the physical node J, and the physical node K, respectively, and the labels a are used to identify that the centrality value corresponding to the physical node is on the path of the SFC 1.
S10332, traversing each physical node in the preset physical network topology structure diagram, and transmitting the centrality value and the corresponding tag corresponding to the current physical node to a next physical node in communication connection with the current physical node, so that the centrality value of the current physical node is attenuated according to a preset expression, where the preset expression may be:
Figure BDA0002104802300000111
where a represents the degree of attenuation of the centrality value of the current physical node, β represents the proportion of bandwidth overhead to total overhead,
Figure BDA0002104802300000112
indicates the number of CPU resource units, L, required by a VNF in the ith SFCcostRepresenting the overhead required to create a deployment object that occupies one unit of bandwidth resource of the physical link.
In the embodiment of the present invention, since the cost of the link between the physical nodes is increased in the process of propagating the centrality value, when the centrality value and the corresponding tag corresponding to the current physical node are transferred to the next physical node in communication connection with the current physical node, the centrality value of the current physical node needs to be attenuated according to the preset expression.
Illustratively, a set of centrality values corresponding to the current physical node H is 8, which is labeled as a, a set of centrality values corresponding to the next physical node J in communication connection with the current physical node is 10, which is labeled as b, after the centrality value 8 corresponding to the current physical node H and the corresponding label a are transferred to the next physical node J in communication connection with the current physical node, there are two sets of centrality values of the next physical node J in communication connection with the current physical node, one set is a centrality value of 8, which is labeled as a, the other set is a centrality value of 10, which is labeled as b, and the centrality value corresponding to the current physical node H is attenuated
Figure BDA0002104802300000113
S10333, adding the centrality values corresponding to different labels to each physical node in the preset physical network topology structure diagram to obtain a first centrality value, taking the largest centrality value from the centrality values corresponding to the same label as a second centrality value, and determining a sum of the first centrality value and the second centrality value as the current centrality value of the physical node.
Illustratively, if a group of centrality values corresponding to a physical node K in a physical network topology structure diagram is 6, a label is c, another group of centrality values is 8, and a label is b, the final centrality value of the physical node K is 6+8, that is, 14; in the physical network topology structure diagram, if one group of centrality values corresponding to the physical node F is 10 and the label is d, and the other group of centrality values is 5 and the label is d, the final centrality value of the physical node F is 10; in the physical network topology structure diagram, if a group of centrality values corresponding to a physical node H is 6, a label is c, a group of centrality values is 8, a label is b, a group of centrality values is 10, a label is d, another group of centrality values is 5, and a label is d, then the final centrality value of the physical node H is 6+8+10, that is, 18.
S10334, traversing all physical nodes in the preset physical network topology structure diagram, and determining whether a difference between a current centrality value of each physical node and a previous centrality value of the current centrality value is zero.
In the embodiment of the invention, the centrality value propagation calculation is carried out on all physical nodes in the preset physical network topology structure diagram, and in each propagation process of the propagation calculation, whether the difference value between the current centrality value of each physical node and the previous centrality value of the current centrality value is zero or not is determined in a traversing manner, wherein the current centrality value is the centrality value obtained by the current propagation times of the physical node in the centrality value propagation calculation.
In the current propagation times, after traversing and judging whether the difference value between the current centrality value of each physical node and the previous centrality value of the current centrality value is zero, when the difference values between the current centrality values of all the physical nodes and the previous centrality values of the current centrality values are zero, executing step S10335; when the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is not all zero, step S10336 is performed.
S10335, if the difference value between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, determining the current centrality value of each physical node as the centrality value of the physical node.
And the difference value between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, which indicates that the centrality values of all the physical nodes in the physical network topology structure chart are not changed in the two propagation processes, and at the moment, the physical network topology structure reaches a convergence state, and the current centrality value of each physical node is determined as the centrality value of each physical node.
S10336, if the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is not all zero, returning to execute the step of traversing multiple preset SFCs and adding corresponding labels to the centrality values corresponding to the physical nodes included in each SFC path.
When the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is not all zero, it indicates that there is a change in the centrality values of some physical nodes in the preset physical network topology structure diagram during the two propagation processes, and at this time, the physical network topology structure does not reach the convergence state, the process returns to execute step S10331, and the centrality value propagation is continued until the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, and the physical network topology structure reaches the convergence state.
Referring to fig. 1, in S104, the physical nodes corresponding to the centrality values which are ranked at the top and have the same number as the number of the centrality values are determined as candidate deployment nodes.
After the centrality values of all the physical nodes in the physical network topology structure chart are obtained and sorted in a descending order, the physical nodes which are sorted in the front and correspond to the centrality values with the same number as the VNFs with the reusable types are determined as candidate deployment nodes. In the embodiment of the invention, the number of the selected candidate deployment nodes is the same as that of the VNFs with the reusable types, so that the resources of the candidate deployment nodes are ensured to be enough to create corresponding instances for all the VNFs with the reusable types, and the VNFs are deployed.
S105, aiming at each SFC in the multiple preset SFCs, selecting a target deployment node for each VNF with the reusable type in each SFC according to the calculated magnitude relation of the weighted values between different candidate deployment stages in each SFC.
In the embodiment of the present invention, the target deployment node is selected from candidate deployment nodes, each SFC includes a plurality of candidate deployment stages, and the weighted values between different candidate deployment stages are: a weighted value between the current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase.
Referring to fig. 6, fig. 6 is a schematic flow chart of an embodiment of S105, where the embodiment may include:
s1051, aiming at each VNF with a reusable type in the SFC, determining the deployment of the VNF as a candidate deployment stage of the SFC.
Exemplarily, as shown in fig. 7, fig. 7 is a schematic flow chart of a deployment method provided by an embodiment of the present invention, in fig. 7, an SFC2 includes a reusable VNF1 and a reusable VNF3, and an un-reusable VNF4, and determines deployment of the VNF1 as a candidate deployment phase of the SFC2, and determines deployment of the VNF3 as another candidate deployment phase of the SFC 2.
S1052, determining the starting node of the SFC as a first target deployment node of a first candidate deployment phase of the SFC, and determining the target node of the SFC as a first target deployment node of a last candidate deployment phase of the SFC.
Illustratively, as shown in fig. 7, the starting node (physical node E in fig. 7) of the SFC2 is determined to be the first target deployment node of the first candidate deployment phase of the SFC2, and the target node (physical node G in fig. 7) of the SFC2 is determined to be the first target deployment node of the last candidate deployment phase of the SFC.
S1053, respectively determining each candidate deployment node as a first target deployment node corresponding to each candidate deployment phase of the SFC except the first candidate deployment phase and the last candidate deployment phase.
For example, as shown in fig. 7, the candidate deployment nodes are a physical node C, a physical node F, a physical node H, and a physical node K, VNFs with reusable types in the SFC2 are VNF1 and VNF3, then the SFC2 has four candidate deployment phases, which are respectively a first candidate deployment phase, a second candidate deployment phase, a third candidate deployment phase, and a last candidate deployment phase, and determines the physical node C, the physical node F, the physical node H, and the physical node K as first target deployment nodes corresponding to the second candidate deployment phase and the third candidate deployment phase of the SFC2, respectively.
S1054, traversing each candidate deployment stage of the SFC, and calculating a weighted value between the current candidate deployment stage and the next stage of the current candidate deployment stage based on the cost required by creating one deployment object and the cost required by creating one deployment object to occupy one unit bandwidth resource of the physical link.
Traversing each candidate deployment stage of the SFC, and calculating a weighted value between a current candidate deployment stage and a next stage of the current candidate deployment stage based on an overhead required for creating one deployment object and an overhead required for creating one deployment object to occupy one unit bandwidth resource of a physical link, using a second preset expression, where the second preset expression may be expressed as:
Figure BDA0002104802300000141
in the formula (I), the compound is shown in the specification,
Figure BDA0002104802300000142
representing a current candidate deployment phase x and a next phase x of the current candidate deployment phase+1A weighted value therebetween; y denotes the next phase x of the current candidate deployment phase+1Whether a VNF instance corresponding to the candidate deployment stage is created on the corresponding first target deployment node or not, if yes, y is 0, and if not, y is 1, α represents the proportion of VNF instance overhead to total overhead, and V iscostβ represents the bandwidth overhead as a proportion of the total overhead;
Figure BDA0002104802300000143
representing a first target deployment node corresponding to the current candidate deployment phase x and a next phase x of the current candidate deployment phase+1Hop count of the most paired path between the corresponding first target deployment nodes; l iscostRepresenting the overhead required to create a deployment object that occupies one unit of bandwidth resource of the physical link.
S1055, determining the first target deployment node of each candidate deployment stage on the corresponding path as the target deployment node of each candidate deployment stage in the SFC, wherein the sum of weighted values between each candidate deployment stage in the SFC is minimum.
For example, as shown in fig. 7, when the first target deployment node corresponding to the second candidate deployment phase is the physical node C, and the first target deployment node corresponding to the third candidate deployment phase is the physical node F, the path: if the sum of weighted values between the starting node, the physical node C, the physical node F, and the target node is minimum, that is, if the cost required for deploying the VNF with the reusable type on the path is minimum, the first target deployment node (physical node C) corresponding to the second candidate deployment phase is determined as the target deployment node corresponding to the second candidate deployment phase, and the first target deployment node (physical node F) corresponding to the third candidate deployment phase is determined as the target deployment node corresponding to the third candidate deployment phase.
Referring to fig. 1, S106, for a VNF having a reusable type in each SFC, based on the remaining resources of the target deployment node corresponding to the VNF, a first deployment object is created on the target deployment node corresponding to the VNF, and the VNF is deployed on the first deployment object.
As shown in fig. 8, fig. 8 is a schematic flowchart of an embodiment of S106, where the embodiment may include:
s1061, determining whether a first deployment object has been created on the target deployment node corresponding to the VNF.
For example, a target deployment node corresponding to a VNF may have 4 CPUs with the same processing capability, and creating one deployment object needs to occupy one CPU, that is, 4 deployment objects may be created on one target deployment node, and 6 VNFs may be deployed on each deployment object, that is, each deployment object may enable 6 VNFs on different SFCs to be deployed.
When a VNF needs to be deployed on a target deployment node corresponding to the VNF, it is first determined whether resources on the target deployment node corresponding to the VNF are sufficient. Specifically, it is determined whether a first deployment object has been created on a target deployment node corresponding to the VNF, and if the first deployment object has been created, the step of S1063 is performed, and it is further determined whether remaining resources of the first deployment object are smaller than a preset threshold; if the first deployment object is not created and the resources on the target deployment node are sufficient, the step of S1062 is performed.
S1062, if the first deployment object is not created on the target deployment node corresponding to the VNF, creating the first deployment object on the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object.
S1063, if the first deployment object has been created on the target deployment node corresponding to the VNF, determining whether the remaining resources of the first deployment object are smaller than a preset threshold.
In this embodiment of the present invention, the preset threshold may be a size of a resource required for deploying the VNF. When the remaining resources of the created first deployment object are less than the preset threshold, indicating that the VNF cannot be redeployed on the first deployment object, the step S1064 is performed, and when the remaining resources of the created first deployment object are not less than the preset threshold, indicating that the VNF can be redeployed on the first deployment object, the step S1065 is performed.
S1064, if the remaining resources of the first deployment object are less than the preset threshold, creating a third deployment object on the target deployment node corresponding to the VNF, and deploying the VNF on the third deployment object.
If the remaining resources of the first deployment object are smaller than the preset threshold, which indicates that the VNF cannot be deployed on the first deployment object any more, a third deployment object is created on the target deployment node corresponding to the VNF to deploy the VNF.
And S1065, if the remaining resources of the first deployment object are greater than or equal to a preset threshold, deploying the VNF on the first deployment object.
And when the remaining resources of the first deployment object are not less than the preset threshold, indicating that the VNF can be redeployed on the first deployment object, deploying the VNF on the first deployment object.
Referring to fig. 1, S107, for a VNF having an un-reusable type in each SFC, creating a corresponding second deployment object for the VNF, and deploying the VNF on the second deployment object based on a preset deployment policy.
In the embodiment of the present invention, for a VNF having an un-reusable type in each SFC, the VNF is deployed on the created second deployment object based on a preset deployment policy. Specifically, the embodiment of deploying the VNF on the created second deployment object based on the preset deployment policy may be:
in an embodiment, in the SFC, two VNFs with a reusable type are adjacent to each other on the left and right sides of the VNF with the non-reusable type, and the two VNFs with the reusable type have been deployed on respective corresponding target deployment nodes, a second deployment object is created on a physical node on the shortest path between the two target deployment nodes adjacent to the VNF with the non-reusable type, and the VNF with the non-reusable type is deployed on the second deployment object.
In an embodiment, before the VNF with the non-reusable type in the SFC, the starting node of the SFC is adjacent, and after the VNF with the non-reusable type, the target node of the SFC is adjacent, then a second deployment object is created on a physical node on a shortest path between the starting node and the target node of the SFC where the VNF with the non-reusable type is located, and the VNF with the non-reusable type is deployed on the second deployment object.
In an embodiment, before the VNF with the non-reusable type in the SFC, a start node of the SFC is adjacent, after the VNF with the non-reusable type, a VNF with a reusable type is adjacent, and the VNF with the reusable type is already deployed on its corresponding target deployment node, a second deployment object is created on a physical node on a shortest path between the start node of the SFC where the VNF with the non-reusable type is located and the target deployment node adjacent to the VNF with the non-reusable type, and the VNF with the non-reusable type is deployed on the second deployment object.
In an embodiment, before the VNF with the non-reusable type in the SFC, a VNF with the reusable type is adjacent, the VNF with the reusable type is already deployed on its corresponding target deployment node, and after the VNF with the non-reusable type, a target node of the SFC is adjacent, a second deployment object is created on a physical node on a shortest path between the target deployment node adjacent to the VNF with the non-reusable type and the target node of the SFC where the VNF with the non-reusable type is located, and the VNF with the non-reusable type is deployed on the second deployment object.
In the NFV orchestration method based on VNF instance multiplexing provided in the embodiments of the present invention, because the candidate deployment node is selected from the entire physical network topology structure diagram, and is not only a physical node located on the shortest path of the SFC, but the target deployment node of the VNF with the reusable type is selected from the candidate deployment nodes, and the first deployment object deployed by the VNF with the reusable type is created based on the remaining resources of the target deployment node corresponding to the VNF, a situation that the other SFCs need to be bypassed when multiplexing the VNF due to the fact that the remaining resources of the target deployment node are insufficient and need to be created on the other physical nodes is avoided, so that the VNFs with the reusable type in the multiple SFCs can be shared, and the cost for creating the deployment object and the link cost in each SFC are reduced, thereby reducing the overall resource cost.
Exemplarily, different layout methods are used to layout the NFV in the embodiment of the present invention, and the obtained simulation graphs are shown in fig. 9a to 9d, respectively. The prior art method 1 is described in the background art, and the prior art method 2 is as follows: the VNF is deployed in a physical node on the shortest path between the start node and the target node of the SFC. In the embodiment of the invention, a reference physical network topology structure diagram is generated through a GT-ITM tool, and the reference physical network topology structure diagram is configured to have 20 physical nodes and generate 37 links on average. 4 deployment objects can be created on each physical node, the bandwidth capacity on the physical link is sufficient, each SFC is single chain, generating 0 to 20 SFCs to bring the physical network close to saturation.
Fig. 9a is a simulation diagram of a relationship between VNF utilization and SFC number provided in the embodiment of the present invention, where when the number of SFCs is 0 to 20, the VNF instance utilization in the prior art method 2 is the lowest, and the VNF instance utilization in the embodiment of the present invention is very close to that in the prior art method 1. It can be seen from the figure that the VNF instance utilization of the embodiment of the present invention is close to that of the existing method 1, and sometimes better than that of the existing method 1 under a high-load network condition. The reason is that when the minimum number of VNF instances is calculated, the existing method 1 overlaps the calculation, which may cause an external fragmentation problem (such as memory management of an operating system), and the embodiment of the present invention fully considers and adjusts the deployment order of each SFC.
Fig. 9b is a simulation diagram of a relationship between instance costs and SFC numbers provided in the embodiment of the present invention, and it can be seen that VNF instance costs in the embodiment of the present invention are similar to those in the existing method 1, and VNF instance costs in the existing method 2 are much larger than those in the other two algorithms.
Fig. 9c is a simulation diagram of a relationship between link overhead and SFC number provided in the embodiment of the present invention, and it can be seen that the link overhead of the existing method 1 is higher than those of the other two algorithms. This is because in the existing method 1, its candidate deployment node can only be on the shortest path of the SFC, and it does not distinguish between SFCs with VNFs of reusable type and SFCs with VNFs of specific non-reusable type. Therefore, it will result in many paths of SFC increasing. What is needed in the prior art method 1 is to occupy as few physical nodes as possible and to reduce the startup cost. As can be seen from fig. 9c, when the number of SFCs is greater than 14, the link overhead of the embodiment of the present invention is lower than that of the conventional method 2, and the gap is gradually expanding. The reason is that existing method 2 is a greedy algorithm that deploys each SFC using the shortest path method. Blindly selecting shortest path deployments at an early stage will result in a sudden drop of optional physical nodes, leading to shortest path or failure of some deployment methods, which in turn increases link overhead, especially when the network is heavily loaded. From the above comparison, it can be seen that the embodiments of the present invention have more advantages, the utilization ratio of the VNF instance is close to that of the existing method 1, and the link overhead is also at a very low level due to the reasonable deployment plan.
Fig. 9d is a simulation diagram of VNF number, path hop count and overhead provided in the embodiment of the present invention, where a coefficient α represents a proportion of VNF instance overhead to total overhead, and a coefficient β represents a proportion of bandwidth overhead to total overhead, and when link overhead is a major cost (α <0.4), the embodiment of the present invention will reduce VNF instance utilization and increase the number of VNF instances to reduce excessive path increase. As α increases, the VNF instance overhead increases in weight, and in order to maintain the global cost at a lower level, the utilization of each VNF instance is increased to reduce the creation of new VNF instances, and the path hop count also increases accordingly. When α is 0.6, embodiments of the present invention significantly increase the number of VNF instances. Even if the VNF instance cost is heavily weighted, creating VNF instances in the right place to reduce link cost brings more profit than simply increasing the utilization.
Corresponding to the foregoing method embodiment, an embodiment of the present invention provides an NFV orchestration device based on VNF instance multiplexing, and as shown in fig. 10, the NFV orchestration device may include:
an obtaining module 201, configured to obtain multiple preset service function chains SFCs and a preset physical network topology structure diagram, where each SFC includes at least one virtual network function VNF, and each VNF has a preset type, where the preset type is a reusable type or an un-reusable type; the preset physical network topology structure chart comprises the following steps: a plurality of physical nodes and physical links between each physical node.
The first determining module 202 is configured to traverse a plurality of preset SFCs and determine the number of VNFs with reusable types in the plurality of preset SFCs.
The calculating module 203 is configured to calculate, for all physical nodes in the preset physical network topology structure diagram, centrality values of the physical nodes, and sort the centrality values in a descending order, where the centrality values are used to indicate importance of the physical nodes in the preset physical network topology structure diagram.
The second determining module 204 is configured to determine, as candidate deployment nodes, physical nodes corresponding to the centrality values that are ranked in the front and have the same number as the number of the centrality values.
A selecting module 205, configured to select, for each SFC of the multiple preset SFCs, a target deployment node for each VNF of the multiple SFCs, where the VNF has a reusable type, according to a size relationship of weighted values between different candidate deployment stages in the multiple SFCs, where the target deployment node is selected from the candidate deployment nodes; each SFC includes multiple candidate deployment phases, and the weighted values between different candidate deployment phases are: a weighted value between the current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase.
The first deployment module 206 is configured to, for a VNF that is of a reusable type in each SFC, create a first deployment object on a target deployment node corresponding to the VNF based on remaining resources of the target deployment node corresponding to the VNF, and deploy the VNF on the first deployment object.
The second deployment module 207 is configured to, for a VNF in each SFC having an un-reusable type, create a corresponding second deployment object for the VNF, and deploy the VNF on the second deployment object based on a preset deployment policy.
In the NFV orchestration device based on VNF instance multiplexing provided in the embodiments of the present invention, because the candidate deployment node is selected from the entire physical network topology structure diagram, and is not only the physical node located on the shortest path of the SFC, but the target deployment node of the VNF with the reusable type is selected from the candidate deployment nodes, and the first deployment object deployed by the VNF with the reusable type is created based on the remaining resources of the target deployment node corresponding to the VNF, a situation that the other SFCs need to be bypassed when multiplexing the VNF due to the fact that the remaining resources of the target deployment node are insufficient and need to be created on the other physical nodes is avoided, so that the VNFs with the reusable type in the multiple SFCs can be shared, and the cost for creating the deployment object and the link cost in each SFC are reduced, thereby reducing the overall resource cost.
It should be noted that the apparatus according to the embodiment of the present invention is an apparatus corresponding to the NFV orchestration method based on VNF instance multiplexing shown in fig. 1, and all embodiments of the NFV orchestration method based on VNF instance multiplexing shown in fig. 1 are applicable to the apparatus and can achieve the same or similar beneficial effects.
As shown in fig. 11, the first determining module 202 may include:
the first determining sub-module 2021 is configured to traverse a plurality of preset SFCs, and determine the occurrence number of each VNF in each SFC.
A second determining sub-module 2022, configured to determine VNFs with occurrence times larger than the preset number as VNFs with reusable types.
A statistics sub-module 2023 for counting the number of all VNFs having reusable type.
As shown in fig. 12, the calculation module 203 may include:
the initialization submodule 2031 is configured to initialize an initial centrality value of each physical node in the preset physical network topology structure diagram.
The first calculating submodule 2032 is configured to traverse multiple preset SFCs, and calculate a centrality value of each physical node on a shortest path between an initial node and a target node of each SFC.
The second calculating sub-module 2033 is configured to perform a centrality value propagation calculation on all physical nodes in the preset physical network topology structure diagram by using a horizontal segmentation technique and a web page ranking algorithm, so as to obtain a centrality value corresponding to each physical node.
As shown in fig. 13, the second calculating submodule 2033 may include:
the adding submodule 20331 is configured to traverse multiple preset SFCs, and add a corresponding tag to a centrality value corresponding to a physical node included in each SFC path; the label is used to identify the SFC path where the centrality value corresponding to the physical node is located.
The transmitting submodule 20332 is configured to traverse each physical node in the preset physical network topology structure diagram, and transmit the centrality value and the corresponding tag corresponding to the current physical node to a next physical node in communication connection with the current physical node, so that the centrality value of the current physical node is attenuated according to a preset expression, where the preset expression is:
Figure BDA0002104802300000191
where a represents the degree of attenuation of the centrality value of the current physical node, β represents the proportion of bandwidth overhead to total overhead,
Figure BDA0002104802300000192
indicates the number of CPU resource units, L, required by a VNF in the ith SFCcostRepresenting the overhead required to create a deployment object that occupies one unit of bandwidth resource of the physical link.
The third determining sub-module 20333 is configured to add, for each physical node in the preset physical network topology structure diagram, centrality values corresponding to different labels to obtain a first centrality value, take a maximum centrality value from the centrality values corresponding to the same label as a second centrality value, and determine a sum of the first centrality value and the second centrality value as a current centrality value of the physical node.
The determining submodule 20334 is configured to traverse, for all physical nodes in the preset physical network topology structure diagram, to determine whether a difference between a current centrality value of each physical node and a previous centrality value of the current centrality value is zero; the current centrality value is a centrality value obtained by the physical node in the current propagation times in the centrality value propagation calculation.
The fourth determining sub-module 20335 is configured to determine, when the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, the current centrality value of each physical node as the centrality value of the physical node, and execute the content of the adding sub-module 20331 when the difference between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is not all zero.
As shown in fig. 14, the selecting module 205 may include:
a fifth determining submodule 2051, configured to determine, for each VNF in the SFC that has a reusable type, a deployment of the VNF as a candidate deployment phase of the SFC.
A sixth determining submodule 2052, configured to determine the start node of the SFC as the first target deployment node of the first candidate deployment phase of the SFC, and determine the target node of the SFC as the first target deployment node of the last candidate deployment phase of the SFC.
A seventh determining submodule 2053, configured to determine each candidate deployment node as a first target deployment node corresponding to each candidate deployment phase of the SFC except the first candidate deployment phase and the last candidate deployment phase.
A third computing sub-module 2054, configured to traverse each candidate deployment phase of the SFC, and calculate a weighted value between the current candidate deployment phase and the next phase of the current candidate deployment phase based on the overhead required to create one deployment object and the overhead required to create one deployment object to occupy one unit bandwidth resource of the physical link.
An eighth determining sub-module 2055 is configured to determine, as the target deployment node of each candidate deployment stage in the SFC, the first target deployment node of each candidate deployment stage on the corresponding path, where the sum of weighted values between the candidate deployment stages in the SFC is the minimum.
As shown in fig. 15, the first deployment module 206 may include:
the first determining submodule 2061 is configured to determine whether the first deployment object has been created on the target deployment node corresponding to the VNF.
The first deployment submodule 2062 is configured to, when the first deployment object is not created on the target deployment node corresponding to the VNF, create the first deployment object on the target deployment node corresponding to the VNF, and deploy the VNF on the first deployment object.
The second determining submodule 2063 is configured to, when the first deployment object is already created on the target deployment node corresponding to the VNF, determine whether the remaining resources of the first deployment object are smaller than a preset threshold.
The second deployment submodule 2064 is configured to, when the remaining resources of the first deployment object are smaller than the preset threshold, create a third deployment object on the target deployment node corresponding to the VNF, and deploy the VNF on the third deployment object.
The third deployment submodule 2065 is configured to deploy the VNF on the first deployment object when the remaining resources of the first deployment object are greater than or equal to the preset threshold.
As shown in fig. 16, the second deployment module 207 may include:
the fourth deployment submodule 2071 is configured to create a second deployment object on a physical node on the shortest path between two target deployment nodes adjacent to the VNF, and deploy the VNF on the second deployment object.
The fifth deployment submodule 2072 is configured to create a second deployment object on a physical node on the shortest path between the start node and the target node of the SFC where the VNF is located, and deploy the VNF on the second deployment object.
A sixth deployment submodule 2073, configured to create a second deployment object on a physical node on the shortest path between the start node of the SFC where the VNF is located and the target deployment node adjacent to the VNF, and deploy the VNF on the second deployment object.
A seventh deployment submodule 2074, configured to create a second deployment object on a physical node on the shortest path between a target deployment node adjacent to the VNF and a target node of the SFC where the VNF is located, and deploy the VNF on the second deployment object.
An embodiment of the present invention further provides an electronic device, as shown in fig. 17, including a processor 301, a communication interface 302, a memory 303 and a communication bus 304, where the processor 301, the communication interface 302, and the memory 303 complete mutual communication through the communication bus 304, and the memory 303 is used for storing a computer program; the processor 301 is configured to implement the steps of the NFV orchestration method based on VNF instance multiplexing provided by the embodiment of the present invention when executing the program stored in the memory 303.
In the electronic device provided by the embodiment of the present invention, the candidate deployment node is selected from the entire physical network topology structure diagram, and is not only the physical node located on the shortest path of the SFC, but the target deployment node having the reusable VNF is selected from the candidate deployment nodes, and the first deployment object deployed by the reusable VNF is created based on the remaining resources of the target deployment node corresponding to the VNF, so that a situation that other SFCs need to be detoured when multiplexing the VNF due to the fact that the remaining resources of the target deployment node are insufficient and need to be created on other physical nodes is avoided, so that multiple VNFs having reusable types in the SFCs can be shared, and the cost for creating the deployment object and the link cost in each SFC are reduced, thereby reducing the overall resource cost.
The communication bus mentioned in the electronic device may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the electronic equipment and other equipment.
The Memory may include a Random Access Memory (RAM) or a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component.
In yet another embodiment of the present invention, a computer-readable storage medium is further provided, in which a computer program is stored, and the computer program, when executed by a processor, implements the steps of any one of the NFV orchestration methods based on VNF instance reuse.
In yet another embodiment of the present invention, a computer program product containing instructions is further provided, which when executed on a computer, causes the computer to perform the steps of any one of the NFV orchestration methods based on VNF instance reuse according to the foregoing embodiments.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the apparatus/device embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference may be made to some descriptions of the method embodiments for relevant points.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (8)

1. A NFV orchestration method based on VNF instance reuse, the method comprising:
acquiring multiple preset Service Function Chains (SFCs) and a preset physical network topology structure diagram, wherein each SFC at least comprises a Virtual Network Function (VNF), and each VNF is of a preset type, and the preset type is a reusable type or an un-reusable type; the preset physical network topology structure chart comprises the following steps: a plurality of physical nodes and physical links between the physical nodes;
traversing the preset SFCs, and determining the number of VNFs with reusable types in the preset SFCs;
calculating the centrality values of all physical nodes in the preset physical network topology structure diagram, and sequencing the centrality values in a descending order, wherein the centrality values are used for representing the importance degree of the physical nodes in the preset physical network topology structure diagram;
determining physical nodes which are ranked at the front and correspond to the centrality values with the same number as the VNFs with the reusable types as candidate deployment nodes;
aiming at each SFC in the multiple preset SFCs, selecting a target deployment node for each VNF with a reusable type in each SFC according to the calculated magnitude relation of weighted values between different candidate deployment stages in each SFC, wherein the target deployment node is selected from the candidate deployment nodes; each SFC comprises a plurality of candidate deployment phases, and the weighted values among the different candidate deployment phases are as follows: a weighted value between a current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase;
for each VNF with the reusable type in each SFC, creating a first deployment object on a target deployment node corresponding to the VNF based on the remaining resources of the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object;
for each VNF with the non-reusable type in each SFC, creating a corresponding second deployment object for the VNF, and deploying the VNF on the second deployment object based on a preset deployment strategy;
the step of calculating the centrality value of each physical node for all physical nodes in the preset physical network topology structure diagram includes:
initializing an initial centrality value of each physical node in the preset physical network topology structure diagram;
traversing the preset SFCs, and calculating the centrality value of each physical node on the shortest path between the starting node and the target node of each SFC;
performing centrality value propagation calculation on all physical nodes in the preset physical network topology structure chart by using a horizontal segmentation technology and a webpage ranking algorithm to obtain a centrality value corresponding to each physical node;
the step of selecting a target deployment node for each VNF with a reusable type in each SFC according to the calculated magnitude relationship of the weighted values between different candidate deployment stages in each SFC for each SFC in the plurality of preset SFCs includes:
for each VNF with the reusable type in the SFC, determining the deployment of the VNF as a candidate deployment stage of the SFC;
determining a starting node of the SFC as a first target deployment node of a first candidate deployment stage of the SFC, and determining a target node of the SFC as a first target deployment node of a last candidate deployment stage of the SFC;
determining each candidate deployment node as a first target deployment node corresponding to each candidate deployment phase of the SFC except for a first candidate deployment phase and a last candidate deployment phase;
traversing each candidate deployment stage of the SFC, and calculating a weighted value between the current candidate deployment stage and the next stage of the current candidate deployment stage based on the overhead required by creating one deployment object and the overhead required by creating one deployment object to occupy one unit bandwidth resource of a physical link;
and determining the first target deployment node of each candidate deployment stage on the corresponding path as the target deployment node of each candidate deployment stage in the SFC, wherein the sum of weighted values between the candidate deployment stages in the SFC is minimum.
2. The method of claim 1, wherein the step of traversing the plurality of preset SFCs and determining the number of VNFs having reusable types in the plurality of preset SFCs comprises:
traversing the preset SFCs, and determining the occurrence frequency of each VNF in each SFC;
determining the VNFs with the occurrence times larger than a preset number as VNFs with reusable types;
the number of all VNFs with reusable type is counted.
3. The method according to claim 1, wherein the process of performing a centrality value propagation calculation on all physical nodes in the preset physical network topology structure diagram by using a horizontal segmentation technique and a web page ranking algorithm to obtain a centrality value corresponding to each physical node comprises:
traversing the preset SFCs, and adding corresponding labels to the centrality values corresponding to the physical nodes contained in each SFC path; the label is used for identifying the SFC path where the centrality value corresponding to the physical node is located;
traversing each physical node in the preset physical network topology structure chart, and transmitting the centrality value corresponding to the current physical node and the corresponding label to the next physical node in communication connection with the current physical node, so that the centrality value of the current physical node is attenuated according to a preset expression, wherein the preset expression is as follows:
Figure FDA0002388711830000031
where a represents the degree of attenuation of the centrality value of the current physical node, β represents the proportion of bandwidth overhead to total overhead,
Figure FDA0002388711830000032
indicates the number of CPU resource units, L, required by a VNF in the ith SFCcostRepresenting the overhead required by creating a deployment object to occupy one unit bandwidth resource of a physical link;
adding the centrality values corresponding to different labels aiming at each physical node in the preset physical network topology structure chart to obtain a first centrality value, taking the maximum centrality value from the centrality values corresponding to the same labels as a second centrality value, and determining the sum of the first centrality value and the second centrality value as the current centrality value of the physical node;
aiming at all physical nodes in the preset physical network topology structure chart, traversing and judging whether the difference value between the current centrality value of each physical node and the previous centrality value of the current centrality value is zero or not; the current centrality value is a centrality value obtained by the physical node in the current propagation times in the centrality value propagation calculation;
if the difference value between the current centrality value of all the physical nodes and the previous centrality value of the current centrality value is zero, determining the current centrality value of each physical node as the centrality value of the physical node;
and if the difference values of the current centrality values of all the physical nodes and the previous centrality value of the current centrality value are not all zero, returning to execute the step of traversing the plurality of preset SFCs and adding corresponding labels to the centrality values corresponding to the physical nodes contained in each SFC path.
4. The method according to any one of claims 1 to 3, wherein the step of creating, for each VNF having a reusable type in each SFC, a first deployment object on a target deployment node corresponding to the VNF based on the remaining resources of the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object, comprises:
judging whether a first deployment object is created on a target deployment node corresponding to the VNF;
if the first deployment object is not created on the target deployment node corresponding to the VNF, creating the first deployment object on the target deployment node corresponding to the VNF, and deploying the VNF on the first deployment object;
if a first deployment object is created on a target deployment node corresponding to the VNF, judging whether the residual resources of the first deployment object are smaller than a preset threshold value;
if the remaining resources of the first deployment object are smaller than a preset threshold, creating a third deployment object on a target deployment node corresponding to the VNF, and deploying the VNF on the third deployment object;
and if the residual resources of the first deployment object are greater than or equal to a preset threshold value, deploying the VNF on the first deployment object.
5. The method according to claim 4, wherein the step of deploying the VNF on the second deployment object based on a preset deployment policy comprises:
creating a second deployment object on a physical node on a shortest path between two target deployment nodes adjacent to the VNF, and deploying the VNF on the second deployment object;
or, creating a second deployment object on a physical node on the shortest path between the starting node and the target node of the SFC where the VNF is located, and deploying the VNF on the second deployment object;
or, creating a second deployment object on a physical node on a shortest path between a start node of an SFC where the VNF is located and a target deployment node adjacent to the VNF, and deploying the VNF on the second deployment object;
or, a second deployment object is created on a physical node on the shortest path between a target deployment node adjacent to the VNF and a target node of the SFC where the VNF is located, and the VNF is deployed on the second deployment object.
6. An apparatus for NFV orchestration based on VNF instance reuse, the apparatus comprising:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring a plurality of SFCs (service function chains) and a preset physical network topology structure diagram, each SFC at least comprises a Virtual Network Function (VNF), the VNFs have preset types, and the preset types are reusable types or non-reusable types; the preset physical network topology structure chart comprises the following steps: a plurality of physical nodes and physical links between the physical nodes;
a first determining module, configured to traverse the preset SFCs and determine the number of VNFs with reusable types in the preset SFCs;
the calculation module is used for calculating the centrality values of all the physical nodes in the preset physical network topology structure diagram and sequencing the centrality values in a descending order, wherein the centrality values are used for expressing the importance degree of the physical nodes in the preset physical network topology structure diagram;
a second determining module, configured to determine, as candidate deployment nodes, physical nodes corresponding to the centrality values that are ranked in the front and have the same number as the number of the reusable VNFs;
a selecting module, configured to select, for each SFC of the multiple preset SFCs, a target deployment node for each VNF of the SFCs, the VNF having a reusable type, according to a magnitude relationship of weighted values between different candidate deployment stages in the SFCs, where the weighted values are obtained through calculation, and the target deployment node is selected from the candidate deployment nodes; each SFC comprises a plurality of candidate deployment phases, and the weighted values among the different candidate deployment phases are as follows: a weighted value between a current candidate deployment phase and a next candidate deployment phase of the current candidate deployment phase;
a first deployment module, configured to, for a VNF that has a reusable type in each SFC, create a first deployment object on a target deployment node corresponding to the VNF based on remaining resources of the target deployment node corresponding to the VNF, and deploy the VNF on the first deployment object;
the second deployment module is used for creating a corresponding second deployment object for each VNF with the non-reusable type in each SFC, and deploying the VNF on the second deployment object based on a preset deployment strategy;
the calculation module comprises:
the initialization submodule is used for initializing an initial centrality value of each physical node in a preset physical network topology structure diagram;
the first calculation submodule is used for traversing a plurality of preset SFCs and calculating the centrality value of each physical node on the shortest path between the starting node and the target node of each SFC;
the second calculation submodule is used for performing centrality value propagation calculation on all physical nodes in the preset physical network topology structure chart by utilizing a horizontal segmentation technology and a webpage ranking algorithm to obtain centrality values corresponding to the physical nodes;
the selecting module comprises:
a fifth determining submodule, configured to determine, for each VNF in the SFC that has a reusable type, a deployment of the VNF as a candidate deployment phase of the SFC;
a sixth determining submodule, configured to determine the start node of the SFC as a first target deployment node of a first candidate deployment phase of the SFC, and determine the target node of the SFC as a first target deployment node of a last candidate deployment phase of the SFC;
a seventh determining submodule, configured to determine each candidate deployment node as a first target deployment node corresponding to each candidate deployment phase of the SFC except for the first candidate deployment phase and the last candidate deployment phase;
a third computing submodule, configured to traverse each candidate deployment phase of the SFC, and calculate a weighted value between a current candidate deployment phase and a next phase of the current candidate deployment phase based on an overhead required to create one deployment object and an overhead required to create one deployment object to occupy one unit bandwidth resource of a physical link;
and the eighth determining submodule is used for determining the first target deployment node of each candidate deployment stage on the corresponding path, which is the smallest sum of weighted values between the candidate deployment stages in the SFC, as the target deployment node of each candidate deployment stage in the SFC.
7. An electronic device is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing mutual communication by the memory through the communication bus;
a memory for storing a computer program;
a processor for implementing the method steps of any one of claims 1 to 5 when executing a program stored in the memory.
8. A computer-readable storage medium, characterized in that a computer program is stored in the computer-readable storage medium, which computer program, when being executed by a processor, carries out the method steps of any one of the claims 1-5.
CN201910548847.6A 2019-06-24 2019-06-24 NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing Active CN110224873B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910548847.6A CN110224873B (en) 2019-06-24 2019-06-24 NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910548847.6A CN110224873B (en) 2019-06-24 2019-06-24 NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing

Publications (2)

Publication Number Publication Date
CN110224873A CN110224873A (en) 2019-09-10
CN110224873B true CN110224873B (en) 2020-08-21

Family

ID=67814420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910548847.6A Active CN110224873B (en) 2019-06-24 2019-06-24 NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing

Country Status (1)

Country Link
CN (1) CN110224873B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113225211B (en) * 2021-04-27 2022-09-02 中国人民解放军空军工程大学 Fine-grained service function chain extension method
CN113938390B (en) * 2021-10-13 2024-02-13 全球能源互联网研究院有限公司 Network component dynamic deployment method based on physical network node resource adaptation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017176557A1 (en) * 2016-04-04 2017-10-12 Brocade Communications Systems, Inc. Constraint-based virtual network function placement
CN108260169A (en) * 2018-01-26 2018-07-06 重庆邮电大学 A kind of service function chain dynamic deployment method ensured based on QoS
CN108600019A (en) * 2018-04-28 2018-09-28 电子科技大学 a kind of network service function chain mapping method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998563B2 (en) * 2015-10-12 2018-06-12 Fujitsu Limited Vertex-centric service function chaining in multi-domain networks
CN108040008B (en) * 2017-12-08 2020-02-07 电子科技大学 Cross-domain deployment method of online service function chain
US10826797B2 (en) * 2017-12-15 2020-11-03 Foundation Of Soongsil University Industry Cooperation System and method for processing network packets based on NFV for ensuring high availability

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017176557A1 (en) * 2016-04-04 2017-10-12 Brocade Communications Systems, Inc. Constraint-based virtual network function placement
CN108260169A (en) * 2018-01-26 2018-07-06 重庆邮电大学 A kind of service function chain dynamic deployment method ensured based on QoS
CN108600019A (en) * 2018-04-28 2018-09-28 电子科技大学 a kind of network service function chain mapping method

Also Published As

Publication number Publication date
CN110224873A (en) 2019-09-10

Similar Documents

Publication Publication Date Title
CN108260169B (en) QoS guarantee-based dynamic service function chain deployment method
CN112738820B (en) Dynamic deployment method and device of service function chain and computer equipment
CN108243044B (en) Service deployment method and device
CN113708972B (en) Service function chain deployment method and device, electronic equipment and storage medium
CN109412963B (en) Service function chain deployment method based on stream splitting
JPH0241054A (en) Method of selecting route with minimum weight in communication network
CN108777636B (en) A kind of multi-controller Optimization deployment method of robust in software defined network
CN110224873B (en) NFV (network virtual function) arranging method and device based on VNF (virtual network context) instance multiplexing
CN108833271B (en) Power grid wide area control service communication path selection method and server
CN110830570B (en) Resource equalization deployment method for robust finite controller in software defined network
CN109361547B (en) Network slice link deployment method and device
CN112532408B (en) Method, device and storage medium for extracting fault propagation condition
CN114020455B (en) Arranging method and device of service functions and computer readable storage medium
CN112636991B (en) Multi-class VNF deployment method based on intermediary centrality
CN111800352B (en) Service function chain deployment method and storage medium based on load balancing
CN108923961B (en) Multi-entry network service function chain optimization method
Nishanbayev et al. Evaluating the effectiveness of a software-defined cloud data center with a distributed structure
JP6389811B2 (en) Physical resource allocation device, physical resource allocation method, and program
Perepelkin et al. Research of Multipath Routing and Load Balancing Processes in Software Defined Networks Based on Bird Migration Algorithm
Garg et al. Heuristic and reinforcement learning algorithms for dynamic service placement on mobile edge cloud
CN113395183B (en) Virtual node scheduling method and system for network simulation platform VLAN interconnection
Quang et al. QAAV: Quality of service-aware adaptive allocation of virtual network functions in wireless network
CN110417576B (en) Deployment method, device, equipment and storage medium of hybrid software custom network
CN112968794B (en) Network function chain deployment method, device, terminal device and storage medium
Li et al. Traffic-aware efficient consistency update in NFV-enabled software defined networking

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