Link determination method, apparatus, device, medium, and product
By optimizing the link determination method in data centers and resource pools, and searching for and deploying virtual network functions in the network topology based on SFC requests, the problem of resource waste and energy consumption caused by the 24/7 operation of equipment is solved, and energy consumption is reduced and resource utilization is improved.
Patent Information
- Application Number
- CN202410772385.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-14
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2044-06-14
AI Technical Summary
In existing technologies, the computing and storage devices in data centers and resource pools operate around the clock, leading to resource waste, and existing energy reduction methods still have significant energy consumption issues.
By receiving Service Function Chain (SFC) requests, the system searches for links that meet preset conditions in the preset network topology based on the source and destination nodes, obtains the node energy consumption cost, determines the target link to deploy virtual network functions, and optimizes energy consumption costs.
It reduces unnecessary waste of resources, lowers energy consumption, and improves resource utilization.
Smart Images

Figure CN118827401B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of service orchestration technology, and in particular relates to a link determination method, apparatus, device, medium and product. Background Technology
[0002] With the increasingly close integration of communication and information technologies, the number of computing and storage devices in data centers and resource pools is also growing rapidly. Since these devices often operate around the clock, even idle devices may consume up to 60% of their peak resources, resulting in resource waste. Therefore, reducing energy consumption is a pressing technical problem that needs to be solved.
[0003] However, in the existing technology, in order to solve the above problems, the energy consumption is generally reduced by adjusting the network size and reducing the number of network devices that are turned on, but the problem of high energy consumption still exists. Summary of the Invention
[0004] This application provides a link determination method, apparatus, device, medium, and product that reduces energy consumption.
[0005] In a first aspect, embodiments of this application provide a link determination method, the method comprising:
[0006] Receive Service Function Chain (SFC) request. The SFC request includes source node, destination node and multiple virtual network function information. The execution of the virtual network functions corresponding to the multiple virtual network function information meets the preset order.
[0007] Starting from the source node and ending at the destination node, a first link that meets the preset conditions is searched in the preset network topology. The first link includes multiple nodes, and each node is used to deploy at least one virtual network function corresponding to one of the multiple virtual network function information.
[0008] For each of the multiple nodes, obtain the energy consumption cost of at least one first feasible subchain corresponding to the node. The node includes multiple first child nodes, each first feasible subchain includes at least one second child node, and each first feasible subchain is used to deploy at least one virtual network function corresponding to the node.
[0009] Based on at least one first feasible subchain corresponding to each node, a target link is determined for deploying virtual network functions corresponding to multiple virtual network function information. The target link includes second feasible subchains corresponding to multiple nodes respectively. Each second feasible subchain includes at least one feasible subchain in the first feasible subchain corresponding to the second feasible subchain whose energy consumption cost meets the preset energy consumption conditions.
[0010] In one optional implementation of the first aspect, starting from the source node and ending at the destination node, a first link satisfying preset conditions is searched in a preset network topology, including:
[0011] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0012] Obtain the total amount of renewable energy in each of at least one second link;
[0013] A second link in which the total amount of renewable energy is greater than or equal to a preset energy threshold is identified as a first link.
[0014] In one optional implementation of the first aspect, starting from the source node and ending at the destination node, a first link satisfying preset conditions is searched in a preset network topology, including:
[0015] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0016] Obtain the link transmission delay of each of at least one second link;
[0017] The first link is determined as the link whose transmission delay is less than or equal to a preset transmission delay among at least one second link.
[0018] In an optional implementation of the first aspect, based on at least one first feasible subchain corresponding to each node, a target link for deploying virtual network functions corresponding to multiple virtual network function information is determined, including:
[0019] For each of the multiple nodes, the first feasible subchain whose energy consumption cost meets the preset energy consumption condition is determined from at least one first feasible subchain corresponding to the node as the second feasible subchain;
[0020] Based on the second feasible subchain corresponding to each node, the target link for deploying the virtual network functions corresponding to multiple virtual network function information is determined.
[0021] In an alternative implementation of the first aspect, the method further includes:
[0022] Detect the total amount of renewable energy in the target link;
[0023] If the reduction in the total amount of renewable energy on the target link is greater than a preset value, the virtual network functions deployed on the target link will be migrated to the link to be migrated, and the energy consumption cost of the link to be migrated will be lower than the energy consumption cost on the target link.
[0024] In an alternative implementation of the first aspect, the SFC request includes a request validity period; the method further includes:
[0025] Real-time detection of whether the request is currently valid;
[0026] Update the target link if the request is not currently valid.
[0027] Secondly, embodiments of this application provide a link determination apparatus, the apparatus comprising:
[0028] The receiving module is used to receive Service Function Chain (SFC) requests. The SFC request includes the source node, the destination node, and multiple virtual network function information. The execution of the virtual network functions corresponding to the multiple virtual network function information satisfies a preset order.
[0029] The search module is used to search for a first link that meets the preset conditions in a preset network topology, starting from the source node and ending at the destination node. The first link includes multiple nodes, and each node is used to deploy at least one virtual network function corresponding to one of the multiple virtual network function information.
[0030] The acquisition module is used to acquire the energy consumption cost of at least one first feasible subchain corresponding to each of the multiple nodes. The node includes multiple first child nodes, each feasible subchain includes at least one second child node, and each first feasible subchain is used to deploy at least one virtual network function corresponding to the node.
[0031] The determination module is used to determine the target link for deploying virtual network functions corresponding to multiple virtual network function information based on at least one first feasible sub-chain corresponding to each node. The target link includes second feasible sub-chains corresponding to multiple nodes respectively. Each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain corresponding to the second feasible sub-chain whose energy consumption cost meets the preset energy consumption conditions.
[0032] In a third aspect, an electronic device is provided, comprising: a memory for storing computer program instructions; and a processor for reading and executing the computer program instructions stored in the memory to perform the link determination method provided in any optional embodiment of the first aspect.
[0033] Fourthly, a computer storage medium is provided, on which computer program instructions are stored, wherein when the computer program instructions are executed by a processor, the link determination method provided by any optional implementation of the first aspect is implemented.
[0034] Fifthly, a computer program product is provided, the computer program product including a computer program, which, when executed by a processor, implements the link determination method provided by any optional implementation of the first aspect.
[0035] In this embodiment, a Service Function Chain (SFC) request can be received. The SFC request includes a source node, a destination node, and multiple virtual network function (VFC) information. The execution of the VFCs corresponding to the multiple VFCs satisfies a preset order. Based on this, a first link satisfying the preset conditions can be searched in the preset network topology, starting from the source node and ending at the destination node. Since the first link includes multiple nodes, and each node is used to deploy the VFC corresponding to at least one of the multiple VFCs, the energy consumption cost of at least one first feasible sub-chain corresponding to each node is obtained. Then, based on the at least one first feasible sub-chain corresponding to each node, a target link for deploying the VFCs corresponding to the multiple VFCs can be determined. The target link includes second feasible sub-chains corresponding to the multiple nodes. Each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain whose energy consumption cost satisfies the preset energy consumption conditions. In this way, unnecessary resource waste can be avoided and energy consumption can be reduced. Attached Figure Description
[0036] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0037] Figure 1 This is an architecture diagram of a link determination system provided in an embodiment of this application;
[0038] Figure 2 This is a flowchart illustrating a link determination method provided in an embodiment of this application;
[0039] Figure 3 This application provides a schematic diagram of the structure of a link determination device;
[0040] Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0041] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0042] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0043] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.
[0044] With the increasingly close integration of communication and information technologies, the number of computing and storage devices in data centers and resource pools is also growing rapidly. Since these devices often operate around the clock, even idle devices may consume up to 60% of their peak resources, resulting in resource waste. Therefore, reducing energy consumption is a pressing technical problem that needs to be solved.
[0045] However, in the existing technology, in order to solve the above problems, the energy consumption is generally reduced by adjusting the network size and reducing the number of network devices that are turned on, but the problem of high energy consumption still exists.
[0046] In addition to the above, existing technologies can also utilize SDN controllers to implement solutions by considering quality of service constraints within SDN and allocating resources based on service requests. The allocation principle is to divide the data flow into initial global resource allocation. However, this method is mainly suitable for single-domain networks and requires sufficient network parameter information, such as the network topology, node resources (e.g., computing, network, and storage), and link bandwidth resources, to achieve optimal orchestration. Furthermore, it cannot meet the needs of dynamic scenarios where service requests are temporary and have latency requirements; resource allocation is fixed, resulting in high energy consumption and low resource utilization.
[0047] To address the problems existing in the prior art, embodiments of this application provide a link determination method, apparatus, device, medium, and product capable of receiving a Service Function Chain (SFC) request. The SFC request includes a source node, a destination node, and multiple virtual network function (VFC) information. The execution of the VFCs corresponding to these VFCs follows a preset order. Based on this, a first link satisfying preset conditions can be searched within a preset network topology, starting from the source node and ending at the destination node. Since the first link includes multiple nodes, and each node is used to deploy at least one VFC corresponding to one of the multiple VFCs, the energy consumption cost of at least one first feasible sub-chain corresponding to each node is obtained. Then, based on the at least one first feasible sub-chain corresponding to each node, a target link for deploying the VFCs corresponding to the multiple VFCs can be determined. This target link includes second feasible sub-chains corresponding to the multiple nodes, and each second feasible sub-chain includes at least one feasible sub-chain whose energy consumption cost satisfies a preset energy consumption condition. This avoids unnecessary resource waste and reduces energy consumption.
[0048] To more accurately describe the link determination method provided in the embodiments of this application, the link determination system provided in the embodiments of this application will be introduced first before introducing the link determination method provided in the embodiments of this application.
[0049] Figure 1 This is an architecture diagram of a link determination system provided in an embodiment of this application.
[0050] like Figure 1 As shown, the architecture diagram may include a master editor 11 and a domain editor 12, which are connected.
[0051] It should be noted that the master orchestrator includes: SFC processor, computing module, controller, and resource allocator; the domain orchestrator includes: SFC processor, energy monitor, and SFC tracker.
[0052] Based on the above architecture diagram of the link determination system, the link determination method provided in this application will be described in detail below with reference to the accompanying drawings and through specific embodiments.
[0053] Figure 2 This is a flowchart illustrating a link determination method provided in an embodiment of this application.
[0054] like Figure 2 As shown, the execution entity of this link determination method can be the main editor, and the link determination method can specifically include the following steps:
[0055] S210, Receive Service Function Chain (SFC) request.
[0056] In some embodiments, the above-mentioned Service Function Chain (SFC) request may include a source node, a destination node, and at least two virtual network function information.
[0057] Each virtual network function corresponds to a virtual network function, which can be a firewall function, load balancing function, etc., without specific limitations. Furthermore, the execution of the virtual network functions corresponding to the above multiple virtual network function information follows a preset order, which can be pre-set based on practical experience or circumstances, without specific limitations.
[0058] S220: Starting from the source node and ending at the destination node, search for the first link that meets the preset conditions in the preset network topology.
[0059] In some embodiments, the first link mentioned above may include multiple nodes. This first link is used to deploy virtual network functions corresponding to the aforementioned multiple virtual network function information. Each node may deploy at least one virtual network function corresponding to one of the multiple virtual network function information. It should be noted that since the execution of the virtual network functions corresponding to the aforementioned multiple virtual network function information follows a preset order, when deploying virtual network functions on the first link, they must also be deployed sequentially on the first link according to the preset order.
[0060] The aforementioned preset network topology can be a pre-defined topology diagram of the entire network based on practical experience or circumstances. In some embodiments, the preset network topology may include multiple nodes and at least one path for connecting a first node and a second node, wherein the multiple nodes in the preset network topology include a first node and a second node. It should be noted that each node corresponds to a domain network, and a domain network is a collection of network devices operating under (within) a controller.
[0061] Furthermore, the aforementioned preset conditions can be pre-set based on practical experience or circumstances, and are used to search for and select the optimal or near-optimal first link from the preset network topology. It should be noted that a preset search algorithm can be used to search for the first link in the preset network topology. This preset search algorithm can be determined based on the actual situation; for example, it could be a tabu search algorithm, without specific limitations here.
[0062] Specifically, after obtaining an SFC request, the master orchestrator can search for a first link that meets the preset conditions in the preset network topology, starting from the source node and ending at the destination node, since the SFC request includes source node, destination node, and multiple virtual network function information. This link is then used to deploy the virtual network functions corresponding to the aforementioned multiple virtual network function information.
[0063] S230: For each of the multiple nodes, obtain the energy consumption cost of at least one first feasible subchain corresponding to the node.
[0064] Since each node is derived from a domain network abstraction, and each domain network is a collection of network devices operating under (within) a controller, in some embodiments, each node includes multiple first child nodes. Each of the first feasible subchains includes at least one second child node, and the multiple first child nodes include at least one second child node.
[0065] In addition, each first feasible subchain is used to deploy at least one virtual network function corresponding to the node.
[0066] Specifically, after obtaining the first link, the master orchestrator can send the relevant information from the SFC request to each node in the first link. Each node in the first link then calculates its own cost matrix, which includes the energy consumption cost of at least one first feasible sub-chain for deploying at least one virtual network function. This cost matrix can then be fed back to the master orchestrator. In this way, the master orchestrator can obtain the energy consumption cost of at least one first feasible sub-chain corresponding to each node.
[0067] S240, based on at least one first feasible subchain corresponding to each node, determine the target link for deploying the virtual network functions corresponding to multiple virtual network function information.
[0068] In some embodiments, the target link may include second feasible sub-chains corresponding to multiple nodes in the first link, and each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain whose energy consumption cost meets a preset energy consumption condition. The preset energy consumption condition may be pre-set based on actual experience or circumstances; for example, it may include minimizing energy consumption cost or meeting a preset energy consumption threshold, etc., and is not specifically limited here. Similarly, the preset energy consumption threshold may be pre-set based on actual experience or circumstances, and is not specifically limited here.
[0069] It should be noted that each of the above-mentioned second feasible subchains can correspond to a node, and each second feasible subchain can include at least one third feasible subchain, without specific limitations here.
[0070] Specifically, after obtaining the energy consumption cost of at least one first feasible subchain corresponding to a node, the master orchestrator can determine the target link for deploying virtual network functions corresponding to multiple virtual network function information based on at least one first feasible subchain corresponding to each node.
[0071] In this embodiment, a Service Function Chain (SFC) request can be received. Since the SFC request may include a source node, a destination node, and at least two virtual network function (VFC) information entries, and the execution of the VFC corresponding to these two VFC entries satisfies a preset order, a first link satisfying preset conditions is searched within a preset network topology, starting from the source node and ending at the destination node. This first link is used to deploy the VFC corresponding to the at least two VFC entries. Furthermore, the cost matrix and VFC deployment location sent by each node within the first link can be obtained, and the target link is determined based on these data. This avoids unnecessary resource waste and reduces energy consumption.
[0072] In order to obtain a better first link, in one embodiment, the above-mentioned S210 may specifically include the following steps:
[0073] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0074] Obtain the total amount of renewable energy in each of at least one second link;
[0075] A second link in which the total amount of renewable energy is greater than or equal to a preset energy threshold is identified as a first link.
[0076] It should be noted that renewable energy can include resources such as photovoltaic energy (solar energy), and correspondingly, the total amount of renewable energy can be the total amount of photovoltaic energy. No specific limitation is made here. Furthermore, the aforementioned preset energy thresholds can be pre-set based on actual experience or circumstances, and no specific limitation is made here.
[0077] Specifically, the master arranger can search for at least one second link in the preset network topology, starting from the source node and ending at the destination node. It can then obtain the total amount of renewable energy in each of the at least one second link and determine the second link whose total renewable resources are greater than or equal to a preset energy threshold as the first link.
[0078] In one embodiment, determining that the second link in which the total amount of renewable energy in at least one second link is greater than or equal to a preset energy threshold is the first link includes:
[0079] The second link with the largest total amount of renewable energy in at least one second link is identified as the first link.
[0080] Specifically, after the master editor finds at least one second link, it can determine the second link with the largest total amount of renewable energy from the at least one second link as the first link, so as to obtain a better first link.
[0081] In this embodiment, after at least one link is found in the preset network topology, a link with a total renewable energy content greater than or equal to a preset energy threshold is selected as the first link from the at least one link. Thus, prioritizing the deployment of links with a total renewable energy content greater than or equal to the preset energy threshold effectively reduces the consumption of non-renewable energy.
[0082] In order to effectively reduce the consumption of non-renewable energy while ensuring the quality of user service, in one embodiment, the link determination method mentioned above may further include the following steps:
[0083] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0084] Obtain the link transmission delay of each of at least one second link;
[0085] The first link is determined as the link whose transmission delay is less than or equal to a preset transmission delay among at least one second link.
[0086] The aforementioned preset transmission delay can be set in advance based on actual experience or circumstances, and is not specifically limited here.
[0087] In one example, the master orchestrator can search for at least one second link in a preset network topology, starting from the source node and ending at the destination node. It can then obtain the link transmission delay of each of the at least one second link and determine the second link whose link transmission delay is less than or equal to the preset transmission delay as the first link.
[0088] In another example, the master orchestrator can search for at least one second link in a preset network topology, starting from the source node and ending at the destination node. It can then obtain the link transmission delay and the total amount of renewable energy for each of the at least one second link, so that it can subsequently determine that the second link whose link transmission delay is less than or equal to the preset transmission delay and whose total amount of renewable energy is greater than or equal to the preset energy threshold is the first link.
[0089] More specifically, after obtaining the link transmission delay of each of the at least one second link, the master orchestrator can first determine whether the link transmission delay of each second link is less than or equal to a preset transmission delay. If it is less than or equal to, the second link is retained; if it is greater than, it is discarded. Then, from the filtered second links whose link transmission delay is less than or equal to the preset transmission delay, the second link whose renewable energy is greater than or equal to a preset energy threshold can be selected as the first link.
[0090] Alternatively, the main editor can first obtain the total amount of renewable energy in each of the at least one second link, and then determine whether the total amount of renewable energy in each second link is greater than or equal to a preset energy threshold. If it is greater than or equal to the threshold, the second link is retained; if it is less than the threshold, the second link is discarded. Then, the link with a transmission delay less than or equal to the preset transmission delay can be selected from the second links after filtering based on the total amount of renewable energy as the first link.
[0091] In this embodiment, during the process of determining the first link from the second link, the link transmission latency of the second link can be taken into account, thereby selecting a better first link from the second link to enable the subsequent deployment of multiple virtual network functions. This effectively reduces the consumption of non-renewable energy while ensuring the quality of user service.
[0092] Based on this, in one embodiment, the step of searching for at least one second link in a preset network topology, starting from the source node and ending at the destination node, may specifically include the following steps:
[0093] Starting from the source node and ending at the destination node, at least one second link is obtained by using the tabu search algorithm in the preset network topology.
[0094] Specifically, after receiving an SFC request, the master editor can use the tabu search algorithm to search for at least one second link in the preset network topology, starting from the source node and ending at the destination node. In other words, it can search for all reachable links from the source node to the destination node in the preset network topology.
[0095] In this embodiment, the tabu algorithm can be used to accurately and quickly search for all reachable links from the source node to the destination node in the preset network topology, so that the first link that meets the preset conditions can be determined in the future.
[0096] To more comprehensively describe the link method provided in the embodiments of this application, in one embodiment, the above-mentioned S240 may specifically include the following steps:
[0097] For each of the multiple nodes, the first feasible subchain whose energy consumption cost meets the preset energy consumption condition is determined from at least one first feasible subchain corresponding to the node as the second feasible subchain;
[0098] Based on the second feasible subchain corresponding to each node, the target link for deploying the virtual network functions corresponding to multiple virtual network function information is determined.
[0099] Specifically, the master orchestrator can determine, for each of the multiple nodes, a first feasible subchain whose energy consumption cost meets the preset energy consumption conditions from at least one first feasible subchain corresponding to the node as a second feasible subchain. Then, based on the second feasible subchain corresponding to each node, it can determine the target link for deploying the virtual network functions corresponding to the multiple virtual network function information.
[0100] In this embodiment, a second feasible subchain with acceptable energy consumption cost can be determined from at least one first feasible subchain corresponding to each node, and the target link can be accurately determined based on the second feasible subchain corresponding to each node.
[0101] To more accurately describe the link determination method provided in the embodiments of this application, in one embodiment, the link determination method mentioned above may further include:
[0102] Detect the total amount of renewable energy in the target link;
[0103] If the reduction in the total amount of renewable energy on the target link exceeds a preset value, the virtual network functions deployed on the target link will be migrated to the link to be migrated.
[0104] The aforementioned preset values can be pre-set based on actual experience or circumstances. Additionally, in some embodiments, the energy cost of the link to be migrated is lower than the energy cost of the target link.
[0105] Specifically, the master orchestrator can detect the total amount of renewable energy on the target link, and if the reduction in the total amount of renewable energy on the target link is greater than a preset value, that is, if the total amount of renewable energy on the target link is reduced too much, the master orchestrator can migrate the virtual network functions deployed on the target link to the link to be migrated.
[0106] It should also be noted that the process of determining the link to be migrated is similar to the process of determining the target link, and will not be specifically limited here.
[0107] It should be noted here that before migrating virtual network functions, the energy consumption cost of the target link and the energy consumption cost of the link to be migrated need to be determined. Mapping energy consumption mainly includes the computing power consumption from server equipment and the power consumption from large switches. Servers have three working modes: active mode, idle mode, and shutdown mode. When the server is in shutdown mode, the power consumption is 0. In idle mode, although the server is on, the load is zero. At this time, a certain amount of power will be consumed to maintain normal operation, which we call basic power consumption. In active mode, the power consumption of the server depends on the utilization rate of server resources, including CPU computing resources, storage resources, and hardware equipment. Among them, the utilization rate of CPU computing resources is the main factor. As the CPU utilization rate increases, the power consumption of the server shows a linear positive correlation growth. Therefore, the power consumption of the server can be expressed by formula (1):
[0108]
[0109] in, This represents the basic power consumption of server n. U represents the power consumption of server n when it is fully loaded, i.e., when CPU utilization is 100%. cpu This represents the CPU utilization of server n.
[0110] SFC cross-domain mapping includes VNF deployment and VNF connection. After a VNF is instantiated on a server, it still needs to be forwarded by a switch to complete the mapping. The power consumption of the switch includes: the power consumption for maintaining the normal operation of the switch and the power consumption of the ports opened by the switch during forwarding. A port is the interface for communication between a switch and other network devices. When there are data packets being transmitted on the direct link between two switches, the ports of both switches are in use. It is known that the power consumption of each port on a switch when it is opened is a fixed value. As the number of ports opened increases, the power consumption of the switch increases in a stepwise manner. Therefore, the power consumption of the switch can be expressed by formula (2):
[0111]
[0112] in, This represents the power consumption when switch k is turned on. This indicates the number of ports that switch k has open. This represents the power consumption of each port on switch k when it is open. The ports open on switch k include those opened when k is the outgoing node and those opened when k is the incoming node; the sum of these two is the power consumption. Represented as formula (3):
[0113]
[0114] Where iadj(k) represents the set of neighboring nodes with switch k as the inflow node, and oadj(k) represents the set of neighboring nodes with switch k as the outflow node. When link (i,j) is mapped, X ij =1, otherwise 0. λ ij This indicates the previous usage status of link (i,j). If the link has already been used, there is no need to open a new port this time, meaning no additional power consumption is incurred. The above X... mk Let X be the energy cost from node m to switch k, where m ∈ the set of neighboring nodes whose inflow node is switch k. Correspondingly, the above X... kn Let $n$ be the energy cost from switch $k$ to node $n$, where $n$ is the set of neighboring nodes with switch $k$ as the outgoing node.
[0115] This indicates the number of ports that switch k has open. This represents the electrical energy consumed when each port on switch k is turned on.
[0116] The ports opened by switch k include the ports opened when k is the outgoing node and the ports opened when k is the incoming node; the sum of these two is the total number of ports opened.
[0117] iadj(k) represents the set of neighboring nodes with switch k as the inflow node, and oadj(k) represents the set of neighboring nodes with switch k as the outflow node.
[0118] In summary, the total power consumption generated by mapping one SFC is equal to the sum of the power consumption of all servers and switches, which can be expressed by formula (4):
[0119]
[0120] To reduce energy consumption and environmental pollution during cross-domain mapping of service function chains, while improving resource utilization, this section establishes an ILP model. The objective function of this model is to minimize the total energy consumption of SFCs arriving at all times. ttotal Let t represent the total energy consumption at the SFC mapping point reached at time t. Therefore, the target model is represented as (5):
[0121]
[0122] In this embodiment, by detecting the total amount of renewable energy on the target link, if the reduction in the total amount of renewable energy on the target link exceeds a preset value, the virtual network function can be migrated from the current link to a less active link or a link with more renewable resources. This significantly reduces energy consumption.
[0123] In some embodiments, the SFC request mentioned above includes a request validity period. Based on this, the link determination method mentioned above may further include an entry step:
[0124] Real-time detection of whether the request is currently valid;
[0125] Update the target link if the request is not currently valid.
[0126] The validity period of the above request can be preset based on actual experience or circumstances, and no specific limitation is made here.
[0127] Specifically, the master editor can monitor in real time whether the request is valid at any given moment, and update the target link if the request is not valid at any given moment.
[0128] It should be noted that when the energy monitor detects an SFC request expiration and a departure event, an SFC reconfiguration phase is executed. This involves redeploying the VNFs of the mapped SFCs to all domains where resource changes have occurred. This problem is similar to the bin packing problem, where VNFs are treated as items and other active servers are treated as bins of varying capacities. An improved Best Fit Deceasing (BFD) algorithm is proposed to address this redeployment phase.
[0129] Based on the same inventive concept, embodiments of this application also provide a link determination device. (Specifically combined with...) Figure 3 The link determination device provided in the embodiments of this application will be described in detail.
[0130] Figure 3 This is a schematic diagram of a link determination device provided in an embodiment of this application.
[0131] like Figure 3 As shown, the link determination device 300 may include:
[0132] The receiving module 310 is used to receive a Service Function Chain (SFC) request. The SFC request includes a source node, a destination node, and multiple virtual network function information. The execution of the virtual network functions corresponding to the multiple virtual network function information satisfies a preset order.
[0133] Search module 320 is used to search for a first link that meets preset conditions in a preset network topology, starting from the source node and ending at the destination node. The first link includes multiple nodes, and each node is used to deploy at least one virtual network function corresponding to a virtual network function among multiple virtual network function information.
[0134] The acquisition module 330 is used to acquire the energy consumption cost of at least one first feasible subchain corresponding to each of the multiple nodes. The node includes multiple first sub-nodes, each first feasible subchain includes at least one second sub-node, and each first feasible subchain is used to deploy at least one virtual network function corresponding to the node.
[0135] The determination module 340 is used to determine the target link for deploying virtual network functions corresponding to multiple virtual network function information based on at least one first feasible sub-chain corresponding to each node. The target link includes second feasible sub-chains corresponding to multiple nodes respectively. Each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain corresponding to the second feasible sub-chain whose energy consumption cost meets the preset energy consumption conditions.
[0136] In one embodiment, the search module described above is specifically used for:
[0137] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0138] Obtain the total amount of renewable energy in each of at least one second link;
[0139] A second link in which the total amount of renewable energy is greater than or equal to a preset energy threshold is identified as a first link.
[0140] In one embodiment, the search module described above is specifically used for:
[0141] Starting from the source node and ending at the destination node, at least one second link is found in the preset network topology.
[0142] Obtain the link transmission delay of each of at least one second link;
[0143] The first link is determined as the link whose transmission delay is less than or equal to a preset transmission delay among at least one second link.
[0144] In one embodiment, the determining module is specifically used for:
[0145] For each of the multiple nodes, the first feasible subchain whose energy consumption cost meets the preset energy consumption condition is determined from at least one first feasible subchain corresponding to the node as the second feasible subchain;
[0146] Based on the second feasible subchain corresponding to each node, the target link for deploying the virtual network functions corresponding to multiple virtual network function information is determined.
[0147] In one embodiment, the link determination device may further include a detection module and a migration module.
[0148] The detection module is used to detect the total amount of renewable energy in the target link;
[0149] The migration module is used to migrate virtual network functions deployed on the target link to the link to be migrated when the reduction in the total amount of renewable energy on the target link is greater than a preset value. The energy consumption cost of the link to be migrated is lower than that of the target link.
[0150] In one embodiment, the SFC request includes a request validity period; the link determination device may further include an update module.
[0151] The detection module is used to detect in real time whether the request is within its validity period at the current moment;
[0152] The update module is used to update the target link when the request is not currently valid.
[0153] In this embodiment, a Service Function Chain (SFC) request can be received. The SFC request includes a source node, a destination node, and multiple virtual network function (VFC) information. The execution of the VFCs corresponding to the multiple VFCs satisfies a preset order. Based on this, a first link satisfying the preset conditions can be searched in the preset network topology, starting from the source node and ending at the destination node. Since the first link includes multiple nodes, and each node is used to deploy the VFC corresponding to at least one of the multiple VFCs, the energy consumption cost of at least one first feasible sub-chain corresponding to each node is obtained. Then, based on the at least one first feasible sub-chain corresponding to each node, a target link for deploying the VFCs corresponding to the multiple VFCs can be determined. The target link includes second feasible sub-chains corresponding to the multiple nodes. Each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain whose energy consumption cost satisfies the preset energy consumption conditions. In this way, unnecessary resource waste can be avoided and energy consumption can be reduced.
[0154] The various modules in the link determination device provided in the embodiments of this application can achieve... Figure 2 The method steps of the illustrated embodiment, and the corresponding technical effects they achieve, will not be described in detail here for the sake of brevity.
[0155] Figure 4 A schematic diagram of the hardware structure of the electronic device provided in an embodiment of this application is shown.
[0156] An electronic device may include a processor 401 and a memory 402 storing computer program instructions.
[0157] Specifically, the processor 401 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0158] Memory 402 may include mass storage for data or instructions. For example, and not limitingly, memory 402 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 402 may include removable or non-removable (or fixed) media. Where appropriate, memory 402 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 402 is non-volatile solid-state memory.
[0159] Memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to one aspect of this disclosure.
[0160] The processor 401 implements any of the link determination methods in the above embodiments by reading and executing computer program instructions stored in the memory 402.
[0161] In one example, the electronic device may also include a communication interface 403 and a bus 410. For example, Figure 4 As shown, the processor 401, memory 402, and communication interface 403 are connected through bus 410 and complete communication with each other.
[0162] The communication interface 403 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0163] Bus 410 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 410 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0164] Furthermore, in conjunction with the link determination method in the above embodiments, this application embodiment can provide a computer storage medium for implementation. This computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement the link determination method provided in this application embodiment.
[0165] This application also provides a computer program product, which includes a computer program that is executed by a processor to implement the link determination method provided in this application.
[0166] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0167] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0168] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0169] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable link determination device to produce a machine such that these instructions, executable via the processor of the computer or other programmable link determination device, enable the implementation of the function / action specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, can also be implemented by special-purpose hardware performing the specified function or action, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0170] The above are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A link determination method, characterized in that, The method includes: Receive a Service Function Chain (SFC) request, the SFC request including a source node, a destination node, and multiple virtual network function information, the execution of the virtual network functions corresponding to the multiple virtual network function information satisfying a preset order; Starting from the source node and ending at the destination node, a first link that meets the preset conditions is searched in the preset network topology. The first link includes multiple nodes, and each node is used to deploy a virtual network function corresponding to at least one virtual network function information among the multiple virtual network function information. For each of the plurality of nodes, the energy consumption cost of at least one first feasible subchain corresponding to the node is obtained. The node includes a plurality of first sub-nodes, each first feasible subchain includes at least one second sub-node, the plurality of first sub-nodes includes at least one second sub-node, and each first feasible subchain is used to deploy at least one virtual network function corresponding to the node. Based on at least one first feasible subchain corresponding to each node, a target link for deploying virtual network functions corresponding to multiple virtual network function information is determined. The target link includes a second feasible subchain corresponding to each of the multiple nodes. Each second feasible subchain includes a feasible subchain in at least one first feasible subchain corresponding to the second feasible subchain whose energy consumption cost meets a preset energy consumption condition.
2. The method according to claim 1, characterized in that, The step of searching for a first link that meets preset conditions in a preset network topology, with the source node as the starting point and the destination node as the ending point, includes: Starting from the source node and ending at the destination node, at least one second link is obtained by searching in the preset network topology; Obtain the total amount of renewable energy in each of at least one second link; The first link is determined by identifying the second link in which the total amount of renewable energy is greater than or equal to a preset energy threshold.
3. The method according to claim 1 or 2, characterized in that, The step of searching for a first link that meets preset conditions in a preset network topology, with the source node as the starting point and the destination node as the ending point, includes: Starting from the source node and ending at the destination node, at least one second link is obtained by searching in the preset network topology; Obtain the link transmission delay of each of at least one second link; The first link is determined to be the second link in which the transmission delay of the at least one second link is less than or equal to a preset transmission delay.
4. The method according to claim 1, characterized in that, The step of determining the target link for deploying virtual network functions corresponding to multiple virtual network function information based on at least one first feasible sub-chain corresponding to each node includes: For each of the plurality of nodes, a first feasible subchain whose energy consumption cost meets the preset energy consumption condition is determined from at least one first feasible subchain corresponding to the node as a second feasible subchain; Based on the second feasible subchain corresponding to each node, the target link for deploying the virtual network functions corresponding to the multiple virtual network function information is determined.
5. The method according to any one of claims 1, 2, and 4, characterized in that, The method further includes: Detect the total amount of renewable energy in the target link; If the reduction in the total amount of renewable energy on the target link is greater than a preset value, the virtual network function deployed on the target link is migrated to the link to be migrated, where the energy consumption cost of the link to be migrated is lower than that of the target link.
6. The method according to any one of claims 1, 2, and 4, characterized in that, The SFC request includes a request validity period; The method further includes: Real-time detection of whether the current moment is within the validity period of the request; If the current time is not within the validity period of the request, update the target link.
7. A link determination device, characterized in that, The device includes: The receiving module is used to receive Service Function Chain (SFC) requests. The SFC request includes a source node, a destination node, and multiple virtual network function information. The execution of the virtual network functions corresponding to the multiple virtual network function information satisfies a preset order. The search module is used to search for a first link that meets preset conditions in a preset network topology, starting from the source node and ending at the destination node. The first link includes multiple nodes, and each node is used to deploy a virtual network function corresponding to at least one virtual network function information among the multiple virtual network function information. The acquisition module is used to acquire the energy consumption cost of at least one first feasible subchain corresponding to each of the plurality of nodes. The node includes a plurality of first sub-nodes, each first feasible subchain includes at least one second sub-node, the plurality of first sub-nodes includes at least one second sub-node, and each first feasible subchain is used to deploy at least one virtual network function corresponding to the node. The determining module is configured to determine a target link for deploying virtual network functions corresponding to multiple virtual network function information based on at least one first feasible sub-chain corresponding to each node. The target link includes a second feasible sub-chain corresponding to each of the multiple nodes. Each second feasible sub-chain includes at least one feasible sub-chain in the first feasible sub-chain corresponding to the second feasible sub-chain whose energy consumption cost meets a preset energy consumption condition.
8. An electronic device, characterized in that, The device includes: a processor and a memory storing computer program instructions; The processor reads and executes the computer program instructions to implement the link determination method as described in any one of claims 1-6.
9. A computer storage medium, characterized in that, The computer storage medium stores computer program instructions, which, when executed by a processor, implement the link determination method as described in any one of claims 1-6.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the link determination method as described in any one of claims 1-6.
Citation Information
Patent Citations
Virtual network function deployment method and device, equipment and medium
CN114598613A
Virtual network function deployment method and device, electronic equipment and storage medium
CN115913966A