CN113032096B - SFC mapping method based on node importance and user demand dual perception - Google Patents

SFC mapping method based on node importance and user demand dual perception Download PDF

Info

Publication number
CN113032096B
CN113032096B CN202110287756.9A CN202110287756A CN113032096B CN 113032096 B CN113032096 B CN 113032096B CN 202110287756 A CN202110287756 A CN 202110287756A CN 113032096 B CN113032096 B CN 113032096B
Authority
CN
China
Prior art keywords
virtual network
network function
node
vnf
service
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
CN202110287756.9A
Other languages
Chinese (zh)
Other versions
CN113032096A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202110287756.9A priority Critical patent/CN113032096B/en
Publication of CN113032096A publication Critical patent/CN113032096A/en
Application granted granted Critical
Publication of CN113032096B publication Critical patent/CN113032096B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

The invention discloses an SFC mapping method based on node importance and user requirement double perception, which comprises the following steps: acquiring physical network information and user service request information; preprocessing physical network information and user service request information; selecting a service deployment path of a service to be processed; mapping a dependency Virtual Network Function (VNF) pair in user service request information according to a service deployment path of a service to be processed; mapping a non-dependency virtual network function VNF in user service request information according to a service deployment path of a service to be processed; and mapping each virtual link in the user service request information according to the mapping condition of the service request virtual network function VNF set. When the mapping service requests the virtual network function VNF, the method for allocating the network resources can sense the user requirements and the importance of the network nodes, so that the acceptance rate of the user requests is improved, the existing virtual network function VNF in the physical network is reused as much as possible, and the number of instances of the virtual network function VNF for deploying the service requests is reduced.

Description

SFC mapping method based on node importance and user demand dual perception
Technical Field
The invention belongs to the technical field of communication, and particularly relates to an SFC mapping method based on node importance and user demand dual perception.
Background
In recent years, virtualization technology has been developed rapidly, and Network Function Virtualization (NFV) technology has attracted much attention in academic and IT industries. The Network Function virtualization technology maps the Network Function for processing the data packet from a hardware middle box midlet box to a software middle box midlet box running in an x86 architecture server, and the Network Function running on the software middle box midlet box is called a Virtual Network Function (VNF for short), so that each middle box midlet box can be respectively and flexibly deployed, decoupling of software and hardware is completed, and application deployment is more flexible and has the characteristic of elasticity. With the continuous emergence of new Service modes such as cloud computing and virtual reality and the stringent Quality of Service (QoS) requirements for network services (such as high-resolution video), network traffic grows exponentially, and these huge traffic demands network operators to improve Service adaptability and Service efficiency, so it is a current research hotspot to provide services according to the needs of users.
Researchers such as Ma Wenrui, disclose a Service Function Chain SFC construction method in a published paper "Traffic aware placement of dependent NFV middlebes, IEEE Conference on Computer Communications (IEEE info) 2017.Pp.1-9", which takes into account a dependency relationship between a bandwidth change factor of a virtual network Function VNF and the virtual network Function VNF in a Service request to map a Service Function Chain (SFC), which may affect bandwidth occupancy of a Service flow, for example, a firewall may discard a specific packet to cause bandwidth occupancy of an outgoing firewall to be smaller than bandwidth occupancy of an incoming flow; the bandwidth change factor for a network function represents the ratio of the bandwidth of the outgoing network function to the bandwidth of the incoming network function. The dependency between the VNFs indicates that some VNFs need to be executed in a specific order, for example, a data stream may first flow through a firewall and then enter a packet detection link; the article deploys the constructed service function chain SFC on the candidate path according to the minimum-First-maximum-Last (LFGL for short) method; a model for influencing placement of virtual Network functions,10th International Conference on Network and Service Management (CNSM) and work request heterogeneity in Network Function Virtualization (NFV) in the published paper "VNF-P", an accurate algorithm is proposed in the paper, and a Service function chain SFC is deployed according to requirements in a 5-node topology by using CPLEX software.
However, the first method has the disadvantages that server resources are deployed in the network on average, and the difference of client request resources is not considered, so that the resource utilization rate is low, and extra cost is required; the second method has the disadvantage that the service function chain SFC deployment problem has proven to be an NP-hard problem, so the precise algorithm cannot be applied to large and medium networks, and has no universality.
Disclosure of Invention
In order to solve the above problems in the prior art, the present invention provides an SFC mapping method based on node importance and user requirement dual sensing.
One embodiment of the invention provides an SFC mapping method based on node importance and user demand double perception, which comprises the following steps:
s1, physical network information and user service request information are obtained, wherein the physical network information comprises an existing Virtual Network Function (VNF) set, the user service request information comprises a service request Virtual Network Function (VNF) set, and the service request Virtual Network Function (VNF) set comprises a dependency Virtual Network Function (VNF) pair and a non-dependency Virtual Network Function (VNF);
s2, preprocessing the physical network information;
s3, preprocessing the user service request information;
s4, selecting a service deployment path of the service to be processed;
s5, mapping a dependency Virtual Network Function (VNF) pair in the VNF set according to the service deployment path of the service to be processed;
s6, mapping a non-dependency Virtual Network Function (VNF) in the service request VNF set according to the service deployment path of the service to be processed;
and S7, mapping according to the mapping condition of the service request virtual network function VNF set to obtain each virtual link corresponding to the user service request information so as to realize SFC mapping.
In an embodiment of the present invention, the S2 preprocessing the physical network information includes:
s2.1, screening all nodes connected with an x86 architecture server from the nodes of the physical network, and taking all the nodes as an existing Virtual Network Function (VNF) set in the physical network information;
s2.2, calculating the first K shortest paths between every two nodes in the physical network by adopting a first K shortest path algorithm, wherein K is less than or equal to 0, and K is an integer greater than 0;
and S2.3, traversing all shortest circuits obtained through calculation, calculating the topological weight of each node according to a node topological weight calculation equation, and recording the topological weight of each node.
In one embodiment of the invention, the node topology weight calculation equation in S2.3 is expressed as:
Figure BDA0002981182060000031
where m denotes the current mth node, w topo,m Representing the calculated topological weight, w, of the mth node 0,m Denotes an initial weight, k, of the mth node set at the time of calculation s,d Representing the shortest-path number k, p of the same number of hops from the source node s to the destination node d m s,d Representing a Boolean variable, v m E.g. V represents any node on the path from the source node s to the destination node d, V represents the set of all nodes of the path from the source node s to the destination node d, then p m s,d Is 1, otherwise p m s,d Is 0.
In an embodiment of the present invention, the step S3 of preprocessing the user service request information includes:
s3.1, traversing all service request information, recording source node and destination node information in each service request information, and calculating the proportion of each node according to a node service weight calculation equation to obtain the service weight of each node;
s3.2, performing weighted calculation on the service weight of each node and the topology weight of each node to obtain the weight of each node in a physical network;
and S3.3, sequencing all services according to the weight of each node in the physical network, and placing the service request information containing the dependency virtual network function VNF in the front and preferentially deploying in the physical network.
In one embodiment of the invention, the node traffic weight calculation equation in S3.1 is expressed as:
Figure BDA0002981182060000041
wherein w req,m Representing the calculated traffic weight of the mth node,
Figure BDA0002981182060000042
representing a Boolean variable, v in the ith service request m E.v denotes the slave source node s i To destination node d i Any node on the path of (4), then->
Figure BDA0002981182060000043
Is 1, otherwise->
Figure BDA0002981182060000044
Is 0.
In an embodiment of the present invention, the selecting, by S4, a service deployment path of the service to be processed includes:
s4.1, selecting front K shortest paths between a service source and a host node from front K shortest paths between every two nodes in a physical network as candidate paths;
s4.2, respectively calculating the intersection of the existing virtual network function VNF set and the service request VNF set on each candidate path;
and S4.3, selecting the candidate path corresponding to the maximum intersection as a service deployment path.
In an embodiment of the present invention, the mapping, by the S5, each dependency virtual network function VNF pair in the user service request information according to the service deployment path of the service to be processed includes:
s5.1, randomly selecting one dependency virtual network function VNF pair from the service request virtual network function VNF set, and deleting the selected dependency virtual network function VNF pair from the service request virtual network function VNF set;
s5.2, judging whether two known virtual network functions VNF in the dependency virtual network function VNF pair exist on the service deployment path, if so, executing S5.3, otherwise, executing S5.4;
s5.3, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of reusing at most two dependency virtual network function VNF pairs, and executing S5.7;
s5.4, judging whether only one virtual network function VNF in the dependency virtual network function VNF pair exists on the service deployment path, if yes, executing S5.5, and if not, executing S5.6;
s5.5, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of reusing one dependency virtual network function VNF pair at most, and executing S5.7;
s5.6, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of the dependency virtual network function VNF pair which cannot be reused;
and S5.7, judging whether at least one dependency virtual network function VNF pair still exists in the service request virtual network function VNF set, if so, executing S5.1, otherwise, completing the mapping of all dependency virtual network function VNF pairs in the service request virtual network function VNF set, and executing S6.
In an embodiment of the present invention, S6 mapping a non-dependency virtual network function VNF in the set of service request virtual network functions VNFs according to a service deployment path of the service to be processed includes:
s6.1, randomly selecting one non-dependency virtual network function VNF from the service request virtual network function VNF set, judging whether the selected non-dependency virtual network function VNF exists on the service deployment path, if so, executing S6.2, otherwise, executing S6.3;
s6.2, mapping the selected non-dependency virtual network function VNF to a server node of the selected non-dependency virtual network function VNF on the service deployment path, reusing the selected non-dependency virtual network function VNF, and executing S6.4;
s6.3, if the bandwidth change factor of the selected non-dependency virtual network function VNF is smaller than or equal to 1, mapping the selected non-dependency virtual network function VNF to the server node closest to the front end of the path, otherwise, mapping the selected non-dependency virtual network function VNF to the server node closest to the tail end of the path;
and S6.4, judging whether the service request virtual network function VNF set is empty, if so, completing the mapping of all the non-dependency virtual network functions VNF, and executing S7, otherwise, executing S6.1.
In an embodiment of the present invention, the S7 obtains, according to the mapping condition of the service request virtual network function VNF set, each virtual link corresponding to the user service request information, so as to implement SFC mapping, where the mapping includes:
s7.1, randomly selecting a virtual link from a virtual link set to be mapped, judging whether service request Virtual Network Functions (VNFs) at two ends of the currently selected virtual link are mapped to the same node, if so, executing S7.2, otherwise, executing S7.3;
s7.2, executing S7.5 without mapping the currently selected virtual link;
s7.3, judging whether the currently selected virtual link is a first virtual link, if so, giving out the frequency slot number on the currently selected virtual link by the service request information, otherwise, multiplying the frequency slot number on the currently selected virtual link by the frequency slot number on the previously selected virtual link by the bandwidth change factor of the virtual network function VNF in the currently selected virtual link initial end service request information;
s7.4, the service request virtual network function VNFs at two ends of the currently selected virtual link map the first k shortest paths between the two nodes to serve as a candidate path set, frequency slots are distributed to the currently selected virtual link on each candidate path by using a first-time hit algorithm to obtain k routes and spectrum distribution schemes, one route and spectrum distribution scheme which enables the maximum frequency slot number to be increased to the minimum is selected, and the currently selected virtual link is mapped;
s7.5, judging whether all the virtual links in the virtual link set are completely mapped, if so, executing S7.6, otherwise, executing S7.1;
s7.6, completing the mapping of all virtual links corresponding to the current service request message to realize SFC mapping:
compared with the prior art, the invention has the beneficial effects that:
the SFC mapping method based on node importance and user requirement double perception provided by the invention respectively adopts a method for selecting a service deployment path, a method for mapping a dependency virtual network function VNF pair and a method for mapping the rest virtual network function VNF, and is used for reusing the existing virtual network function VNF in a network as much as possible when the virtual network function VNF is mapped, thereby overcoming the problems that in the prior art, the number of deployed virtual network function VNFs cannot be reduced and the number of virtual network function VNFs is too much when the service is deployed due to the fact that only the cost of link bandwidth resources is considered but the cost of the virtual network function VNFs is ignored, and the number of deployed virtual network function VNF instances can be reduced, and the service deployment cost is reduced.
The present invention will be described in further detail with reference to the drawings and examples.
Drawings
Fig. 1 is a schematic flowchart of an SFC mapping method based on node importance and user requirement dual sensing according to an embodiment of the present invention;
fig. 2 is a schematic diagram of a network state before mapping of a virtual network function VNF according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a network state after mapping of a virtual network function VNF according to an embodiment of the present invention;
fig. 4 is a schematic diagram of a virtual link mapping according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a topology structure of an NSFNET network used for simulation according to an embodiment of the present invention;
fig. 6 is a schematic diagram illustrating a comparison between VNF numbers of virtual network functions in network deployment and changes of service request numbers, where VNF numbers of virtual network functions in network deployment are obtained by two deployment methods in simulation according to an embodiment of the present invention;
fig. 7 is a schematic diagram illustrating a comparison between maximum frequency slot numbers obtained by two deployment methods in simulation and changes with a service request number according to an embodiment of the present invention;
fig. 8 is a schematic diagram illustrating comparison between VNF numbers of virtual network functions deployed in a network and changes of service requests, where the VNF numbers are obtained by using node weights of five different proportions in simulation according to an embodiment of the present invention;
fig. 9 is a schematic diagram illustrating comparison between maximum frequency slot numbers obtained by weighting nodes with five different proportions in simulation and changes with service request numbers according to an embodiment of the present invention;
fig. 10 is a schematic diagram illustrating a comparison between service request throughput rates obtained by two resource allocation methods in simulation and a total amount of computing resources in a network according to an embodiment of the present invention;
fig. 11 is a schematic diagram illustrating a comparison between VNF numbers of virtual network functions deployed in a network and changes of service request numbers, which are obtained by two algorithms in simulation according to an embodiment of the present invention;
fig. 12 is a schematic diagram illustrating comparison between maximum frequency slot numbers obtained by two algorithms in simulation and changes with the number of service requests according to an embodiment of the present invention;
fig. 13 is a schematic diagram illustrating a comparison between the maximum frequency slot numbers obtained by the two algorithms in the simulation according to the embodiment of the present invention and the variation of the maximum frequency slot numbers with the number of service requests.
Detailed Description
The present invention will be described in further detail with reference to specific examples, but the embodiments of the present invention are not limited thereto.
Example one
Referring to fig. 1, fig. 1 is a schematic flowchart of an SFC mapping method based on node importance and user requirement dual sensing according to an embodiment of the present invention. The embodiment provides an SFC mapping method based on node importance and user requirement dual sensing, which includes the following steps:
s1, physical network information and user service request information are obtained.
Specifically, the virtual network function VNF and the service function chain SFC in this embodiment refer to: the network function virtualization technology maps a network function for processing a data packet from a hardware middlebox onto a software middlebox running on an x86 architecture server, the network function running on the software middlebox is called a virtual network function VNF, and a plurality of virtual network function VNFs are connected to form a service function chain SFC to provide network services, usually in a specific order. The physical network information of this embodiment includes an existing virtual network function VNF set, the user service request information includes a service request virtual network function VNF set, and the service request virtual network function VNF set includes a dependency virtual network function VNF pair and a non-dependency virtual network function VNF. The user service request information includes, in addition to the service request virtual network function VNF set, a source node and a destination node of the service request, and a bandwidth change factor of each virtual network function VNF.
And S2, preprocessing the physical network information.
Specifically, in this embodiment, the step S2 of preprocessing the physical network information includes:
s2.1, screening all nodes connected with an x86 architecture server from the nodes of the physical network, and taking all the nodes as an existing Virtual Network Function (VNF) set in the physical network information.
S2.2, calculating the first K shortest paths between every two nodes in the physical network by adopting a first K shortest path algorithm, wherein K is less than or equal to 0 and is an integer greater than 0, for example, the value of K is 3 in the embodiment. The specific S for calculating the first K shortest paths between every two nodes in the physical network by adopting the first K shortest path algorithm is as follows:
s2.2.1, selecting two nodes of a source node and a destination node in the physical network at will.
S2.2.2, calculating the path with the least hop number between the selected source node and the selected destination node as a reference path by utilizing Dijkstra algorithm of Dijkstra.
S2.2.3, taking each node except the last node on the reference path as a deviated node, calculating a path with the fewest hops between each deviated node and a termination node and meeting a path loop-free condition and a path non-repetitive condition by utilizing a Dijkstra algorithm, and splicing each path with the fewest hops with a corresponding sub-path of the reference path to form a candidate path set; the reference path sub-path refers to a path from a source node to a deviation node sequentially through intermediate nodes between the source node and a destination node of the reference path; the path loop-free condition means that the path with the minimum hop number cannot pass through any node between a source node and a deviated node on the reference path; the path non-duplicate condition means that the edge from the deviating node on the path with the least number of hops cannot be the same as the edge from the deviating node on any shortest path that has been found.
And S2.2.4, selecting one path with the least hop number from the candidate path set as the next shortest path between two nodes, and taking the path as a reference path.
And S2.2.5, judging whether the front k shortest paths between the two nodes are obtained, if so, executing S2.2.6, otherwise, executing S2.2.3.
And S2.2.6, judging whether the first k shortest paths between the source node and the destination node of each group in the physical network are obtained, if so, executing S2.2.8, otherwise, executing S2.2.7.
S2.2.7, executing the S2.2.2 after randomly selecting two unselected nodes of a source node and a sink node in the physical network.
And S2.2.8, obtaining the first k shortest paths between the source node and the destination node in each group in the physical network.
And S2.3, traversing all shortest circuits obtained through calculation, calculating the topological weight of each node according to a node topological weight calculation equation, and recording the topological weight of each node. Specifically, in this embodiment S2.3, a node topology weight calculation equation is proposed based on betweenness centrality, and the node topology weight calculation equation is expressed as:
Figure BDA0002981182060000091
where m denotes the current mth node, w topo,m Representing the calculated topological weight, w, of the mth node 0,m Denotes the initial weight, k, of the mth node set at the time of calculation s,d Indicating the shortest path number k, p with the same hop number from the source node s to the destination node d in the user service request message m s,d Representing a Boolean variable, node v m E.g. V is on the path from source node s to destination node d, V represents the set of all nodes of the path from source node s to destination node d, then p m s,d Is 1, otherwise p m s,d Is 0.
And S3, preprocessing the user service request information.
Specifically, the step S3 of preprocessing the user service request information in this embodiment includes:
and S3.1, traversing all the service request information, recording the information of the source node and the destination node (host node) in each service request information, and calculating the proportion of each node according to a node service weight calculation equation to obtain the service weight of each node. Specifically, the service weight calculation equation of each node in this embodiment is expressed as:
Figure BDA0002981182060000101
wherein w req,m Representing the calculated traffic weight of the mth node,
Figure BDA0002981182060000102
representing a Boolean variable, v in the ith service request m E V denotes the slave source node s i To destination node d i Any section of the pathPoint, then->
Figure BDA0002981182060000103
Is 1, otherwise->
Figure BDA0002981182060000104
Is 0.
S3.2, carrying out weighted calculation on the service weight of each node and the topology weight of each node to obtain the weight of each node in the physical network, namely the importance of the node, wherein the weight of each node in the physical network obtained through the specific weighted calculation is represented as follows:
Figure BDA0002981182060000105
wherein w m Represents the calculated weight of the mth node in the physical network, alpha 1 And alpha 2 Are all weight factors, α 12 =1,α 1 Not less than and alpha 2 ≥。
And S3.3, sequencing all services according to the weight of each node in the physical network, and placing the service request information containing the dependency virtual network function VNF in the front and preferentially deploying in the physical network.
And S4, selecting a service deployment path of the service to be processed.
Specifically, in this embodiment, first, a service to be processed is obtained from the service request information, and then the step S4 of selecting a service deployment path of the service to be processed includes:
s4.1, selecting the front K shortest paths between the service source and the destination node from the front K shortest paths between every two nodes in the physical network as candidate paths.
And S4.2, respectively calculating the intersection of the existing virtual network function VNF set and the service request VNF set on each candidate path.
And S4.3, selecting the candidate path corresponding to the maximum intersection as a service deployment path.
It should be noted that, in this embodiment, if resources in a server of a certain node in the node set on the candidate path are insufficient to deploy the service request virtual network function VNF, the service deployment path is replaced, so that the service request virtual network function VNF can be successfully deployed.
And S5, mapping a dependency Virtual Network Function (VNF) pair in the service request VNF set according to the service deployment path of the service to be processed.
Specifically, when at least one dependency virtual network function VNF pair exists in the service request virtual network function VNF set, mapping, according to the service deployment path of the service to be processed, each dependency virtual network function VNF pair in the service request virtual network function VNF set in this embodiment S5 includes:
s5.1, randomly selecting one dependency virtual network function VNF pair from the VNF set of the service request virtual network function, and deleting the selected dependency virtual network function VNF pair from the VNF set of the service request virtual network function.
And S5.2, judging whether two known virtual network functions VNF in the dependency virtual network function VNF pair exist on the service deployment path, if so, executing S5.3, otherwise, executing S5.4.
And S5.3, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of reusing at most two dependency virtual network function VNF pairs, and executing S5.7. The specific S of the mapping method of the dependent virtual network function VNF, which reuses two at most, is as follows:
and S5.3.1, judging whether the position of the dependence virtual network function VNF on the service deployment path in the dependence virtual network function VNF pair is before the dependence virtual network function VNF, if so, executing S5.3.2, otherwise, executing S5.3.11.
S5.3.2, judging whether the conditions of respectively mapping and reusing the VNF (virtual network function) of the depended virtual network are met, if so, executing S5.3.3, otherwise, executing S5.3.4; wherein the respectively mapping and reusing the dependent virtual network function VNF condition means: the bandwidth change factor of the depended-on virtual network function VNF is greater than 1 and the bandwidth change factor of the depended-on virtual network function VNF is greater than 1; the bandwidth change factor of the virtual network function VNF refers to: the ratio of traffic bandwidth occupation on the virtual links of the egress virtual network function VNF to the traffic bandwidth occupation on the virtual links of the ingress virtual network function VNF.
And S5.3.3, mapping the relied-on virtual network function VNF to a server node on a service deployment path, wherein the server node is stored in the relied-on virtual network function VNF, reusing the relied-on virtual network function VNF, mapping the relied-on virtual network function VNF to a server node at the tail end of the service deployment path, and then executing S5.3.12.
S5.3.4, judging whether the conditions of respectively mapping and reusing the VNF (virtual network function) are met, if so, executing S5.3.5, otherwise, executing S5.3.6; wherein, respectively mapping and reusing the dependent virtual network function VNF condition means: the bandwidth change factor of the depended virtual network function VNF is less than or equal to 1 and the bandwidth change factor of the dependent virtual network function VNF is less than or equal to 1.
And S5.3.5, mapping the VNF depending on the virtual network function to a server node with the VNF depending on the virtual network function on the service deployment path, reusing the VNF depending on the virtual network function, mapping the VNF depending on the virtual network function to the server node at the forefront end of the service deployment path, and then executing S5.3.12.
S5.3.6, judging whether the conditions of simultaneous mapping and VNF (virtual network function) reuse dependence are met, if so, executing S5.3.7, otherwise, executing S5.3.8; wherein, simultaneously mapping and reusing the dependent virtual network function VNF condition means: the bandwidth change factor of the depended virtual network function VNF is larger than 1 and the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1 and the bandwidth change factor of the depended virtual network function VNF multiplied by the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1.
And S5.3.7, simultaneously mapping the two virtual network function VNFs to a server node where the dependent virtual network function VNF is located on the service deployment path, and executing S5.3.12 after reusing the dependent virtual network function VNF.
S5.3.8, judging whether the VNF conditions of simultaneous mapping and reuse of the depended virtual network function are met, if so, executing S5.3.9, otherwise, executing S5.3.10; wherein the simultaneous mapping and reusing of the depended virtual network function VNF condition means: the bandwidth change factor of the depended virtual network function VNF is larger than 1 and the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1 and the bandwidth change factor of the depended virtual network function VNF multiplied by the bandwidth change factor of the depended virtual network function VNF is larger than 1.
And S5.3.9, simultaneously mapping the two virtual network function VNFs to a server node where the depended virtual network function VNF is located on the service deployment path, and executing S5.3.12 after reusing the depended virtual network function VNF.
And S5.3.10, mapping the relied-on virtual network function VNF to a server node on which the relied-on virtual network function VNF is positioned on the service deployment path, reusing the relied-on virtual network function VNF, mapping the relied-on virtual network function VNF to a server node at the tail end of the service deployment path, and then executing S5.3.12.
And S5.3.11, mapping the relied-on virtual network function VNF to a server node which is stored on the service deployment path and has the relied-on virtual network function VNF, and reusing the two virtual network function VNFs.
And S5.3.12, mapping the dependency virtual network function VNF pair on the service deployment path.
And S5.4, judging whether only one virtual network function VNF in the dependency virtual network function VNF pair exists on the service deployment path, if so, executing S5.5, otherwise, executing S5.6.
And S5.5, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of reusing one dependency virtual network function VNF pair at most, and executing S5.7. The specific S of the mapping method using the VNF pair with the most reused dependency virtual network functions is as follows:
and S5.5.1, judging whether a relied virtual network function VNF in the VNF pair exists on the service deployment path, if so, executing S5.5.2, otherwise, executing S5.5.5.
S5.5.2, judging whether the bandwidth change factor depending on the VNF is less than or equal to 1, if so, executing S5.5.3, otherwise, executing S5.5.4.
And S5.5.3, mapping the relied-on virtual network function VNF to a server node on a service deployment path, wherein the server node is stored in the relied-on virtual network function VNF, reusing the relied-on virtual network function VNF, and executing S5.5.8 after mapping the relied-on virtual network function VNF to the server node on which the relied-on virtual network function VNF is positioned on the service deployment path.
And S5.5.4, mapping the relied-on virtual network function VNF to a server node on a service deployment path, wherein the server node is stored in the relied-on virtual network function VNF, reusing the relied-on virtual network function VNF, and executing S5.5.8 after mapping the relied-on virtual network function VNF to a server node at the tail end of the service deployment path.
S5.5.5, judging whether the bandwidth change factor of the VNF depending on the virtual network function is less than or equal to 1, if so, executing S5.5.6, otherwise, executing S5.5.7.
S5.5.6, mapping the VNF depending on the virtual network function to a server node with the VNF depending on the virtual network function on the service deployment path, reusing the VNF depending on the virtual network function, and executing S5.5.8 after mapping the VNF depending on the virtual network function on the server node at the forefront end of the service deployment path.
And S5.5.7, mapping the dependent virtual network function VNF to a server node on which the dependent virtual network function VNF exists on the service deployment path, reusing the dependent virtual network function VNF, and mapping the dependent virtual network function VNF to the server node on which the dependent virtual network function VNF exists on the service deployment path.
And S5.5.8, mapping the dependency virtual network function VNF pair on the service deployment path.
And S5.6, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of the dependency virtual network function VNF pair which cannot be reused. The specific S of the used dependent virtual network function VNF mapping method that cannot be reused is as follows:
s5.6.1, judging whether the condition of simultaneous mapping to the front end of the path is met, if so, executing S5.6.2, otherwise, executing S5.6.3; wherein, the condition of mapping to the front end of the path simultaneously means: the bandwidth change factor of the depended virtual network function VNF is larger than 1 and the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1 and the bandwidth change factor of the depended virtual network function VNF multiplied by the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1.
And S5.6.2, mapping the two virtual network functions VNF to a server node at the forefront of the service deployment path at the same time, and then executing S5.6.6.
S5.6.3, judging whether the condition of simultaneous mapping to the path end is met, if so, executing S5.6.4, otherwise, executing S5.6.5; wherein, the condition of simultaneous mapping to path end refers to: the bandwidth change factor of the depended virtual network function VNF is larger than 1 and the bandwidth change factor of the depended virtual network function VNF is smaller than or equal to 1 and the bandwidth change factor of the depended virtual network function VNF multiplied by the bandwidth change factor of the depended virtual network function VNF is larger than 1.
And S5.6.4, mapping the two virtual network function VNFs to a server node at the tail end of the service deployment path at the same time, and then executing S5.6.6.
And S5.6.5, mapping the dependent virtual network function VNF on a server node at the front end of the service deployment path, and mapping the dependent virtual network function VNF on a server node at the tail end of the service deployment path.
And S5.6.6, mapping the virtual network function VNF pair on the service deployment path.
And S5.7, judging whether at least one dependency virtual network function VNF pair still exists in the service request virtual network function VNF set, if so, executing S5.1, otherwise, completing the mapping of all the dependency virtual network function VNF pairs in the service request virtual network function VNF set, and executing S6.
S6, mapping the service request non-dependency virtual network function VNF in the VNF set according to the service deployment path of the service to be processed.
Specifically, when there is still a non-dependency virtual network function VNF in the service request virtual network function VNF set, the mapping, by the embodiment S6, of the non-dependency virtual network function VNF in the service request virtual network function VNF set according to the service deployment path of the service to be processed includes:
s6.1, arbitrarily selecting one non-dependency virtual network function VNF from the service request virtual network function VNF set, judging whether the selected non-dependency virtual network function VNF exists on the service deployment path, if so, executing S6.2, otherwise, executing S6.3.
S6.2, mapping the selected non-dependency virtual network function VNF to a server node of the selected non-dependency virtual network function VNF on the service deployment path, reusing the selected non-dependency virtual network function VNF, and executing S6.4.
S6.3, if the bandwidth change factor of the selected non-dependency virtual network function VNF is smaller than or equal to 1, mapping the selected non-dependency virtual network function VNF to the server node closest to the front end of the path, otherwise, mapping the selected non-dependency virtual network function VNF to the server node closest to the tail end of the path. The bandwidth change factor of the VNF refers to: the ratio of traffic bandwidth occupancy on the virtual link out of the virtual network function VNF to traffic bandwidth occupancy on the virtual link into the virtual network function VNF.
And S6.4, judging whether the service request virtual network function VNF set is empty, if so, completing mapping of all the non-dependency virtual network function VNFs, and executing S7, otherwise, executing S6.1.
And S7, mapping each virtual link in the user service request information according to the mapping condition of the service request virtual network function VNF set so as to realize SFC mapping.
Specifically, in this embodiment S7, obtaining each virtual link corresponding to the user service request information according to the mapping condition of the service request virtual network function VNF set, so as to implement SFC mapping, including:
s7.1, randomly selecting a virtual link from the virtual link set to be mapped, judging whether the service request virtual network functions VNFs at two ends of the currently selected virtual link are mapped to the same node, if so, executing S7.2, otherwise, executing S7.3, wherein the service request virtual network function VNF is selected from the service request virtual network function VNF set.
S7.2, executing S7.5 without mapping the currently selected virtual link.
S7.3, judging whether the currently selected virtual link is the first virtual link, if so, giving out the frequency slot number on the currently selected virtual link by the service request information, otherwise, multiplying the frequency slot number on the currently selected virtual link by the frequency slot number on the previously selected virtual link by the bandwidth change factor of the currently selected virtual link initial end service request virtual network function VNF.
S7.4, the service request virtual network function VNFs at two ends of the currently selected virtual link map the first k shortest paths between the two nodes to serve as a candidate path set, frequency slots are distributed to the currently selected virtual link on each candidate path by using a first-time hit algorithm respectively to obtain k routes and spectrum distribution schemes, one route and spectrum distribution scheme which enables the maximum frequency slot number to be increased to the minimum is selected, and the currently selected virtual link is mapped. Wherein, the First hit First Fit algorithm means: on the candidate path, a first set of consecutive free frequency slots equal to the number of frequency slots on the virtual link is searched, and the free frequency slots on the candidate path are allocated to the virtual link.
And S7.5, judging whether all the virtual links in the virtual link set are completely mapped, if so, executing S7.6, and otherwise, executing S7.1.
S7.6, completing the mapping of all the virtual links in the current service request message.
In this embodiment, if an unprocessed service request still exists in the service request set, the above S is repeatedly executed until all service requests in the service request set are deployed, so as to implement SFC mapping.
In this embodiment, a method for selecting a service deployment path based on a First K shortest path algorithm and a maximum intersection algorithm, a virtual network function VNF mapping method based on a dependency relationship between virtual network functions VNFs, a virtual network function VNF bandwidth change factor, importance of nodes in a network, and a user service request, and a routing and spectrum allocation method based on the First K shortest path algorithm and a First hit First Fit algorithm are combined. And selecting the path with the maximum reusable number of the virtual network functions from the first K shortest paths between the service source node and the destination node as a service deployment path, then mapping a Service Function Chain (SFC) on the selected path, optimizing the mapping of the virtual links by using a routing and spectrum allocation method, and completing the deployment of the service request. The importance of the nodes in the network and the service requests of the users are considered when the resources are distributed to the servers in the network, so that the server resources in the network topology are distributed in a targeted manner rather than in an average manner, more services with better quality can be provided for the areas with denser requests of the users to the maximum extent, excessive resources can be prevented from being used in the areas with fewer requests of the users, and the utilization rate of the resources is effectively improved. When the service function chain SFC is constructed and mapped, on the premise of meeting the dependency relationship among the virtual network functions VNFs, the virtual network functions VNFs with reduced bandwidth occupation are mapped to the front end of the selected path as much as possible according to the bandwidth change factors of the virtual network functions VNFs and the principle of minimum, first, maximum and last LFGL, and the virtual network functions VNFs with increased bandwidth occupation are mapped to the tail end of the selected path as much as possible. Therefore, the method of the embodiment can reduce the deployment number of the service request virtual network function VNFs and the maximum frequency slot number of all the optical fiber links in the underlying elastic optical network as much as possible while satisfying the dependency relationship between the virtual network function VNFs, thereby reducing the service deployment cost, and solving the problem of deploying the service request by the virtual network function VNFs having dependency in a network function virtualization scene.
The service function chain SFC construction and mapping process of the present invention will be described in detail with reference to the following embodiments.
Referring to fig. 2, fig. 2 is a schematic diagram of a network state before mapping of a virtual network function VNF according to an embodiment of the present invention, and as can be seen from fig. 2, there are 8 nodes in a physical network, where node 1, node 3, node 4, and node 6 are respectively connected to a server. When the temperature is higher than the set temperatureThe existing virtual network functions VNF in the former physical network are represented by rectangular boxes, which are VNFs on node 1 1 VNF on node 3 2 VNF on node 4 4 And VNF 5 VNF on node 6 8 . With the initial frequency slot number requirement of 1, the required set of virtual network functions VNFs is { VNF 2 ,VNF 4 ,VNF 8 And the service requests of the source node and the destination node, which are the node 3 and the node 6, respectively, are taken as an example to illustrate the process of deploying the service request of the VNF with the dependency virtual network function pair by the method of the present invention. Wherein VNF 4 And VNF 8 Is a dependency virtual network function VNF pair, VNF 8 Must be in VNF 4 Is performed previously. Furthermore, VNF 2 ,VNF 4 ,VNF 8 Respectively of r 2 =1.3,r 4 =0.6,r 8 =1.4. Specifically, the processing related to S includes:
preprocessing physical network information for S2 includes:
screening out all nodes connected with the x86 architecture server: node 1, node 3, node 4, and node 6, as a set of physical nodes deploying a virtual network function, VNF. Calculating the first 3 (k = 3) shortest paths between any two nodes in the physical network, wherein the first 3 shortest paths between the traffic request source and the destination node are represented by dashed arrows in fig. 2, which are respectively: node 3- > node 1- > node 2- > node 6, node 3- > node 4- > node 2- > node 6, node 3- > node 5- > node 7- > node 6.
Selecting a service deployment path of the service to be processed aiming at the S4 comprises the following steps:
path 1 (node 3->Node 1->Node 2->Node 6) has a set of virtual network functions VNFs of { VNFs 1 ,VNF 2 ,VNF 8 }, the intersection with the set of virtual network functions, VNFs, of service requirements is { VNF 2 }; 2 nd path (node 3->Node 4->Node 2->The existing virtual network function VNF set on the node 6) is { VNF 2 ,VNF 4 ,VNF 5 ,VNF 8 The intersection with the set of virtual network functions, VNFs, of service requirements is { VNF 2 ,VNF 4 ,VNF 8 }; path 3 (node 3->Node 5->Node 7->The existing virtual network function VNF set on the node 6) is { VNF 2 ,VNF 8 The intersection with the set of virtual network functions, VNFs, of service requirements is { VNF 2 }. Path 2 (node 3->Node 4->Node 2->Node 6) is the largest intersection available on which the virtual network function VNF can be reused as much as possible, so the 2 nd path (node 3->Node 4->Node 2->Node 6) is used as a service deployment path, please refer to fig. 3, where fig. 3 is a schematic diagram of a network state after mapping of a virtual network function VNF according to an embodiment of the present invention, and a solid arrow in fig. 3 represents the service deployment path after mapping of the virtual network function VNF.
Mapping the dependency virtual network function VNF pair for S5 includes:
the dependency virtual network function VNF pair in the mapping: VNF 4 And VNF 8 . Existing VNF on selected service deployment path 8 On node 6, the existing VNF 4 On node 4. Due to VNF 8 VNF at location on traffic deployment path 4 Afterwards, if for re-use the VNF 4 And VNF 8 Requesting the VNF of the service 4 Mapping the VNF on the node 6 8 Mapping on node 4 would result in a VNF 8 In VNF 4 And then executing, and failing to satisfy the dependency relationship between the virtual network functions VNFs. Because r is 8 =1.4>1,r 4 VNF for which 0.6 ≦ 1, bandwidth utilization should be reduced 4 VNF that maps to the end of the path as much as possible, will increase the bandwidth occupation 8 Mapping to the front end of the path as much as possible to reduce bandwidth spectrum resources consumed by the virtual link, again due to the VNF 8 Must be in VNF 4 Previously executed, so the VNF should be used 8 And VNF 4 And mapping the data to the same server node on the service deployment path. In order to reuse existing virtual network functions VNF on the traffic deployment path, the VNF should be reused 4 And VNF 8 Simultaneously to node 4 or node 6, again due to r 4 *r 8 =0.84 ≦ 1, so node 4 near the front of the path is selected as the mapping node. Finally, the product is processedTo VNF 4 And VNF 8 Simultaneously to node 4, where the VNF can be reused 4
Mapping a dependency-free virtual network function, VNF, for S6 comprises:
mapping the remaining non-dependency virtual network functions VNF: VNF 2 . Since the VNF already exists in the server node 3 on the traffic deployment path 2 Therefore, VNF directly requesting service 2 Mapping onto node 3 to reuse existing VNFs 2
At this time, all the mapping of the virtual network functions VNF of the service request is completed, and the service function chain SFC that is constructed at the same time is: VNF 2 ->VNF 8 ->VNF 4 . Referring to fig. 3 again, the mapping result of the virtual network function VNF in this embodiment is represented by an oval in fig. 3, and the shaded oval represents that the virtual network function VNF can be reused.
Mapping the virtual link for S7 includes:
in order to reduce the maximum frequency slot number in the flexible optical network, on the First 3 shortest paths between physical nodes where virtual network functions VNFs at two ends of a virtual link are located, a First hit First-time algorithm is used to try to allocate frequency slots to the virtual link, and one path which increases the maximum frequency slot number by the minimum is selected as a path to which the virtual link is mapped, instead of simply mapping the virtual link to a service deployment path.
Referring to fig. 4, fig. 4 is a schematic diagram of a virtual link mapping according to an embodiment of the present invention, and fig. 4 illustrates a service function chain SFC (VNF) 2 ->VNF 8 ->VNF 4 ) Medium VNF 2 To VNF 8 The inter-virtual link is an example to illustrate the mapping process of the virtual link. The number of frequency slots of the current virtual link demand may be multiplied by the initial number of frequency slots of the service request, 1, by the VNF 1 By a bandwidth change factor r 1 =1.3 yields 1 × 1.3=1.3 frequency slots, so this virtual link should be allocated 2 frequency slots. VNF 2 And VNF 8 The located physical nodes are respectively a node 3 and a node 4, and as shown in fig. 4, the first 3 shortest paths between the two nodes are respectively: node 3->Node 4, node 3->Node 5->Node 4, node 3->Node 1->Node 2->And a node 4. Wherein the occupation of the number of frequency slots on each physical link is represented by a rectangular box, wherein the gray rectangular box represents occupied frequency slots and the white rectangular box represents idle frequency slots. The frequency slots distributed for the virtual links on each path obtained according to the First hit First Fit algorithm are marked by black dots, wherein the frequency slots are marked by the black dots at the path nodes 3->Allocating 8 th and 9 th frequency slots for the virtual link on the node 4, wherein the maximum frequency slot number is 9 after the allocation is finished; at path node 3->Node 5->Allocating a 4 th frequency slot and a 5 th frequency slot for the virtual link on the node 4, wherein the maximum frequency slot number is 7 after the allocation is finished; at path node 3->Node 1->Node 2->And the 8 th frequency slot and the 9 th frequency slot are allocated to the virtual link on the node 4, and the maximum frequency slot number is 9 after the allocation is finished. Therefore, the scheme for increasing the maximum frequency slot number in the network to the minimum is selected: will VNF 1 To VNF 6 Inter-virtual link mapping to path node 3->Node 5->Node 4 and is assigned the 4 th and 5 th frequency slots.
And after all the virtual links are mapped, completing service deployment.
In order to verify the effectiveness of the SFC mapping method based on node importance and user requirement dual sensing proposed in this embodiment, the optimization effect of the method of the present invention is verified through the following simulation. The simulation specifically comprises the following steps:
1. simulation conditions
Referring to fig. 5, fig. 5 is a schematic diagram of a topology structure of an NSFNET Network used for simulation according to an embodiment of the present invention, where the NSFNET topology (NSFNET for short) of 14 nodes shown in fig. 5 is used for simulation. The simulation parameters are set as follows: there are 8 types of virtual network functions VNF in total, and the bandwidth change factors of the virtual network functions VNF of types 1-4 are in the interval 0.5,1]Randomly selecting bandwidth change factors of VNFs of other types of virtual network functions in an interval [1,1.5 ]]The method is randomly selected. The initial number of frequency slots of a service is requested in the interval 4,8]The method is randomly selected. Each fiber link accommodates 358 frequency slots. In addition, 2 pairs of dependency virtual network functions VNF pairs, which are VNFs respectively, are selected 7 And VNF 3 、VNF 4 And VNF 8 Wherein VNF 7 Must be in VNF 3 Front executionLine, VNF 4 Must be in VNF 8 And previously executed. In each experiment the number of service requests varied from 100 to 600, each requiring at most 3 types of virtual network functions VNF.
This example has 4 sets of simulation experiments: the 1 st group of experimental targets are used for verifying the validity of the node topological weight, so that 7 nodes with the maximum weight are respectively selected and 7 nodes are randomly selected as server nodes to be compared; in the 2 nd group of experiments, 7 nodes with the largest weight are selected as server nodes; in the 3 rd group of experiments, 7 nodes with the largest weight are selected as server nodes, but the computing resources distributed to each server are different, namely average distribution and weighted distribution respectively, and comparison between the average distribution and the weighted distribution is carried out; in the 4 th group of experiments, 7 nodes with the largest weight are selected as server nodes, and the mode of distributing computing resources by the server nodes is weighted distribution.
2. Simulation content:
in the 1 st group of experimental targets, in order to verify the validity of the node topology weight, 7 nodes with the maximum weight are respectively selected and 7 nodes are randomly selected as server nodes to be compared, and the compared optimization targets are respectively the deployed virtual network function VNF number and the maximum frequency slot number.
And the 2 nd group of experimental targets are respectively used for verifying the influence of the node topology weight and the node business weight on the node comprehensive weight, and compared optimization targets are respectively the number of the deployed virtual network function VNFs and the maximum frequency slot number.
The 3 rd group of experimental objectives are to verify the effectiveness of providing services according to user requirements, and the comparative optimization objective is the passing rate of the user request under different network resources, that is, the probability that the service request of the user can be served under the condition of limited network resources.
The 4 th group of experimental targets are to compare the performances of the two algorithms, the two algorithms are adopted for simulation and include a Node-resource and User-demand dual-perception SFC Mapping Algorithm (NUAM), a Coordinated learning and Mapping Algorithm (CCMA), and the performances of the two algorithms are compared under the constraint condition of adding the amount of server resources, and the compared optimization targets are respectively the number of deployed virtual network function VNFs and the maximum frequency slot number. In addition, after the simulation results are observed for multiple times, the simulation results which are not in accordance with the expected conditions are guessed, and a contrast item of the difference of the maximum frequency slot numbers of all links is added for verification.
3. And (3) simulation result analysis:
since a large amount of repeated data occurs when the number of service requests is small, the abscissa service request number of the simulation result graph ranges from 300 to 600.
Referring to fig. 6 and 7, fig. 6 is a schematic diagram illustrating a comparison between VNF numbers of virtual network functions in network deployment and a number of service requests in the network deployment, where VNF numbers of virtual network functions in network deployment are obtained by two deployment methods in simulation according to an embodiment of the present invention, fig. 7 is a schematic diagram illustrating a comparison between maximum frequency slot numbers obtained by two deployment methods in simulation and a number of service requests in simulation according to an embodiment of the present invention, and a result of the experiment in group 1 can be obtained from fig. 6 and 7. As can be seen from fig. 6, as the number of service requests increases, the number of instances deployed by the 7 nodes with the largest weight (weighted group) is smaller than that of randomly selected 7 nodes (random group), which indicates that the weighted group can reuse more VNF instances and consume less computing resources. As can be seen from fig. 7, as the number of service requests increases, the maximum frequency slot number of the weight group is smaller than that of the random group, which means that the weight group uses less bandwidth resources. Therefore, the weighted set performs better than the random set on two optimization targets in a comprehensive way, and proves that the proposed node topology weight has influence on experimental results.
Referring to fig. 8 and 9, fig. 8 is a schematic diagram illustrating a comparison between VNF numbers of virtual network functions deployed in a network and service request numbers, the VNF numbers being obtained by five different proportions of node weights in simulation provided by an embodiment of the present invention, and fig. 9 is a schematic diagram illustrating a comparison between maximum frequency slot numbers obtained by five different proportions of node weights in simulation provided by an embodiment of the present invention and service request numbers, and results of a group 2 experiment can be obtained from fig. 8 and 9. As can be seen from fig. 8, as the number of service requests increases, α 1 The larger, the more virtual network function VNF instances are deployed, which illustrates a 1 Is smallerMore VNF instances can be reused. As can be seen from fig. 9, as the number of service requests increases, α 1 The larger the maximum frequency slot number, the smaller this indicates a 1 Larger uses less link bandwidth resources. According to the normalization formula of the node weights, the node topology weights and the node service request weights respectively have different influences on the use of the node resources and the bandwidth resources, and the normalization proportion of the two node weights can be adjusted according to different strategies aiming at different resource limitations.
Referring to fig. 10, fig. 10 is a schematic diagram illustrating a comparison between a service request throughput rate obtained by two resource allocation methods in a simulation and a total amount of computing resources in a network according to an embodiment of the present invention, and a result of a group 3 experiment can be obtained from fig. 10. As can be seen from fig. 10, when the network resources are allocated to the server after the nodes are selected, the weighted allocation can complete the service for all requests when the total amount of the network computing resources is 16000 units, and the passing rate of the equally allocated experimental group is only 89%. The experimental group with the equal resource allocation can make the service request passing rate reach 100% when the total network computing resource amount is 18500 units, and 15.6% of the resource amount is additionally used compared with the case of weighted allocation. Therefore, the acceptance rate can be obviously improved and the network cost can be reduced by weighting and distributing the network resources according to the node weight.
Referring to fig. 11, 12, and 13, fig. 11 is a schematic diagram illustrating a comparison between VNF numbers of virtual network functions deployed in a network and obtained by two algorithms in simulation according to an embodiment of the present invention and a change of a number of service requests, fig. 12 is a schematic diagram illustrating a comparison between maximum frequency slot numbers obtained by two algorithms in simulation according to an embodiment of the present invention and a change of a number of service requests, fig. 13 is a schematic diagram illustrating a comparison between a difference between maximum frequency slot numbers obtained by two algorithms in simulation according to an embodiment of the present invention and a change of a number of service requests, and a result of a 4 th group of experiments can be obtained from fig. 11, 12, and 13. As can be seen from fig. 11, as the number of service requests increases, the number of instances deployed by the NUAM is greater than that of the CCMA, which indicates that the performance is poor in terms of consumption of the node computing resources. As can be seen from fig. 12, as the number of service requests increases, the maximum frequency slot number of the NUAM experimental group is smaller compared to CCMA, and less link bandwidth resources are used. Because the NUAM adds an extra constraint condition on the basis of the CCMA, the NUAM in the prediction of the invention can obtain poor results in two aspects, and a guess is provided for explaining the unexpected result of the NUAM. The invention considers that the reason for the reduction of the maximum frequency slot number may be due to the limitation of the computing resource capacity of the servers in the network, so that a large number of virtual network function VNF instances cannot be reused on fixed servers, thereby avoiding the excessive concentration of the service function chain SFC, distributing the network traffic more evenly in the whole network, and avoiding the excessive bandwidth resources used by some links. As can be seen from FIG. 13, the difference between the maximum frequency slot numbers of the NUAM experimental group is smaller than that of the CCMA experimental group, which proves the correctness of the guess of the invention. Therefore, the NUAM has some disadvantages in the use of the node computing resources under the condition of being more practical compared with the CCMA, and the consumption of bandwidth resources is obviously reduced, thereby proving the effectiveness of the invention.
To sum up, the SFC mapping method based on node importance and user requirement dual awareness provided in this embodiment respectively adopts a method of selecting a service deployment path, a method of mapping a dependent virtual network function VNF pair, and a method of mapping remaining virtual network functions VNF, and specifically: calculating the importance weight of each physical network node according to the distribution of the nodes in the physical network topology and user requirement weighting, and selecting one of the paths with the lowest first k hops between the service source node and the destination node, which can reuse the most virtual network function VNF, as a service deployment path; on the premise of meeting the dependency relationship among the virtual network function VNFs, mapping the virtual network function VNFs with reduced bandwidth use to the front end of the selected path as much as possible and mapping the virtual network function VNFs with increased bandwidth use to the tail end of the selected path as much as possible according to the bandwidth change factors of the virtual network function VNFs; frequency slots are respectively allocated to virtual links on the first k paths with the minimum hop number between nodes where virtual network functions VNFs at two ends of the virtual links are located, and one path which enables the maximum frequency slot number in the network to be increased at the minimum is selected as a virtual link mapping path; the embodiment respectively adopts the node topology weight method based on node betweenness centrality design and the node importance obtained by node service weight weighting calculation based on user requirement calculation, and overcomes the problems of low service availability, high cost, low service efficiency and the like generated when the service request of a user is completed in a network function virtualization scene in the prior art, so that the method has the advantages of high service efficiency and low cost in the network function virtualization scene; the method provided by the embodiment can effectively deploy the service function chain SFC facing the user requirement in the elastic optical network, and more efficiently provide the service for the user.
The foregoing is a more detailed description of the invention in connection with specific preferred embodiments and it is not intended that the invention be limited to these specific details. For those skilled in the art to which the invention pertains, several simple deductions or substitutions can be made without departing from the spirit of the invention, and all shall be considered as belonging to the protection scope of the invention.

Claims (7)

1. An SFC mapping method based on node importance and user demand dual perception is characterized by comprising the following steps:
s1, physical network information and user service request information are obtained, wherein the physical network information comprises an existing Virtual Network Function (VNF) set, the user service request information comprises a service request Virtual Network Function (VNF) set, and the service request Virtual Network Function (VNF) set comprises a dependency Virtual Network Function (VNF) pair and a non-dependency Virtual Network Function (VNF);
s2, preprocessing the physical network information;
s3, preprocessing the user service request information;
s4, selecting a service deployment path of the service to be processed;
s5, mapping a dependency Virtual Network Function (VNF) pair in the VNF set of the service request according to the service deployment path of the service to be processed;
s6, mapping a non-dependency virtual network function VNF in the service request VNF set according to the service deployment path of the service to be processed;
s7, mapping according to the mapping condition of the service request virtual network function VNF set to obtain each virtual link corresponding to user service request information so as to realize SFC mapping;
s2, the preprocessing of the physical network information comprises the following steps:
s2.1, screening all nodes connected with an x86 architecture server from the nodes of the physical network, and taking all the nodes as an existing Virtual Network Function (VNF) set in the physical network information;
s2.2, calculating front K shortest paths between every two nodes in the physical network by adopting a front K shortest path algorithm, wherein K is more than or equal to 0 and is less than or equal to K, and K is an integer more than 0;
s2.3, traversing all shortest circuits obtained through calculation, calculating the topological weight of each node according to a node topological weight calculation equation, and recording the topological weight of each node;
the calculation equation of the node topology weight in S2.3 is expressed as:
Figure FDA0004056610500000011
where m denotes the current mth node, w topo,m Representing the calculated topological weight, w, of the mth node 0,m Denotes the initial weight, k, of the mth node set before calculation s,d Representing the shortest-circuit number k, p with the same hop count from the source node s to the destination node d in the user service request message m s,d Representing a Boolean variable, v m E.g. V represents any node on the path from the source node s to the destination node d, V represents the set of all nodes of the path from the source node s to the destination node d, then p m s,d Is 1, otherwise p m s,d Is 0.
2. The SFC mapping method based on node importance and user demand dual awareness as claimed in claim 1, wherein the preprocessing of the user service request information by S3 comprises:
s3.1, traversing all service request information, recording source node and destination node information in each service request information, calculating the proportion of each node according to a node service weight calculation equation and obtaining the service weight of each node;
s3.2, carrying out weighted calculation on the service weight of each node and the topology weight of each node to obtain the weight of each node in a physical network;
and S3.3, sequencing all services according to the weight of each node in the physical network, and placing the service request information containing the dependency virtual network function VNF in the front and preferentially deploying in the physical network.
3. The SFC mapping method based on node importance and user demand dual awareness as claimed in claim 2, wherein the node service weight calculation equation in S3.1 is expressed as:
Figure FDA0004056610500000021
wherein, w req,m Representing the calculated traffic weight of the mth node,
Figure FDA0004056610500000022
representing a Boolean variable, v in the ith service request m E.v denotes the slave source node s i To destination node d i Any node on the path of (4), then->
Figure FDA0004056610500000023
Is 1, otherwise->
Figure FDA0004056610500000024
Is 0.
4. The SFC mapping method based on node importance and user requirement dual awareness of claim 1, wherein the S4 selecting the service deployment path of the service to be processed comprises:
s4.1, selecting front K shortest paths between a service source and a host node from front K shortest paths between every two nodes in a physical network as candidate paths;
s4.2, respectively calculating the intersection of the existing virtual network function VNF set and the service request virtual network function VNF set on each candidate path;
and S4.3, selecting the candidate path corresponding to the maximum intersection as a service deployment path.
5. The SFC mapping method based on node importance and user demand dual awareness as claimed in claim 1, wherein S5 mapping the dependent virtual network function VNF pairs in the service request virtual network function VNF set according to the service deployment path of the service to be processed comprises:
s5.1, randomly selecting one dependency virtual network function VNF pair from the service request virtual network function VNF set, and deleting the selected dependency virtual network function VNF pair from the service request virtual network function VNF set;
s5.2, judging whether two known virtual network functions VNF in the dependency virtual network function VNF pair exist on the service deployment path, if so, executing S5.3, otherwise, executing S5.4;
s5.3, mapping the selected dependency virtual network function VNF pair on the service deployment path by using a mapping method of reusing at most two dependency virtual network function VNF pairs, and executing S5.7;
s5.4, judging whether only one virtual network function VNF in the dependency virtual network function VNF pair exists on the service deployment path, if yes, executing S5.5, and if not, executing S5.6;
s5.5, using a mapping method of the most reused dependency virtual network function VNF pairs, mapping the selected dependency virtual network function VNF pairs on the service deployment path, and executing S5.7;
s5.6, mapping the selected dependence virtual network function VNF pair on the service deployment path by using a mapping method of the dependence virtual network function VNF pair which cannot be reused;
and S5.7, judging whether at least one dependency virtual network function VNF pair still exists in the service request virtual network function VNF set, if so, executing S5.1, otherwise, completing the mapping of all dependency virtual network function VNF pairs in the service request virtual network function VNF set, and executing S6.
6. The SFC mapping method based on node importance and user demand dual awareness as claimed in claim 1, wherein S6 mapping the non-dependency virtual network functions VNFs in the service request virtual network function VNF set according to the service deployment path of the service to be processed comprises:
s6.1, randomly selecting one non-dependency virtual network function VNF from the service request virtual network function VNF set, judging whether the selected non-dependency virtual network function VNF exists on the service deployment path, if so, executing S6.2, otherwise, executing S6.3;
s6.2, mapping the selected non-dependency virtual network function VNF to a server node of the selected non-dependency virtual network function VNF on the service deployment path, reusing the selected non-dependency virtual network function VNF, and executing S6.4;
s6.3, if the bandwidth change factor of the selected non-dependency virtual network function VNF is smaller than or equal to 1, mapping the selected non-dependency virtual network function VNF to the server node closest to the front end of the path, otherwise, mapping the selected non-dependency virtual network function VNF to the server node closest to the tail end of the path;
and S6.4, judging whether the service request virtual network function VNF set is empty, if so, completing the mapping of all the non-dependency virtual network function VNFs, and executing S7, otherwise, executing S6.1.
7. The SFC mapping method based on node importance and user demand dual awareness as claimed in claim 2, wherein S7 maps each virtual link corresponding to user service request information according to the mapping condition of the service request virtual network function VNF set to realize SFC mapping, comprising:
s7.1, randomly selecting a virtual link from a virtual link set to be mapped, judging whether service request Virtual Network Functions (VNFs) at two ends of the currently selected virtual link are mapped to the same node, if so, executing S7.2, otherwise, executing S7.3;
s7.2, executing S7.5 without mapping the currently selected virtual link;
s7.3, judging whether the currently selected virtual link is a first virtual link, if so, giving out the frequency slot number on the currently selected virtual link by the service request information, otherwise, multiplying the frequency slot number on the currently selected virtual link by the frequency slot number on the previously selected virtual link by a bandwidth change factor of a virtual network function VNF in the currently selected virtual link initial end service request information;
s7.4, the service request virtual network function VNFs at two ends of the currently selected virtual link map the first k shortest paths between the two nodes to serve as a candidate path set, frequency slots are distributed to the currently selected virtual link on each candidate path by using a first-time hit algorithm to obtain k routes and spectrum distribution schemes, one route and spectrum distribution scheme which enables the maximum frequency slot number to be increased to the minimum is selected, and the currently selected virtual link is mapped;
s7.5, judging whether all the virtual links in the virtual link set to be mapped are completely mapped, if so, executing S7.6, otherwise, executing S7.1;
s7.6, completing the mapping of all the virtual links corresponding to the current service request message so as to realize SFC mapping.
CN202110287756.9A 2021-03-17 2021-03-17 SFC mapping method based on node importance and user demand dual perception Active CN113032096B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110287756.9A CN113032096B (en) 2021-03-17 2021-03-17 SFC mapping method based on node importance and user demand dual perception

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110287756.9A CN113032096B (en) 2021-03-17 2021-03-17 SFC mapping method based on node importance and user demand dual perception

Publications (2)

Publication Number Publication Date
CN113032096A CN113032096A (en) 2021-06-25
CN113032096B true CN113032096B (en) 2023-03-31

Family

ID=76471764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110287756.9A Active CN113032096B (en) 2021-03-17 2021-03-17 SFC mapping method based on node importance and user demand dual perception

Country Status (1)

Country Link
CN (1) CN113032096B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115603850A (en) * 2021-06-28 2023-01-13 中兴通讯股份有限公司(Cn) Virtual network optimization method and device and computer storage medium
CN113965616B (en) * 2021-09-16 2022-11-11 西安电子科技大学 SFC mapping method based on VNF resource change matrix
CN114205317B (en) * 2021-10-21 2023-07-21 北京邮电大学 SDN and NFV-based service function chain SFC resource allocation method and electronic equipment
CN114650225B (en) * 2022-03-14 2023-04-18 西安电子科技大学 Service function chain SFC mapping method based on particle swarm optimization algorithm

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015118875A1 (en) * 2014-02-06 2015-08-13 日本電気株式会社 Optimal arrangement method for virtual network function, network control device, network management device, and network system
CN107332913A (en) * 2017-07-04 2017-11-07 电子科技大学 A kind of Optimization deployment method of service function chain in 5G mobile networks
CN108243066A (en) * 2018-01-23 2018-07-03 电子科技大学 The network service request dispositions method of low latency
CN108494596A (en) * 2018-03-23 2018-09-04 西安电子科技大学 The cooperating type structure relied between multiple VNF and mapping SFC methods
CN108600019A (en) * 2018-04-28 2018-09-28 电子科技大学 a kind of network service function chain mapping method
CN110134493A (en) * 2019-05-05 2019-08-16 西安邮电大学 A kind of service function chain Deployment Algorithm avoided based on resource fragmentation
CN110446121A (en) * 2019-04-07 2019-11-12 西安电子科技大学 Virtual network function service chaining mapping method based on betweenness center degree
CN111327708A (en) * 2020-03-10 2020-06-23 公安部第三研究所 Optical network virtual mapping method based on topology perception

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10985990B2 (en) * 2015-09-15 2021-04-20 Huawei Technologies Co., Ltd. Software defined topology (SDT) for user plane
US10666516B2 (en) * 2016-04-04 2020-05-26 Avago Technologies International Sales Pte. Limited Constraint-based virtual network function placement
US10680898B2 (en) * 2018-03-06 2020-06-09 At&T Intellectual Property I, L.P. Mini-cloud deployment system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015118875A1 (en) * 2014-02-06 2015-08-13 日本電気株式会社 Optimal arrangement method for virtual network function, network control device, network management device, and network system
CN107332913A (en) * 2017-07-04 2017-11-07 电子科技大学 A kind of Optimization deployment method of service function chain in 5G mobile networks
CN108243066A (en) * 2018-01-23 2018-07-03 电子科技大学 The network service request dispositions method of low latency
CN108494596A (en) * 2018-03-23 2018-09-04 西安电子科技大学 The cooperating type structure relied between multiple VNF and mapping SFC methods
CN108600019A (en) * 2018-04-28 2018-09-28 电子科技大学 a kind of network service function chain mapping method
CN110446121A (en) * 2019-04-07 2019-11-12 西安电子科技大学 Virtual network function service chaining mapping method based on betweenness center degree
CN110134493A (en) * 2019-05-05 2019-08-16 西安邮电大学 A kind of service function chain Deployment Algorithm avoided based on resource fragmentation
CN111327708A (en) * 2020-03-10 2020-06-23 公安部第三研究所 Optical network virtual mapping method based on topology perception

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Leveraging mixed-strategy gaming to realize incentive-driven VNF service chain provisioning in broker-based elastic optical inter-datacenter networks;Xiaoliang Chen ET AL;《Journal of Optical Communications and Networking 》;20180216;第10卷(第2期);全文 *
Traffic aware placement of interdependent NFV middleboxes;Wenrui Ma ET AL;《 IEEE INFOCOM 2017 - IEEE Conference on Computer Communications》;20171005;全文 *
VNF-P: A model for efficient placement of virtualized network functions;Hendrik Moens ET AL;《10th International Conference on Network and Service Management (CNSM) and Workshop》;20150119;全文 *
一种负载均衡的虚拟光网络映射算法;徐展琦等;《西安电子科技大学学报》;20171231(第05期);全文 *

Also Published As

Publication number Publication date
CN113032096A (en) 2021-06-25

Similar Documents

Publication Publication Date Title
CN113032096B (en) SFC mapping method based on node importance and user demand dual perception
CN108494596B (en) Collaborative construction and SFC (Small form-factor computing) mapping method for dependency among multiple VNFs (virtual network configuration functions)
Woldeyohannes et al. ClusPR: Balancing multiple objectives at scale for NFV resource allocation
Fischer et al. ALEVIN-a framework to develop, compare, and analyze virtual network embedding algorithms
CN113315700A (en) Computing resource scheduling method, device and storage medium
CN113810205B (en) Service computing power information reporting and receiving method, server and data center gateway
JP2013168934A (en) Load-balancing device and load-balancing method
US10356185B2 (en) Optimal dynamic cloud network control
Gvozdiev et al. On low-latency-capable topologies, and their impact on the design of intra-domain routing
Fajjari et al. Adaptive-VNE: A flexible resource allocation for virtual network embedding algorithm
CN111245722B (en) SDN data center network flow forwarding method based on genetic algorithm
CN111162865A (en) Virtual optical network mapping method for sensing fragments in space division multiplexing elastic optical network
Riggio et al. Progressive virtual topology embedding in openflow networks
Hsu et al. Virtual network mapping algorithm in the cloud infrastructure
CN113300861B (en) Network slice configuration method, device and storage medium
CN117119043A (en) Micro-service deployment method for edge network topology perception
Cheng et al. Application-aware routing scheme for sdn-based cloud datacenters
Wang et al. URBM: user-rank-based management of flows in data center networks through SDN
CN113965616B (en) SFC mapping method based on VNF resource change matrix
Shuai et al. A cost-based distributed algorithm for load balancing in content delivery network
Fajjari et al. Novel adaptive virtual network embedding algorithm for Cloud’s private backbone network
CN108174446A (en) The network node link circuit resource combined distributing method that a kind of resource occupation degree minimizes
JP2009212881A (en) Data parallel distribution method, system and program
Lu et al. Distributed parallel vn embedding based on genetic algorithm
Fajjari et al. An optimised dynamic resource allocation algorithm for Cloud's backbone network

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