CN112769696A - Routing method, network controller, system and storage medium - Google Patents

Routing method, network controller, system and storage medium Download PDF

Info

Publication number
CN112769696A
CN112769696A CN201911077082.9A CN201911077082A CN112769696A CN 112769696 A CN112769696 A CN 112769696A CN 201911077082 A CN201911077082 A CN 201911077082A CN 112769696 A CN112769696 A CN 112769696A
Authority
CN
China
Prior art keywords
node
delay
nodes
network
link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911077082.9A
Other languages
Chinese (zh)
Other versions
CN112769696B (en
Inventor
敖婷
喻敬海
陈立全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201911077082.9A priority Critical patent/CN112769696B/en
Priority to PCT/CN2020/126157 priority patent/WO2021088801A1/en
Publication of CN112769696A publication Critical patent/CN112769696A/en
Application granted granted Critical
Publication of CN112769696B publication Critical patent/CN112769696B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the invention discloses a routing method, a network controller, a system and a storage medium. The method comprises the following steps: according to the time delay value between every two nodes collected in the network, the forwarding nodes between the source node and the destination node are screened from the network, so that the forwarding nodes meeting the preset time delay requirement are screened out; calculating the cost of each path from the source node to the destination node based on the cost of each link formed by the source node, the destination node and the screened forwarding node; and selecting the path with the minimum cost as a routing path from the source node to the destination node.

Description

Routing method, network controller, system and storage medium
Technical Field
The embodiment of the invention relates to the technical field of communication, in particular to a routing method, a network controller, a system and a storage medium.
Background
With the development of the internet of things and artificial intelligence technology, services needing services of a network in the future are more diversified, for example, the requirements of services such as unmanned driving and telemedicine on network performance are higher and higher, and the traditional network is more and more difficult to meet the network requirements of users.
A Software Defined Network (SDN) breaks through the limitation of the conventional network structure, separates a data plane from a control plane, forwards data on the data plane by a plurality of switches, and controls global network information on the control plane by a controller and is responsible for controlling a routing policy between any two switches in the data plane.
A path selection algorithm may be generally used to determine, for a certain performance indicator in the network, a route in the network for which the performance indicator meets the user requirements. However, the above path selection algorithm cannot consider more constraint conditions meeting the network performance requirements of users in the process of collecting network information and pruning nodes and links in the network.
Disclosure of Invention
Embodiments of the present invention provide a routing method, a network controller, a system, and a storage medium, which can perform path selection in combination with minimum link cost on the basis of satisfying a user delay requirement.
In a first aspect, an embodiment of the present invention provides a routing method, including: according to the time delay value between every two nodes collected in the network, the forwarding nodes between the source node and the destination node are screened from the network, so that the forwarding nodes meeting the preset time delay requirement are screened out; calculating the cost of each path from the source node to the destination node based on the cost of each link formed by the source node, the destination node and the screened forwarding node; and selecting the path with the minimum cost as a routing path from the source node to the destination node.
In a second aspect, an embodiment of the present invention provides a network controller, including: the node screening module is used for screening the forwarding nodes between the source node and the destination node from the network according to the time delay values between every two nodes collected in the network so as to screen out the forwarding nodes meeting the preset time delay requirement; the cost calculation module is used for calculating the cost of each path from the source node to the destination node based on the cost of each link formed by the source node, the destination node and the screened forwarding node; and the path selection module is used for selecting the path with the minimum cost as the routing path from the source node to the destination node.
In a third aspect, an embodiment of the present invention provides a routing system, including: a memory and a processor; the memory is used for storing programs; the processor is configured to read executable program code stored in the memory to perform the above-described routing method.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, in which instructions are stored, and when the instructions are executed on a computer, the instructions cause the computer to execute the routing method in the above aspects.
According to the routing method, the network controller, the system and the storage medium of the embodiment of the invention, after the forwarding nodes which comprise the source node and the destination node and meet the preset time delay requirement are screened out from the network, the route with the minimum cost is selected as the routing route from the source node to the destination node according to the cost of the link between every two nodes. The routing method can quickly realize routing under the premise of comprehensively considering the user certainty requirement on the link delay and the link cost, and can reduce the complexity of the routing process.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention and not to limit the invention.
FIG. 1 is a schematic diagram of a routing network architecture according to an embodiment of the present invention.
Fig. 2 is a flowchart illustrating a routing method according to an embodiment of the present invention.
Fig. 3 shows a network topology structure diagram of an embodiment of the present invention.
Fig. 4 shows a flow chart of a routing method according to another embodiment of the present invention.
Fig. 5 is a schematic flow chart illustrating the collection of network routes in fig. 4.
Fig. 6 shows a detailed flowchart of pruning the network in fig. 4.
Fig. 7 is a schematic flow chart illustrating routing based on the least cost method in fig. 4.
Fig. 8 is a schematic structural diagram of a network controller according to an embodiment of the present invention.
FIG. 9 illustrates a block diagram of an exemplary hardware architecture of a computing device in which methods and apparatus according to embodiments of the invention may be implemented.
Detailed Description
The following detailed description of embodiments of the invention refers to the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present invention, are given by way of illustration and explanation only, not limitation. It will be apparent to one skilled in the art that the present invention may be practiced without some of these specific details. The following description of the embodiments is merely intended to provide a better understanding of the present invention by illustrating examples of the present invention.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
For a better understanding of the present invention, a routing method, apparatus, system, and storage medium according to embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be noted that these examples are not intended to limit the scope of the present disclosure.
FIG. 1 is a schematic diagram of a routing network architecture according to an embodiment of the present invention. As shown in fig. 1, the architecture may include: an SDN controller 10 and one or more switches 20, the SDN controller 10 and each switch 20 being communicable via an OpenFlow protocol.
Wherein the SDN controller is a controller of a control plane in an SDN network architecture, and the SDN controller 10 may include: a route calculation module 11 and a network information management library 12.
In the embodiment of the invention, the SDN breaks through the limitation of the traditional network structure and separates the data plane from the control plane. At the control plane, the SDN controller 10 may grasp global network information through the network information management library 12; the route calculation module 11 may calculate the route selection between any two switches in the data plane according to the network information, determine a routing scheme according to a route calculation result, and issue the routing scheme to the switches. In the data plane, a plurality of switches forward data according to the received routing scheme.
By way of example, the information collected in the network may include, for example: the topology structure of the whole network, the available bandwidth of each node and link in the network, the packet loss rate, the time delay between every two nodes in the network under the condition of the worst network quality, the source node, the destination node and other information.
In an SDN network architecture, the nodes in the embodiments of the present invention may be communication nodes of the SDN network architecture, and each communication node may correspond to one switch located at a data plane in the SDN network architecture.
It should be appreciated that the routing method of the embodiment of the present invention may try out the traditional network structure unexpected to the SDN network architecture. In other network configurations, the communication node may be a communication node such as a router, switch, server, and base station. Moreover, the number of the switch devices in fig. 1 is only illustrative, and can be flexibly adjusted according to the actual application needs. This aspect is not limiting.
Fig. 2 is a flowchart illustrating a routing method according to an embodiment of the present invention.
As shown in fig. 2, the routing method of the embodiment of the present invention may include steps S110 to S130.
S110, according to the time delay value between every two nodes collected in the network, the forwarding nodes between the source node and the destination node are screened from the network, so as to screen out the forwarding nodes meeting the preset time delay requirement.
And S120, screening the forwarding nodes between the source node and the destination node in the network according to the time delay values between every two nodes collected in the network so as to screen out the forwarding nodes meeting the preset time delay requirement.
And S130, selecting the path with the minimum cost as a routing path from the source node to the destination node.
According to the routing method provided by the embodiment of the invention, on the basis of meeting the requirement of deterministic delay of a user, the factors such as node link cost and the like are further comprehensively considered, and the minimum cost path selection of end-to-end delay guarantee is realized.
In step S110, the delay value between every two nodes is a sum of the required transmission delay, link delay, reception delay, and delay formed by queuing delay when the quality of the network satisfies the predetermined worst condition of the network quality, where the signal is transmitted from one node to another node between every two nodes.
In one embodiment, the quality of the network may be measured by the speed of communication in the network and the degree of network stability. The communication speed can be expressed, for example, by the network transmission rate, i.e., the number of bits of binary numbers transmitted per second; the network stability degree refers to the performance that a network system can improve long-term, reliable and meet the index bandwidth, that is, the network system must normally work within a specified time, for example, faults such as downtime, restart and the like do not occur; and the system works normally under the condition of full load, cannot collapse, and keeps the processing efficiency within a specified processing efficiency threshold value range. The network stability measure may include, for example: mean Time Between Failures (Mean Time Between Failures), maximum stable bandwidth, maximum number of concurrent streams, etc.
In this embodiment, the preset network quality worst condition may include at least one of the following items: the network transmission rate is less than or equal to the transmission rate threshold, the network system cannot work normally within a specified time length, such as a downtime fault and/or a restart fault, the average time interval without fault is less than a preset time length threshold, the maximum stable bandwidth is less than a bandwidth threshold, and the maximum number of concurrent flows is less than a concurrent flow number threshold. In the following description of the embodiments, the network quality is expressed as the worst: the quality of the network meets the preset worst condition of the network quality.
In one embodiment, latency refers to the time required for data to travel from one end of the network (or link) to the other. The delays in the network or link may include transmit delays, link delays, receive delays, and queuing delays.
The transmission delay is the time required for transmitting a data frame, that is, the time required from the transmission of the first bit of the data frame to the completion of the transmission of the last bit of the data frame, and may also be referred to as a forwarding delay.
The link delay is the time it takes for a data frame to travel a certain distance in the transmission channel.
The reception delay is the time it takes to process a received data frame, for example, analyzing the header of a packet, extracting a data portion from a packet, performing error checking or finding an appropriate route, and may also be referred to as a processing delay.
The queuing delay is a delay generated by data being transmitted through a network, firstly queuing in an input queue for processing after entering a router, and further queuing in an output queue for forwarding after the router determines a forwarding interface.
In this embodiment, the sum of the transmission delay, the link delay, the reception delay, and the queuing delay, which are required for data transmission between two nodes under the worst quality condition of the network, is used as the delay between the two nodes.
In one embodiment, step S110 may specifically include S111-S113.
And S111, setting a time delay weight value between every two nodes based on the time delay value between every two nodes.
In step S111, if a directly connected link exists between each two nodes, setting a delay weight as a delay value between each two nodes; if no directly connected link exists between every two nodes, the time delay weight value is set to be infinite.
As an example, if node u and node v are directly connected, the delay weight value is equal to the sum of the delay between node u and node v in the worst case of the network quality, that is, the forwarding delay of node u, the link delay from u to v, and the delay of the receiving delay of v and the delay of the queuing delay in v in the worst case of the network quality, and if u is not an adjacent node of v, the delay weight value is positive infinity.
And S112, calculating a forward minimum delay weight and a reverse minimum delay weight of any node in the network according to the delay weights between every two nodes, wherein the forward minimum delay weight is the minimum value of the delay weights from any node to a destination node, and the reverse minimum delay weight is the minimum value of the delay weights from any node to a source node.
In step S112, a shortest path algorithm may be used to calculate a minimum delay weight from any node to the source node and a minimum delay weight from any node to the destination node according to the delay weight between every two nodes.
In one embodiment, the shortest path algorithm may be understood as: when the number of paths from the source node to the destination node is greater than one, each path may include a plurality of nodes and links between two adjacent nodes. The shortest path algorithm is to calculate the shortest path from the source node to the destination node, that is, to find a path with the smallest sum of the weights formed by the weights of the links in more than one path from the source node to the destination node.
In one embodiment, the shortest path algorithm includes, but is not limited to: dijkstra Algorithm Dijkstra, freuder Floyd Algorithm, Bellman-Ford Bellman Ford Algorithm, and Shortest Path Fast Algorithm (SPFA).
In the embodiment of the invention, the minimum delay weight value of the direction from any node to the source node is determined by finding the shortest path from any node to the source node by using the delay weight value of the link; and determining the minimum delay weight value from any node to the destination node by finding the shortest path from any node to the destination node. That is, the delay of the routing node in the network under the condition of the worst network quality can be collected from the positive direction and the negative direction to the source node and the destination node.
And S113, calculating the sum of the forward minimum delay weight and the reverse minimum delay weight, and taking the node in the network with the sum of the delay weights smaller than the preset delay upper limit value as a forwarding node meeting the preset delay requirement.
In step S113, the preset delay upper limit is a preset delay upper limit that meets the user requirement. According to the time delay upper limit value, nodes which cannot meet the time delay requirement in the network can be pruned, and end-to-end time delay guarantee is achieved between the source node and the destination node.
In one embodiment, step S120 may specifically include S121-S123.
S121, screening each link formed by the source node, the destination node and the screened forwarding node to obtain a link of which the available bandwidth is greater than or equal to a preset bandwidth requirement threshold and/or the packet loss rate is less than a preset packet loss rate threshold.
In step S121, the bandwidth consumed by one link in the network affects the bandwidth resources available to other links in the network. To ensure the data carrying capacity and network performance of the network path. The available bandwidth of the links may be used to screen nodes and links between nodes in the network.
In this step, the packet loss rate is a ratio of the number of lost data packets to the total number of transmitted data packets in the data transmission process between two nodes. The packet loss rate of the link in the network during normal transmission should be controlled within a certain range. To ensure the stability of the network, the links in the network can be screened according to the packet loss rate.
And S122, calculating the cost of each path from the source node to the destination node according to the cost of each link formed by the forwarding node, the source node and the destination node contained in the screened links.
In this embodiment, the least expensive path may be selected as the routing path from the source node to the destination node. According to the routing method provided by the embodiment of the invention, the nodes and links in the network can be screened by the time delay upper limit required by the user, the constraint conditions such as performance indexes such as bandwidth and packet loss rate are comprehensively considered, and after the routing which does not meet the conditions is quickly discarded, the minimum cost path between the source node and the target node in the network is selected.
In an embodiment, the step of calculating the cost of each path from the source node to the destination node in the step S120 or S122 may specifically include the following steps S21-S22.
S21, the sum of the cost collected from the network for using each link and the cost formed by the cost for using the receiving node in each link is taken as the total cost for using each link.
In this step, when there is a directly connected link between every two nodes, the total cost is equal to the sum of the cost of the link between every two nodes and the cost formed by the cost of the receiving node in the link; the total cost equals positive infinity when no directly connected link exists between every two nodes.
And S22, determining the link contained in each path from the source node to the destination node, and calculating the cost of each path according to the total cost of each contained link.
In this embodiment, the link cost is the cost of the network used by the link during data transmission. From the network information management library, the cost of using a certain node and the cost of using a certain link, which are collected in the network, can be acquired.
According to the routing method provided by the embodiment of the invention, the nodes and links in the network can be pruned based on the time delay characteristic under the worst network quality condition, and routing is carried out by integrating the time delay and the minimum cost mode, so that the routing is quickly realized, and the routing complexity is reduced.
Fig. 3 shows a network topology structure diagram of an embodiment of the present invention. In fig. 3, the nodes in the network topology include: source node a and destination node E, and forwarding nodes between source node a and destination node E, such as node B, node C, and node D.
In the following, how to perform routing between the source node a and the destination node E in the embodiment of the present invention is described in detail with reference to the network topology in fig. 3.
Table 1 shows network information such as network topology and link-related information collected from the network in one embodiment.
TABLE 1 network topology and Link related information
Figure BDA0002262816280000081
Figure BDA0002262816280000091
The links with direct connection relationship are shown in table 1 above, as well as the link delay weight, the link packet loss rate and the link available bandwidth. Because the illustrated link has a direct association relationship, the value of the link delay weight illustrated in table 1 is a delay value between two nodes in the link.
In the embodiment of the present invention, a deterministic network under an SDN architecture is a network that can provide a capability of deterministic service guarantee for a service carried, where the capability of deterministic service guarantee includes network performance indexes such as a time delay, a bandwidth, and a packet loss rate.
According to the network performance index, a deterministic network under the SDN architecture realizes an end-to-end performance requirement by setting a performance index threshold that meets a user requirement under the worst network quality condition from end to end, where the performance index threshold may include, for example: the time delay upper limit value, the packet loss rate upper limit threshold value, the bandwidth requirement threshold value and the like which meet the requirements of users.
As an example, the performance index meeting the user requirement in the embodiment of the present invention may include: the upper limit of the user required delay is 7, the upper limit of the packet loss rate is 5%, and at least 1 unit of bandwidth is required, for example, 1 unit of bandwidth is 1 megabit per second (Mbps). It should be understood that the values of the performance indicators are merely illustrative, and the performance indicators can be flexibly adjusted according to the requirements of the network performance in practical applications. This aspect is not limiting.
Fig. 4 shows a flow chart of a routing method according to another embodiment of the present invention. As shown in FIG. 4, in one embodiment, the routing method may include steps S31-S33.
And S31, performing forward collection and reverse collection on the time delay of the links between the nodes in the network.
In step S31, forward collecting the time delay, which means collecting the time delay weight from each node to the destination node; and reversely collecting the time delay, namely collecting the time delay weight from each node to the source node.
In the collecting stage of the routing method described in step S31, the topology of the entire network may be collected, including the available bandwidth and the packet loss rate of each node and link in the network, and the worst delay between each two nodes in the network and the delay upper limit required by the user, and the collected information may be stored in a network information management library;
and S32, pruning the network based on the time delay between the nodes under the condition of the worst network quality.
In the pruning stage of the routing method described in step S32, nodes that cannot meet the delay requirement in the network may be pruned, that is, nodes that do not meet the delay requirement are removed.
And S33, carrying out route searching on the nodes obtained after the network pruning based on the minimum cost mode.
In the routing stage of the routing method described in step S33, the routing can be performed with reference to the comprehensive cost and the delay weight.
Fig. 5 is a schematic flow chart illustrating the collection of network routes in fig. 4. In fig. 5, the step S31 may specifically include S311 and S312.
S311, the time delay weight values between the nodes under the condition of the worst network quality are collected in the forward direction, and the minimum time delay weight value from each node to the destination node E is obtained.
S312, reversely collecting the time delay weight values between the nodes under the condition of the worst network quality to obtain the minimum time delay weight value from each node to the source node A.
Table 2 schematically shows the minimum delay weight from each node to the destination node E obtained according to the link delay weight collected in table 1 under the worst case condition of the network; table 3 schematically shows the minimum delay weight from each node to the destination node E obtained according to the link delay weight collected in table 1 under the worst network condition.
TABLE 2 minimum delay values from each node to destination node E
Figure BDA0002262816280000101
Figure BDA0002262816280000111
TABLE 3 minimum delay value from each node to Source node A
Node point Minimum delay value to source node A
A 0
B 1
C 3
D 6
E 7
In this embodiment, the forward collection and the backward collection are performed on the delay under the worst network quality condition in the network, so as to be used for pruning the nodes in the network subsequently.
Fig. 6 shows a detailed flowchart of pruning the network in fig. 4. In fig. 6, the step S32 may specifically include S321 and S323.
S321, adding all nodes in the network into a set H, wherein nodes which are not traversed in the pruning stage are stored in the set H.
S322, from the set H, selecting the nodes which are not traversed, calculating the sum of the minimum delay weight from a certain node to a destination node and the minimum delay weight from the node to a source node, if the sum of the minimum delay weights is larger than the time delay upper limit required by the user, marking the node as an unavailable node, and if the sum of the minimum delay weights is smaller than or equal to the time delay upper limit required by the user, keeping the node and marking the node as an available node.
As an example, node A is selected from set H, meaning that A is traversed, and node A is removed from set H. From the above table 2 and table 3, the minimum delay weight from the node a to the destination node E is taken as 7, the minimum delay weight from the node a to the source node a is taken as 0, and the sum 7 of the delay weights is calculated to be less than or equal to (i.e., not greater than) the delay 7 under the worst condition required by the user, so the node a is retained.
S323, checking whether the set H is empty, if not, executing the step S322, and if so, ending the pruning stage. As an example, node a is traversed, node a may be deleted from set H.
Table 4 illustrates pruning results for embodiments of the present invention.
TABLE 4 pruning results
Figure BDA0002262816280000121
As can be seen from table 4 above, after the pruning stage is over, the D node is marked as unavailable. And removing nodes and links which do not meet the delay requirement in the pruning stage, and then carrying out final routing based on minimum cost under the condition that the delay meets the requirement of a user.
In this embodiment, the nodes in the network are screened according to whether the sum of the time delay formed by the time delay weight from a certain node to the destination node and the time delay weight from the node to the source node under the worst network quality condition is less than the time delay upper limit required by the user, so as to ensure that the screened nodes meet the determined time delay required by the user.
Fig. 7 is a schematic flow chart illustrating routing based on the least cost method in fig. 4. As shown in fig. 7, the step S33 may specifically include steps S331 to S333.
S331, screening out the link with the available bandwidth larger than the bandwidth requirement of the user.
S332, screening out links with the packet loss rate smaller than a preset packet loss rate threshold value from the links with the available bandwidth larger than the user bandwidth requirement.
In an embodiment, the links with the packet loss rate smaller than the preset packet loss rate threshold may also be screened first, and then the links with the available bandwidth larger than the user bandwidth requirement are screened from the links with the packet loss rate smaller than the preset packet loss rate threshold.
And S333, selecting the path with the minimum cost as the routing path from the source node to the destination node in the link with the available bandwidth larger than the user bandwidth requirement and the packet loss rate smaller than the preset packet loss rate threshold.
In step S333, the cost of using a certain link or using a certain node may be obtained from the network information management module, and assuming that node a and node B are directly connected, the weight of the link from node a to node B in the routing stage is the sum of the cost of using node B and the cost of using link a to node B, and the meaning of the node and link costs includes the cost and the cost of using these resources. For ease of understanding, table 5 shows the cost per link during the way-finding phase.
TABLE 5 calculation of link cost during the way-finding phase
Link circuit Cost of link Node cost Total cost of link
A→B 1 1 2
B→C 1 2 3
A→C 4 2 6
C→E 3 1 4
In table 5, the node cost is the cost of the second hop node in the link, i.e., the receiving node in the link. By way of example, in link a → B, B is the second hop node of the link and is also the receiving node of the link. As can be seen from fig. 5, the total cost of the links obtained by calculation is used as the weight of each link in the routing stage, and routing calculation is performed between the source node and the target node to obtain the path with the minimum cost.
In this embodiment, on the basis of determining the delay that meets the user requirement, the bandwidth requirement of the link, the limitation of the link packet loss rate, and the link cost of the user are comprehensively considered, and the minimum cost path from the source node to the destination node that meets the above conditions is found.
Fig. 8 is a schematic structural diagram of a network controller according to an embodiment of the present invention.
In fig. 8, the network controller may include a node screening module 410, an expense calculation module 420, and a path selection module 430.
The node screening module 410 is configured to screen forwarding nodes between the source node and the destination node in the network according to the time delay values between every two nodes collected in the network, so as to screen out forwarding nodes meeting a predetermined time delay requirement.
And the cost calculation module 420 is configured to calculate the cost of each path from the source node to the destination node based on the cost of each link formed by the source node, the destination node, and the screened forwarding node.
And a path selection module 430, configured to select a path with the smallest cost as a routing path from the source node to the destination node.
In one embodiment, the node screening module 410 may specifically include: a delay weight determining unit and a minimum delay weight calculating unit.
The time delay weight setting unit is used for setting a time delay weight between every two nodes based on a time delay value between every two nodes; and the minimum delay weight calculation unit is used for calculating a forward minimum delay weight and a reverse minimum delay weight of any node in the network according to the delay weight between every two nodes, wherein the forward minimum delay weight is the minimum value of the delay weight from any node to the destination node, and the reverse minimum delay weight is the minimum value of the delay weight from any node to the source node.
In this embodiment, the node screening module 410 is further specifically configured to calculate a sum of delay weights of the forward minimum delay weight and the reverse minimum delay weight, and use a node in the network where the sum of the delay weights is smaller than the preset delay upper limit value as a forwarding node meeting the preset delay requirement.
In an embodiment, the delay weight setting unit is further specifically configured to: when a link which is directly connected exists between every two nodes, setting a time delay weight value as a time delay value between every two nodes; and when no directly connected link exists between every two nodes, setting the time delay weight value to be infinite.
In one embodiment, the delay value between every two nodes is the sum of the required transmission delay, link delay, reception delay and queuing delay formed by the transmission delay, the link delay, the reception delay and the queuing delay when a signal is transmitted from one node to the other node between every two nodes under the condition of the worst quality of the network.
In one embodiment, the cost calculation module 420 may further include a link screening unit and a path determination unit.
The link screening unit is used for screening each link formed by the source node, the destination node and the screened forwarding node to obtain a link of which the available bandwidth is greater than or equal to a preset bandwidth requirement threshold and/or the packet loss rate is less than a preset packet loss rate threshold.
In this embodiment, the cost calculation module 420 is further configured to calculate the cost of each path from the source node to the destination node according to the cost of each link formed by the forwarding node, the source node, and the destination node included in the screened links.
In one embodiment, the cost calculation module 420 may further include a total link cost calculation unit and a path cost calculation unit.
Wherein the total link cost calculation unit is configured to use a sum of costs collected from the network and formed by costs of using each link and costs of using the receiving node in each link as the total cost of using each link.
And the path cost calculation unit is used for determining the link contained in each path from the source node to the destination node and calculating the cost of each path according to the total cost of each contained link.
In this embodiment, the path selection module 430 is further configured to select the least expensive path as the routing path from the source node to the destination node.
In one embodiment, when there is a directly connected link between every two nodes, the total cost is equal to the sum of the cost of the link between every two nodes and the cost formed by the cost of the receiving node in the link; the total cost equals positive infinity when no directly connected link exists between every two nodes.
According to the routing device provided by the embodiment of the invention, on the basis of ensuring that the nodes and the links in the network meet the upper delay limit required by the user, the cost of the links and the nodes is comprehensively considered, and the minimum cost path selection ensured by end-to-end delay is realized.
It is to be understood that the invention is not limited to the particular arrangements and instrumentality described in the above embodiments and shown in the drawings. For convenience and brevity of description, detailed description of a known method is omitted here, and for the specific working processes of the system, the module and the unit described above, reference may be made to corresponding processes in the foregoing method embodiments, which are not described herein again.
Fig. 9 is a block diagram illustrating an exemplary hardware architecture of a computing device capable of implementing a routing method and apparatus according to embodiments of the present invention.
As shown in fig. 9, computing device 900 includes an input device 901, an input interface 902, a central processor 903, a memory 904, an output interface 905, and an output device 906. The input interface 902, the central processing unit 903, the memory 904, and the output interface 905 are connected to each other through a bus 910, and the input device 901 and the output device 906 are connected to the bus 910 through the input interface 902 and the output interface 905, respectively, and further connected to other components of the computing device 900.
Specifically, the input device 901 receives input information from the outside (for example, a network information management library), and transmits the input information to the central processor 903 through the input interface 902; central processor 903 processes input information based on computer-executable instructions stored in memory 904 to generate output information, stores the output information temporarily or permanently in memory 904, and then transmits the output information to output device 906 via output interface 905; output device 906 outputs the output information external to computing device 900 for use by a user.
In one embodiment, computing device 900 shown in fig. 9 may be implemented as a routing system that may include: a memory configured to store a program; a processor configured to execute the program stored in the memory to perform the routing method described in the above embodiments.
In one embodiment, the routing system has the same or equivalent structure as the route calculation module 11 in fig. 1.
According to an embodiment of the invention, the process described above with reference to the flow chart may be implemented as a computer software program. For example, embodiments of the invention include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network, and/or installed from a removable storage medium.
It will be understood by those of ordinary skill in the art that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be performed by several physical components in cooperation. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as is well known to those of ordinary skill in the art. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by a computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
It will be understood that the above embodiments are merely exemplary embodiments taken to illustrate the principles of the present invention, which is not limited thereto. It will be apparent to those skilled in the art that various modifications and improvements can be made without departing from the spirit and substance of the invention, and these modifications and improvements are also considered to be within the scope of the invention.

Claims (10)

1. A routing method, comprising:
according to the time delay value between every two nodes collected in the network, the forwarding nodes between the source node and the destination node are screened from the network, so that the forwarding nodes meeting the preset time delay requirement are screened out;
calculating the cost of each path from the source node to the destination node based on the cost of each link formed by the source node, the destination node and the screened forwarding node;
and selecting the path with the minimum cost as the routing path from the source node to the destination node.
2. The method of claim 1, wherein the screening forwarding nodes between a source node and a destination node from the network according to a delay value between every two nodes collected in the network to screen out forwarding nodes meeting a predetermined delay requirement comprises:
setting a time delay weight value between every two nodes based on the time delay value between every two nodes;
calculating a forward minimum delay weight and a reverse minimum delay weight of any node in the network according to the delay weight between every two nodes, wherein the forward minimum delay weight is the minimum value of the delay weight from any node to the destination node, and the reverse minimum delay weight is the minimum value of the delay weight from any node to the source node;
and calculating the sum of the forward minimum delay weight and the reverse minimum delay weight, and taking the nodes in the network with the sum of the delay weights being smaller than a preset delay upper limit value as forwarding nodes meeting the preset delay requirement.
3. The method of claim 2, wherein the setting the delay weight between each two nodes based on the delay value between each two nodes comprises:
when a link which is directly connected exists between every two nodes, setting the time delay weight value as a time delay value between every two nodes;
and when no directly connected link exists between every two nodes, setting the time delay weight value to be infinite.
4. The method of claim 1, wherein,
and the delay value between every two nodes is the sum of the time delay formed by the required sending delay, the required link delay, the required receiving delay and the required queuing delay when the quality of the network meets the condition of the worst preset network quality after the signal is sent from one node to the other node between every two nodes.
5. The method of claim 1, wherein the calculating costs for each path from the source node to the destination node based on costs for each link formed by the source node, the destination node and the screened forwarding node comprises:
screening each link formed by the source node, the destination node and the screened forwarding node to obtain a link of which the available bandwidth is greater than or equal to a preset bandwidth requirement threshold and/or the packet loss rate is less than a preset packet loss rate threshold;
and calculating the cost of each path from the source node to the destination node according to the cost of each link formed by the forwarding node, the source node and the destination node contained in the screened links.
6. The method of claim 1 or 5, wherein the calculating cost of each path from the source node to the destination node based on cost of each link formed by the source node, the destination node and the screened forwarding nodes comprises:
taking a sum of a cost formed by the cost of each link collected from the network and the cost of a receiving node in each link as a total cost for using each link;
in each path from the source node to the destination node, determining links contained in each path, and calculating the cost of each path according to the total cost of each contained link.
7. A network controller, comprising:
the node screening module is used for screening the forwarding nodes between the source node and the destination node in the network according to the time delay values between every two nodes collected in the network so as to screen out the forwarding nodes meeting the preset time delay requirement;
the expense calculation module is used for calculating the expense of each path from the source node to the destination node based on the expense of each link formed by the source node, the destination node and the screened forwarding node;
and the path selection module is used for selecting the path with the minimum cost as the routing path from the source node to the destination node.
8. The network controller of claim 7, wherein the cost calculation module further comprises:
the link screening unit is used for screening each link formed by the source node, the destination node and the screened forwarding node to obtain a link of which the available bandwidth is greater than or equal to a preset bandwidth requirement threshold and/or the packet loss rate is less than a preset packet loss rate threshold;
the expense calculation module is further configured to calculate the expense of each path from the source node to the destination node according to the expense of each link formed by the forwarding node, the source node, and the destination node included in the screened links.
9. A routing system comprising a memory and a processor;
the memory is used for storing executable program codes;
the processor is configured to read executable program code stored in the memory to perform the routing method of any of claims 1 to 7.
10. A computer-readable storage medium comprising instructions which, when executed on a computer, cause the computer to perform the routing method of any one of claims 1 to 7.
CN201911077082.9A 2019-11-06 2019-11-06 Routing method, network controller, system and storage medium Active CN112769696B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911077082.9A CN112769696B (en) 2019-11-06 2019-11-06 Routing method, network controller, system and storage medium
PCT/CN2020/126157 WO2021088801A1 (en) 2019-11-06 2020-11-03 Routing method, network controller, system, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911077082.9A CN112769696B (en) 2019-11-06 2019-11-06 Routing method, network controller, system and storage medium

Publications (2)

Publication Number Publication Date
CN112769696A true CN112769696A (en) 2021-05-07
CN112769696B CN112769696B (en) 2023-09-26

Family

ID=75692742

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911077082.9A Active CN112769696B (en) 2019-11-06 2019-11-06 Routing method, network controller, system and storage medium

Country Status (2)

Country Link
CN (1) CN112769696B (en)
WO (1) WO2021088801A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024975A (en) * 2021-11-26 2022-02-08 中国电力科学研究院有限公司 Service load balancing path calculation method, system, device and storage medium
CN114697363A (en) * 2022-03-31 2022-07-01 广东美的厨房电器制造有限公司 Network system, control method thereof, control device thereof, and readable storage medium
CN117278466A (en) * 2023-09-14 2023-12-22 清华大学 Candidate path selection method for fault-tolerant traffic engineering scene

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086202B (en) * 2022-04-14 2023-06-20 安世亚太科技股份有限公司 Time delay analysis method and system based on network digital twin

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030161338A1 (en) * 2002-02-27 2003-08-28 Ng David D. Network path selection based on bandwidth
CN1731762A (en) * 2005-08-05 2006-02-08 武汉理工大学 QoS restricting multicast routing method based on Steiner
CN101001102A (en) * 2007-01-10 2007-07-18 北京航空航天大学 Route device and method for raising service quality of space information network
CN101267450A (en) * 2008-03-18 2008-09-17 上海大学 Multicast routing method for distributed network application layer based on network coding
WO2010118578A1 (en) * 2009-04-16 2010-10-21 华为技术有限公司 Route method, equipment and system
CN104270283A (en) * 2014-09-15 2015-01-07 电子科技大学 Network topology estimation method based on high-order cumulants
CN107046501A (en) * 2017-05-16 2017-08-15 北京邮电大学 For SDN determining method of path, device, computer equipment and storage medium
CN107070794A (en) * 2016-12-08 2017-08-18 航天东方红卫星有限公司 A kind of low rail information network optimal network benefit delay constraint method for routing
CN108521375A (en) * 2018-04-17 2018-09-11 中国矿业大学 The transmission of the network multi-service flow QoS based on SDN a kind of and dispatching method
CN108881009A (en) * 2018-06-21 2018-11-23 北京航空航天大学 Based on the delay constraint method for routing and device for facing sky Information Network
WO2019011338A1 (en) * 2017-07-13 2019-01-17 华为技术有限公司 Method for determining shortest path and controller
CN110139319A (en) * 2019-05-25 2019-08-16 西南电子技术研究所(中国电子科技集团公司第十研究所) High dynamic time-delay network propagation delay time minimizes method for routing

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100912820B1 (en) * 2007-11-01 2009-08-18 한국전자통신연구원 Multi-path Routing method in Wireless Sensor Networks
CN101715225B (en) * 2009-11-20 2012-12-05 西安电子科技大学 Routing method of self-adapting self-organized network in cognitive network
KR102233371B1 (en) * 2014-06-24 2021-03-29 삼성전자주식회사 Method and apparatus for relaying in multicast network
CN107547393B (en) * 2016-06-29 2021-06-01 华为技术有限公司 Method for calculating forwarding path and network equipment

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030161338A1 (en) * 2002-02-27 2003-08-28 Ng David D. Network path selection based on bandwidth
CN1731762A (en) * 2005-08-05 2006-02-08 武汉理工大学 QoS restricting multicast routing method based on Steiner
CN101001102A (en) * 2007-01-10 2007-07-18 北京航空航天大学 Route device and method for raising service quality of space information network
CN101267450A (en) * 2008-03-18 2008-09-17 上海大学 Multicast routing method for distributed network application layer based on network coding
WO2010118578A1 (en) * 2009-04-16 2010-10-21 华为技术有限公司 Route method, equipment and system
CN104270283A (en) * 2014-09-15 2015-01-07 电子科技大学 Network topology estimation method based on high-order cumulants
CN107070794A (en) * 2016-12-08 2017-08-18 航天东方红卫星有限公司 A kind of low rail information network optimal network benefit delay constraint method for routing
CN107046501A (en) * 2017-05-16 2017-08-15 北京邮电大学 For SDN determining method of path, device, computer equipment and storage medium
WO2019011338A1 (en) * 2017-07-13 2019-01-17 华为技术有限公司 Method for determining shortest path and controller
CN108521375A (en) * 2018-04-17 2018-09-11 中国矿业大学 The transmission of the network multi-service flow QoS based on SDN a kind of and dispatching method
CN108881009A (en) * 2018-06-21 2018-11-23 北京航空航天大学 Based on the delay constraint method for routing and device for facing sky Information Network
CN110139319A (en) * 2019-05-25 2019-08-16 西南电子技术研究所(中国电子科技集团公司第十研究所) High dynamic time-delay network propagation delay time minimizes method for routing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LIQUAN CHEN; DONG YANG; ZHEZHUANG XU; CAILIAN CHEN: "An adaptive routing strategy for cluster-based wireless sensor networks", 《THE 27TH CHINESE CONTROL AND DECISION CONFERENCE (2015 CCDC)》 *
刘川;黄在朝;陶静;贾惠彬;: "考虑排队时延的***保护通信网络路由选择算法", 电信科学, no. 10 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024975A (en) * 2021-11-26 2022-02-08 中国电力科学研究院有限公司 Service load balancing path calculation method, system, device and storage medium
CN114697363A (en) * 2022-03-31 2022-07-01 广东美的厨房电器制造有限公司 Network system, control method thereof, control device thereof, and readable storage medium
CN117278466A (en) * 2023-09-14 2023-12-22 清华大学 Candidate path selection method for fault-tolerant traffic engineering scene

Also Published As

Publication number Publication date
WO2021088801A1 (en) 2021-05-14
CN112769696B (en) 2023-09-26
WO2021088801A9 (en) 2021-10-28

Similar Documents

Publication Publication Date Title
CN112769696B (en) Routing method, network controller, system and storage medium
US7346056B2 (en) Optimizing path selection for multiple service classes in a network
US8897141B2 (en) Network system and routing method
RU2423010C2 (en) Index of routing based on data along radio communication and band, letting through for multi-channel multiple-hop wireless networks with multiple radio stations
KR101390095B1 (en) Dynamic route branching system, dynamic route branching method, and non-transitory computer-readable storage medium
US11159432B2 (en) Data transmission method, and switch and network control system using the method
US20120030150A1 (en) Hybrid Learning Component for Link State Routing Protocols
EP2661028B1 (en) Duplicate Packet Suppression
CN110890994B (en) Method, device and system for determining message forwarding path
US20060050635A1 (en) Delay guarantee path setting system
US9906437B2 (en) Communication system, control apparatus, control method and program
US9590890B2 (en) Transfer apparatus, server, and route changing method
US10560367B2 (en) Bidirectional constrained path search
US20180097731A1 (en) Communication apparatus and method of communication
CN111512600A (en) Method, apparatus and computer program for distributing traffic in a telecommunications network
CN114500354A (en) Switch control method, device, control equipment and storage medium
EP3338415B1 (en) Routing communications traffic packets across a communications network
US20170005932A1 (en) Soft Constrained Shortest-Path First Tunneling
CN110557302B (en) Network equipment message observation data acquisition method
WO2023109794A1 (en) Methods and systems for adaptive stochastic-based load balancing
EP3051919A1 (en) Device and method for wireless communication used in wireless ad hoc network
CN107592269B (en) Method and network node for transmitting load information of path
CN115865814A (en) Network device, system and method for cycle-based load balancing
CN110572332A (en) network equipment message observation data acquisition task dividing method
CN112448890B (en) Path determining method, device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant