A backup method for service function chain
By decomposing the service function chain into multiple segmented function chains and designing backup paths, the problem of failure recovery and fault tolerance in heterogeneous concurrent failures is solved, and fast fault recovery and high fault tolerance are achieved.
Patent Information
- Application Number
- CN202411774461.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2044-12-05
AI Technical Summary
The prior art is difficult to effectively solve the problems of fault recovery and fault tolerance in heterogeneous concurrent faults, resulting in high delay in fault recovery and limited fault tolerance.
A backup method for the service function chain is proposed, and the service function chain is broken down into multiple segmented functional chains through segmented methods, and a corresponding backup path is designed for each segmented functional chain to ensure that it can quickly switch to the backup chain when a failure occurs and maintain business continuity.
It realizes rapid failure recovery when heterogeneous concurrent failure occurs, meets the low latency requirements of business recovery, enhances fault tolerance, and reduces backup overhead and rejection rate.
Smart Images

Figure CN119254691B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network configuration management, and in particular to a service function chain backup method. Background Art
[0002] Network Function Virtualization (NFV) technology virtualizes the functions of traditional hardware network devices into software modules and deploys them on standardized computing, storage and network resources; then, according to the network service request (NSR), multiple service functions (SF) are linked in a specific order to form a service function chain (SFC), which is deployed to the physical network (PN) to form a service function path (SFP), thereby providing a series of processing for user data. NFV can effectively improve the utilization of network resources and promote the sharing of underlying infrastructure resources, thereby realizing a more dynamic and service-aware network.
[0003] However, the dynamism and flexibility brought by virtualization also introduce challenges in security and management. In actual operation, the probability of network failure increases significantly. The basic types of failures include:
[0004] 1. Node failure
[0005] Node failure refers to the failure of the physical node where a service function in the service function chain is located. Since the service functions of the service function chain are connected in series, and the output of each node is the input of the next node, the failure of a node may cause the entire service function chain to be interrupted or the performance to degrade; secondly, when a node in the service function chain fails, it cannot continue to process the traffic transmitted through the link, which may cause traffic loss, increased latency, or service request failure.
[0006] 2. Link Failure
[0007] Link failure refers to the failure of the physical or logical link between the physical nodes where two or more service functions in the service function chain are located, resulting in the link being unable to transmit traffic or the service function chain being interrupted. Link failure will directly affect the nodes and traffic transmission on both sides of the faulty link in the service function chain.
[0008] 3. Service function failure
[0009] A service function failure refers to a situation where a service function in the service function chain fails to perform its duties as expected. This will cause the performance of the affected service function in the service function chain to degrade or become unavailable, and directly affect the overall service availability and user experience.
[0010] Therefore, it is necessary to establish a backup to ensure that when the main chain fails or needs to be upgraded and maintained, it can quickly switch to the backup node or link to ensure service continuity and reliability. Specifically, corresponding to the above failure types, the existing backups mainly include:
[0011] 1. Node backup
[0012] Node backup is used to ensure that services can be quickly restored when the main node or service function fails. Node backup usually consists of two parts: the main node and the backup node. The main node is the node that processes service requests under normal circumstances. It is responsible for actually executing service functions, processing input requests and generating corresponding outputs; the backup node is a standby node set up to prevent the main node from failing. Once a main node failure is detected, the backup node will take over the service to ensure that the switching process can be completed quickly and reliably, minimizing service interruption time.
[0013] 2. Path backup
[0014] Path backup usually involves setting up a backup path in a network or data transmission path so that it can be quickly switched when the primary path fails or performance degrades, thereby maintaining service continuity and quality. The primary path is the path for service data transmission or communication under normal circumstances. It is usually the optimal path with sufficient bandwidth to ensure efficient operation of the service; the backup path is an alternative path set up to deal with failures or temporary performance degradation of the primary path. The backup path can be a physical backup network link, a virtual logical routing change, or other complementary transmission paths.
[0015] 3. Service Function Instance Backup
[0016] Service function instance backup refers to the regular replication of running service instances so that new instances can be quickly restored or deployed when needed. Service function instance backup is usually performed in the form of snapshots or images.
[0017] The existing NFV fault management follows the principle of "layer-by-layer association and classification management", classifies faults according to their nature and impact, and applies corresponding management strategies. Furthermore, when facing the service function chain, it mainly implements classification management for components of the same type, such as service function instances, physical nodes, links, etc., and realizes complete backup of the service function chain by sequentially building and deploying.
[0018] However, it should be noted that most of the existing backup methods use dedicated backup, based on the idea of exclusive resources or given reliability performance indicators, and are heavily dependent on sufficient computing power, network resources or pre-given parameters. The limited nature of resources may limit the deployment of backups, resulting in a decrease in the acceptance rate of backup requests. Therefore, the current research direction mainly focuses on how to reduce resource overhead. For example, some studies have proposed VNF selection methods based on the reliability improvement value per unit overhead to accurately represent the reliability benefits obtained by the backup VNF unit overhead, and reduce resource overhead by selecting appropriate backup strategies; some studies have improved the placement strategy between adjacent backup instances through joint backup methods to reduce bandwidth resource overhead.
[0019] Therefore, the existing backup methods are mainly aimed at homogeneous fault tolerance. The so-called homogeneous faults are faults caused by the same or similar reasons for the same type of service function components. With the complexity of the network and the continuous upgrading of network attack methods, the probability of heterogeneous concurrent faults has increased significantly. The heterogeneous concurrent faults are different types of faults that occur at the same time or almost at the same time. When facing heterogeneous concurrent faults, the existing backup methods are often not directly compatible with the fault tolerance mechanisms of different service function components, and the integration strength is lacking. Therefore, the real-time performance of fault recovery and fault tolerance mechanisms is poor, and the fault tolerance capability is limited. However, the current research on heterogeneous fault tolerance is still in the active exploration stage. In the actual operation process, the existing backup methods are mainly used for heterogeneous concurrent faults, and the impact of single point failures is avoided by introducing redundant paths, such as multi-path routing and network load balancers; a service function chain deployment method based on heterogeneous backup is designed to improve the anti-attack capability of the service function chain. Summary of the invention
[0020] The technical problem to be solved by the present invention is to propose a backup method for a service function chain, which can meet the low latency requirement of business recovery for heterogeneous concurrent failures and has strong fault tolerance.
[0021] The technical solution adopted by the present invention to solve the above technical problems is:
[0022] A method for backing up a service function chain comprises the following steps:
[0023] A1. Obtain the main chain, which is a service function chain deployed in the physical network;
[0024] A2. Segment the service function chain corresponding to the main chain obtained in step A1 to obtain a segmentation scheme for the service function chain corresponding to the main chain. Segment the service function chain by first determining, based on the segmentation strategy, some service functions included in the service function chain as breakpoints. Then, based on the breakpoints, decompose the complete service function chain into a group of segmented function chains to form a segmentation scheme based on the segmentation strategy.
[0025] A3. For each segment function chain included in each segment solution, respectively:
[0026] Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the segmented function chain that meets the backup deployment requirements is constructed; the backup chain of the segmented function chain includes all the service functions included in the segmented function chain;
[0027] A4. If the backup chains of the segmentation function chains included in the segmentation scheme are all successfully constructed, the segmentation scheme is an implementable segmentation scheme; if the number of implementable segmentation schemes is greater than or equal to one, execute step A5;
[0028] Otherwise, first, based on the update strategy of the segmentation strategy, a new breakpoint is added; then, based on the new breakpoint, the segmentation scheme of the segmentation strategy is updated, and the updated segmentation scheme is used as input, and the process returns to step A3;
[0029] A5. If the number of feasible segmentation schemes is one, then it is used as the final segmentation scheme; if the number of feasible segmentation schemes is greater than one, the resource overhead of each feasible segmentation scheme is calculated respectively, and the feasible segmentation scheme with the smallest resource overhead is used as the final segmentation scheme;
[0030] The resource cost of the feasible segmentation scheme is calculated by first using the backup chains of each segmentation function chain contained therein to splice the backup chain of the main chain according to the execution order of the service functions contained in the service function chain corresponding to the main chain; then, the resource cost of the backup chain of the constructed main chain deployed in the physical network is calculated as the resource cost of the feasible segmentation scheme;
[0031] A6. Based on the backup chains of each segmented function chain included in the final segmentation plan, the backup chain of the main chain is spliced according to the execution order of the service functions included in the service function chain corresponding to the main chain; the deployment strategy of the backup chain of the constructed main chain in the physical network is used as the backup plan of the main chain;
[0032] A7. Back up the main chain based on the main chain backup solution;
[0033] The backup deployment requirements include resource constraints, execution order constraints and disjoint constraints;
[0034] The resource constraint is: the remaining resources of the physical nodes deployed by each service function included in the backup chain should meet the resource requirements of the corresponding service function in the service function chain corresponding to the main chain;
[0035] The execution order constraint is: the execution order of each service function included in the backup chain should be consistent with the execution order of the corresponding service function in the service function chain corresponding to the main chain;
[0036] The non-intersection constraint is that the physical nodes deployed by each service function included in the backup chain and the links formed by them do not have an intersection with the physical nodes deployed by each service function included in the service function chain corresponding to the main chain and the links formed by them.
[0037] Furthermore, the backup deployment requirements also include security constraints;
[0038] The safety constraint is that the sum of the safety factors of the service functions included in the backup chain should be greater than or equal to the sum of the safety factors of the corresponding service functions in the service function chain corresponding to the main chain.
[0039] Furthermore, the safety factor is calculated according to the following formula:
[0040] SG i =(AH i / max(AH)+NV i / max(NV)+S i / max(S)) / 3
[0041] in, AH i Indicates i The historical number of physical nodes deployed by each service function that have been attacked, NV i Indicates i The number of vulnerabilities of the physical nodes deployed by each service function, S i Indicates i The default security of each service function; max(AH) Indicates the maximum number of attacks on each physical node in the physical network. max(NV) Indicates the maximum number of vulnerabilities of each physical node in the physical network, max(S) Represents the maximum preset security of each service function deployed in the physical network.
[0042] Furthermore, the segmentation strategy includes one or more of a sequence strategy, an importance point strategy, and an importance chain strategy;
[0043] The sequence strategy determines the breakpoint based on the execution order of the service functions contained in the service function chain corresponding to the main chain;
[0044] The importance point strategy determines the breakpoint based on the importance ranking of the service functions contained in the service function chain corresponding to the main chain and / or the physical nodes on which they are deployed; the importance chain strategy determines the breakpoint based on the importance ranking of the links between the physical nodes on which the service functions contained in the service function chain corresponding to the main chain are deployed.
[0045] Further, the segmentation strategy also includes a history strategy based on a shared segmentation library;
[0046] Step A2 includes:
[0047] A21. Segmentation based on historical strategies:
[0048] Determine whether there is a segment function chain included in the service function chain corresponding to the main chain obtained in step A1 in the shared segment library; if so, extract each included segment function chain to extract all the obtained segment function chains or the segment function chain containing the largest number of service functions, and construct a segment scheme; otherwise, directly execute step A22;
[0049] A22. Segmentation is performed based on other segmentation strategies;
[0050] A23, merging the segmentation scheme obtained based on the historical strategy and the segmentation scheme obtained based on other segmentation strategies to obtain the segmentation scheme input into step A3;
[0051] In step A6, the shared segment library is updated based on the segment function chain included in the final segment solution.
[0052] Furthermore, the sequential strategy is: in step A1, the remaining service functions except the first, second, N-1th and Nth service functions included in the service function chain corresponding to the main chain are obtained as breakpoints, and segmentation schemes are constructed respectively; N is the number of service functions included in the service function chain corresponding to the main chain;
[0053] The update strategy of the sequential strategy is:
[0054] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0055] For the segmented function chain that has not successfully built a backup chain, if M>2, the remaining service functions except the first and Mth service functions included in it are used as new breakpoints to update the segmentation plan; otherwise, the segmented function chain is constructed with the service functions included in it to update the segmentation plan; M is the number of service functions included in the segmented function chain.
[0056] Further, the segmentation strategy includes an importance point strategy and / or an importance chain strategy;
[0057] The importance point strategy determines the service function as the breakpoint based on the importance ranking of the physical nodes where the service function is deployed; the importance chain strategy uses the sum of the importance of the two physical nodes where the adjacent service functions are deployed as the importance of the chain, and determines the service function as the breakpoint based on the importance ranking of the chain;
[0058] The importance of the physical node where the service function is deployed is calculated based on the centrality of the physical node where the service function is deployed in the physical network, including:
[0059] First, build an undirected graph based on the physical network G(V,E,F) ,in, V Represents a physical node, E Indicates the physical link. F Indicates the service function;
[0060] Then, using the undirected graph G(V,E,F) , respectively calculate the betweenness centrality, closeness centrality, degree centrality and bandwidth load rate of the physical nodes deployed by each service function contained in the service function chain corresponding to the main chain obtained in step A1;
[0061] Afterwards, the importance of the physical nodes where each service function is deployed contained in the service function chain corresponding to the main chain obtained in step A1 is calculated according to the following formulas:
[0062] BPPV i =(BC i + DC i + CC i ) / (R bwi / T bwi )
[0063] in, BC i Indicates i The betweenness centrality of the physical nodes where the service functions are deployed, DC i Indicates i The proximity of the physical nodes where the service functions are deployed, CC i Indicates i The degree centrality of the physical nodes where the service functions are deployed, R bwi Indicates i The sum of the remaining bandwidth of all links of the physical nodes where the service functions are deployed, T bwi Indicates the i The sum of the total bandwidth of all links of the physical nodes where the service function is deployed.
[0064] Furthermore, the importance point strategy is: taking the service function deployed by the most important physical node as the breakpoint, constructing a segmentation scheme; the breakpoint belongs to the segmentation function chain that is executed first and / or later according to the execution order of the service function;
[0065] The update strategy of the importance point strategy is:
[0066] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0067] For the segmented function chain that has not successfully built a backup chain, if M>2, the service function deployed by the most important physical node it contains is used as a new breakpoint to update the segmentation plan to be updated; otherwise, the segmented function chains are constructed separately with the service functions it contains to implement the update of the segmentation plan; M is the number of service functions contained in the segmented function chain.
[0068] Furthermore, the importance chain strategy is: taking the service functions deployed by the most important physical nodes at both ends of the chain as breakpoints, a segmentation scheme is constructed;
[0069] The update strategy of the importance chain strategy is:
[0070] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0071] For the segmented function chain that has not successfully built a backup chain, if M>2, the service functions deployed by the most important physical nodes at both ends of the chain are used as new breakpoints to update the segmented plan to be updated; otherwise, the segmented function chains are constructed separately with the service functions they contain to achieve the update of the segmented plan; M is the number of service functions contained in the segmented function chain.
[0072] Furthermore, between steps A1 and A2, the method further includes:
[0073] B. Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the main chain that meets the backup deployment requirements is constructed; the backup chain of the main chain includes all service functions included in the service function chain corresponding to the main chain;
[0074] If the backup chain of the main chain is successfully built and the number is one, its deployment strategy in the physical network is used as the backup plan of the main chain, and step A7 is executed;
[0075] If the backup chains of the main chain are successfully constructed and the number is greater than one, the resource overhead of deploying the backup chains of each successfully constructed main chain in the physical network is calculated respectively; the deployment strategy of the backup chain of the main chain with the smallest resource overhead in the physical network is used as the backup plan of the main chain, and step A7 is executed;
[0076] Otherwise, go to step A2.
[0077] Furthermore, in step A4, if the number of segmentation iteration rounds is greater than the set number, the segmentation is terminated and the following steps are performed:
[0078] C1. If there is a segmented function chain with a successfully built backup chain, select the segmented function chain with the largest number of service functions and greater than or equal to 2 as the optional segmented function chain; if there are multiple optional segmented function chains, use the optional segmented function chain with the smallest resource overhead deployed on the physical network as the basic segmented function chain; otherwise, execute step C3;
[0079] C2, the service functions in the service function chain corresponding to the main chain, except for the service functions included in the basic segment function chain, are respectively formed into segment function chains; the segment function chain formed by the basic segment function chain and the service functions other than the basic segment function chain is used to construct a segmentation scheme and return to step A3;
[0080] C3. Each service function contained in the service function chain corresponding to the main chain is formed into a segmented function chain, a segmentation plan is constructed and the process returns to step A3.
[0081] The beneficial effects of the present invention are:
[0082] The backup method of the present invention introduces a segmentation method, and segments the service function chain by selecting appropriate breakpoints, and designs corresponding backup paths for each cut segment. The backup chain of the segmented function chain includes the service function instance and its deployed physical nodes and links, ensuring that when any component in the segment fails randomly, the business traffic can be quickly switched to the segmented backup chain to maintain business continuity. In this process, the deployment of the backup chain also considers the node non-intersection and link non-intersection with the main chain working path to ensure that it can quickly switch to the segmented backup chain. By establishing a backup chain of the segmented function chain, and on the basis of the backup chains of each segmented function chain, a backup chain of the entire service function chain is spliced. Therefore, when heterogeneous concurrent failures occur, whether concurrent failures occur in one segment or multiple segments, fault recovery can be quickly achieved to meet the low latency requirements for business recovery.
[0083] The backup chain of the segmented functional chain integrates the backup of each component it contains, avoiding the problem that the fault tolerance mechanisms of different service functional components cannot be directly compatible. At the same time, considering that different sub-segments may be composed of different types of edge devices, with different fault characteristics and fault tolerance requirements, the segmented fault tolerance method can also adapt better. Therefore, the method of the present invention can better adapt to the characteristics of heterogeneous concurrent faults, has strong fault tolerance, and is flexible.
[0084] Compared with the existing mainstream method, in which the service function chain is backed up between groups, the method of the present invention takes into account the resource overhead both in the segmentation and the whole, avoiding the link detour problem that may exist in the point backup. Under the same constraints, the present invention reduces the backup overhead; at the same time, since each segmented function chain is only a part of the service function chain, under the same constraints, the shorter the backup path, the easier it is to meet the constraints. Therefore, compared with backing up the entire service function chain, the segmentation method of the present invention can effectively reduce the backup rejection rate.
[0085] However, compared with the existing mainstream method, the service function chain is based on point backup between groups, and the segmentation method may still have the problem of backup request rejection. Therefore, in order to ensure the reception rate of segmented backup, the present invention proposes a variety of segmentation strategies in the selection of breakpoints. According to the actual business scenario needs, one or more segmentation methods can be used to obtain a variety of optional segmentation schemes to improve the reception rate of segmented backup. And creatively proposed, based on the centrality of the physical node deployed by the service function in the physical network, a method for determining the breakpoint.
[0086] Furthermore, the inventor believes that in the segmented backup method, the selection of breakpoints is strongly correlated with the physical nodes deployed by each service function in the service function chain. Among them, betweenness centrality quantifies the frequency of deploying each service function physical node as the shortest path bridge between the service origin and the destination. If a node is located on the shortest path of many service function paths, then the betweenness centrality of the node is high, indicating that the node plays an important bridge role and can control or influence the flow of information in the network. Closeness centrality measures the distance between this physical node and all other nodes in the network. Degree centrality measures the number of connections of a node in the network, and high degree centrality represents that the node has more direct connections in the network and is a key information disseminator or influencer. The values of these centrality indicators will overall weigh the influence and importance of physical nodes as breakpoints. At the same time, bandwidth represents the speed or capacity of information or resource flow in the network. In this case, using such a formula, the ratio of each centrality value of the node to the bandwidth of the network in which it is located reflects the importance or influence of the node relative to the entire network at a given information flow speed or capacity. At the same time, based on experimental verification, determining breakpoints based on centrality has a positive impact on reducing the backup rejection rate.
[0087] The method of the present invention is applicable to SFC backup in various scenarios, especially computing-network fusion services requiring high reliability, low latency, and massive deployment. BRIEF DESCRIPTION OF THE DRAWINGS
[0088] Figure 1 A schematic diagram of a flow chart of a method for backing up a service function chain according to an embodiment of the present invention;
[0089] Figure 2 This is the segmentation statistics of Experiment 1;
[0090] Figure 3 This is the segmentation statistics for Experiment 2;
[0091] Figure 4 This is the segmentation statistics for Experiment 3;
[0092] Figure 5 Statistics of average cost of Experiment 4;
[0093] Figure 6 This is the statistics of the backup success rate of Experiment 4;
[0094] Figure 7 Statistics of the average cost-performance ratio of Experiment 4;
[0095] Figure 8 Statistics of average cost of Experiment 5;
[0096] Fig. 9 This is the statistics of the backup success rate of Experiment 5;
[0097] Fig.10 Statistics of the average cost-performance ratio of Experiment 5;
[0098] Fig.11 Statistics of average cost of Experiment 6;
[0099] Fig.12 This is the statistics of the backup success rate of Experiment 6;
[0100] Fig.13 Statistics of the average cost-performance ratio of Experiment 6. DETAILED DESCRIPTION
[0101] The present invention aims to propose a backup method for a service function chain, design a corresponding backup path for each cut segment, establish a backup protection segment range, ensure that when any service function component in the segment fails randomly, the business traffic can be quickly switched to the backup segment to maintain business continuity, and implement backup of the service function chain, which can simultaneously cover the backup requirements of different service function components such as physical nodes, transmission links and service function instances, thereby enabling it to take into account the ultra-high reliability deployment requirements of services under the concurrent occurrence of multiple types and multiple numbers of faults, including the following steps:
[0102] A1. Obtain the main chain, which is a service function chain deployed in the physical network;
[0103] A2. Segment the service function chain corresponding to the main chain obtained in step A1 to obtain a segmentation scheme for the service function chain corresponding to the main chain. Segment the service function chain by first determining, based on the segmentation strategy, some service functions included in the service function chain as breakpoints. Then, based on the breakpoints, decompose the complete service function chain into a group of segmented function chains to form a segmentation scheme based on the segmentation strategy.
[0104] A3. For each segment function chain included in each segment solution, respectively:
[0105] Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the segmented function chain that meets the backup deployment requirements is constructed; the backup chain of the segmented function chain includes all the service functions included in the segmented function chain;
[0106] A4. If the backup chains of the segmentation function chains included in the segmentation scheme are all successfully constructed, the segmentation scheme is an implementable segmentation scheme; if the number of implementable segmentation schemes is greater than or equal to one, execute step A5;
[0107] Otherwise, first, based on the update strategy of the segmentation strategy, a new breakpoint is added; then, based on the new breakpoint, the segmentation scheme of the segmentation strategy is updated, and the updated segmentation scheme is used as input, and the process returns to step A3;
[0108] A5. If the number of feasible segmentation schemes is one, then it is used as the final segmentation scheme; if the number of feasible segmentation schemes is greater than one, the resource overhead of each feasible segmentation scheme is calculated respectively, and the feasible segmentation scheme with the smallest resource overhead is used as the final segmentation scheme;
[0109] The resource cost of the feasible segmentation scheme is calculated by first using the backup chains of each segmentation function chain contained therein to splice the backup chain of the main chain according to the execution order of the service functions contained in the service function chain corresponding to the main chain; then, the resource cost of the backup chain of the constructed main chain deployed in the physical network is calculated as the resource cost of the feasible segmentation scheme;
[0110] A6. Based on the backup chains of each segmented function chain included in the final segmentation plan, the backup chain of the main chain is spliced according to the execution order of the service functions included in the service function chain corresponding to the main chain; the deployment strategy of the backup chain of the constructed main chain in the physical network is used as the backup plan of the main chain;
[0111] A7. Back up the main chain based on the main chain backup solution;
[0112] The backup deployment requirements include resource constraints, execution order constraints and disjoint constraints;
[0113] The resource constraint is: the remaining resources of the physical nodes deployed by each service function included in the backup chain should meet the resource requirements of the corresponding service function in the service function chain corresponding to the main chain;
[0114] The execution order constraint is: the execution order of each service function included in the backup chain should be consistent with the execution order of the corresponding service function in the service function chain corresponding to the main chain;
[0115] The non-intersection constraint is that the physical nodes deployed by each service function included in the backup chain and the links formed by them do not have an intersection with the physical nodes deployed by each service function included in the service function chain corresponding to the main chain and the links formed by them.
[0116] In addition, considering the increase in failures caused by external factors such as network attacks in the existing network environment, the present invention further introduces security constraints in the backup deployment requirements. The security constraints are: the sum of the safety factors of each service function included in the backup chain should be greater than or equal to the sum of the safety factors of each service function in the service function chain corresponding to the main chain.
[0117] The safety factor can be calculated by any existing calculation method and test method. In the present invention, it is recommended that the safety factor is calculated according to the following formula:
[0118] SG i =(AH i / max(AH)+NV i / max(NV)+S i / max(S)) / 3
[0119] in, AH i Indicates i The historical number of physical nodes deployed by each service function that have been attacked, NV i Indicates i The number of vulnerabilities of the physical nodes deployed by each service function, S i Indicates i The default security of each service function; max(AH) Indicates the maximum number of attacks on each physical node in the physical network. max(NV) Indicates the maximum number of vulnerabilities of each physical node in the physical network, max(S) Represents the maximum preset security of each service function deployed in the physical network.
[0120] The calculation of the above safety factor comprehensively considers the security of the physical nodes and service functions themselves and the attack history of the physical nodes, and can easily obtain corresponding data through logs, vulnerability scanning results, and service function configuration files, with low calculation complexity.
[0121] However, compared with the existing mainstream method, the service function chain is based on point backup between groups, and the segmentation method may still have the problem of backup requests being rejected. Therefore, in order to ensure the reception rate of segmented backup, the present invention proposes a variety of segmentation strategies, including sequential strategy, importance point strategy and importance chain strategy. One or more of them can be adopted according to the actual business scenario needs to ensure the diversity of segmentation schemes; and when segmenting, each segmentation strategy can simultaneously determine multiple breakpoints in each round of segmentation, and each breakpoint corresponds to a segmentation scheme. The sequential strategy described below ensures that it is sufficient to select an implementable backup scheme through diversity.
[0122] The above sequence strategy determines the breakpoints based on the execution order of the service functions contained in the service function chain corresponding to the main chain.
[0123] In an exemplary embodiment, the sequential strategy is:
[0124] In step A1, the service functions included in the service function chain corresponding to the main chain are obtained, except for the first, second, N-1th and Nth service functions, which are respectively used as breakpoints, and segmentation schemes are respectively constructed; N is the number of service functions included in the service function chain corresponding to the main chain.
[0125] The update strategy of the sequential strategy is:
[0126] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0127] For the segmented function chain that has not successfully built a backup chain, if M>2, the remaining service functions except the first and Mth service functions included in it are used as new breakpoints to update the segmentation plan; otherwise, the segmented function chain is constructed with the service functions included in it to update the segmentation plan; M is the number of service functions included in the segmented function chain.
[0128] The above-mentioned importance point strategy determines the breakpoint based on the importance ranking of the service functions contained in the service function chain corresponding to the main chain and / or the physical nodes on which they are deployed; the above-mentioned importance chain strategy determines the breakpoint based on the importance ranking of the links between the physical nodes on which the service functions contained in the service function chain corresponding to the main chain are deployed.
[0129] In an exemplary scheme, the importance point strategy is: using the service function deployed by the most important physical node as the breakpoint to build a segmentation scheme; the breakpoint belongs to the segmentation function chain that is executed first and / or later in the execution order of the service function.
[0130] The update strategy of the importance point strategy is:
[0131] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0132] For the segmented function chain that has not successfully built a backup chain, if M>2, the service function deployed by the most important physical node is used as a new breakpoint to update the segmentation plan to be updated; otherwise, the service functions contained in the segmented function chain are used to update the segmentation plan; M is the number of service functions contained in the segmented function chain. In an exemplary scheme, the sum of the importance of the two physical nodes where the adjacent service functions are deployed is used as the importance of the chain, and the importance chain strategy is: the service function deployed by the most important physical node at both ends of the most important chain is used as a breakpoint to build a segmentation plan.
[0133] The update strategy of the importance chain strategy is:
[0134] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0135] For the segmented function chain that has not successfully built a backup chain, if M>2, the service functions deployed by the most important physical nodes at both ends of the chain are used as new breakpoints to update the segmented plan. Otherwise, the segmented function chains are constructed with the service functions they contain to update the segmented plan; M is the number of service functions contained in the segmented function chain.
[0136] Of course, in the importance point strategy and importance chain strategy, for the segmentation scheme to be updated, the importance point can also be used as the first K+1 The large physical node or chain determines the new breakpoint and updates the segmentation scheme to be updated. K The number of iterations for segment update.
[0137] The above importance can be obtained based on existing calculation methods and test methods, such as reliability obtained through simulation experiments, network vulnerabilities, etc. Considering that in a structured scenario, each node on the working path of the service function chain may be in a key position during the business operation process, playing a bridge or hub role, and having an important impact on the business service quality, therefore, in the present invention, it is recommended that the importance of the physical node where the service function is deployed is calculated based on the centrality of the physical node where the service function is deployed in the physical network, including:
[0138] First, build an undirected graph based on the physical network G(V,E,F) ,in, V Represents a physical node, E Indicates the physical link. F Indicates the service function;
[0139] Then, using the undirected graph G(V,E,F) , respectively calculate the betweenness centrality, closeness centrality, degree centrality and bandwidth load rate of the physical nodes deployed by each service function contained in the service function chain corresponding to the main chain obtained in step A1;
[0140] Afterwards, the importance of the physical nodes where each service function is deployed contained in the service function chain corresponding to the main chain obtained in step A1 is calculated according to the following formulas:
[0141] BPPV i =(BC i + DC i + CC i ) / (R bwi / T bwi )
[0142] in, BC i Indicates i The betweenness centrality of the physical nodes where the service functions are deployed, DC i Indicates i The proximity of the physical nodes where the service functions are deployed, CC i Indicates iThe degree centrality of the physical nodes where the service functions are deployed, R bwi Indicates i The sum of the remaining bandwidth of all links of the physical nodes where the service functions are deployed, T bwi Indicates the i The sum of the total bandwidth of all links of the physical nodes where the service function is deployed.
[0143] The above formula includes the ratio of each centrality value of a node to the bandwidth of its network, which reflects the importance or influence of the node relative to the entire network under a given information flow speed or capacity. It can accurately reflect the degree of impact of key nodes or links under heterogeneous concurrent failures from a global perspective and discover potential failure vulnerabilities. At the same time, based on subsequent experimental verification, determining breakpoints based on centrality has a positive impact on reducing backup rejection rates.
[0144] In addition to the above segmentation strategies, the present invention also introduces a history strategy based on a shared segmentation library, including:
[0145] A21. Segmentation based on historical strategies:
[0146] Determine whether there is a segment function chain included in the service function chain corresponding to the main chain obtained in step A1 in the shared segment library; if so, extract each included segment function chain to extract all the obtained segment function chains or the segment function chain containing the largest number of service functions, and construct a segment scheme; otherwise, directly execute step A22;
[0147] A22. Segmentation is performed based on other segmentation strategies, such as the above-mentioned sequence strategy and importance point strategy;
[0148] A23, merging the segmentation scheme obtained based on the historical strategy and the segmentation scheme obtained based on other segmentation strategies to obtain the segmentation scheme input into step A3;
[0149] In step A6, the shared segment library is updated based on the segment function chain included in the final segment solution.
[0150] The historical strategy cannot be used alone. It needs to be used in combination with the other segmentation strategies mentioned above. Through the historical strategy, the restrictions on edge resource overhead and the improvement of limited resource utilization can be increased in a shared manner.
[0151] In addition, considering the problem of rejection of segmented backup requests, which is related to the length of the service function chain, the present invention also proposes the following solution to reduce the resource consumption of the backup process itself.
[0152] For scenarios where the service function chain is short, you can first search the backup chain of the entire chain directly, and then segment it if it fails.
[0153] Between steps A1 and A2, the following is also included:
[0154] B. Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the main chain that meets the backup deployment requirements is constructed; the backup chain of the main chain includes all service functions included in the service function chain corresponding to the main chain;
[0155] If the backup chain of the main chain is successfully built and the number is one, its deployment strategy in the physical network is used as the backup plan of the main chain, and step A7 is executed;
[0156] If the backup chains of the main chain are successfully constructed and the number is greater than one, the resource overhead of deploying the backup chains of each successfully constructed main chain in the physical network is calculated respectively; the deployment strategy of the backup chain of the main chain with the smallest resource overhead in the physical network is used as the backup plan of the main chain, and step A7 is executed;
[0157] Otherwise, go to step A2.
[0158] For scenarios with long service function chains, you can set the number of segment iterations. If the number is reached, all or part of the service function chains that have not been found will be backed up as existing points. The number of settings can be determined based on subsequent experiments, such as 2 or 3. Specifically:
[0159] In step A4, if the number of segmentation iterations is greater than the set number, the segmentation is terminated and the following steps are performed:
[0160] C1. If there is a segmented function chain with a successfully built backup chain, select the segmented function chain with the largest number of service functions and greater than or equal to 2 as the optional segmented function chain; if there are multiple optional segmented function chains, use the optional segmented function chain with the smallest resource overhead deployed on the physical network as the basic segmented function chain; otherwise, execute step C3;
[0161] C2, the service functions in the service function chain corresponding to the main chain, except for the service functions included in the basic segment function chain, are respectively formed into segment function chains; the segment function chain formed by the basic segment function chain and the service functions other than the basic segment function chain is used to construct a segmentation scheme and return to step A3;
[0162] C3. Each service function contained in the service function chain corresponding to the main chain is formed into a segmented function chain, a segmentation plan is constructed and the process returns to step A3.
[0163] The scheme of the present invention is further described below in conjunction with the accompanying drawings and embodiments. Example
[0164] A backup method for a service function chain first defines the following backup deployment requirements:
[0165] The backup deployment requirements include resource constraints, execution order constraints, disjoint constraints and security constraints.
[0166] The resource constraint is that the remaining resources of the physical nodes deployed by each service function included in the backup chain should meet the resource requirements of the corresponding service function in the service function chain corresponding to the main chain.
[0167] The execution order constraint is: the execution order of each service function included in the backup chain should be consistent with the execution order of the corresponding service function in the service function chain corresponding to the main chain.
[0168] The non-intersection constraint is that the physical nodes deployed by each service function included in the backup chain and the links formed by them do not have an intersection with the physical nodes deployed by each service function included in the service function chain corresponding to the main chain and the links formed by them.
[0169] The safety constraint is that the sum of the safety factors of the service functions included in the backup chain should be greater than or equal to the sum of the safety factors of the corresponding service functions in the service function chain corresponding to the main chain.
[0170] The safety factor is calculated according to the following formula:
[0171] SG i =(AH i / max(AH)+NV i / max(NV)+S i / max(S)) / 3
[0172] in, AH i Indicates i The historical number of physical nodes deployed by each service function that have been attacked, NV i Indicates i The number of vulnerabilities of the physical nodes deployed by each service function, S i Indicates i The default security of each service function; max(AH) Indicates the maximum number of attacks on each physical node in the physical network. max(NV) Indicates the maximum number of vulnerabilities of each physical node in the physical network, max(S)Represents the maximum preset security of each service function deployed in the physical network.
[0173] Then, if Figure 1 As shown in the figure, based on the backup deployment requirements, perform the backup as follows:
[0174] S1. Get the main chain
[0175] In this step, a main chain is obtained, where the main chain is a service function chain deployed in the physical network.
[0176] S2. Full chain backup
[0177] In this step, based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a full-chain backup chain that meets the backup deployment requirements is searched in the physical network, including:
[0178] Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the main chain that meets the backup deployment requirements is constructed; the backup chain of the main chain includes all service functions included in the service function chain corresponding to the main chain; if the backup chain of the main chain is successfully constructed and the number is one, its deployment strategy in the physical network is used as the backup plan of the main chain, and step S8 is executed; if the backup chain of the main chain is successfully constructed and the number is greater than one, the resource overhead of the backup chains of each successfully constructed main chain deployed in the physical network is calculated respectively; the deployment strategy of the backup chain of the main chain with the smallest resource overhead in the physical network is used as the backup plan of the main chain, and step S8 is executed;
[0179] Otherwise, execute step S3.
[0180] The construction process of the backup chain that meets the backup deployment requirements is as follows: search for all simple paths that can be deployed in the physical network of the service function chain corresponding to the main chain, traverse all simple paths, first, calculate the safety factor of the path to determine whether it meets the security constraint; second, determine whether it meets the resource constraint; for the path that meets the security constraint and resource constraint, determine whether it meets the execution order constraint of the service function; finally, if there is a path that meets the security constraint, resource constraint and execution order constraint, it is compared with the main chain to determine whether it meets the disjoint constraint. If there is a path that meets all constraints, the search is successful, otherwise, it is unsuccessful.
[0181] The calculation of the resource overhead can be implemented in the existing way. In the subsequent verification experiment, in order to simplify the calculation, only the bandwidth demand is considered. Therefore, first, the resource overhead of the physical node where the service function is deployed is calculated according to the following formula: cost l , and then sum to get the computational cost of the link:
[0182] cost l =z l *BW
[0183] in, BW Indicates the unit bandwidth, z l Indicates l The number of physical links mapped between the virtual link of a service function and its previous service function in the execution order.
[0184] In addition to the above methods, the construction of the backup chain can also be: first, use depth-first to find all candidate paths that meet the disjoint constraints, resource constraints and security constraints, then sort all candidate paths from small to large according to resource costs, and finally traverse the candidate paths. During the traversal process, check whether each path meets the execution order constraints, and end the loop when a path that meets the constraints is found. The difference between this method and the above method mainly lies in the difference in the order of condition comparison, and if a backup chain can be found, only one is output because it is sorted first. This method has a higher computational efficiency under the premise that the resource cost only calculates the bandwidth, but the above method can output multiple alternative backup chains that meet the backup deployment conditions, and finally confirm them through resource cost, which can introduce a more complex resource cost sorting algorithm.
[0185] S3, build segment
[0186] In this step, the service function chain corresponding to the main chain obtained in step S1 is segmented to obtain a segmentation scheme for the service function chain corresponding to the main chain. To segment the service function chain, first, based on the segmentation strategy, some service functions included in the service function chain are determined as breakpoints; then, based on the breakpoints, the complete service function chain is decomposed into a group of segmented function chains to form a segmentation scheme based on the segmentation strategy.
[0187] In this embodiment, the segmentation strategy is an importance point strategy. The importance point strategy determines the breakpoint based on the importance ranking of the physical nodes where the service functions contained in the service function chain corresponding to the main chain are deployed. Specifically, the importance point strategy is: the service function deployed at the most important physical node is used as the breakpoint to construct a segmentation plan; the breakpoint belongs to the segmentation function chain that is executed first in the service function execution order.
[0188] The importance of the physical node where the service function is deployed is calculated based on the centrality of the physical node where the service function is deployed in the physical network, including:
[0189] First, build an undirected graph based on the physical network G(V,E,F) ,in, V Represents a physical node, EIndicates the physical link. F Indicates the service function;
[0190] Then, using the undirected graph G(V,E,F) , respectively calculate the betweenness centrality, closeness centrality, degree centrality and bandwidth load rate of the physical nodes deployed by each service function contained in the service function chain corresponding to the main chain obtained in step A1;
[0191] Afterwards, the importance of the physical nodes where each service function is deployed contained in the service function chain corresponding to the main chain obtained in step A1 is calculated according to the following formulas:
[0192] BPPV i =(BC i + DC i + CC i ) / (R bwi / T bwi )
[0193] in, BC i Indicates i The betweenness centrality of the physical nodes where the service functions are deployed, DC i Indicates i The proximity of the physical nodes where the service functions are deployed, CC i Indicates i The degree centrality of the physical nodes where the service functions are deployed, R bwi Indicates i The sum of the remaining bandwidth of all links of the physical nodes where the service functions are deployed, T bwi Indicates the i The sum of the total bandwidth of all links of the physical nodes where the service function is deployed.
[0194] S4. Build a segmented backup chain
[0195] In this step, for each segmentation function chain included in each segmentation scheme, respectively:
[0196] Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the segmented function chain that meets the backup deployment requirements is constructed; the backup chain of the segmented function chain includes all the service functions included in the segmented function chain. The construction method is the same as step S2, and will not be repeated here.
[0197] S5. Update segment
[0198] In this step, if the backup chains of each segmentation function chain included in the segmentation scheme are successfully constructed, the segmentation scheme is an implementable segmentation scheme; if the number of implementable segmentation schemes is greater than or equal to one, step S6 is executed;
[0199] Otherwise, first, based on the update strategy of the segmentation strategy, a new breakpoint is added; then, based on the new breakpoint, the segmentation scheme of the segmentation strategy is updated, and the updated segmentation scheme is used as input, and the process returns to step S4;
[0200] Suitable for the segmentation strategy, the update strategy of the importance point strategy is:
[0201] For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain;
[0202] For the segmented function chain that has not successfully built a backup chain, if M>2, the service function deployed by the most important physical node it contains is used as a new breakpoint to update the segmentation plan to be updated; otherwise, the segmented function chains are constructed separately with the service functions it contains to implement the update of the segmentation plan; M is the number of service functions contained in the segmented function chain.
[0203] S6. Determine the segmentation plan
[0204] In this step, if the number of feasible segmentation schemes is one, it is used as the final segmentation scheme; if the number of feasible segmentation schemes is greater than one, the resource overhead of each feasible segmentation scheme is calculated respectively, and the feasible segmentation scheme with the smallest resource overhead is used as the final segmentation scheme.
[0205] The resource cost of the feasible segmentation scheme is calculated by first using the backup chains of the segmentation function chains contained therein to splice the backup chains of the main chain according to the execution order of the service functions contained in the service function chain corresponding to the main chain; then, the resource cost of the backup chain of the constructed main chain deployed in the physical network is calculated as the resource cost of the feasible segmentation scheme. The calculation of the resource cost is the same as step S2 and will not be repeated here.
[0206] S7. Build a backup plan for the main chain
[0207] Based on the backup chains of each segmented function chain contained in the final segmentation plan, the backup chain of the main chain is spliced according to the execution order of the service functions contained in the service function chain corresponding to the main chain; the deployment strategy of the backup chain of the constructed main chain in the physical network is used as the backup plan for the main chain.
[0208] S8. Implement backup
[0209] Back up the main chain based on the main chain backup plan.
[0210] Experimental verification:
[0211] In order to verify the effect of the present invention, the inventors conducted verification on different scenarios based on the solutions of the above embodiments.
[0212] Experiment 1
[0213] The physical network includes 16 nodes, 44 edges, and the node degree is at least 2; the physical network provides a total of 13 types of service functions, each physical node randomly provides 3 to 6 service functions, and the link bandwidth range is an integer between 20 and 35; the backup request is: 40 service function chains, each main chain contains 8 service functions.
[0214] The steps except S2 in the embodiment are executed in sequence, and the segmentation statistics are as follows: Figure 2 As shown in the figure, the horizontal axis is the main chain sequence number, and the vertical axis is the number of segment iterations experienced when the backup request of the corresponding main chain is received. It can be seen from the figure that the number of main chains received by the first segment is 3, the number of main chains received by the second segment is 24, the number of main chains received by the third segment is 7, the number of main chains received by the fourth segment is 5, and the number of main chains received by more than four segments is 1.
[0215] Experiment 2
[0216] Compared with Experiment 1, Experiment 2 increased the network size to 16 nodes, 45 edges, and degree 3, while keeping other conditions unchanged.
[0217] The steps except S2 in the embodiment are executed in sequence, and the segmentation statistics are as follows: Figure 3 As shown in the figure, the horizontal axis is the main chain sequence number, and the vertical axis is the number of segment iterations experienced when the backup request of the corresponding main chain is received. It can be seen from the figure that the number of main chains received by the first segment is 7, the number of main chains received by the second segment is 21, the number of main chains received by the third segment is 10, the number of main chains received by the fourth segment is 2, and the number of main chains received by the fourth segment is 0.
[0218] Experiment 3
[0219] Compared with Experiment 2, Experiment 3 further narrowed the main chain of backup requests to 6 service functions, while other conditions remained unchanged.
[0220] The steps except S2 in the embodiment are executed in sequence, and the segmentation statistics are as follows: Figure 4 As shown in the figure, the horizontal axis is the main chain sequence number, and the vertical axis is the number of segment iterations experienced when the backup request of the corresponding main chain is received. It can be seen from the figure that the number of main chains received by the first segment is 23, the number of main chains received by the second segment is 16, the number of main chains received by the third segment is 1, and the number of main chains received by the fourth segment or more is 0.
[0221] From Experiment 1 to Experiment 3, it can be seen that, when the main chain includes 8 service functions, the method of the present invention can still ensure a sufficient backup reception rate under the premise of only adopting the importance point strategy.
[0222] Experiment 4
[0223] The physical network includes 16 nodes, 44 edges, and the node degree is at least 3; the physical network provides 13 types of service functions, each physical node randomly provides 3 to 6 service functions, and the link bandwidth range is an integer between 35 and 45; the backup request is: 40 service function chains.
[0224] The backup situations of full-chain backup, segmented backup-single, and segmented backup-exhaustive are counted, and the existing full-point backup is used as a comparison scheme. Full-chain backup means only implementing steps S1 and S2 in the embodiment; only segmented backup-single means executing the steps except S2 and S5 in the embodiment in sequence, performing segmentation only once, and not updating the segments; segmented backup-exhaustive means executing the steps except S2 in the embodiment in sequence. Then, based on the backup acceptance rate, the average cost (Average Cost), backup success rate (Acceptance Rate), and average cost performance ratio (Cost Performance) are calculated respectively.
[0225] The average cost is calculated as follows:
[0226] Average Cost = Cost success *0.05 / Num success
[0227] Among them, Cost success Indicates the sum of the overhead of all service function chains where the backup is received, Num success Indicates the number of service function chains that have been successfully backed up. 0.05 means that the cost of one unit of bandwidth is $0.05. When the average cost is 0, it means that all service function chain backup requests are rejected.
[0228] The backup success rate is calculated according to the following formula:
[0229] Acceptance Rate = Num success / Num total
[0230] Among them, Num total Indicates the number of all service function chains involved in the backup, Num success It indicates the number of service function chains that have been successfully backed up. When the backup success rate is 0, it means that all service function chain backup requests are rejected.
[0231] The average cost-performance ratio is calculated as follows:
[0232] Cost Performance = Acceptance Rate / Average Cost
[0233] The average cost-performance ratio refers to the performance of the backup success rate under the condition of unit cost. Under the same cost, the higher the average cost-performance ratio, the more service function chain backup requests are accepted, indicating better results. When the average cost-performance ratio is 0, it means that all service function chain backup requests are rejected.
[0234] The average cost results, such as Figure 5 As shown; the results of the backup success rate are as follows Figure 6 As shown; the average cost-performance ratio results, such as Figure 7 As shown, Figure 5~Figure 7 The horizontal axis is the number of service functions contained in the service function chain of the backup request, which are [3, 4, 5, 6] respectively.
[0235] Experiment 5
[0236] The physical network consists of 16 nodes, 40 edges, and the node degree is at least 2; the physical network provides a total of 13 types of service functions, each physical node randomly provides 3 to 6 service functions, and the link bandwidth range is an integer between 35 and 45; the backup request is: [60, 80, 100, 120] service function chains, with 6 service functions per link.
[0237] Statistics are collected for full-chain backup, segmented backup-single, and segmented backup-exhaustive backup, and the existing full-point backup is used as a comparison scheme. The average cost results are as follows: Figure 8 As shown; the results of the backup success rate are as follows Fig. 9 As shown; the average cost-performance ratio results, such as Fig.10 As shown, Figure 8~Figure 10 The horizontal axis is the number of service function chains for backup requests, which are [60, 80, 100, 120] respectively.
[0238] Experiment 6
[0239] The physical network includes 16 nodes and 42 edges, and the node degree is at least [2, 3, 4, 5]. The physical network provides 13 types of service functions. Each physical node randomly provides 3 to 6 service functions, and the link bandwidth range is an integer between 35 and 45. The backup request is: 40 service function chains, 6 service functions per link.
[0240] Statistics are collected for full-chain backup, segmented backup-single, and segmented backup-exhaustive backup, and the existing full-point backup is used as a comparison scheme. The average cost results are as follows: Fig.11 As shown; the results of the backup success rate are as follows Fig.12 As shown; the average cost-performance ratio results, such as Fig.13 As shown, Figure 11~Figure 13 The horizontal axis is the node degree of the physical network, which is [2, 3, 4, 5] respectively.
[0241] It can be seen from Experiments 4 to 6 that the method of the present invention can achieve a good success rate in various situations and can better balance the backup success rate and overhead.
[0242] Finally, it should be noted that the above embodiments are only preferred implementations and are not intended to limit the present invention. It should be pointed out that for those skilled in the art, several modifications, equivalent replacements, improvements, etc. can be made without departing from the scope of the present invention and the scope of protection of the claims, and all of these should be included in the protection scope of the present invention.
Claims
1. A method for backing up a service function chain, characterized in that: The following steps are involved: A1. Obtain the main chain, which is a service function chain deployed in the physical network; A2. Segment the service function chain corresponding to the main chain obtained in step A1 to obtain a segmentation scheme for the service function chain corresponding to the main chain. Segment the service function chain by first determining, based on the segmentation strategy, some service functions included in the service function chain as breakpoints. Then, based on the breakpoints, the complete service function chain is decomposed into a set of segmented function chains to form a segmentation scheme based on the segmentation strategy; The segmentation strategy includes one or more of a sequence strategy, an importance point strategy, and an importance chain strategy; The sequence strategy determines the breakpoint based on the execution order of the service functions contained in the service function chain corresponding to the main chain; The importance point strategy determines the breakpoint based on the importance ranking of the service functions contained in the service function chain corresponding to the main chain and / or the physical nodes on which they are deployed; the importance chain strategy determines the breakpoint based on the importance ranking of the links between the physical nodes on which the service functions contained in the service function chain corresponding to the main chain are deployed; A3. For each segment function chain included in each segment solution, respectively: Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the segmented function chain that meets the backup deployment requirements is constructed; the backup chain of the segmented function chain includes all the service functions included in the segmented function chain; A4. If the backup chains of each segmented functional chain included in the segmented plan are successfully constructed, then the segmented plan is an implementable segmented plan; If the number of feasible segmentation solutions is greater than or equal to one, execute step A5; Otherwise, first, add a new breakpoint based on the update strategy of the segmentation strategy; Then, the segmentation scheme of the segmentation strategy is updated based on the newly added breakpoint, the updated segmentation scheme is used as input, and the process returns to step A3; A5. If the number of feasible segmentation schemes is one, then it is used as the final segmentation scheme; if the number of feasible segmentation schemes is greater than one, the resource overhead of each feasible segmentation scheme is calculated respectively, and the feasible segmentation scheme with the smallest resource overhead is used as the final segmentation scheme; The resource cost of the feasible segmentation scheme is calculated by first using the backup chains of each segmentation function chain contained therein to splice the backup chain of the main chain according to the execution order of the service functions contained in the service function chain corresponding to the main chain; then, the resource cost of the backup chain of the constructed main chain deployed in the physical network is calculated as the resource cost of the feasible segmentation scheme; A6. Based on the backup chains of each segment function chain included in the final segmentation plan, the backup chain of the main chain is spliced according to the execution order of the service functions included in the service function chain corresponding to the main chain; The deployment strategy of the backup chain of the constructed main chain in the physical network is used as the backup solution of the main chain; A7. Back up the main chain based on the main chain backup solution; The backup deployment requirements include resource constraints, execution order constraints and disjoint constraints; The resource constraint is: the remaining resources of the physical nodes deployed by each service function included in the backup chain should meet the resource requirements of the corresponding service function in the service function chain corresponding to the main chain; The execution order constraint is: the execution order of each service function included in the backup chain should be consistent with the execution order of the corresponding service function in the service function chain corresponding to the main chain; The non-intersection constraint is that the physical nodes deployed by each service function included in the backup chain and the links formed by them do not have an intersection with the physical nodes deployed by each service function included in the service function chain corresponding to the main chain and the links formed by them.
2. A method for backing up a service function chain as claimed in claim 1, characterized in that: The backup deployment requirements also include security constraints; The safety constraint is that the sum of the safety factors of the service functions included in the backup chain should be greater than or equal to the sum of the safety factors of the corresponding service functions in the service function chain corresponding to the main chain.
3. A method for backing up a service function chain as claimed in claim 2, characterized in that: The safety factor is calculated according to the following formula: SG i =(AH i / max(AH)+NV i / max(NV)+S i / max(S)) / 3 in, AH i Indicates i The historical number of physical nodes deployed by each service function that have been attacked, NV i Indicates i The number of vulnerabilities of the physical nodes deployed by each service function, S i Indicates i The default security of each service function; max(AH) Indicates the maximum number of attacks on each physical node in the physical network. max(NV) Indicates the maximum number of vulnerabilities of each physical node in the physical network, max(S) Represents the maximum preset security of each service function deployed in the physical network.
4. A method for backing up a service function chain as claimed in claim 1, characterized in that: The segmentation strategy also includes a historical strategy based on a shared segmentation library; Step A2 includes: A21. Segmentation based on historical strategies: Determine whether there is a segment function chain included in the service function chain corresponding to the main chain obtained in step A1 in the shared segment library; if so, extract each included segment function chain to extract all the obtained segment function chains or the segment function chain containing the largest number of service functions, and construct a segment scheme; otherwise, directly execute step A22; A22. Segmentation is performed based on other segmentation strategies; A23, merging the segmentation scheme obtained based on the historical strategy and the segmentation scheme obtained based on other segmentation strategies to obtain the segmentation scheme input into step A3; In step A6, the shared segment library is updated based on the segment function chain included in the final segment solution.
5. A method for backing up a service function chain as claimed in claim 1, characterized in that: The sequential strategy is: in step A1, the remaining service functions except the first, second, N-1th and Nth service functions included in the service function chain corresponding to the main chain are obtained as breakpoints, and segmentation schemes are constructed respectively; N is the number of service functions included in the service function chain corresponding to the main chain; The update strategy of the sequential strategy is: For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain; For the segmented function chain that has not successfully built a backup chain, if M>2, the remaining service functions except the first and Mth service functions included in it are used as new breakpoints to update the segmentation plan; otherwise, the segmented function chain is constructed with the service functions included in it to update the segmentation plan; M is the number of service functions included in the segmented function chain.
6. A method for backing up a service function chain as claimed in any one of claims 1 to 3, characterized in that: The segmentation strategy includes an importance point strategy and / or an importance chain strategy; The importance point strategy determines the service function as a breakpoint based on the importance ranking of the physical nodes where the service function is deployed; The importance chain strategy uses the sum of the importance of two physical nodes where adjacent service functions are deployed as the importance of the chain, sorts the chains by importance, and determines the service functions that serve as breakpoints; The importance of the physical node where the service function is deployed is calculated based on the centrality of the physical node where the service function is deployed in the physical network, including: First, build an undirected graph based on the physical network G(V,E,F) ,in, V Represents a physical node, E Indicates the physical link. F Indicates the service function; Then, using the undirected graph G(V,E,F) , respectively calculate the betweenness centrality, closeness centrality, degree centrality and bandwidth load rate of the physical nodes deployed by each service function contained in the service function chain corresponding to the main chain obtained in step A1; Afterwards, the importance of the physical nodes where each service function is deployed contained in the service function chain corresponding to the main chain obtained in step A1 is calculated according to the following formulas: BPPV i =(BC i +DC i +CC i ) / (R bwi / T bwi ) in, BC i Indicates i The betweenness centrality of the physical nodes where the service functions are deployed, DC i Indicates i The proximity of the physical nodes where the service functions are deployed, CC i Indicates i The degree centrality of the physical nodes where the service functions are deployed, R bwi Indicates i The sum of the remaining bandwidth of all links of the physical nodes where the service functions are deployed, T bwi Indicates the i The sum of the total bandwidth of all links of the physical nodes where the service function is deployed.
7. A method for backing up a service function chain as claimed in claim 6, characterized in that: The importance point strategy is: taking the service function deployed by the most important physical node as the breakpoint, constructing a segmentation scheme; the breakpoint belongs to the segmentation function chain that is executed first and / or later according to the execution order of the service function; The update strategy of the importance point strategy is: For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain; For the segmented function chain that has not successfully built a backup chain, if M>2, the service function deployed by the most important physical node it contains is used as a new breakpoint to update the segmentation plan to be updated; otherwise, the segmented function chains are constructed separately with the service functions it contains to implement the update of the segmentation plan; M is the number of service functions contained in the segmented function chain.
8. A method for backing up a service function chain as claimed in claim 6, characterized in that: The importance chain strategy is: using the service functions deployed by the most important physical nodes at both ends of the most important chain as breakpoints to build a segmentation plan; The update strategy of the importance chain strategy is: For the segmentation scheme to be updated, retain the segmentation function chain that successfully builds the backup chain; For the segmented function chain that has not successfully built a backup chain, if M>2, the service functions deployed by the most important physical nodes at both ends of the chain are used as new breakpoints to update the segmented plan to be updated; otherwise, the segmented function chains are constructed separately with the service functions they contain to update the segmented plan; M is the number of service functions contained in the segmented function chain.
9. A method for backing up a service function chain as claimed in any one of claims 1 to 3, characterized in that: Between steps A1 and A2, the following is also included: B. Based on the topological relationship of the physical network and the service functions of each physical node in the physical network, a backup chain of the main chain that meets the backup deployment requirements is constructed; the backup chain of the main chain includes all service functions included in the service function chain corresponding to the main chain; If the backup chain of the main chain is successfully built and the number is one, its deployment strategy in the physical network is used as the backup plan of the main chain, and step A7 is executed; If the backup chains of the main chain are successfully constructed and the number is greater than one, the resource overhead of deploying the backup chains of each successfully constructed main chain in the physical network is calculated respectively; the deployment strategy of the backup chain of the main chain with the smallest resource overhead in the physical network is used as the backup plan of the main chain, and step A7 is executed; Otherwise, go to step A2.
10. A method for backing up a service function chain according to any one of claims 1 to 3, characterized in that: In step A4, if the number of segmentation iterations is greater than the set number, the segmentation is terminated and the following steps are performed: C1. If there is a segmented function chain with a successful backup chain, the segmented function chain with the largest number of service functions and greater than or equal to 2 is selected as the optional segmented function chain; if there are multiple optional segmented function chains, the optional segmented function chain with the smallest resource overhead deployed on the physical network is used as the basic segmented function chain; Otherwise, execute step C3; C2, the service functions in the service function chain corresponding to the main chain, except for the service functions included in the basic segment function chain, are respectively formed into segment function chains; the segment function chain formed by the basic segment function chain and the service functions other than the basic segment function chain is used to construct a segmentation scheme and return to step A3; C3. Each service function contained in the service function chain corresponding to the main chain is formed into a segmented function chain, a segmentation plan is constructed and the process returns to step A3.
Citation Information
Patent Citations
Function backup method and device
CN109586982A
Reliability-aware service function chain backup protection method
CN111901170A