A method, device, and medium for generating optimal paths based on routing protocols
By sending remaining bandwidth monitoring request messages in the routing protocol and dynamically selecting the optimal transmission path, the network congestion problem caused by fixed paths in the routing protocol is solved, and efficient network utilization and transmission efficiency are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-09
- Publication Date
- 2026-04-03
AI Technical Summary
Existing routing protocols use fixed paths when selecting the optimal path, which means they cannot automatically avoid congestion, leading to network congestion and low utilization.
By sending a remaining bandwidth monitoring request message to the destination routing node, receiving and comparing the remaining bandwidth statistics of each transmission path, dynamically selecting the optimal transmission path, and combining the service traffic bandwidth and the remaining bandwidth between routing nodes, load balancing transmission is performed.
Improve network utilization and transmission efficiency, avoid network congestion and bandwidth waste, and dynamically select the optimal path to adapt to changes in business traffic.
Smart Images

Figure CN118784554B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of network transmission technology, and in particular to an optimal path generation method, device and medium based on a routing protocol. Background Technology
[0002] Currently, the widespread use of the internet and the diversification of services have led to a surge in internet traffic, which can easily cause network congestion, increase forwarding latency, and in severe cases, cause packet loss, resulting in a decline in service quality or even unavailability.
[0003] The transmission path selection principles of commonly used routing protocols (such as OSPF and BGP) are complex. When a user selects an optimal path principle, the optimal path for all services is usually fixed. This means that when the optimal path becomes congested, it cannot be automatically avoided, ultimately leading to network congestion and low network utilization. Summary of the Invention
[0004] This application provides an optimal path generation method, device, and medium based on a routing protocol to solve the problem that the optimal path is usually fixed, which leads to network congestion when the optimal path becomes congested.
[0005] The embodiments of this application adopt the following technical solutions:
[0006] On one hand, embodiments of this application provide an optimal path generation method based on a routing protocol. The method includes: a source routing node determining multiple transmission paths for service traffic from the source routing node to a destination routing node; sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node, and receiving remaining bandwidth statistics returned by the destination node for each transmission path; the remaining bandwidth statistics include the remaining bandwidth between each routing node in each transmission path; comparing the service traffic bandwidth with the remaining bandwidth statistics for each transmission path to determine the optimal transmission path for the service traffic.
[0007] In one example, comparing the service traffic bandwidth with the remaining bandwidth statistics of each transmission path to determine the optimal transmission path for the service traffic specifically includes: determining whether there is a first transmission path where the remaining bandwidth between each routing node is greater than the service traffic bandwidth; if there is only one first transmission path, determining the first transmission path as the optimal transmission path for the service traffic; if there are multiple first transmission paths, determining the second transmission path with the fewest routing nodes among the multiple first transmission paths, and determining the second transmission path as the optimal transmission path for the service traffic.
[0008] In one example, the method further includes: when there is no first transmission path, determining a third transmission path with the fewest routing nodes in each transmission path; when there is only one third transmission path, determining the third transmission path as the optimal transmission path for the service traffic; when there are multiple third transmission paths, determining the target routing node bandwidth, which is lower than the service traffic bandwidth, in each third transmission path; calculating the bandwidth difference between the remaining bandwidth of the target routing node and the service traffic bandwidth in each third transmission path to obtain a set of bandwidth difference values for each third transmission path; comparing multiple sets of bandwidth difference values to determine the third transmission path with the smallest bandwidth difference value as the optimal transmission path for the service traffic.
[0009] In one example, the third transmission path containing the minimum bandwidth difference is determined as the fourth transmission path; when there is only one fourth transmission path, the service traffic is transmitted through the fourth transmission path; when there are multiple fourth transmission paths, the service traffic is load-balanced and transmitted through each of the fourth transmission paths.
[0010] In one example, when there is a single second transmission path, the service traffic is transmitted through the second transmission path; when there are multiple second transmission paths, the service traffic is transmitted through load balancing on each of the second transmission paths.
[0011] In one example, the step of sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node and receiving the remaining bandwidth statistics for each transmission path returned by the destination node specifically includes: determining that the content of the remaining bandwidth monitoring request message includes the request to carry the routing nodes traversed and the remaining bandwidth between the routing nodes; sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node so that the destination node copies the remaining bandwidth statistics in the remaining bandwidth monitoring request message for each transmission path to obtain a remaining bandwidth monitoring response message for each transmission path, and sending the remaining bandwidth monitoring response message for each transmission path back to the source routing node; receiving the remaining bandwidth monitoring response message for each transmission path returned by the destination node to obtain the remaining bandwidth statistics based on the remaining bandwidth monitoring response message.
[0012] In one example, comparing the service traffic bandwidth with the remaining bandwidth statistics for each transmission path specifically includes: generating a separate entry for each transmission path; the entry includes the routing nodes traversed by the transmission path and the remaining bandwidth between each routing node; and comparing the service traffic bandwidth with the remaining bandwidth of each routing node in each entry.
[0013] In one example, the source routing node determines multiple transmission paths for service traffic from the source routing node to the destination routing node. Specifically, when a client initiates a service request, the source routing node determines multiple transmission paths for service traffic from the source routing node to the destination routing node; the service request includes a source IP address and a destination IP address.
[0014] On the other hand, embodiments of this application provide an optimal path generation device based on a routing protocol, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to execute any of the above-described optimal path generation methods based on a routing protocol.
[0015] On the other hand, embodiments of this application provide a non-volatile computer storage medium for generating optimal paths based on routing protocols, which stores computer-executable instructions capable of executing any of the above-described methods for generating optimal paths based on routing protocols.
[0016] The above-described technical solutions adopted in the embodiments of this application can achieve the following beneficial effects:
[0017] By setting up a remaining bandwidth monitoring request message, the system can dynamically select the optimal transmission path for multiple transmission paths of a single service, combining the bandwidth of the service traffic and the bandwidth statistics of the transmission paths, with the remaining bandwidth as the standard. By comparing the bandwidth of the service traffic with the remaining bandwidth statistics of each transmission path, the system can select the optimal transmission path for each service based on its specific service conditions, thereby improving network utilization and transmission efficiency and avoiding network congestion and bandwidth waste. Attached Figure Description
[0018] To more clearly illustrate the technical solution of this application, some embodiments of this application will be described in detail below with reference to the accompanying drawings, in which:
[0019] Figure 1 A flowchart illustrating an optimal path generation method based on a routing protocol, provided in an embodiment of this application;
[0020] Figure 2 A schematic diagram illustrating a scenario for optimal path generation based on a routing protocol, provided in an embodiment of this application;
[0021] Figure 3 A schematic diagram of a remaining bandwidth entry provided in an embodiment of this application;
[0022] Figure 4This is a schematic diagram of the structure of an optimal path generation device based on a routing protocol, provided in an embodiment of this application. Detailed Implementation
[0023] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0024] Some embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0025] Figure 1 This is a flowchart illustrating an optimal path generation method based on a routing protocol, provided in an embodiment of this application. This method can be applied to various business domains, such as internet finance, e-commerce, instant messaging, gaming, and government services. Certain input parameters or intermediate results in this process can be manually adjusted to help improve accuracy.
[0026] It should be noted that in the existing technology, in the OSPF (Open Shortest Path First) routing protocol, the routing principles are a set of rules that determine how routes are propagated in the network. These principles ensure that there are no routing loops in the network, while selecting the optimal path whenever possible.
[0027] The following is a brief overview of OSPF routing principles:
[0028] 1. Equal-Cost Multi-Path (ECMP): If multiple paths have the same cost, they will be used in parallel to distribute traffic.
[0029] 2. Intra-area routes take precedence over inter-area routes: Routes within an intra-area take precedence over routes between inter-area routes.
[0030] 3. Lowest Cost First: When multiple paths to the same destination have the same cost, the path with the lowest cost will be selected.
[0031] 4. Shortest Path First: If multiple paths to the same destination have the same priority, the shortest path will be selected based on the total cost of the paths.
[0032] 5. Originate: Routes initiated by the originating router are always processed first.
[0033] 6. Administrative: Routes manually specified by the administrator will take precedence over automatically discovered routes.
[0034] 7. Interface Priority: The link with the highest interface priority will be used first.
[0035] BGP's route selection strategy: When multiple routes exist to the same destination, BGP compares the following attributes in sequence to select the route:
[0036] 1. Preferred route with the highest PrerefVal value.
[0037] The Preferred Value is a unique attribute of Huawei devices, and it is only valid locally.
[0038] 2. Prefer the route with the highest local priority (Local_Pref).
[0039] If a route does not have a local priority, BGP will treat it as having the default local priority of 100 when selecting routes.
[0040] 3. The preferred routes are, in order: manually aggregated routes, automatically aggregated routes, routes imported by the network command, routes imported by the import-route command, and routes learned from peers.
[0041] 4. Select the route with the shortest AS path (AS_Path).
[0042] 5. Prioritize routes with Origin types of IGP, EGP, and Incomplete in that order.
[0043] 6. For routes from the same AS, the route with the lowest MED value is preferred.
[0044] 7. Prioritize EBGP routes, IBGP routes, LocalCross routes, and RemoteCross routes in that order.
[0045] 8. Prefer the route with the smallest IGP metric value to the next hop in BGP.
[0046] 9. Select the route with the shortest Cluster_List.
[0047] 10. Prefer routes published by the device with the smallest Router ID.
[0048] If a route carries an Originator_ID attribute, the route selection process will compare the size of the Originator_ID (no longer compare the Router ID), and the route with the smallest Originator_ID will be preferred.
[0049] 11. Prefer routes learned from the peer with the smallest IP address.
[0050] The aforementioned routing protocols employ complex routing principles, and the optimal path selected is generally fixed. When service traffic is high, the same optimal path can easily be used, leading to congestion and underutilization of the entire network. However, the optimal path selection in this application is dynamic, choosing the optimal path based on the remaining bandwidth, thus maximizing the utilization of the entire network.
[0051] Figure 1 The process includes the following steps:
[0052] S101: The source routing node determines multiple transmission paths for service traffic from the source routing node to the destination routing node.
[0053] In some embodiments of this application, the selection of the optimal path is triggered by the service. For services that determine the source routing node and the destination routing node, when the client initiates a service request, the source routing node will determine multiple transmission paths of the service traffic from the source routing node to the destination routing node, and trigger the source routing node to send a remaining bandwidth monitoring request message for each transmission path to the destination routing node.
[0054] It should be noted that the service request includes a source IP address and a destination IP address, so that the source routing node is determined based on the source IP address and the destination routing node is determined based on the destination IP address.
[0055] S102: By sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node, receive the remaining bandwidth statistics returned by the destination node for each transmission path; the remaining bandwidth statistics include the remaining bandwidth between each routing node in each transmission path.
[0056] In some embodiments of this application, the content of the remaining bandwidth monitoring request message is configured to carry the routing nodes traversed and the remaining bandwidth between the routing nodes, so that when the remaining bandwidth monitoring request message reaches the destination routing node, the message can carry the routing nodes traversed and the remaining bandwidth between each routing node. Furthermore, the content of the remaining bandwidth monitoring response message is configured to copy the remaining bandwidth statistics carried in the remaining bandwidth monitoring request message that reached the destination routing node.
[0057] Based on this, by sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node, the destination node copies the remaining bandwidth statistics in the remaining bandwidth monitoring request message for each transmission path to obtain the remaining bandwidth monitoring response message for each transmission path, and then sends the remaining bandwidth monitoring response message for each transmission path back to the source routing node.
[0058] Then, the remaining bandwidth monitoring response message returned by the destination node for each transmission path is received, and the remaining bandwidth statistics are obtained based on the remaining bandwidth monitoring response message.
[0059] In some embodiments of this application, a separate entry is generated for each transmission path. This entry includes the routing nodes traversed by the transmission path and the remaining bandwidth between each routing node. This allows for a comparison between the service traffic bandwidth and the remaining bandwidth of each routing node in each entry.
[0060] S103: Compare the service traffic bandwidth with the remaining bandwidth statistics of each transmission path to determine the optimal transmission path for the service traffic.
[0061] In some embodiments of this application, the process of determining the optimal transmission path for service traffic is as follows:
[0062] Determine whether there is a first transmission path where the remaining bandwidth between each routing node is greater than the bandwidth of the service traffic.
[0063] When a first transmission path is available, the process is as follows:
[0064] When the first transmission path has only one path, the first transmission path is determined as the optimal transmission path for the service traffic.
[0065] When there are multiple first transmission paths, the second transmission path with the fewest routing nodes is determined among the multiple first transmission paths, and the second transmission path is determined as the optimal transmission path for service traffic.
[0066] It should be noted that when there is only one second transmission path, service traffic is transmitted through that path. When there are multiple second transmission paths, the service traffic is load-balanced across each path. This load balancing can be achieved by distributing the traffic evenly across each second transmission path. This load balancing helps prevent traffic loss.
[0067] When there is no first transmission path, the process is as follows:
[0068] In the absence of a first transmission path, determine the third transmission path with the fewest routing nodes in each transmission path.
[0069] When there is only one third transmission path, the third transmission path is determined as the optimal transmission path for the service traffic.
[0070] When there are multiple third transmission paths, the target routing node bandwidth, which is lower than the service traffic bandwidth, is determined in each third transmission path.
[0071] In each third transmission path, the bandwidth difference between the remaining bandwidth of the target routing node and the bandwidth of the service traffic is calculated to obtain the set of bandwidth difference values for each third transmission path.
[0072] Multiple sets of bandwidth differences are compared to determine the third transmission path containing the smallest bandwidth difference as the optimal transmission path for the service traffic.
[0073] It should be noted that if the third transmission path containing the minimum bandwidth difference is designated as the fourth transmission path, the service traffic will be transmitted through the fourth transmission path if there are multiple fourth transmission paths and if there is only one. If there are multiple fourth transmission paths, the service traffic will be load-balanced across each path. This load balancing can be achieved by distributing the traffic evenly.
[0074] As can be seen, by dynamically selecting the optimal path using the remaining bandwidth, the source routing node sends an RB request (remaining bandwidth monitoring request message) and the destination routing node responds with an RB reply (remaining bandwidth monitoring response message). The source routing node generates a table entry corresponding to each reachable route from the source routing node to the destination routing node. This table entry contains the number of hops traversed from the source routing node to the destination routing node, as well as the remaining bandwidth in the direction from the source routing node to the destination routing node between the traversed routing nodes.
[0075] The source routing node compares the bandwidth of the service traffic with the remaining bandwidth of all paths in the table, and selects the path in which all remaining bandwidths are greater than the bandwidth of the service traffic. When there are multiple paths in which all remaining bandwidths are greater than the bandwidth of the service traffic, the path with the fewest nodes is selected. If there are multiple paths with the same number of minimum nodes, load balancing is performed. When there are paths in all paths with less remaining bandwidth than the service traffic bandwidth, the path with the fewest nodes is selected. When there are multiple paths with the fewest nodes, the path with the smallest difference is selected. If there are multiple paths with the smallest difference, load balancing is performed.
[0076] More intuitively, Figure 2 This is a schematic diagram illustrating a scenario for generating an optimal path based on a routing protocol, as provided in an embodiment of this application.
[0077] exist Figure 2In this system, the principle of prioritizing the path with the maximum remaining bandwidth is based on the routing protocol. First, the routing protocol is used to make the four routing devices A, B, C, and D interconnected across the entire network. Then, the service traffic from the source routing node A to the destination routing node D will have the following paths: A→B→D, A→C→D, A→B→C→D, and A→C→B→D.
[0078] When a service is initiated, source routing node A sends an RB request (Remaining Bandwidth Monitoring Request) to destination routing node D. The number of RB request messages sent corresponds to the number of paths available; for example, four Remaining Bandwidth Monitoring Request messages are sent. These messages are transmitted along the reachable route from A to D, carrying information about the remaining bandwidth (path bandwidth minus occupied bandwidth) between each routing node and each node. The message terminates upon reaching destination routing node D and is not forwarded further. For example, an RB request message along the path A→B→C→D would carry information about the remaining bandwidth between A and B, B and C, and C and D.
[0079] Then, the destination routing node D responds to each RB request message with an RB reply (remaining bandwidth monitoring response message). This message replicates the routing nodes traversed in the RB request and the statistical data on the remaining bandwidth between the routing nodes. The RB reply message corresponds one-to-one with the RB request message and returns along the same transmission path as the RB request, ending after reaching the source routing node A, and is no longer forwarded outwards.
[0080] Finally, source routing node A generates corresponding entries based on each pair of RB request and RB reply messages. Each entry corresponds to each reachable route from source routing node A to destination routing node D. The entry includes the number of hops traversed from source routing node A to destination routing node D, and the remaining bandwidth between the traversed routing nodes in the direction from source routing node A to destination routing node D.
[0081] More intuitively, Figure 3 This is a schematic diagram of a remaining bandwidth entry provided in an embodiment of this application.
[0082] exist Figure 3In the table, assuming the service bandwidth is 5Gbps, the source routing node is A, and the destination routing node is D, the path in table one is A→B→D, with 1G of remaining bandwidth between routing nodes A and B, and 100G of remaining bandwidth between routing nodes B and D. The path in table two is A→C→D, with 10G of remaining bandwidth between routing nodes A and C, and 10G of remaining bandwidth between routing nodes C and D. The path in table three is A→B→C→D, with 1G of remaining bandwidth between routing nodes A and B, 10G of remaining bandwidth between routing nodes B and C, and 10G of remaining bandwidth between routing nodes C and D. The path in table four is A→C→B→D, with 10G of remaining bandwidth between routing nodes A and C, 10G of remaining bandwidth between routing nodes C and B, and 100G of remaining bandwidth between routing nodes B and D.
[0083] Based on this, source routing node A compares the bandwidth of the service traffic with the remaining bandwidth of all paths in the table entries. The remaining bandwidth between routing nodes in entries two and four is greater than the service traffic bandwidth; therefore, entries two and four are the first transmission path. Between entries two and four, entry two has the fewest routing nodes; therefore, entry two is the second transmission path. At this point, the service traffic is transmitted through entry two.
[0084] It should be noted that, in Figure 3 If the service bandwidth is 15G, then the third transmission path with the fewest routing nodes is entries one and two. In entry one, the target routing node bandwidth below the service bandwidth is 1G. In entry two, the target routing node bandwidth below the service bandwidth is 10G and 10G respectively. The bandwidth difference set in entry one is 14G, and the bandwidth difference set in entry two is 5G and 5G respectively. Since the minimum bandwidth difference is found in entry two, entry two is the optimal transmission path. In this case, the service traffic will be transmitted through entry two.
[0085] As can be seen, previously, the optimal path selected for different service traffic was generally fixed. When the service traffic was high, it was easy for the same optimal transmission path to be used, causing congestion and low utilization of the entire network. In contrast, the optimal transmission path selection in this application is dynamic, choosing the optimal transmission path based on the remaining bandwidth. This maximizes the utilization of the entire network and avoids the situation where congestion occurs when multiple services use the same optimal transmission path, causing some paths to be completely paralyzed while others remain idle. Furthermore, only the source routing node generates the remaining bandwidth entry, which only requires high performance from the source routing node device, while other node devices only require general performance, thus saving overall network costs.
[0086] It should be noted that, although the embodiments in this application are based on... Figure 1 Steps S101 to S103 will be described sequentially, but this does not mean that steps S101 to S103 must be performed in a strict order. The reason this embodiment follows this order is... Figure 1 The order in which steps S101 to S103 are described is provided to facilitate understanding of the technical solutions of the embodiments of this application by those skilled in the art. In other words, in the embodiments of this application, the order of steps S101 to S103 can be appropriately adjusted according to actual needs.
[0087] pass Figure 1 This method can dynamically select the optimal transmission path based on the remaining bandwidth by setting up a remaining bandwidth monitoring request message for multiple transmission paths of a single service, combining the bandwidth of the service traffic and the bandwidth statistics of the transmission paths. By comparing the bandwidth of the service traffic with the remaining bandwidth statistics of each transmission path, the optimal transmission path corresponding to each service can be selected for each individual service, thereby improving network utilization and transmission efficiency and avoiding network congestion and bandwidth waste.
[0088] Based on the same idea, some embodiments of this application also provide devices and non-volatile computer storage media corresponding to the above methods.
[0089] Figure 4 A schematic diagram of an optimal path generation device based on a routing protocol, provided in an embodiment of this application, includes:
[0090] At least one processor; and,
[0091] A memory communicatively connected to the at least one processor; wherein,
[0092] The memory stores instructions that can be executed by the at least one processor, which, when executed by the at least one processor, enables the at least one processor to perform an optimal path generation method based on a routing protocol as described above.
[0093] Some embodiments of this application provide a non-volatile computer storage medium for optimal path generation based on a routing protocol, which stores computer-executable instructions capable of executing any of the above-described optimal path generation methods based on a routing protocol.
[0094] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and medium embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the description of the method embodiments.
[0095] The devices and media provided in this application are one-to-one with the methods. Therefore, the devices and media also have similar beneficial technical effects as their corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the devices and media will not be repeated here.
[0096] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0097] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of 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, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0098] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0099] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0100] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0101] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0102] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0103] It should also be noted that 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 limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0104] The above description is merely an embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the technical principles of this application should fall within the protection scope of this application.
Claims
1. A method for generating an optimal path based on a routing protocol, characterized in that, The method includes: The source routing node determines multiple transmission paths for service traffic from the source routing node to the destination routing node; By sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node, the system receives remaining bandwidth statistics for each transmission path returned by the destination node; the remaining bandwidth statistics include the remaining bandwidth between each routing node in each transmission path. The optimal transmission path for the service traffic is determined by comparing the bandwidth of the service traffic with the remaining bandwidth statistics of each transmission path. The step of comparing the service traffic bandwidth with the remaining bandwidth statistics of each transmission path to determine the optimal transmission path for the service traffic specifically includes: Determine whether there is a first transmission path where the remaining bandwidth between each routing node is greater than the bandwidth of the service traffic; When the first transmission path has only one path, the first transmission path is determined as the optimal transmission path for the service traffic. When there are multiple first transmission paths, the second transmission path with the fewest routing nodes is determined among the multiple first transmission paths, and the second transmission path is determined as the optimal transmission path for the service traffic. The method further includes: In the absence of the first transmission path, determine the third transmission path with the fewest routing nodes in each transmission path; When the third transmission path has only one path, the third transmission path is determined as the optimal transmission path for the service traffic. When there are multiple third transmission paths, in each of the third transmission paths, the bandwidth of the target routing node is determined to be lower than the bandwidth of the service traffic. In each of the third transmission paths, the bandwidth difference between the remaining bandwidth of the target routing node and the bandwidth of the service traffic is calculated to obtain a set of bandwidth difference values for each of the third transmission paths. Multiple sets of bandwidth differences are compared to determine the third transmission path containing the smallest bandwidth difference as the optimal transmission path for the service traffic. The method further includes: The third transmission path containing the minimum bandwidth difference is designated as the fourth transmission path. When the fourth transmission path has only one path, the service traffic will be transmitted through the fourth transmission path. When there are multiple fourth transmission paths, the service traffic is load-sharing transmitted through each of the fourth transmission paths; The method further includes: When the second transmission path has only one path, the service traffic will be transmitted through the second transmission path; When there are multiple second transmission paths, the service traffic is load-sharing transmitted through each of the second transmission paths.
2. The method according to claim 1, characterized in that, The step of sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node and receiving remaining bandwidth statistics for each transmission path returned by the destination node specifically includes: The content of the remaining bandwidth monitoring request message includes the request carrying the routing nodes it passes through and the remaining bandwidth between the routing nodes; By sending a remaining bandwidth monitoring request message for each transmission path to the destination routing node, the destination node copies the remaining bandwidth statistics in the remaining bandwidth monitoring request message for each transmission path, obtains a remaining bandwidth monitoring response message for each transmission path, and sends the remaining bandwidth monitoring response message for each transmission path back to the source routing node. Receive the remaining bandwidth monitoring response message returned by the destination node for each transmission path, and obtain the remaining bandwidth statistics based on the remaining bandwidth monitoring response message.
3. The method according to claim 1, characterized in that, The comparison of service traffic bandwidth with the remaining bandwidth statistics for each transmission path specifically includes: Generate a separate entry for each transmission path; the entry includes the routing nodes that the transmission path passes through, as well as the remaining bandwidth between each routing node; The service traffic bandwidth is compared with the remaining bandwidth of each routing node in each entry.
4. The method according to claim 1, characterized in that, The source routing node determines multiple transmission paths for service traffic from the source routing node to the destination routing node, specifically including: When a client initiates a service request, the source routing node determines multiple transmission paths for the service traffic from the source routing node to the destination routing node; the service request includes a source IP address and a destination IP address.
5. An optimal path generation device based on a routing protocol, characterized in that, include: At least one processor; as well as, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, which, when executed by the at least one processor, enables the at least one processor to perform an optimal path generation method based on a routing protocol as described in any one of claims 1-4.
6. A non-volatile computer storage medium for generating optimal paths based on routing protocols, storing computer-executable instructions, characterized in that, The computer-executable instructions are capable of executing the optimal path generation method based on a routing protocol as described in any one of claims 1-4.
Citation Information
Patent Citations
Method and device for determining service path and computer readable storage medium
CN114650254A