A method for optimizing service routing performance in large-scale service network scenarios
By building a tree network in a decentralized service network and optimizing routing strategies using multi-objective genetic algorithms, the problems of routing delay and load imbalance are solved, and the service routing performance is significantly improved.
Patent Information
- Application Number
- CN202310177931.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-28
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2043-02-28
AI Technical Summary
Due to the problems of poor routing latency and unbalanced load in decentralized hierarchical service network, it is difficult for the existing technology to effectively adjust the routing strategy to reduce latency and balance.
Build a tree-like network based on service routing nodes, use multi-objective genetic algorithm to optimize load and delay performance indicators, and monitor and adjust routing strategies in real time through the minimum spanning tree multicast network and NSGA-2 algorithm to reduce routing latency and load imbalance .
It significantly reduces routing latency and load imbalance and improves service routing performance. The NSGA-2 algorithm can converge stably to the global optimal solution, improving the availability and efficiency of the service network.
Smart Images

Figure CN116319506B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of service networks, and in particular relates to a method for optimizing service routing performance in a large-scale service network. Background Art
[0002] The decentralized layered service network is a service network architecture with high scalability, decentralization and load balancing characteristics in large-scale scenarios. It provides infrastructure support for the interconnection between massive services. Each service entity is marked and published in the service network. Service consumers can discover various services in the service network through the retrieval mechanism, and can combine or aggregate services according to demand to form more complex service solutions. As a large-scale service network, the decentralized layered service network itself has a routing mechanism, but due to the dynamic nature of the network itself, the routing path needs to be adjusted in real time according to the network environment to reduce routing latency. At the same time, as a network infrastructure, the service network needs to perceive the resource occupancy of network nodes in real time, so as to dynamically perform load balancing during the service routing process to ensure that network nodes are not overloaded.
[0003] As a large-scale service network, the decentralized hierarchical service network has its own routing mechanism, but the routing mechanism cannot be adjusted well according to the dynamic nature of the network itself, so the routing delay is not optimal. At the same time, the routing strategy in the network may cause node overload.
[0004] Academic Literature Research on Key Technologies of Cross-border Service Networks [D]. Zhejiang University, 2019. An ExtendNet network is disclosed, which can be imaged as a tree structure. Its leaf nodes are service exchange nodes, which connect to service providers to open services. The internal nodes are service routing nodes, which are responsible for message routing. The top layer of the network is a super node, which is responsible for storing service information. The top layer of ExtendNet forms a structured P2P network through the DHT protocol, and the service information is distributed and stored in the top-level network node cluster. ExtendNet solves the problems of cross-border service integration, combination, retrieval, routing, etc.
[0005] Patent document CN115550855 A discloses a distributed ad hoc network real-time intercom method based on BIS. The method is that each Bluetooth device sends a broadcast packet carrying its own node information and neighbor node information, receives broadcast packets from neighbor nodes, and obtains the Bluetooth device addresses and clock information of all nodes in the network; selects the Bluetooth clock of a certain Bluetooth device as the network clock; each Bluetooth device occupies different positions on the network time axis according to its own sorting information, and obtains the BIS position arrangement; each Bluetooth device starts to create a BIS broadcast, sends a network broadcast packet, and performs real-time intercom interaction. Although decentralization is achieved to ensure real-time full-duplex two-way communication, there is a problem of load imbalance due to the distributed dynamic network. Summary of the invention
[0006] In order to solve the above problems, the present invention provides a service routing performance optimization method in a large-scale service network scenario, which can optimize the service routing strategy in a decentralized hierarchical network, thereby reducing routing delay and load imbalance.
[0007] A method for optimizing service routing performance in a large-scale service network scenario, comprising:
[0008] A tree network is constructed based on service routing nodes as backbone nodes and service exchange nodes expanding outward, and service information is stored in service exchange nodes connected to service providers.
[0009] Based on the network communication cost between service routing nodes, one or more minimum spanning tree multicast networks are constructed. The node with the smallest total network communication cost with other service routing nodes in the minimum spanning tree multicast network is used as a controller node, and the n service routing nodes adjacent to each service routing node are used as a dynamic neighbor node set of the service routing node. The controller node updates the dynamic neighbor nodes based on regular network communication cost detection to ensure that the total network communication cost of the minimum spanning tree multicast network is minimized.
[0010] According to the average number of bytes of service routing data of the service routing nodes in the tree network and the upper limit of the network bandwidth, a load performance indicator based on the node load level is constructed.
[0011] According to the routing path delay of the service routing node in the tree network, a delay performance indicator of the node network delay is constructed.
[0012] A multi-objective genetic algorithm is used to optimize the load performance index and the time performance index, and the optimization result is output to the controller node corresponding to each service routing node. The controller node adjusts the routing strategy of the minimum spanning tree multicast network according to the input optimization result.
[0013] The present invention adopts a dual-objective optimization algorithm in a specific tree network to monitor and adjust the routing strategy in the network in real time, thereby reducing routing delay and load imbalance.
[0014] Preferably, the expression of the load performance index is as follows:
[0015]
[0016] In the formula, load i ′ Indicates the current load level after adopting the new routing solution. It indicates the average load level of all service routing nodes in the minimum spanning tree multicast network. n indicates the number of service routing nodes in the minimum spanning tree multicast network.
[0017] Specifically, the expression of the current load level is as follows:
[0018]
[0019] In the formula, Bandwidth max represents the bandwidth limit, m represents the average number of bytes of service routing packets, load max The load limit of the service routing node, QPS i Indicates the number of requests received by the i-th service routing node per second, CPU max Indicates the maximum number of requests per second supported by the CPU performance of the current service routing node, δ j It represents the estimated load level increase caused by the request route sent by the jth service routing node passing through the ith service routing node, x i =(r1,r2,…,r n ) represents the routing path of the ith service routing node, and n represents the number of service routing nodes in the minimum spanning tree multicast network.
[0020] Preferably, the expression of the delay performance indicator is as follows:
[0021]
[0022] Where n represents the number of service routing nodes in the small spanning tree multicast network, delay i represents the routing path delay of the i-th service routing node.
[0023] Specifically, the expression of the routing path delay is as follows:
[0024]
[0025] In the formula, Represents node rj to r j+1 The communication delay of m is the average number of bytes of the service routing data packet, and j is the node number.
[0026] Specifically, the multi-objective genetic algorithm is solved by limiting the routing path relationship between the current service routing node and the next target service routing node.
[0027] Preferably, the multi-objective genetic algorithm uses the NSGA-2 algorithm, and its optimization objectives are as follows:
[0028] minobj=(delay domain , unevenness)
[0029] The expressions of the limiting conditions are as follows:
[0030]
[0031] Where n represents the number of service routing nodes in the minimum spanning tree multicast network, r i and r j Indicates the network node number through which the service route passes in the minimum spanning tree multicast network.
[0032] Specifically, the multi-objective optimization algorithm process based on NSGA-2 is as follows:
[0033] 1. Population initialization: Randomly generate 100 chromosomes of length 2000.
[0034] 2. Use unevenness and delay domain Calculate the fitness of all chromosomes and store them in the fitness array.
[0035] 3. Sort all chromosomes using non-dominated sorting.
[0036] 4. Calculate the crowding degree of all chromosomes.
[0037] 5. Using non-dominated order and crowding as weights, continuously select chromosomes for offspring reproduction, and perform crossover and mutation with a probability of 0.01 until the size of the new population formed is 200.
[0038] 6. Use non-dominated order as the first sorting criterion and crowding as the second sorting criterion to select 100 chromosomes from the new population as the next generation population.
[0039] 7. Repeat steps 1-6 until all chromosomes have the same fitness or until 1000 generations have been reached.
[0040] Specifically, the parameter settings of the optimization process include:
[0041] It is assumed that there are 1000 service routing nodes in the minimum spanning tree multicast network, and the network communication delay between nodes is randomly generated between 0 and 100ms;
[0042] The total number of iterations is set to 1000 generations, the population size is set to 100, the crossover probability is initialized to 0.5, and the mutation probability is initialized to 1. These two parameters change dynamically according to the current generation. The chromosome length is 2000, representing the routing path of 100 nodes. These 100 network nodes are different from each other and randomly distributed in the minimum spanning tree multicast network;
[0043] The termination condition is set to the point where the fitness of all Pareto optimal solutions is the same or the number of generations reaches 1000.
[0044] Compared with the prior art, the present invention has the following beneficial effects:
[0045] The present invention is based on a specific de-neutralized network structure and adopts a dual-objective optimization method to optimize the service routing strategy and reduce routing delay and load imbalance. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 A schematic diagram of the structure of a tree network provided in this embodiment;
[0047] Figure 2 A schematic diagram of a service routing performance optimization method provided in this embodiment;
[0048] Figure 3 A Pareto optimal boundary diagram in the optimization result provided in this embodiment;
[0049] Figure 4 A diagram showing the change in routing delay and imbalance of the network after optimization provided in this embodiment;
[0050] Figure 5 A comparison chart of multiple optimizations performed using the NSGA-2 algorithm and a traditional optimization algorithm provided in this embodiment. DETAILED DESCRIPTION
[0051] The present invention is further described below in conjunction with specific examples. It should be understood that these examples are only to help those of ordinary skill in the art understand the principles and knowledge of the present invention, and are not intended to limit the scope of the present invention, and cannot be considered to limit the application scenarios of the present invention. In addition, it should be understood that after reading the content taught by the present invention, those skilled in the art may make various changes or modifications to the present invention, but the deformation, changes and conversions made to the embodiments based on the principles and purposes of the present invention also fall within the scope defined by the claims attached to this application. And it is obvious that this specification is only exemplified by preferred embodiments, and there is no need to exhaust all embodiments.
[0052] like Figure 1 As shown, it is a tree-like network based on service routing nodes as backbone nodes and service switching nodes expanding outward.
[0053] Service routing nodes form the backbone of the network and have the following functions and features:
[0054] 1. When the service routing node is located at the second-to-last layer in the network, it is responsible for access control of multiple service switching nodes, and the number of switching nodes accessed by a single routing node does not exceed a certain threshold.
[0055] 2. Manage the routing nodes or switching nodes of the lower layer, control the joining and exit of the lower layer nodes, and ensure that the number of lower layer nodes that a single routing node can access does not exceed a certain threshold. Generally speaking, a routing node contains an abbreviated representation or index of all services of the lower layer nodes.
[0056] 3. Responsible for service routing, service discovery, service caching, service traffic monitoring and other functions, forming the core skeleton of the entire service network.
[0057] 4. Dynamically perceive changes in network resources of the minimum spanning tree multicast network, provide load balancing functions, and optimize routing paths in real time.
[0058] Service exchange node, which has the following functions and features:
[0059] 1. As a network edge node, it is responsible for the access of service providers, generally enterprises, developers, etc. Service providers directly register services on the service exchange node and store them through the built-in database. Therefore, the service exchange node is responsible for the maintenance and update of service information.
[0060] 2. The service exchange node is also responsible for processing service query requests and searching and matching in the internal database according to the request information. Since the service scale of each service provider is not too large, the service search efficiency at the service exchange node is higher.
[0061] 3. It assumes the function of decentralization in the service network. All service information is stored at the service provider at the edge of the network, thus avoiding the problems caused by centralized storage. The localized storage of services also saves the cost of copying service information in the network. The cost of registering, updating and deleting service information is lower, so the network overhead caused by information maintenance is very small.
[0062] The tree network contains one or more minimum spanning tree multicast networks, which construct an undirected weighted graph representing the network by real-time monitoring of the network communication cost between nodes, where the edge weight is the node communication cost, and the communication cost is represented by the round-trip delay of direct network communication between two network nodes at the application layer.
[0063] By calculating the minimum spanning tree of the undirected weighted graph in real time, the network can update the optimal multicast routing table for each node, which ensures that the total network load caused by multicast is minimized. In an ideal minimum spanning tree multicast network, each network node needs to maintain the communication cost from the node to all other nodes in the network.
[0064] In a small-scale network, such as a network with less than 100 nodes, maintaining this data will not cause too much network load. However, when the network scale becomes larger, since the time complexity of each real-time update of this data is O(n^2), where n represents all nodes in the network, frequent data updates will cause serious bandwidth occupancy and network load.
[0065] When the network scale used in this embodiment is less than 6400 nodes, only 10 neighbor nodes need to be maintained to form a global optimal minimum spanning tree, and at this time, there is no degradation in the total network delay.
[0066] The construction process of the minimum spanning tree multicast network is as follows:
[0067] The node with the smallest total communication cost with other nodes in the network is selected as the controller node in the multicast network.
[0068] Network nodes periodically detect and update the network communication costs with all neighboring nodes.
[0069] The network node periodically randomly selects a node other than the neighbor node to detect the network communication cost. If the communication cost is lower than any neighbor, the neighbor is replaced.
[0070] The network node sends the updated neighbor communication cost data to the controller node.
[0071] The controller node uses the collected network communication cost data of all nodes to establish an undirected weighted graph representing the network and calculates the minimum spanning tree of the graph.
[0072] The controller node determines the difference between the total weight of the minimum spanning tree and the last calculated result. If it exceeds a certain threshold, it sends an instruction to update the routing table of all network nodes.
[0073] In this construction process, the controller node improves the stability of the network by setting the update threshold and minimizes the network bandwidth occupation caused by the routing table update. It is worth noting that since the minimum spanning tree caused by maintaining a constant level of neighbor network communication cost does not guarantee to reach the global optimum, the network node needs to randomly select other nodes in the network for network delay testing at regular intervals. If the communication cost is less than the existing neighbor, it will be replaced. Through this measure, the minimum spanning tree network can continuously approach the global optimum.
[0074] In general, the dynamic delay-based minimum spanning tree multicast network brings the following benefits: Compared with the flooding, random walk, hop limit and other methods used in traditional unstructured networks, the minimum spanning tree structure greatly reduces the network bandwidth usage and the network load, thereby improving the overall availability and efficiency of the service network. Compared with the ordinary minimum spanning tree multicast network, the nodes in this network only need to maintain the constant level of neighbor communication cost data and can gradually approach the global optimum, thus further reducing the network load and supporting medium and large network scales. Compared with IP layer multicast, the application layer multicast network is easy to deploy and can ignore the heterogeneity of the underlying network.
[0075] like Figure 2 As shown, a service routing performance optimization method for a tree network proposed in the above embodiment includes:
[0076] According to the average number of bytes of service routing data of the service routing nodes in the tree network and the upper limit of the network bandwidth, a load performance index based on the node load level is constructed:
[0077] The expression of the load performance index is as follows:
[0078]
[0079] In the formula, load i ′ Indicates the current load level after adopting the new routing solution. It indicates the average load level of all service routing nodes in the minimum spanning tree multicast network. n indicates the number of service routing nodes in the minimum spanning tree multicast network.
[0080] The expression for the current load level is as follows:
[0081]
[0082] In the formula, Bandwidth max represents the bandwidth limit, m represents the average number of bytes of service routing packets, load max The load limit of the service routing node, QPS iIndicates the number of requests received by the i-th service routing node per second, CPU max Indicates the maximum number of requests per second supported by the CPU performance of the current service routing node, δ j It represents the estimated load level increase caused by the request route sent by the jth service routing node passing through the ith service routing node, x i =(r1,r2,…,r n ) represents the routing path of the ith service routing node, and n represents the number of service routing nodes in the minimum spanning tree multicast network.
[0083] According to the routing path delay of the service routing node in the tree network, the delay performance index of the node network delay is constructed:
[0084] The expression of the delay performance index is as follows:
[0085]
[0086] Where n represents the number of service routing nodes in the small spanning tree multicast network, delay i represents the routing path delay of the i-th service routing node.
[0087] The expression of the routing path delay is as follows:
[0088]
[0089] In the formula, Represents node r j to r j+1 The communication delay of m is the average number of bytes of the service routing data packet, and j is the node number.
[0090] The multi-objective NSGA-2 genetic algorithm is used to optimize the load performance index and time performance index:
[0091] minobj=(delay domain , unevenness)
[0092] The expressions of the limiting conditions are as follows:
[0093]
[0094] Where n represents the number of service routing nodes in the minimum spanning tree multicast network, r i and r j Indicates the network node number through which the service route passes in the minimum spanning tree multicast network.
[0095] In this example, the solution to the bi-objective optimization problem x=(x1,x2,…,x n) to form an ordered sequence, and replace the specific service routing node number with the neighbor number. That is, if node j is node i The second neighbor of node and these two nodes exist consecutively in the routing path, then node j Appears as the number 2 in the chromosome. Since the service routing node performance indicator monitoring stipulates that the number of neighbors detected by the node is 10, each number in the chromosome is limited to between 0 and 10, and 10 means that the route reaches the end point (the father node). For example, the chromosome (0,2,10,3,10) contains two routing paths. The first path starts from a preset node, passes through the first neighbor, and then starts from the second neighbor of the node, and finally arrives at the father node. The length of the routing path is 2. Since a chromosome that is too long may make it difficult for the algorithm to converge, this embodiment stipulates that the chromosome can only contain routing paths for 10% of the nodes in the network.
[0096] Finally, the optimization result is output to the controller node corresponding to each service routing node, and the controller node adjusts the routing strategy of the minimum spanning tree multicast network according to the input optimization result.
[0097] like Figure 3 As shown in the figure, it is the Pareto optimal frontier of the optimization result. The horizontal axis of the figure is the percentage of the optimized service routing delay to the unoptimized service routing delay, and the vertical axis is the percentage of the optimized imbalance to the original imbalance in the minimum spanning tree multicast network. It can be observed that the lowest service routing delay in the Pareto optimal frontier is 46.1% of the original delay, and the lowest imbalance accounts for 96.4% of the original imbalance.
[0098] like Figure 4 As shown, Figure (a) is the routing delay change diagram, and Figure (b) is the imbalance change diagram. It can be seen that the NSGA-2 algorithm can gradually converge to the global optimal solution with the generational growth, rather than stopping at the local optimal solution prematurely. Therefore, the algorithm solution is effective.
[0099] like Figure 5 As shown in the figure, the optimization effects of the NSGA-2 algorithm and the traditional optimization algorithm are respectively shown. The figure also includes the optimal routing delay and the optimal imbalance, with a total of 20 solutions. By observation, it can be found that the optimal service routing delay is stable between 40% and 50%, with a small fluctuation range, while the optimal imbalance is stable between 94% and 97%, with a very small fluctuation range. Therefore, it can be concluded that the Pareto optimal frontier obtained by the NSGA-2 algorithm is relatively stable, and multiple runs can obtain the global optimal solution with a small fluctuation range.
[0100] The dual-objective optimization problem proposed in this paper can indeed optimize service routing. Through the NSGA-2 algorithm, this paper reduces the service routing delay by 53.9% and the load imbalance by 2.98%, greatly improving the performance of service routing.
[0101] More importantly, the algorithm used in this embodiment can not only obtain the Pareto optimal boundary of multi-objective optimization, but also has high stability. Multiple experiments can obtain the global optimal solution with a small fluctuation range. The above two groups of experiments are based on the most 1000 nodes, and the decentralized hierarchical service network is composed of a large number of minimum spanning tree multicast networks, so the experimental results are also applicable to large-scale service scenarios.
[0102] In general, in large-scale scenarios, the dual-objective optimization based on the NSGA-2 algorithm can effectively improve the service routing performance while having high stability.
Claims
1. A method for optimizing service routing performance in a large-scale service network scenario, characterized in that: include: Construct a tree network based on service routing nodes as backbone nodes and service exchange nodes expanding outward, and store service information at service exchange nodes connected to service providers; Based on the network communication cost between service routing nodes, one or more minimum spanning tree multicast networks are constructed, wherein the node with the smallest total network communication cost with other service routing nodes in the minimum spanning tree multicast network is used as a controller node, and the n service routing nodes adjacent to each service routing node are used as a dynamic neighbor node set of the service routing node, and the controller node updates the dynamic neighbor nodes according to regular network communication cost detection to ensure that the total network communication cost of the minimum spanning tree multicast network is minimized; Constructing a load performance indicator based on the node load level according to the average number of bytes of service routing data of the service routing nodes in the tree network and the upper limit of the network bandwidth; Constructing a delay performance indicator of node network delay according to the routing path delay of the service routing node in the tree network; A multi-objective genetic algorithm is used to optimize the load performance index and the delay performance index, and the optimization result is output to the controller node corresponding to each service routing node. The controller node adjusts the routing strategy of the minimum spanning tree multicast network according to the input optimization result.
2. The service routing performance optimization method in a large-scale service network scenario according to claim 1, characterized in that: The expression of the load performance index is as follows: In the formula, load i ′ Indicates the current load level after adopting the new routing solution. It indicates the average load level of all service routing nodes in the minimum spanning tree multicast network. n indicates the number of service routing nodes in the minimum spanning tree multicast network.
3. The service routing performance optimization method in a large-scale service network scenario according to claim 2 is characterized in that: The expression of the current load level is as follows: In the formula, Bandwidth max represents the bandwidth limit, m represents the average number of bytes of service routing packets, load max The load limit of the service routing node, QPS i Indicates the number of requests received by the i-th service routing node per second, CPU max Indicates the maximum number of requests per second supported by the CPU performance of the current service routing node, δ j It represents the estimated load level increase caused by the request route sent by the jth service routing node passing through the ith service routing node, x i =(r1,r2,…,r n ) represents the routing path of the ith service routing node, and n represents the number of service routing nodes in the minimum spanning tree multicast network.
4. The service routing performance optimization method in a large-scale service network scenario according to claim 1, characterized in that: The expression of the delay performance index is as follows: Where n represents the number of service routing nodes in the small spanning tree multicast network, delay i represents the routing path delay of the i-th service routing node.
5. The service routing performance optimization method in a large-scale service network scenario according to claim 4 is characterized in that: The expression of the routing path delay is as follows: In the formula, Represents node r j to r j+1 The communication delay of m is the average number of bytes of the service routing data packet, and j is the node number.
6. The service routing performance optimization method in a large-scale service network scenario according to claim 1, characterized in that: The multi-objective genetic algorithm is solved by limiting the routing path relationship between the current service routing node and the next target service routing node.
7. The method for optimizing service routing performance in a large-scale service network scenario according to claim 1 or 6, characterized in that: The multi-objective genetic algorithm uses the NSGA-2 algorithm, and its optimization objectives are as follows: minobj=(delay domain ,unevenness) The expressions of the limiting conditions are as follows: Where n represents the number of service routing nodes in the minimum spanning tree multicast network, r i and r j Indicates the network node number through which the service route passes in the minimum spanning tree multicast network.
8. The method for optimizing service routing performance in a large-scale service network scenario according to claim 1, characterized in that: The parameter settings of the optimization process include: It is assumed that there are 1000 service routing nodes in the minimum spanning tree multicast network, and the network communication delay between nodes is randomly generated between 0 and 100ms; The total number of iterations is set to 1000 generations, the population size is set to 100, the crossover probability is initialized to 0.5, and the mutation probability is initialized to 1. These two parameters change dynamically according to the current generation. The chromosome length is 2000, representing the routing path of 100 nodes. These 100 network nodes are different from each other and randomly distributed in the minimum spanning tree multicast network; The termination condition is set to the point where the fitness of all Pareto optimal solutions is the same or the number of generations reaches 1000.
Citation Information
Patent Citations
Distributed ad hoc network real-time talkback method based on BIS
CN115550855A
Cloud computing-oriented routing method based on network efficiency priority
CN105323166A
Service routing method for cross-border service network
CN112637059A
