WO2021093509A1 - 流量分配方法及装置 - Google Patents

流量分配方法及装置 Download PDF

Info

Publication number
WO2021093509A1
WO2021093509A1 PCT/CN2020/121195 CN2020121195W WO2021093509A1 WO 2021093509 A1 WO2021093509 A1 WO 2021093509A1 CN 2020121195 W CN2020121195 W CN 2020121195W WO 2021093509 A1 WO2021093509 A1 WO 2021093509A1
Authority
WO
WIPO (PCT)
Prior art keywords
router
path
flow rate
physical link
message
Prior art date
Application number
PCT/CN2020/121195
Other languages
English (en)
French (fr)
Inventor
高红亮
涂伯颜
刘冰
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021093509A1 publication Critical patent/WO2021093509A1/zh

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/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • 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

Definitions

  • This application relates to communication technology, and in particular to a method and device for traffic distribution.
  • a communication network there can be multiple paths from the source address to the destination address of a data stream.
  • the data stream can be forwarded from the source address by multiple routers to the destination address.
  • a data stream when a data stream is sent from a source address to a destination address, usually only one of the multiple paths is used for transmission, and the other paths are in a backup state or an invalid state.
  • the data stream is calculated according to hash (hash) for traffic distribution and then transmitted in multiple paths.
  • UCMP unequal-cost multi-path routing
  • the embodiments of the present application provide a flow distribution method and device, which solves the technical problem that the unbalanced network flow of the communication network in the prior art easily leads to network congestion.
  • an embodiment of the present application provides a traffic distribution method, including: an ingress router obtains first parameters of one or more paths, the multiple paths are paths between the ingress router and the egress router, and the first parameter of any path is The parameter is used to reflect the traffic allowed by any path; the ingress router distributes the traffic for one or more paths according to the first parameter of one or more paths. Because the ingress router can obtain the real-time traffic conditions of one or more paths, the ingress router can allocate adaptive traffic to one or more paths according to the real-time traffic conditions of each path, so as to avoid the fact that the traffic is different from the actual conditions of the path. Network congestion caused by adaptation.
  • the ingress router acquiring the first parameter of one or more paths includes: for each path, the ingress router sends a first packet to the next-hop router in the path, and the first packet is used for Instruct the routers in the path to calculate the flow rate; the ingress router receives the second message returned by the egress router, and the second message is a message obtained by setting the flow rate of each router in the path in the first message; where , Each intermediate router in the path is used to carry the calculated flow rate in the first packet and send it to the next-hop router; the ingress router determines the path's flow rate according to the flow rate of each router in the second packet.
  • the first parameter Because the routers in each path can calculate its own flow rate, the ingress router only needs to determine the first parameter of the path according to the flow rate of each router, which requires a small amount of calculation.
  • the ingress router determines the first parameter of the path according to the flow rate of each router in the second message, including: the ingress router determines the minimum flow from the flow rate of the router in the second message Velocity, the minimum velocity is the first parameter of the path. Because the router with the smallest flow rate in the path determines the size of the flow allowed by the path, the minimum flow rate is taken as the first parameter of the path to obtain a more accurate allowable flow of the path.
  • the ingress router acquiring the first parameter of one or more paths includes: for each path, the ingress router sends a first packet to the next-hop router in the path, and the first packet is used for Instruct the routers in the path to calculate the flow rate; the ingress router receives the second packet returned by the egress router.
  • the second packet includes the first flow rate.
  • the first flow rate is based on the flow rate of each router in the path and the first packet.
  • each intermediate router in the path is used to: if the flow rate calculated by the intermediate router is less than the flow rate carried in the first packet sent by the previous hop router, the previous hop router The flow rate carried in the first packet sent is replaced with the flow rate calculated by the intermediate router, and the replaced first packet is sent to the next-hop router; the ingress router determines the flow rate carried in the second packet The first parameter of the path.
  • a flow rate can be carried in the message, which can save the traffic required for communication, and the flow rate carried in the second message can be directly used as the first parameter of the path without further calculation by the ingress router. Save the computing resources of the ingress router.
  • the ingress router acquiring the first parameter of one or more paths includes: for each path, the ingress router sends a third packet to the next-hop router in the path, and the third packet is used for Instruct the routers in the path to measure the physical link capacity information of the router and the current physical link rate information of the router; the ingress router receives the third message returned by the egress router, and the third message is for each router in the path The physical link capacity information and the current physical link rate information are set in the third message; where each intermediate router in the path is used to combine the measured physical link capacity information and the current physical link The path rate information is carried in the third message and sent to the next-hop router; the ingress router calculates the first parameter of the path according to the physical link capacity information and current physical link rate information of each router in the second message.
  • the intermediate router only needs to measure the respective physical link capacity information and the current physical link rate information of the router, and does not need to calculate the flow rate.
  • the ingress router is based on the physical link capacity information of each router in the path and the router. Calculate the first parameter of the path based on the current physical link rate information. Therefore, the calculation amount of the intermediate router can be reduced, thereby reducing the performance requirements of the intermediate router.
  • the ingress router acquiring the first parameters of one or more paths includes: the ingress router receives the first parameters of the one or more paths from the first electronic device, and the first parameters of the one or more paths are The first electronic device obtains the flow rate of each router in the path or the physical link capacity information of each router and the current physical link rate information, and according to the flow rate of each router in the path or the physical link capacity information of each router and The current physical link rate information is calculated. In this way, the first parameter of the path is calculated by the electronic device and then sent to the ingress router, so that the computing resources of the ingress router can be saved.
  • the first message includes: round-trip delay information RTT of the path, and current flow rate information of the path.
  • the current flow rate information measured by the ingress router is added to the first message, so that when the first parameter of the path is subsequently calculated according to the flow rate of each router, an accurate first parameter can be obtained.
  • the first message further includes path information used to identify the path. Then the egress router does not need to further determine the path corresponding to the second packet, so the computing resources of the egress router can be saved.
  • the ingress router allocates traffic to one or more paths according to the first parameters of the one or more paths, including: when the ingress router receives the first data stream, the ingress router calculates the value of the first data stream. According to the first parameter of the multiple paths, the ingress router distributes the traffic to the multiple paths; and/or, the ingress router is one or more according to the first parameter of the multiple paths and the traffic of the second data flow in the ingress router.
  • Path update flow In this way, the ingress router can realize the adaptive distribution of the newly received first data stream in each path, or update the path of the second data stream that already exists in the ingress router, so as to balance the load in each path and reduce the occurrence. Probability of congestion.
  • an embodiment of the present application provides a traffic distribution method, including: an electronic device calculates each router based on the flow rate of each router in one or more paths or the physical link capacity information of each router and the current physical link rate information.
  • the first parameter of the path multiple paths are paths between the ingress router and the egress router; the electronic device sends the first parameter to the ingress router, and the first parameter is used by the ingress router to distribute traffic to one or more paths.
  • the electronic device calculates the first parameter of each path according to the flow rate of each router in one or more paths, including: the electronic device receives a message sent by the router in each path, and the message includes a sent message The flow rate of the router in the text, or the physical link capacity information of each router and the current physical link rate information; electronic equipment according to the flow rate of the router in each path or the physical link capacity information of each router and the current physical link rate Information, calculate the first parameter of the path.
  • the electronic device is an egress router, and the electronic device calculates the first path of each path based on the flow rate of each router in one or more paths or the physical link capacity information of each router and the current physical link rate information.
  • One parameter includes: the egress router receives the message sent by the previous hop router in the path, and the message includes the flow rate of the router located before the egress router in the path or the physical link capacity information of each router and the current physical link rate information; The egress router calculates the first parameter of the path according to the flow rate of each router in the message or the physical link capacity information of each router and the current physical link rate information.
  • an embodiment of the present application provides a traffic distribution method, including: an intermediate router receives a message sent by a previous hop router in a path, the intermediate router is a router other than an ingress router and an egress router in the path, and the message includes The flow rate of the router located before the intermediate router in the path or the physical link capacity information and current physical link rate information of each router; the intermediate router calculates the first flow rate, or measures the physical link capacity information and the current physical link rate information; The intermediate router carries the first flow rate or the physical link capacity information and the current physical link rate information in a message and sends it to the next hop router in the path; or, the first flow rate calculated by the intermediate router is less than the previous hop In the case of the flow rate carried in the packet sent by the router, replace the flow rate carried in the packet sent by the previous hop router with the flow rate calculated by the intermediate router, and send the replaced packet to the next hop Router; among them, the message carries a flow rate.
  • the message includes: the round-trip delay information RTT of the path, and the current flow rate information of the path.
  • the message further includes path information used to identify the path.
  • an embodiment of the present application provides a traffic distribution device applied to an ingress router.
  • the device includes: a processing module for obtaining first parameters of one or more paths.
  • the multiple paths are between the ingress router and the egress router.
  • the first parameter of any path is used to reflect the traffic allowed by any path;
  • the distribution module is used to allocate traffic to one or more paths according to the first parameter of one or more paths.
  • the processing module is specifically used to: for each path, send a first packet to the next-hop router in the path, and the first packet is used to instruct the router in the path to calculate the flow rate ; Receive the second message returned by the egress router, the second message is the message obtained by setting the flow rate of each router in the path in the first message; wherein, each intermediate router in the path is used for The calculated flow rate is carried in the first packet and sent to the next-hop router; the first parameter of the path is determined according to the flow rate of each router in the second packet.
  • the processing module is specifically used to determine the minimum flow rate from the flow rate of the router in the second message, and the minimum flow rate is the first parameter of the path.
  • the processing module is specifically used to: for each path, send a first packet to the next-hop router in the path, and the first packet is used to instruct the router in the path to calculate the flow rate ; Receive the second message returned by the egress router, the second message includes the first flow rate, the first flow rate is obtained according to the flow rate of each router in the path and the first message; wherein, each of the paths in the path An intermediate router is used to: if the flow rate calculated by the intermediate router is less than the flow rate carried in the first packet sent by the previous hop router, the flow rate carried in the first packet sent by the previous hop router Replace with the flow rate calculated by the intermediate router, and send the replaced first packet to the next-hop router; the flow rate carried in the second packet is used to determine the first parameter of the path.
  • the processing module is specifically used to: for each path, send a third message to the next-hop router in the path, and the third message is used to instruct the router in the path to measure the router The physical link capacity information of the router and the current physical link rate information of the router; receive the third message returned by the egress router, the third message is the physical link capacity information of each router in the path and the current physical link The rate information is set in the message obtained in the third message; where each intermediate router in the path is used to carry the measured physical link capacity information and the current physical link rate information in the third message and send To the next-hop router; calculate the first parameter of the path according to the physical link capacity information and current physical link rate information of each router in the second message.
  • the processing module is specifically configured to: receive the first parameters of one or more paths from the first electronic device, and the first parameters of one or more paths are obtained by the first electronic device.
  • the flow rate of the router or the physical link capacity information of each router and the current physical link rate information and calculated according to the flow rate of each router in the path or the physical link capacity information of each router and the current physical link rate information .
  • the distribution module is specifically configured to: when the ingress router receives the first data flow, calculate the flow of the first data flow, and allocate the flow to the multiple paths according to the first parameters of the multiple paths; And/or, update the flow for one or more paths according to the first parameters of the multiple paths and the flow of the second data flow in the ingress router.
  • an embodiment of the present application provides a flow distribution device, which is applied to electronic equipment, and includes a calculation module, which is used to calculate the flow rate of each router in one or more paths or the physical link capacity information of each router and the current Physical link rate information, calculate the first parameter of each path, multiple paths are the path between the ingress router and the egress router; the sending module is used to send the first parameter to the ingress router, and the first parameter is one for the ingress router Or multiple paths to distribute traffic.
  • the calculation module is specifically used to receive packets sent by routers in each path.
  • the packets include the flow rate of the router that sends the packet, or the physical link capacity information of each router and the current physical link Path rate information; calculate the first parameter of the path according to the flow rate of the router in each path or the physical link capacity information of each router and the current physical link rate information.
  • the electronic device is an egress router
  • the calculation module is specifically used to: receive the message sent by the router on the previous hop in the path, and the message includes the flow rate of the router before the egress router in the path or each router Calculate the first parameter of the path according to the flow rate of each router or the physical link capacity information of each router and the current physical link rate information in the message.
  • an embodiment of the present application provides a traffic distribution device, which is applied to an intermediate router, and includes: a receiving module for receiving packets sent by the previous hop router in the path, and the intermediate router is the path except the ingress router and the egress router.
  • the message includes the flow rate of the router located before the intermediate router in the path or the physical link capacity information of each router and the current physical link rate information; the calculation module is used to calculate the first flow rate or measure the physical link Path capacity information and current physical link rate information; a sending module for carrying the first stream rate or, physical link capacity information and current physical link rate information in a message and sending it to the next-hop router in the path; or If the first flow rate calculated by the intermediate router is less than the flow rate carried in the packet sent by the previous hop router, replace the flow rate carried in the packet sent by the previous hop router with the flow calculated by the intermediate router Rate and send the replaced message to the next-hop router; among them, the message carries a flow rate.
  • the message includes: the round-trip delay information RTT of the path, and the current flow rate information of the path.
  • the message further includes path information used to identify the path.
  • an embodiment of the present application provides a traffic distribution device.
  • the traffic distribution device may be a chip or a system-on-chip of an ingress router, including a processor and an interface circuit, where the interface circuit is used to receive code instructions and transmit them to the processor;
  • the processor is used to run code instructions to execute any possible design method such as the first aspect or the first aspect.
  • inventions of the present application provide a flow distribution device.
  • the flow distribution device may be a chip or a system-on-chip in an electronic device, including a processor and an interface circuit.
  • the interface circuit is used to receive code instructions and transmit them to the processor.
  • the processor is used to run code instructions to execute any possible design method such as the second aspect or the second aspect.
  • an embodiment of the present application provides a traffic distribution device.
  • the traffic distribution device may be a chip in an intermediate router or a system on a chip, including a processor and an interface circuit, and the interface circuit is used to receive code instructions and transmit them to the processor.
  • the processor is used to run code instructions to execute any possible design method such as the third aspect or the third aspect.
  • an embodiment of the present application provides a flow distribution device, including a memory and a processor, and the processor executes program instructions in the memory to implement any possible design method such as the first aspect or the first aspect .
  • an embodiment of the present application provides a flow distribution device, including a memory and a processor, and the processor executes program instructions in the memory to implement a design such as the second aspect or any one of the possible designs of the second aspect. method.
  • an embodiment of the present application provides a traffic distribution device, including a memory and a processor, and the processor executes program instructions in the memory to implement the design of the third aspect or any one of the possible designs of the third aspect. method.
  • the embodiments of the present application provide a readable computer storage medium, the readable computer storage medium is used to store a computer program, and the computer program is used to implement a design such as the first aspect or any one of the possible designs of the first aspect. method.
  • the embodiments of the present application provide a readable computer storage medium, where the readable computer storage medium is used to store a computer program, and the computer program is used to implement any possible design such as the second aspect or the second aspect method.
  • the embodiments of the present application provide a readable computer storage medium, the readable computer storage medium is used to store a computer program, and the computer program is used to implement the third aspect or any possible design of the third aspect. method.
  • an embodiment of the present application provides a flow distribution system, including the fourth aspect and the corresponding feasible implementation manner of the flow distribution device, the fifth aspect and the corresponding feasible implementation manner of the flow distribution device, and the sixth aspect and corresponding ⁇ Feasible implementation of the flow distribution device.
  • Fig. 1 is a schematic diagram of an existing architecture of traffic transmission via routing
  • Figure 2 is a schematic diagram of another existing architecture of traffic transmission via routing
  • FIG. 3 is a schematic diagram of another existing architecture of traffic transmission via routing
  • FIG. 4 is a schematic diagram of a system architecture to which the traffic distribution method according to an embodiment of the application is adapted;
  • FIG. 5 is a schematic flowchart of a flow distribution method provided by an embodiment of the application.
  • FIG. 6 is a schematic diagram of a signaling interaction process for acquiring a first parameter of a path in a traffic distribution method provided by an embodiment of this application;
  • FIG. 7 is a schematic diagram of a message format provided by an embodiment of the application.
  • FIG. 8 is a schematic diagram of a message format provided by an embodiment of the application.
  • FIG. 9 is a schematic diagram of another signaling interaction process for acquiring the first parameter of a path in the traffic distribution method provided by an embodiment of the application.
  • FIG. 10 is a schematic diagram of another signaling interaction process for acquiring the first parameter of a path in the traffic distribution method provided by the embodiment of this application;
  • FIG. 11 is a schematic diagram of paths of multiple pairs of ingress routers and egress routers according to an embodiment of the application.
  • FIG. 12 is a schematic flowchart of another traffic distribution method provided by an embodiment of this application.
  • FIG. 13 is a schematic flowchart of yet another traffic distribution method provided by an embodiment of this application.
  • FIG. 14 is a schematic structural diagram of a flow distribution device provided by an embodiment of the application.
  • 15 is a schematic structural diagram of another flow distribution device provided by an embodiment of the application.
  • 16 is a schematic structural diagram of yet another flow distribution device provided by an embodiment of the application.
  • FIG. 17 is a schematic diagram of the hardware structure of a traffic distribution device provided by an embodiment of the application.
  • the embodiments of this application provide traffic allocation methods.
  • the methods of the embodiments of this application can be applied in long term evolution (LTE), in the fifth generation mobile communication (5 Generation, 5G) system, or in the future Mobile communication system.
  • LTE long term evolution
  • 5G fifth generation mobile communication
  • 5G future Mobile communication system.
  • Fig. 2 in the schematic diagram of another architecture where traffic is transmitted by routing, multiple paths may overlap at the far end, causing the link at the overlap to be blocked. If the link 21 at the overlap is blocked, the link 21 at the overlap may be blocked.
  • the traffic distribution of ECMP cannot perceive the blocking state of link 21, and may still distribute traffic to the path including link 21, causing network congestion.
  • multiple larger data streams may be allocated to path 31, causing a large flow conflict, and path 32 may be allocated smaller data streams.
  • Flow resulting in small flow and light load, making the load of each path in the network very uneven, which may easily cause network congestion.
  • the UCMP traffic distribution method Although the difference in the bandwidth of each path is considered, it does not sense whether the remote path overlaps. Therefore, similar to the scenes corresponding to Figure 2 and Figure 3 in ECMP, the UCMP traffic distribution method is also easy There is network congestion.
  • FIG. 4 is a schematic diagram of a system architecture to which the traffic distribution method according to an embodiment of the application is adapted.
  • the system may include an ingress router 41, an egress router 42, and an intermediate router 43, where the intermediate router 43 can be any one or more routers between the ingress router 41 and the egress router 42.
  • the ingress router 41 can be used as the ingress of traffic, and the egress router 42 can be used as the egress of traffic. There may be one or more paths between the ingress router 41 and the egress router 42, and each path may include one or more intermediate routers 43.
  • the ingress router 41 can allocate traffic adapted to each path according to the traffic conditions allowed by one or more paths between the ingress router 41 and the egress router 42, thereby effectively improving the network.
  • the traffic allowed by the one or more paths is related to the traffic allowed by the routers in each path.
  • the traffic allowed by the one or more paths can be calculated by the ingress router 41, and It can be calculated by the egress router 42, or can be calculated by using other electronic devices (for example, the electronic device 45 shown in FIG. 4), which will be described in detail in the subsequent embodiments, and will not be repeated here.
  • the system may further include a controller 44.
  • the controller 44 may plan a set of data flows between the ingress router 41 and the egress router 42 for a group of data flows passing through the ingress router 41 and the egress router 42. And send the one or more paths to the ingress router 41, so that the ingress router can subsequently assign each path to the path according to the traffic conditions allowed by the one or more paths. Adapted traffic.
  • the ingress router 41 there are many ways to plan one or more paths between the ingress router 41 and the egress router 42.
  • the controller 44 is not provided in the system, the ingress router 41
  • One or more paths between the egress router 42 and the egress router 42 may also be obtained according to the existing ECMP or the like, which is not specifically limited in the embodiment of the present application.
  • the system may also include an electronic device 45.
  • the electronic device 45 may specifically be a server, a terminal device, etc., and the electronic device 45 may be connected to the ingress router 41, the egress router 42, and the intermediate router 43.
  • the electronic device 45 can be used to calculate the traffic conditions allowed by one or more paths, so that the computing resources of each router can be saved.
  • the electronic device may also be the controller 44, and the electronic device 45 does not need to be separately provided in the system, which is not specifically limited in the embodiment of the present application.
  • the traffic distribution method of the embodiment of the present application can be applied to a metropolitan area network system.
  • traffic flows through an ingress router and an egress router.
  • the traffic distribution method in the embodiment of the present application can also be applied to other applicable network systems, and the embodiment of the present application does not specifically limit it.
  • the ingress router involved in the embodiments of the present application may be the entrance of an intermediate network (such as a metropolitan area network) or the real source end; the egress router can be the exit of the intermediate network or the real destination end.
  • the embodiment of the present application does not specifically limit this.
  • the execution subject of the method on the ingress router side may be the ingress router or the device in the ingress router (it should be noted that the ingress router is taken as an example for description in the embodiments provided in this application) .
  • the device in the ingress router may be a chip system, a circuit, or a module (for example, a module implemented by software), etc., which is not limited in the embodiment of the present application.
  • the execution subject of the method on the egress router side can be the egress router or the device in the egress router (it should be noted that the egress router is described as an example in the embodiment provided in this application) .
  • the device in the egress router may be a chip system, a circuit, or a module (for example, a module implemented by software), etc., which is not limited in the embodiment of the present application.
  • the execution subject of the method on the intermediate router side may be the intermediate router or the device in the intermediate router (it should be noted that the intermediate router is described as an example in the embodiment provided in this application) .
  • the device in the intermediate router may be a chip system, a circuit, or a module (for example, a module implemented by software), etc., which is not limited in the embodiment of the present application.
  • the second message involved in the embodiment of the present application may be: a message obtained by increasing the flow rate of the intermediate router and the flow rate of the egress router in the first message, or a message obtained by modifying the flow rate of the first message
  • This article will be described in detail in the subsequent embodiments, and will not be repeated here.
  • the first message and the second message can use the same name or different names. In the embodiment of this application, it is only to distinguish the initial message generated by the ingress router from the subsequent reception.
  • the content of the received message may be different, and the description of the first message and the second message does not mean that there are two different types of messages.
  • the fourth message involved in the embodiment of the present application may be: adding the physical link capacity information and current physical link rate information of the intermediate router to the third message, as well as the physical link capacity information and current physical link information of the egress router.
  • the packets obtained from the channel rate information will be described in detail in subsequent embodiments, and will not be repeated here.
  • the third message and the fourth message may use the same name or different names. In the embodiment of this application, it is only to distinguish the initial message generated by the ingress router from the subsequent reception.
  • the content of the received message may be different, and the description of the third message and the fourth message does not mean that they are two different types of messages.
  • the forms of the third message and the first message may be the same or inconsistent, which will be described in detail in the subsequent embodiments and will not be repeated here.
  • FIG. 5 is a schematic flowchart of a flow distribution method provided by an embodiment of the application. As shown in FIG. 5, the method provided in this embodiment includes the following steps:
  • the ingress router obtains the first parameter of one or more paths.
  • the multiple paths are paths between the ingress router and the egress router, and the first parameter of any path is used to reflect the traffic allowed by any path.
  • the first parameter of the path may reflect the traffic allowed by the path, and the first parameter may be a parameter related to bandwidth, or a parameter related to flow rate, etc.
  • the implementation of this application The example does not limit the specific content of the first parameter.
  • the first parameter of the path may be obtained according to the flow rate of each router (including ingress router, intermediate router, and egress router) in the path.
  • the router with the lowest flow rate in the path determines where the path is located. Allowed traffic, therefore, the first parameter of the path can be the lowest flow rate corresponding to the router with the lowest flow rate in the path, or it can be the second low flow rate corresponding to the router with the second lowest flow rate in the path, etc.
  • the embodiments of this application do not specifically limit this.
  • the ingress router may obtain the first parameter of each path after obtaining the flow rate of each router in each path, or obtaining the physical link capacity information and current physical link rate information of each router; or After the egress router obtains the flow rate of each router in each path, or obtains the physical link capacity information and current physical link rate information of each router, the first parameter of each path is calculated, and the egress router calculates the first parameter of each path.
  • the ingress router can receive the first parameter of each path; or, the electronic device outside the path obtains the flow rate of each router in each path, or obtains the physical link capacity information of each router and the current After the physical link rate information, the first parameter of each path is calculated, and the electronic device sends the flow rate of each path to the ingress router, then the ingress router can receive the first parameter of each path; etc.
  • the electronic device sends the flow rate of each path to the ingress router, then the ingress router can receive the first parameter of each path; etc.
  • the ingress router distributes traffic to one or more paths according to the first parameter of the one or more paths.
  • the ingress router after the ingress router obtains the traffic allowed by one or more paths, it can allocate traffic adapted to each path for each path, for example, assign each path less than or equal to the allowed traffic of the path. Therefore, the load of each path can be more balanced, and the congestion in the network can be improved.
  • the ingress router when the ingress router receives the first data stream, calculates the traffic of the first data stream, and allocates the traffic to the multiple paths according to the first parameters of the multiple paths.
  • the first data flow may be a data flow that has not yet been transmitted by the ingress router.
  • the ingress router receives the first data flow, it can calculate the flow of transmitting the first data flow, and allocate the data for each path. Traffic for path adaptation.
  • the ingress router can also select 1 to n paths with a larger traffic margin among multiple paths.
  • the specific value of n can be selected according to the actual situation, and n is greater than 1.
  • a positive integer of, and the first data stream is preferentially allocated to the 1 to n paths with a larger flow margin, so that the transmission of the first data stream can be realized through fewer paths.
  • the ingress router updates the traffic for one or more paths according to the first parameters of the multiple paths and the traffic of the second data flow in the ingress router.
  • the second data stream may be the data stream being transmitted by the ingress router.
  • the ingress router can also adjust the transmission path of the second data stream to be the first 2.
  • the part of the data stream to be transmitted is redistributed to the path, that is, one or more paths update the flow to meet the real-time transmission conditions of each path and improve the congestion of the network.
  • the ingress router can also select 1 to m paths with a larger traffic margin among multiple paths.
  • the specific value of m can be selected according to the actual situation, m It is a positive integer greater than 1, and the second data stream is preferentially adjusted in the 1 to m paths with a larger flow margin, so that the transmission of the first data stream can be realized by adjusting fewer paths.
  • the ingress router calculates the bandwidth utilization rate of each path according to the physical capacity of each path and the maximum transmission rate of each path (for example, the maximum transmission rate can be divided by the physical capacity to obtain the bandwidth utilization rate).
  • the bandwidth utilization difference of each path reaches a certain threshold, and the traffic of each path can be adjusted, for example, the flow in the path with the highest bandwidth utilization is adjusted to the path with the lowest bandwidth utilization.
  • the ingress router obtains the first parameter of one or more paths, and the multiple paths are paths between the ingress router and the egress router, and the first parameter of each path is used to reflect that the path allows Passing traffic, that is, the ingress router can get the real-time traffic conditions of one or more paths, and the ingress router can allocate adaptive traffic to one or more paths according to the real-time traffic conditions of each path, so as to avoid the traffic Network congestion caused by not adapting to the actual situation of the path.
  • FIG. 6 is a schematic diagram of a signaling interaction process for acquiring the first parameter of a path in the traffic distribution method provided by an embodiment of the application.
  • the path may include an ingress router, an egress router, and N
  • An intermediate router, N can be a value greater than or equal to 1. It can be understood that when N is 1, only one intermediate router is included in Figure 6, and the signaling interaction of this method can include:
  • the ingress router generates a first packet.
  • the ingress router may generate a first packet for measuring the first parameter of the path, so that other routers in the path perform the step of calculating its own flow rate when receiving the first packet.
  • the first message can be an out-of-band message.
  • the out-of-band message can refer to a message sent through a dedicated network management channel.
  • the first message is separated from the service data and does not affect normal datagrams. It can also improve the efficiency and reliability of the transmission of the first message.
  • the first message may also be an in-band (In-band) message, and the in-band message may refer to a message carried in service data.
  • In-band in-band
  • the embodiment of the present application does not limit the specific form of the first message.
  • the first packet may include round-trip time (RTT) information of the path, and current flow rate information Rate of the path.
  • RTT round-trip time
  • the RTT information can refer to the time required for a data packet to go back and forth from the ingress router to the egress router, which was previously measured from the ingress router.
  • the RTT information can reflect the current path status. For example, if the current path is relatively congested, the value of RTT is larger, and if the current path status is better, the value of RTT is smaller.
  • RTT can be used as one of the parameters, which will be described in detail in the subsequent part, and will not be repeated here.
  • the current flow rate information of the path which may also be referred to as Rate information, may refer to the current sending rate of a group of flows calculated by the ingress router.
  • Rate information may refer to the current sending rate of a group of flows calculated by the ingress router.
  • the ingress router adds the current flow rate information measured by the ingress router to the first message, so that when the first parameter of the path is calculated subsequently according to the flow rate of each router, the accurate first parameter can be obtained .
  • the first packet may not include the path identifying the path. information.
  • the path information is not included in the first message, if the egress router returns the second message corresponding to the path to the ingress router, it needs to first determine the path corresponding to the second message, and then transfer the second message and The corresponding path information is sent to the entrance router.
  • the first packet also includes path information for identifying the path (or can also be a path identifier, etc.), the egress router does not need to further determine the path corresponding to the second packet, so the calculation of the egress router can be saved Resources.
  • the path information identifying the path may be segment routing list (SR-List) information, path identification (PathID), and the like.
  • IPv4 or IPv6 represents the version number of the Internet Protocol (IP), and the number of IPv4 addresses is 32 bits; IPv6 uses a 128-bit address length. It is understandable that in future applications, the IP version number can also be based on The actual demand adapts to the setting, and the embodiment of the present application does not specifically limit it.
  • the transmission control protocol (transmission control protocol, TCP) header may also be adapted to be set according to actual requirements, and the embodiment of the present application does not specifically limit it.
  • the IP protocol version number and TCP header are the contents that may be included in a normal message.
  • the first message can choose to set or not set the IP protocol version number and TCP header according to requirements.
  • the path information can be selected to be set or not set in the first message according to requirements.
  • the positions of the IP protocol version number, TCP header, RTT, Rate, and path information in FIG. 7 can also be adjusted arbitrarily according to actual needs, and the embodiment of the present application does not specifically limit it.
  • S602 The ingress router sends the first packet to the first intermediate router.
  • the first intermediate router is the next hop router of the ingress router in the path. After the ingress router sends the first packet to the first intermediate router, the first intermediate router may perform S603 and S604.
  • the first intermediate router calculates the first flow rate of the first intermediate router.
  • the first intermediate router may use any method in the prior art to calculate the first flow rate, which is not specifically limited in the embodiment of the present application.
  • the first intermediate router may calculate the first flow rate based on a definition in a rate control protocol (Rate Control Protocol, RCP).
  • RCP Rate Control Protocol
  • RCP Rate Control Protocol
  • R(t) is the first flow rate (it can also be understood as the maximum flow rate allowed by the first router in the path), C is the physical link capacity information of the first intermediate router, and y(t) is the first The current physical link rate information of the intermediate router, q(t) is the queue length, d0 is the average RTT, T is the measurement period, and ⁇ and ⁇ are the influence coefficients (fixed values according to actual settings). C, y(t), q(t) and d0 can all be measured by the first intermediate router according to the prior art.
  • any router can use a method similar to that of the first intermediate router when calculating its own flow rate, and the specific implementation of each router's calculation of the flow rate will not be repeated in the following. For a certain intermediate router, if there are multiple paths passing through the intermediate router, the intermediate router will calculate the flow rate of the multiple paths at the intermediate router respectively.
  • the first intermediate router carries the first flow rate in a first packet and sends it to the next hop router.
  • the Nth intermediate router calculates the Nth flow rate of the Nth intermediate router.
  • the Nth intermediate router carries the Nth flow rate in the first packet and sends it to the egress router.
  • the first intermediate router may add the first flow rate to the first packet, and then send the first packet to the next hop router of the first intermediate router, and so on, and then the next hop router After calculating its own flow rate, add its own flow rate to the first including the first flow rate, and send it to the next-hop router of the next-hop router until the Nth intermediate router, which can be an egress The last hop router of the router.
  • the egress router measures the flow rate of the egress router, and sets the flow rate in the first packet to obtain the second packet.
  • the egress router calculates its own flow rate and sets the flow rate after the first packet, and then sends the obtained second packet to the egress router.
  • FIG. 8 a schematic diagram of the format of the second message is shown. Different from the first message, the second message adds the flow rate of the intermediate router and the flow rate of the egress router.
  • the ingress router calculates the first parameter of the path according to the flow rate of each router in the second packet.
  • the ingress router may use the lowest flow rate in the second packet as the first parameter of the path, or the second low flow rate as the first parameter of the path, etc., which is not specifically limited in this application.
  • the ingress router can generate packets for each path in the multiple paths, and can send corresponding packets to the next-hop routers in each path at the same time or time-sharing. After the first parameters of the multiple paths are obtained, the adaptive traffic can be allocated to each path, which will not be repeated here.
  • the implementation of S601-S606 remains unchanged, and S607 can be replaced with: the egress router calculates the flow rate of the egress router, and calculates the first path of the path based on the packets received from the Nth intermediate router.
  • S608 can be replaced by: the egress router sends the first parameter of the path to the ingress router.
  • S609 can be replaced by: the ingress router receives the first parameter of the path.
  • the egress router calculates the first parameter of the path, and the calculation method is similar to that of the ingress router calculating the first parameter of the path. Computing resources.
  • S601-S607 remains unchanged, S608 can be replaced with: the egress router sends a second packet to the electronic device, and S609 can be replaced with: the electronic device calculates according to the second packet The first parameter of the path. Add another step: the electronic device sends the first parameter of the path to the ingress router, and the ingress router receives the first parameter of the path.
  • the first parameter of the path is calculated by the electronic device, and the calculation method is similar to the way the ingress router calculates the first parameter of the path. Computing resources.
  • each intermediate router and the egress router can send to the electronic device after calculating their respective flow rates, and the first parameter of the path is calculated by the electronic device and then sent to the ingress router, so that the ingress can be saved.
  • the computing resources of the router can be used to calculate their respective flow rates, and the first parameter of the path is calculated by the electronic device and then sent to the ingress router, so that the ingress can be saved.
  • the electronic device can monitor each intermediate router and the egress router. After each intermediate router and the egress router calculate their respective flow rates, the electronic device can obtain the flow rates of each intermediate router and the egress router. , The first parameter of the path is calculated by the electronic device and then sent to the ingress router, so that the computing resources of the ingress router can be saved.
  • FIG. 9 is a schematic diagram of a signaling interaction process for acquiring the first parameter of a path in the traffic distribution method provided by an embodiment of the application.
  • the path may include an ingress router, an egress router, and N
  • An intermediate router, N can be a value greater than or equal to 1. It can be understood that when N is 1, only one intermediate router is included in Figure 9.
  • the signaling interaction of this method can include:
  • S901 The ingress router generates a third message.
  • the ingress router may generate a third packet for measuring the first parameter of the path, so that other routers in the path can measure their own physical link capacity information when receiving the third packet. And the current physical link rate information.
  • the third message can be an out-of-band message, and an out-of-band message can refer to a message sent through a dedicated network management channel.
  • the third message is separated from the service data and does not affect normal datagrams. It can also improve the efficiency and reliability of the third message transmission.
  • the third message may also be an in-band (In-band) message, and the in-band message may refer to a message carried in service data.
  • In-band in-band
  • the third message may be a message in the same form as the first message in the embodiment of FIG. 6, for example, including one of IP version number, TCP header, RTT, Rate, path information, or There are many, so I won’t repeat them here.
  • the function of the third message is to indicate the physical link capacity information measured by the router in the path (corresponding to C in the formula of the embodiment of FIG. 6) and the current physical link rate. Information (corresponding to y(t) in the formula of the embodiment of FIG. 6).
  • the third message may also be a message in a different form from the first message.
  • the third message may include one or more of the IP version number, TCP header, and path information.
  • each router only needs to measure the physical link capacity information and the current physical link rate information, and does not need to calculate the flow rate, and therefore does not need information such as RTT, so RTT and other information may not be carried in the third packet.
  • the ingress router sends a third packet to the first intermediate router.
  • the first intermediate router is the next hop router of the ingress router in the path. After the ingress router sends the third packet to the first intermediate router, the first intermediate router may perform S903 and S904.
  • the first intermediate router measures the first physical link capacity information and the current physical link rate information of the first intermediate router.
  • the first intermediate router may use any method in the prior art to measure the first physical link capacity information and the current physical link rate information, which is not specifically limited in the embodiment of the present application.
  • any router when any router measures its own physical link capacity information and current physical link rate information, it can use a method similar to that of the first intermediate router, and will not repeat the details of each router measuring physical link capacity information and The specific realization of the current physical link rate information. For a certain intermediate router, if multiple paths pass through the intermediate router, the intermediate router will measure the physical link capacity information and current physical link rate information of the multiple paths on the intermediate router respectively.
  • the first intermediate router carries the first physical link capacity information and the current physical link rate information in a third message and sends it to the next-hop router.
  • the Nth intermediate router measures the Nth physical link capacity information and current physical link rate information of the Nth intermediate router.
  • the Nth intermediate router carries the Nth physical link capacity information and the current physical link rate information in a third message and sends it to the egress router.
  • the first intermediate router may add the first physical link capacity information and the current physical link rate information to the third message, and then send the third message to the next hop of the first intermediate router
  • the router and so on, after the next hop router measures its own physical link capacity information and current physical link rate information, it adds its own physical link capacity information and current physical link rate information to include the first physical link
  • the first part of the path capacity information and the current physical link rate information is sent to the next hop router of the next hop router until the Nth intermediate router, and the Nth intermediate router may be the previous hop router of the egress router.
  • the egress router measures the physical link capacity information and the current physical link rate information of the egress router, and sets the physical link capacity information and the current physical link rate information in the third message to obtain the fourth message.
  • the egress router Different from the intermediate router, the egress router measures its own physical link capacity information and current physical link rate information, and sets the physical link capacity information and current physical link rate information after the third message. Send the obtained fourth message to the egress router.
  • the ingress router calculates the first parameter of the path according to the physical link capacity information of each router and the current physical link rate information in the fourth packet.
  • the ingress router may first calculate the flow rate of each router in the path by calculating the flow rate based on the definition in the rate control protocol (RCP), and the ingress router may use the lowest flow rate of each router as the path's
  • the first parameter or the second low flow rate information is used as the first parameter of the path, etc., which are not specifically limited in this application.
  • R(t) is the flow rate of the router (also can be understood as the flow rate allowed by the first router in the path)
  • C is the physical link capacity information of the router
  • y(t) is the current physical link rate information of the router
  • q(t) is the queue length
  • d0 is the average RTT
  • T is the measurement period
  • ⁇ and ⁇ are influence coefficients (fixed values according to actual settings).
  • the ingress router can generate packets for each path in the multiple paths, and can send corresponding packets to the next-hop routers in each path at the same time or time-sharing. After the first parameters of the multiple paths are obtained, the adaptive traffic can be allocated to each path, which will not be repeated here.
  • the implementation of S901-S906 remains unchanged, and S907 can be replaced with: the egress router measures the physical link capacity information and current physical link rate information of the egress router, and based on the information from the Nth intermediate router For the received message, calculate the first parameter of the path.
  • S908 can be replaced by: the egress router sends the first parameter of the path to the ingress router.
  • S909 can be replaced by: the ingress router receives the first parameter of the path.
  • the egress router calculates the first parameter of the path, and the calculation method is similar to that of the ingress router calculating the first parameter of the path. Measurement resources.
  • S901-S907 remains unchanged, S908 can be replaced with: the egress router sends a fourth packet to the electronic device, and S909 can be replaced with: the electronic device calculates according to the fourth packet The first parameter of the path. Add another step: the electronic device sends the first parameter of the path to the ingress router, and the ingress router receives the first parameter of the path.
  • the electronic device calculates the first parameter of the path, and the calculation method is similar to the way the ingress router calculates the first parameter of the path. Computing resources.
  • each intermediate router and egress router can send to the electronic device after measuring their respective physical link capacity information and current physical link rate information, and the electronic device calculates the first parameter of the path Then, it is sent to the entrance router, which can save the computing resources of the entrance router.
  • the electronic device can monitor each intermediate router and the egress router. After each intermediate router and the egress router measure their respective physical link capacity information and current physical link rate information, the electronic device can The physical link capacity information and current physical link rate information of each intermediate router and the egress router are acquired, and the first parameter of the path is calculated by the electronic device and then sent to the ingress router, thereby saving the computational resources of the ingress router.
  • FIG. 10 is a schematic diagram of a signaling interaction process for acquiring the first parameter of a path in the traffic distribution method provided by an embodiment of the application.
  • the path may include an ingress router, an egress router, and N
  • An intermediate router, N can be a value greater than or equal to 1. It can be understood that when N is 1, only one intermediate router is included in Figure 10, and the signaling interaction of this method can include:
  • S1001 The ingress router generates the first packet.
  • S1002 The ingress router sends the first packet to the first intermediate router.
  • the first intermediate router measures the first flow rate of the first intermediate router.
  • the first intermediate router uses the first flow rate to replace the flow rate in the first packet, and then sends the replaced first packet to the next Hop the router.
  • the Nth intermediate router measures the Nth flow rate of the Nth intermediate router.
  • the Nth intermediate router uses the Nth flow rate to replace the flow rate in the first packet, and then sends the replaced first packet to Next hop router.
  • the egress router measures the flow rate of the egress router, and when the flow rate of the egress router is less than the flow rate in the first packet, replaces the flow rate in the first packet with the flow rate of the egress router to obtain the second packet Text.
  • the ingress router obtains the first parameter of the path according to the flow rate in the second packet.
  • a flow rate is carried in the message. After each intermediate router and the egress router receive the message sent by the previous hop router, they will calculate it according to themselves. The flow rate is compared with the flow rate in the message. If its flow rate is less than the flow rate in the message received from the previous hop router, then the flow rate in the message is replaced by its own flow rate, and the ingress router receives The flow rate included in the second message can be used as the first parameter of the path. For other calculation processes, refer to the records in the embodiment corresponding to FIG. 6, and details are not described herein.
  • the transmission traffic can be saved.
  • the ingress router After the ingress router obtains the first parameters of the multiple paths, it can allocate the adaptive traffic to each path, which is not repeated here.
  • FIG. 11 a situation where there are multiple paths between each pair of ingress routers and egress routers is shown.
  • the ingress router A and the egress router D are a pair, and the solid lines represent A and
  • the ingress router A can send a path measurement request message, and the egress router D can return a path measurement request response message.
  • the ingress router A can evaluate the quality status of the two paths and assign adaptations to the two paths.
  • the ingress router E and the egress router H are a pair.
  • the dotted lines indicate the three paths between E and H.
  • the ingress router E can send a path measurement request message, and the egress router H can return a path measurement request response message.
  • Router E can evaluate the quality status of the two paths, and distribute the adaptive traffic for the three paths; the ingress router I and the egress router L are a pair, the dotted line represents the two paths between I and L, and the ingress router I can Sending a path measurement request message, the egress router L can return a path measurement request response message, and the ingress router I can evaluate the quality status of the two paths and allocate suitable traffic for the two paths; thus, the load of each path in the network is relatively high. Balance and improve the communication quality of the network.
  • FIG. 12 is a schematic flowchart of a flow distribution method provided by an embodiment of this application. As shown in FIG. 12, the method provided in this embodiment includes the following steps:
  • the electronic device calculates the first parameter of each path based on the flow rate of each router in one or more paths or the physical link capacity information of each router and the current physical link rate information.
  • the multiple paths are the ingress router and the egress router. The path between.
  • S1202 The electronic device sends a first parameter to the ingress router, where the first parameter is used by the ingress router to allocate traffic to one or more paths.
  • the electronic device calculates the first parameter of each path according to the flow rate of each router in one or more paths, including: the electronic device receives a message sent by the router in each path, and the message includes the information of the router that sends the message. Flow rate, or physical link capacity information of each router and current physical link rate information; electronic equipment calculates the rate according to the flow rate of routers in each path or physical link capacity information of each router and current physical link rate information The first parameter of the path.
  • the electronic device is an egress router, and the electronic device calculates the first parameter of each path based on the flow rate of each router in one or more paths or the physical link capacity information of each router and the current physical link rate information, including :
  • the egress router receives the message sent by the previous hop router in the path, and the message includes the flow rate of the router located before the egress router in the path or the physical link capacity information and current physical link rate information of each router;
  • the egress router calculates the first parameter of the path according to the flow rate of each router in the message or the physical link capacity information of each router and the current physical link rate information.
  • FIG. 13 is a schematic flowchart of a flow distribution method provided by an embodiment of this application. As shown in FIG. 13, the method provided in this embodiment includes the following steps:
  • the intermediate router receives the packet sent by the previous hop router in the path.
  • the intermediate router is the router in the path excluding the ingress router and the egress router.
  • the packet includes the flow rate of the router before the intermediate router in the path or the rate of each router. Physical link capacity information and current physical link rate information.
  • the intermediate router calculates the first flow rate, or measures physical link capacity information and current physical link rate information.
  • the intermediate router carries the first flow rate or the physical link capacity information and the current physical link rate information in a message and sends it to the next-hop router in the path; or, the first flow rate calculated by the intermediate router is less than the upper
  • the message carries a flow rate.
  • the message includes: round-trip delay information RTT of the path, and current flow rate information of the path.
  • the message further includes: path information for identifying the path.
  • FIG. 14 is a schematic structural diagram of a traffic distribution device provided by an embodiment of the application, which is applied to an ingress router and includes a processing module 141 and a distribution module 142.
  • the processing module is used to obtain the first parameter of one or more paths. Multiple paths are paths between ingress routers and egress routers.
  • the first parameter of any path is used to reflect the traffic allowed to pass through any path; the distribution module is used for one or more paths according to the first parameter of one or more paths. Or multiple paths to distribute traffic.
  • the processing module is specifically used to: for each path, send a first packet to the next-hop router in the path, and the first packet is used to instruct the router in the path to calculate the flow rate ; Receive the second message returned by the egress router, the second message is the message obtained by setting the flow rate of each router in the path in the first message; wherein, each intermediate router in the path is used for The calculated flow rate is carried in the first packet and sent to the next-hop router; the first parameter of the path is determined according to the flow rate of each router in the second packet.
  • the processing module is specifically used to determine the minimum flow rate from the flow rate of the router in the second message, and the minimum flow rate is the first parameter of the path.
  • the processing module is specifically used to: for each path, send a first packet to the next-hop router in the path, and the first packet is used to instruct the router in the path to calculate the flow rate ; Receive the second message returned by the egress router, the second message includes the first flow rate, the first flow rate is obtained according to the flow rate of each router in the path and the first message; wherein, each of the paths in the path An intermediate router is used to: if the flow rate calculated by the intermediate router is less than the flow rate carried in the first packet sent by the previous hop router, the flow rate carried in the first packet sent by the previous hop router Replace with the flow rate calculated by the intermediate router, and send the replaced first packet to the next-hop router; the flow rate carried in the second packet is used to determine the first parameter of the path.
  • the processing module is specifically used to: for each path, send a third message to the next-hop router in the path, and the third message is used to instruct the router in the path to measure the router The physical link capacity information of the router and the current physical link rate information of the router; receive the third message returned by the egress router, the third message is the physical link capacity information of each router in the path and the current physical link The rate information is set in the message obtained in the third message; where each intermediate router in the path is used to carry the measured physical link capacity information and the current physical link rate information in the third message and send To the next-hop router; calculate the first parameter of the path according to the physical link capacity information and current physical link rate information of each router in the second message.
  • the processing module is specifically configured to: receive the first parameters of one or more paths from the first electronic device, and the first parameters of one or more paths are obtained by the first electronic device.
  • the flow rate of the router or the physical link capacity information of each router and the current physical link rate information and calculated according to the flow rate of each router in the path or the physical link capacity information of each router and the current physical link rate information .
  • the distribution module is specifically configured to: when the ingress router receives the first data flow, calculate the flow of the first data flow, and allocate the flow to the multiple paths according to the first parameters of the multiple paths; And/or, update the flow for one or more paths according to the first parameters of the multiple paths and the flow of the second data flow in the ingress router.
  • the device of this embodiment can correspondingly be used to execute the steps executed by the ingress router in the foregoing method embodiment, and its implementation principles and technical effects are similar, and will not be repeated here.
  • 15 is a schematic structural diagram of a traffic distribution device provided by an embodiment of the application. It is applied to electronic equipment and includes a calculation module 151 and a sending module 152.
  • the calculation module is used to calculate the flow rate of each router in one or more paths. Or the physical link capacity information of each router and the current physical link rate information, and calculate the first parameter of each path.
  • the multiple paths are the paths between the ingress router and the egress router; the sending module is used to send the first parameter to the ingress router. Parameters, the first parameter is used by the ingress router to distribute traffic for one or more paths.
  • the calculation module is specifically used to receive packets sent by routers in each path.
  • the packets include the flow rate of the router that sends the packet, or the physical link capacity information of each router and the current physical link Path rate information; calculate the first parameter of the path according to the flow rate of the router in each path or the physical link capacity information of each router and the current physical link rate information.
  • the electronic device is an egress router
  • the calculation module is specifically used to: receive the message sent by the router on the previous hop in the path, and the message includes the flow rate of the router before the egress router in the path or each router Calculate the first parameter of the path according to the flow rate of each router or the physical link capacity information of each router and the current physical link rate information in the message.
  • the device in this embodiment can be used to execute the steps executed by the electronic device in the above method embodiment, and its implementation principles and technical effects are similar, and will not be repeated here.
  • FIG. 16 is a schematic structural diagram of a traffic distribution device provided by an embodiment of the application, which is applied to an intermediate router, and includes a receiving module 161, a calculation module 162, and a sending module 163: a receiving module is used to receive transmissions from the previous hop router in the path
  • the intermediate router is the router other than the ingress router and the egress router in the path, and the message includes the flow rate of the router before the intermediate router in the path or the physical link capacity information of each router and the current physical link rate information;
  • the calculation module is used to calculate the first flow rate, or to measure the physical link capacity information and the current physical link rate information;
  • the sending module is used to carry the first flow rate or the physical link capacity information and the current physical link rate information in the The message is sent to the next hop router in the path; or, when the first flow rate calculated by the intermediate router is less than the flow rate carried in the message sent by the previous hop router, the message sent by the previous hop router
  • the flow rate carried in is replaced with the flow rate calculated by the intermediate
  • the message includes: the round-trip delay information RTT of the path, and the current flow rate information of the path.
  • the message further includes path information used to identify the path.
  • the device in this embodiment can correspondingly be used to execute the steps executed by the intermediate router in the foregoing method embodiment, and its implementation principles and technical effects are similar, and will not be repeated here.
  • FIG. 17 is a schematic diagram of the hardware structure of the traffic distribution device provided by this application.
  • the flow distribution device includes: a memory 171, a processor 172, and a communication interface 173, where the memory 171, the processor 172, and the communication interface 173 can communicate; for example, the memory 171, the processor 172, and the communication interface 173 may communicate through the communication bus 174, the memory 171 is used to store a computer program, and the processor 172 executes the computer program to implement the method shown in the foregoing method embodiment.
  • the communication interface 173 may also include a transmitter and/or a receiver.
  • the foregoing processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (digital signal processors, DSP), application specific integrated circuits (ASICs). )Wait.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like. The steps of the method disclosed in this application can be directly embodied as being executed and completed by a hardware processor, or executed and completed by a combination of hardware and software modules in the processor.
  • This application provides a readable computer storage medium, where the readable computer storage medium is used to store a computer program, and the computer program is used to implement the method shown in the foregoing method embodiment.
  • the present application also provides a communication system, including the flow distribution device as shown in Figures 14, 15 and 16.
  • This application provides a system chip, which is used to support a communication device to implement the functions shown in the embodiments of this application (for example, an ingress router obtains the first parameter of one or more paths, and the multiple paths are an ingress router and an egress router.
  • the first parameter of any path is used to reflect the traffic allowed through any path; the ingress router distributes traffic to one or more paths according to the first parameter of one or more paths), the chip is specifically used
  • the chip system can be composed of chips, or can include chips and other discrete devices.
  • the chip in the first device implements the above method
  • the chip includes a processing unit. Further, the chip may also include a communication unit.
  • the processing unit may be a processor.
  • the communication unit may be an input. / Output interface, pin or circuit, etc.
  • the processing unit executes all or part of the actions performed by each processing module in the embodiment of this application, and the communication unit can execute corresponding receiving or sending actions.
  • the processing module of the receiving device in this application may be The processing unit of the chip, the receiving module or the sending module of the control device is the communication unit of the chip.
  • These computer program instructions can be provided to the processing unit of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing equipment to generate a machine, so that the instructions executed by the processing unit of the computer or other programmable data processing equipment can be used to generate It is a device that realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit may be implemented in the form of hardware, or may be implemented in the form of hardware plus software functional units.
  • the above-mentioned integrated unit implemented in the form of a software functional unit may be stored in a computer readable storage medium.
  • the above-mentioned software functional unit is stored in a storage medium, and includes several instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute the method described in each embodiment of the present application. Part of the steps.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disks or optical disks and other media that can store program codes. .

Landscapes

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

Abstract

本申请实施例提供一种流量分配方法及装置,包括:入口路由器获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量;入口路由器根据一条或者多条路径的第一参数,为一条或者多条路径分配流量。因为入口路由器可以得到一条或多条路径的实时的流量情况,则入口路由器根据可以根据各路径的实时的流量情况,为一条或者多条路径分配适应的流量,从而可以避免因为流量与路径实际情况不适配导致的网络拥塞。

Description

流量分配方法及装置
本申请要求于2019年11月14日提交中国专利局、申请号为201911114729.0、申请名称为“流量分配方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术,尤其涉及一种流量分配方法及装置。
背景技术
在通信网络中,从数据流的源地址到目的地址之间可以有多条路径,数据流在每条路径中都可以从源地址由多台路由器转发到达目的地址。
现有技术中,在将数据流从源地址发送到目的地址时,通常只是利用多条路径中的一条路径传输,其他路径处于备份状态或无效状态。或者,基于等价多路径路由(equal-cost multi-path routing,ECMP)技术,将数据流按照哈希(hash)计算进行流量分配后在多条路径中进行传输。或者,基于非等价多路径路由(unequal-cost multi-path routing,UCMP)技术,按照各路径的优先级和带宽比例等将数据流按比例分配到多条路径中传输。
但是,采用现有技术的方法,经常出现部分路径中负载较重,部分路径中负载较轻的现象,使得通信网络中的网络流量不均衡,容易导致通信网络中的网络拥塞。
发明内容
本申请实施例提供一种流量分配方法及装置,解决现有技术中的通信网络的网络流量不均衡,容易导致网络拥塞的技术问题。
第一方面,本申请实施例提供一种流量分配方法,包括:入口路由器获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量;入口路由器根据一条或者多条路径的第一参数,为一条或者多条路径分配流量。因为入口路由器可以得到一条或多条路径的实时的流量情况,则入口路由器可以根据各路径的实时的流量情况,为一条或者多条路径分配适应的流量,从而可以避免因为流量与路径实际情况不适配导致的网络拥塞。
在一种可能的设计中,入口路由器获取一条或者多条路径的第一参数包括:对于每条路径,入口路由器向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;入口路由器接收出口路由器返回的第二报文,第二报文为将该路径中每个路由器的流速率设置在第一报文中得到的报文;其中,该路径中的每个中间路由器用于将计算得到的流速率携带在第一报文中发送给下一跳路由器;入口路由器根据第二报文中的每个路由器的流速率确定该路径的第一参数。因为各路 径中的路由器可以计算自身的流速率,则入口路由器只需要根据每个路由器的流速率确定该路径的第一参数,计算量较小。
在一种可能的设计中,入口路由器根据第二报文中的每个路由器的流速率确定该路径的第一参数,包括:入口路由器从第二报文中的路由器的流速率中确定最小流速率,最小流速率为该路径的第一参数。因为路径中流速率最小的路由器决定了该路径所允许通过的流大小,因此,将最小流速率作为该路径的第一参数,能够得到该路径较准确的允许通过的流量。
在一种可能的设计中,入口路由器获取一条或者多条路径的第一参数包括:对于每条路径,入口路由器向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;入口路由器接收出口路由器返回的第二报文,第二报文中包括第一流速率,第一流速率为根据该路径中每个路由器的流速率和第一报文得到的;其中,该路径中的每个中间路由器用于:在该中间路由器计算得到的流速率小于上一跳路由器发送的第一报文中携带的流速率情况下,将上一跳路由器发送的第一报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的第一报文发送给下一跳路由器;入口路由器将第二报文携带的流速率确定该路径的第一参数。这样,在报文中可以携带一个流速率,从而可以节约通信所需的流量,且,在第二报文中携带的流速率可以直接作为路径的第一参数,不需要入口路由器进一步计算,可以节约入口路由器的计算资源。
在一种可能的设计中,入口路由器获取一条或者多条路径的第一参数包括:对于每条路径,入口路由器向该路径中的下一跳路由器发送第三报文,第三报文用于指示该路径中的路由器测量该路由器的物理链路容量信息和该路由器的当前物理链路速率信息;入口路由器接收出口路由器返回的第三报文,第三报文为将该路径中每个路由器的物理链路容量信息和当前物理链路速率信息设置在第三报文中得到的报文;其中,该路径中的每个中间路由器用于将测量得到的物理链路容量信息和当前物理链路速率信息携带在第三报文中发送给下一跳路由器;入口路由器根据第二报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。这样,中间路由器只需要测量各自的物理链路容量信息和该路由器的当前物理链路速率信息,不需要进行流速率的计算,由入口路由器根据路径中各路由器的物理链路容量信息和该路由器的当前物理链路速率信息计算该路径的第一参数,因此,可以减少中间路由器的计算量,进而降低对中间路由器的性能要求。
在一种可能的设计中,入口路由器获取一条或者多条路径的第一参数包括:入口路由器从第一电子设备接收一条或者多条路径的第一参数,一条或者多条路径的第一参数为第一电子设备获取路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,并根据路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算得到的。这样,由电子设备计算路径的第一参数后发送给入口路由器,从而可以节约入口路由器的计算资源。
在一种可能的设计中,第一报文包括:路径的往返时延信息RTT,以及路径的当前流速率信息。将入口路由器测量的当前流速率信息添加在第一报文中,使得后续根据各路由器的流速率计算路径的第一参数时,可以得到准确的第一参数。
在一种可能的设计中,第一报文还包括:用于标识该路径的路径信息。则出口路由器不需要进一步确定第二报文对应的路径,因此可以节约出口路由器的计算资源。
在一种可能的设计中,入口路由器根据一条或者多条路径的第一参数,为一条或者多条路径分配流量包括:在入口路由器接收到第一数据流时,入口路由器计算第一数据流的流量,并根据多条路径的第一参数,为多条路径分配流量;和/或,入口路由器根据多条路径的第一参数,以及入口路由器中第二数据流的流量,为一条或多条路径更新流量。这样,入口路由器可以实现对新接收的第一数据流在各路径中进行适应的分配,或将入口路由器中已经存在的第二数据流更新路径,从而可以使得各路径中的负载均衡,降低发生拥堵的概率。
第二方面,本申请实施例提供一种流量分配方法,包括:电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,多条路径是入口路由器和出口路由器之间的路径;电子设备向入口路由器发送第一参数,第一参数用于入口路由器为一条或多条路径分配流量。
在一种可能的设计中,电子设备根据一条或多条路径中各路由器的流速率计算各路径的第一参数,包括:电子设备接收各路径中的路由器发送的报文,报文包括发送报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;电子设备根据各路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
在一种可能的设计中,电子设备为出口路由器,电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,包括:出口路由器接收路径中上一跳路由器发送的报文,报文包括路径中位于出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;出口路由器根据报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
第三方面,本申请实施例提供一种流量分配方法,包括:中间路由器接收路径中的上一跳路由器发送的报文,中间路由器为路径中除入口路由器和出口路由器外的路由器,报文包括路径中位于中间路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;中间路由器计算第一流速率,或测量物理链路容量信息和当前物理链路速率信息;中间路由器将第一流速率或,物理链路容量信息和当前物理链路速率信息携带在报文中发送给路径中的下一跳路由器;或,在中间路由器计算得到的第一流速率小于上一跳路由器发送的报文中携带的流速率情况下,将上一跳路由器发送的报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的报文发送给下一跳路由器;其中,报文中携带一个流速率。
在一种可能的设计中,报文包括:路径的往返时延信息RTT,以及路径的当前流速率信息。
在一种可能的设计中,报文还包括:用于标识该路径的路径信息。
第四方面,本申请实施例提供一种流量分配装置,应用于入口路由器,装置包括:处理模块,用于获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量;分配 模块,用于根据一条或者多条路径的第一参数,为一条或者多条路径分配流量。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;接收出口路由器返回的第二报文,第二报文为将该路径中每个路由器的流速率设置在第一报文中得到的报文;其中,该路径中的每个中间路由器用于将计算得到的流速率携带在第一报文中发送给下一跳路由器;根据第二报文中的每个路由器的流速率确定该路径的第一参数。
在一种可能的设计中,处理模块,具体还用于从第二报文中的路由器的流速率中确定最小流速率,最小流速率为该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;接收出口路由器返回的第二报文,第二报文中包括第一流速率,第一流速率为根据该路径中每个路由器的流速率和第一报文得到的;其中,该路径中的每个中间路由器用于:在该中间路由器计算得到的流速率小于上一跳路由器发送的第一报文中携带的流速率情况下,将上一跳路由器发送的第一报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的第一报文发送给下一跳路由器;将第二报文携带的流速率确定该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第三报文,第三报文用于指示该路径中的路由器测量该路由器的物理链路容量信息和该路由器的当前物理链路速率信息;接收出口路由器返回的第三报文,第三报文为将该路径中每个路由器的物理链路容量信息和当前物理链路速率信息设置在第三报文中得到的报文;其中,该路径中的每个中间路由器用于将测量得到的物理链路容量信息和当前物理链路速率信息携带在第三报文中发送给下一跳路由器;根据第二报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:从第一电子设备接收一条或者多条路径的第一参数,一条或者多条路径的第一参数为第一电子设备获取路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,并根据路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算得到的。
在一种可能的设计中,分配模块具体用于:在入口路由器接收到第一数据流时,计算第一数据流的流量,并根据多条路径的第一参数,为多条路径分配流量;和/或,根据多条路径的第一参数,以及入口路由器中第二数据流的流量,为一条或多条路径更新流量。
第五方面,本申请实施例提供一种流量分配装置,应用于电子设备,包括:计算模块,用于根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,多条路径是入口路由器和出口路由器之间的路径;发送模块,用于向入口路由器发送第一参数,第一参数用于入口路由器为一条或多条路径分配流量。
在一种可能的设计中,计算模块,具体用于接收各路径中的路由器发送的报文,报文包括发送报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;根据各路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
在一种可能的设计中,电子设备为出口路由器,计算模块,具体用于:接收路径中上一跳路由器发送的报文,报文包括路径中位于出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;根据报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
第六方面,本申请实施例提供一种流量分配装置,应用于中间路由器,包括:接收模块,用于接收路径中的上一跳路由器发送的报文,中间路由器为路径中除入口路由器和出口路由器外的路由器,报文包括路径中位于中间路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;计算模块,用于计算第一流速率,或测量物理链路容量信息和当前物理链路速率信息;发送模块,用于将第一流速率或,物理链路容量信息和当前物理链路速率信息携带在报文中发送给路径中的下一跳路由器;或,在中间路由器计算得到的第一流速率小于上一跳路由器发送的报文中携带的流速率情况下,将上一跳路由器发送的报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的报文发送给下一跳路由器;其中,报文中携带一个流速率。
在一种可能的设计中,报文包括:路径的往返时延信息RTT,以及路径的当前流速率信息。
在一种可能的设计中,报文还包括:用于标识该路径的路径信息。
第七方面,本申请实施例提供一种流量分配装置,该流量分配装置可以为入口路由器的芯片或者芯片上系统,包括处理器和接口电路,接口电路用于接收代码指令并传输至处理器;处理器用于运行代码指令,以执行如第一方面或第一方面的任一种可能的设计的方法。
第八方面,本申请实施例提供一种流量分配装置,该流量分配装置可以为电子设备中的芯片或者芯片上系统,包括处理器和接口电路,接口电路用于接收代码指令并传输至处理器;处理器用于运行代码指令,以执行如第二方面或第二方面的任一种可能的设计的方法。
第九方面,本申请实施例提供一种流量分配装置,该流量分配装置可以为中间路由器中的芯片或者芯片上系统,包括处理器和接口电路,接口电路用于接收代码指令并传输至处理器;处理器用于运行代码指令,以执行如第三方面或第三方面的任一种可能的设计的方法。
第十方面,本申请实施例提供一种流量分配装置,包括存储器和处理器,处理器执行存储器中的程序指令,用于实现如第一方面或第一方面的任一种可能的设计的方法。
第十一方面,本申请实施例提供一种流量分配装置,包括存储器和处理器,处理器执行存储器中的程序指令,用于实现如第二方面或第二方面的任一种可能的设计的方法。
第十二方面,本申请实施例提供一种流量分配装置,包括存储器和处理器,处理器执行存储器中的程序指令,用于实现如第三方面或第三方面的任一种可能的设计的方法。
第十三方面,本申请实施例提供一种可读计算机存储介质,可读计算机存储介质用于存储计算机程序,计算机程序用于实现如第一方面或第一方面的任一种可能的设计的方法。
第十四方面,本申请实施例提供一种可读计算机存储介质,可读计算机存储介质用于存储计算机程序,计算机程序用于实现如第二方面或第二方面的任一种可能的设计的方法。
第十五方面,本申请实施例提供一种可读计算机存储介质,可读计算机存储介质用于存储计算机程序,计算机程序用于实现如第三方面或第三方面的任一种可能的设计的方法。
第十六方面,本申请实施例提供一种流量分配系统,包括第四方面及对应的可行实施方式的流量分配装置以及第五方面及对应的可行实施方式的流量分配装置以及第六方面及对应的可行实施方式的流量分配装置。
应当理解的是,本申请的第二方面至第十六方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1为现有的一种流量经路由传输的架构示意图;
图2为现有的另一种流量经路由传输的架构示意图;
图3为现有的又一种流量经路由传输的架构示意图;
图4为本申请实施例的流量分配方法适应的系统架构示意图;
图5为本申请实施例提供的一种流量分配方法的流程示意图;
图6为本申请实施例提供的流量分配方法中一种获取一条路径的第一参数的信令交互流程示意图;
图7为本申请实施例提供的一种报文的格式示意图;
图8为本申请实施例提供的一种报文的格式示意图;
图9为本申请实施例提供的流量分配方法中另一种获取一条路径的第一参数的信令交互流程示意图;
图10为本申请实施例提供的流量分配方法中又一种获取一条路径的第一参数的信令交互流程示意图;
图11为本申请实施例提供的多对入口路由器和出口路由器的路径示意图;
图12为本申请实施例提供的另一种流量分配方法的流程示意图;
图13为本申请实施例提供的又一种流量分配方法的流程示意图;
图14为本申请实施例提供的一种流量分配装置的结构示意图;
图15为本申请实施例提供的另一种流量分配装置的结构示意图;
图16为本申请实施例提供的又一种流量分配装置的结构示意图;
图17为本申请实施例提供的一种流量分配装置的硬件结构示意图。
具体实施方式
本申请实施例提供流量分配方法,本申请实施例的方法可以应用在长期演进(long term evolution,LTE)中,也可以应用在第五代移动通信(5 Generation,5G)系统中,或者未来的移动通信系统。
在ECMP的流量分配方式中,因为ECMP只是按照hash进行流量分配,在实际应用中,如图1所示的一种流量经路由传输的架构示意图中,如果本地的链路11处发生阻塞,而按照ECMP的流量分配,不能感知链路11的阻塞状态,依然可能为包括链路11的路径分配流量,造成网络阻塞。
或者,如图2所示的另一种流量经路由传输的架构示意图中,多条路径在远端可能存在叠加,造成叠加处链路的阻塞,如果叠加处的链路21发生阻塞,而按照ECMP的流量分配,不能感知链路21的阻塞状态,依然可能会为包括链路21的路径分配流量,造成网络阻塞。
或者,如图3所示的又一种流量经路由传输的架构示意图中,路径31中可能被分配多条较大的数据流,造成大流冲突,而路径32中可能被分配较小的数据流,造成小流轻载,使得网络中各路径的负载很不均衡,进而容易造成网络阻塞。
在UCMP的流量分配方式中,虽然考虑了各路径带宽的差异,但是也不感知远端路径是否重叠,因此类似于ECMP中图2和图3对应的场景,UCMP的流量分配方式中,也容易出现网络阻塞的情况。
图4为本申请实施例的流量分配方法适应的系统架构示意图。如图4所示,该系统中可以包括入口路由器41、出口路由器42和中间路由器43,其中,中间路由器43可以是在入口路由器41和出口路由器42之间的任意一个或多个路由器。
入口路由器41可以作为流量的入口,出口路由器42可以作为流量的出口。在入口路由器41和出口路由器42之间可以存在一条或多条路径,每条路径中可以包括一个或多个中间路由器43。
本申请实施例中,入口路由器41可以根据入口路由器41和出口路由器42之间的一条或多条路径所允许通过的流量情况,为各路径分配与该路径适配的流量,从而可以有效改善网络中的阻塞情况。
具体应用中,该一条或多条路径所允许通过的流量情况与各路径中的路由器所允许通过的流量相关,该一条或多条路径所允许通过的流量情况可以由入口路由器41计算得到,也可以由出口路由器42计算得到,还可以采用其他的电子设备(例如图4中所示的电子设备45)计算得到,后续实施例中将详细说明,在此不再赘述。
可选的,如图4所示,该系统中还可以包括控制器44,控制器44可以针对一组流经该入口路由器41和出口路由器42的数据流,规划入口路由器41和出口路由器42之间的一条或多条路径,并将该一条或多条路径下发给入口路由器41,使得入口路由器可以在后续根据该一条或多条路径所允许通过的流量情况,为各路径分配与该路径适配的流量。
可以理解,在现有技术中,有较多的规划入口路由器41和出口路由器42之间的一条或多条路径的方式,示例性的,如果该系统中没有设置控制器44,则入口路由器 41和出口路由器42之间的一条或多条路径还可以依据现有的ECMP等方式得到,本申请实施例对此不作具体限定。
可选的,如图4所示,该系统中还可以包括电子设备45,电子设备45具体可以是服务器、终端设备等,该电子设备45可以与入口路由器41、出口路由器42和中间路由器43中的一个或多个通信,电子设备45可以用于一条或多条路径所允许通过的流量情况的计算,从而可以节约各路由器的计算资源。
需要说明的是,电子设备也可以是控制器44,则该系统中不需要单独设置电子设备45,本申请实施例不作具体限定。
本申请实施例的流量分配方法可以应用于城域网系统中,城域网系统中通常流量会流经一个入口路由器和一个出口路由器。本申请实施例的流量分配方法也可以应用于其他的适用的网络系统中,本申请实施例不作具体限定。
本申请实施例所涉及的入口路由器可以是中间网络(如城域网)的入口,也可以是真正的源端;出口路由器可以是中间网络的出口,也可以是真正的目的端。本申请实施例对此不作具体限定。
本申请实施例中,执行入口路由器侧方法的执行主体可以是入口路由器,也可以是入口路由器中的装置(需要说明的是,在本申请提供的实施例中以入口路由器为例进行描述的)。示例性地,入口路由器中的装置可以是芯片系统、电路或者模块(例如可以是软件实现的模块)等,本申请实施例不作限制。
本申请实施例中,执行出口路由器侧方法的执行主体可以是出口路由器,也可以是出口路由器中的装置(需要说明的是,在本申请提供的实施例中以出口路由器为例进行描述的)。示例性地,出口路由器中的装置可以是芯片系统、电路或者模块(例如可以是软件实现的模块)等,本申请实施例不作限制。
本申请实施例中,执行中间路由器侧方法的执行主体可以是中间路由器,也可以是中间路由器中的装置(需要说明的是,在本申请提供的实施例中以中间路由器为例进行描述的)。示例性地,中间路由器中的装置可以是芯片系统、电路或者模块(例如可以是软件实现的模块)等,本申请实施例不作限制。
本申请实施例所涉及的第二报文可以是:在第一报文中增加中间路由器的流速率和出口路由器的流速率得到的报文,或者修改第一报文中的流速率得到的报文,后续实施例将详细说明,在此不再赘述。需要说明的是,在实际应用中,第一报文和第二报文可以采用相同的名称,也可以采用不同的名称,本申请实施例中只是为了区分入口路由器生成的初始报文与后续接收到的报文的内容可能不同,而采用了第一报文和第二报文的描述,并不代表是两种不同类型的报文。
本申请实施例所涉及的第四报文可以是:在第三报文中增加中间路由器的物理链路容量信息和当前物理链路速率信息,以及出口路由器的物理链路容量信息和当前物理链路速率信息得到的报文,后续实施例将详细说明,在此不再赘述。需要说明的是,在实际应用中,第三报文和第四报文可以采用相同的名称,也可以采用不同的名称,本申请实施例中只是为了区分入口路由器生成的初始报文与后续接收到的报文的内容可能不同,而采用了第三报文和第四报文的描述,并不代表是两种不同类型的报文。第三报文与第一报文的形式可以一致也可以不一致,后续实施例将详细说明,在此不 再赘述。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图5为本申请实施例提供的一种流量分配方法的流程示意图,如图5所示,本实施例提供的方法包括以下步骤:
S501:入口路由器获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量。
本申请实施例中,对于任意一条路径,该路径的第一参数可以反映该路径允许通过的流量,该第一参数可以是与带宽相关的参数,或与流速率相关的参数等,本申请实施例对第一参数的具体内容不作限定。
示例性的,该路径的第一参数可以是根据该路径中各路由器(包括入口路由器、中间路由器和出口路由器)的流速率得到的,通常的,该路径中流速率最低的路由器决定了该路径所允许通过的流量,因此,该路径的第一参数可以是该路径中流速率最低的路由器对应的最低流速率,或者,也可以是该路径中流速率第二低的路由器对应的第二低流速率等,本申请实施例对此不作具体限定。
本申请实施例中,入口路由器可以在得到各路径中的各路由器的流速率,或得到各路由器的物理链路容量信息和当前物理链路速率信息后,计算得到各路径的第一参数;或者,出口路由器在得到各路径中的各路由器的流速率,或得到各路由器的物理链路容量信息和当前物理链路速率信息后,计算得到的各路径的第一参数,出口路由器将各路径的流速率发送给入口路由器,则入口路由器可以接收各路径的第一参数;或者,路径外的电子设备在得到各路径中的各路由器的流速率,或得到各路由器的物理链路容量信息和当前物理链路速率信息后,计算得到的各路径的第一参数,电子设备将各路径的流速率发送给入口路由器,则入口路由器可以接收各路径的第一参数;等,本申请实施例对此不作具体限定。
S502:入口路由器根据一条或者多条路径的第一参数,为一条或者多条路径分配流量。
本申请实施例中,入口路由器在得到一条或多条路径所允许通过的流量后,则可以为各路径分配与各路径适配的流量,例如为各路径分配小于或等于该路径所允许通过流量的流量,从而可以使得各路径的负载较为均衡,改善网络中的阻塞情况。
一种可能的实现方式中,在入口路由器接收到第一数据流时,入口路由器计算第一数据流的流量,并根据多条路径的第一参数,为多条路径分配流量。
本申请实施例中,第一数据流可以是入口路由器还没有进行传输的数据流,入口路由器在接收到第一数据流时,可以计算传输第一数据流的流量,并为各路径分配与各路径适配的流量。
可选的,为了尽可能少的占用路径条数,入口路由器还可以在多条路径中选择流量裕量较大的1至n条路径,n的具体值可以根据实际情况选取,n为大于1的正整数,并将第一数据流优先分配在该流量裕量较大的1至n条路径中,从而可以通过较少的路径实现对第一数据流的传输。
另一种可能的实现方式中,入口路由器根据多条路径的第一参数,以及入口路由器中第二数据流的流量,为一条或多条路径更新流量。
本申请实施例中,第二数据流可以是入口路由器正在传输的数据流,在各路径的实际允许通过的流量发生变换时,入口路由器也可以对第二数据流的传输路径进行调整,为第二数据流待传输的部分重新分配路径,即为一条或多条路径更新流量,以满足各路径的实时传输情况,改善网络的阻塞情况。
可选的,为了尽可能少的减少调整的路径的条数,入口路由器还可以在多条路径中选择流量裕量较大的1至m条路径,m的具体值可以根据实际情况选取,m为大于1的正整数,并将第二数据流优先调整在该流量裕量较大的1至m条路径中,从而可以通过调整较少的路径实现对第一数据流的传输。
示例性的,入口路由器根据每条路径的物理容量与每条路径最大的发送速率计算出每条路径的带宽利用率(例如,可以采用最大的发送速率除以物理容量得到带宽利用率),如果各路径的带宽利用率差值达到一定的阈值,可以各路径的流量进行调整,例如,将带宽利用率最高的路径中的流调整到带宽利用率最低的路径中。
综上所述,本申请实施例中,入口路由器获取一条或者多条路径的第一参数,多条路径为入口路由器和出口路由器之间的路径,各路径的第一参数用于反映该路径允许通过的流量,即入口路由器可以得到一条或多条路径的实时的流量情况,则入口路由器根据可以根据各路径的实时的流量情况,为一条或者多条路径分配适应的流量,从而可以避免因为流量与路径实际情况不适配导致的网络拥塞。
示例性的,图6为本申请实施例提供的流量分配方法中获取一条路径的第一参数的信令交互流程示意图,如图6所示,该路径中可以包括入口路由器、出口路由器、以及N个中间路由器,N可以为大于或等于1的值,可以理解,在N为1时则图6中只包括一个中间路由器即可,该方法的信令交互可以包括:
S601:入口路由器生成第一报文。
本申请实施例中,入口路由器可以生成用于测量该路径的第一参数的第一报文,使得该路径中的其他路由器在收到第一报文时,进行计算自身的流速率的步骤。
第一报文可以是带外(out-of-band)报文,带外报文可以指通过专门的网管通道发送的报文,将第一报文与业务数据分开,不影响正常的数据报文,也可以提高第一报文传输的效率与可靠性。第一报文也可以是带内(In-band)报文,带内报文可以指携带在业务数据中的报文,本申请实施例对第一报文的具体形式不作限定。
示例性的,该第一报文中可以包括路径的往返时延信息(round-trip time,RTT),以及路径的当前流速率信息Rate。
RTT信息可以指从入口路由器先前所测得的,数据包从入口路由器到出口路由器一来一回所需的时间。RTT信息可以反映当前的路径状态,例如,如果当前路径较为拥堵,则RTT的值较大,如果当前路径状态较好,则RTT的值较小。在路径中的各路由器计算流速率时,RTT可以作为其中的一项参数,后续部分将详细说明,在此不作赘述。
路径的当前流速率信息,也可以称为Rate信息,可以指入口路由器计算出的一组流的当前发送速率。入口路由器作为路径的第一个路由器,将入口路由器测量的当前 流速率信息添加在第一报文中,使得后续根据各路由器的流速率计算路径的第一参数时,可以得到准确的第一参数。
可以理解,现有技术中在各路径分配后,有较多的方式使得路径中的上一跳路由器可以向下一跳路由器发送数据,因此,第一报文中可以不包括标识该路径的路径信息。在第一报文中不包括路径信息的情况下,出口路由器如果向入口路由器返回与该路径对应的第二报文时,需要首先确定第二报文对应的路径,之后将第二报文以及对应的路径信息发送给入口路由器。
可选的,第一报文还包括用于标识该路径的路径信息(或者也可以成为路径标识等),则出口路由器不需要进一步确定第二报文对应的路径,因此可以节约出口路由器的计算资源。
示例性的,标识该路径的路径信息可以是分段路由列表(segment routing list,SR-List)信息、路径标识(PathID)等。
示例性的,如图7所示,示出了一种第一报文的格式示意图。其中,IPv4或IPv6表示网络互联协议(internet protocol,IP)的版本号,IPv4的地址位数为32位;IPv6采用128位地址长度,可以理解,在未来的应用中,IP版本号也可以根据实际的需求适应设置,本申请实施例不作具体限定。传输控制协议(transmission control protocol,TCP)头也可以根据实际的需求适应设置,本申请实施例不作具体限定。
需要说明的是,IP协议版本号和TCP头是通常的报文中可能包括的内容,实际应用中,第一报文中可以根据需求选择设置或不设置IP协议版本号和TCP头。第一报文中可以根据需求选择设置或不设置路径信息。图7中的IP协议版本号、TCP头、RTT、Rate和路径信息的位置也可以根据实际需求任意调整,本申请实施例不作具体限定。
S602:入口路由器向第一中间路由器发送第一报文。
本申请实施例中,第一中间路由器是入口路由器在该路径中的下一跳路由器,入口路由器向第一中间路由器发送第一报文后,第一中间路由器可以执行S603和S604。
S603:第一中间路由器计算第一中间路由器的第一流速率。
具体应用中,第一中间路由器可以采用现有技术中的任意方式计算第一流速率,本申请实施例不作具体限定。
示例性的,第一中间路由器可以基于速率控制协议(rate control protocol,RCP)中的定义计算第一流速率。例如,RCP中定义了下述公式:
Figure PCTCN2020121195-appb-000001
Figure PCTCN2020121195-appb-000002
也即,
Figure PCTCN2020121195-appb-000003
其中,R(t)为第一流速率(也可以理解为第一路由器在该路径中允许通过的最大流速率),C为第一中间路由器的物理链路容量信息,y(t)为第一中间路由器的当前物理链路速率信息,q(t)为队列长度,d0为平均RTT,T为测量周期,α、β为影响 系数(为根据实际设定的固定值)。C、y(t)、q(t)和d0均可以由第一中间路由器根据现有技术测量得到。
需要说明的是,任一个路由器计算自身的流速率时都可以采用与第一中间路由器相似的方法,后续将不再赘述各路由器计算流速率的具体实现。对于某一个中间路由器,如果有多条路径经过该中间路由器,则该中间路由器将分别计算该多条路径在该中间路由器的流速率。
S604:第一中间路由器将第一流速率携带在第一报文中发送给下一跳路由器。
S605:第N中间路由器计算第N中间路由器的第N流速率。
S606:第N中间路由器将第N流速率携带在第一报文中发送给出口路由器。
本申请实施例中,第一中间路由器可以将第一流速率添加在第一报文中,然后将第一报文发给第一中间路由器的下一跳路由器,以此类推,之后下一跳路由器计算自身的流速率后,将自身的流速率添加在包括第一流速率的第一中,发送给该下一跳路由器的下一跳路由器,直到第N中间路由器,该第N中间路由器可以为出口路由器的上一跳路由器。
S607:出口路由器测量出口路由器的流速率,并将该流速率设置在第一报文,得到第二报文。
与中间路由器不同的是,出口路由器在计算自身的流速率,并将该流速率设置在第一报文后,是将得到的第二报文发送给出口路由器。
示例性的,如图8所示,示出了第二报文的格式示意图。与第一报文不同的是,第二报文中添加了中间路由器的流速率和出口路由器的流速率。
S608:出口路由器向入口路由器发送第二报文。
S609:入口路由器根据第二报文中的每个路由器的流速率计算该路径的第一参数。
示例性的,入口路由器可以将第二报文中的最低流速率作为该路径的第一参数,或者第二低流速率作为该路径的第一参数,等,本申请不作具体限定。
需要说明的是,对于多条路径,入口路由器可以生成多条路径中的每条路径的报文,并可以同时或分时向各路径中的下一跳路由器发送对应的报文,在入口路由器获取到多条路径的第一参数后,就可以为各路径分配适应的流量,在此不作赘述。
在一种可选的实现方式中,S601-S606的实现方式不变,S607可以替换为:出口路由器计算出口路由器的流速率,并根据从第N中间路由器接收的报文,计算该路径的第一参数。S608可以替换为:出口路由器向入口路由器发送该路径的第一参数。S609可以替换为:入口路由器接收该路径的第一参数。
与图6对应的实施例不同的是,本实施例中是由出口路由器计算路径的第一参数,计算方式与入口路由器计算路径第一参数的方式相似,在此不作赘述,从而可以节约入口路由器的计算资源。
在另一种可选的实现方式中,S601-S607的实现方式不变,S608可以替换为:出口路由器向电子设备发送第二报文,S609可以替换为:电子设备根据该第二报文计算该路径的第一参数。再添加步骤:电子设备向入口路由器发送该路径的第一参数,入口路由器接收该路径的第一参数。
与图6对应的实施例不同的是,本实施例中是由电子设备计算路径的第一参数, 计算方式与入口路由器计算路径第一参数的方式相似,在此不作赘述,从而可以节约入口路由器的计算资源。
在又一种可选的实现方式中,各中间路由器以及出口路由器在计算各自的流速率后,可以发送给电子设备,由电子设备计算路径的第一参数后发送给入口路由器,从而可以节约入口路由器的计算资源。
在又一种可选的实现方式中,电子设备可以监控各中间路由器以及出口路由器,在各中间路由器以及出口路由器在计算各自的流速率后,电子设备可以获取各中间路由器以及出口路由器的流速率,由电子设备计算路径的第一参数后发送给入口路由器,从而可以节约入口路由器的计算资源。
示例性的,图9为本申请实施例提供的流量分配方法中获取一条路径的第一参数的信令交互流程示意图,如图9所示,该路径中可以包括入口路由器、出口路由器、以及N个中间路由器,N可以为大于或等于1的值,可以理解,在N为1时则图9中只包括一个中间路由器即可,该方法的信令交互可以包括:
S901:入口路由器生成第三报文。
本申请实施例中,入口路由器可以生成用于测量该路径的第一参数的第三报文,使得该路径中的其他路由器在收到第三报文时,进行测量自身的物理链路容量信息和当前物理链路速率信息的步骤。
第三报文可以是带外(out-of-band)报文,带外报文可以指通过专门的网管通道发送的报文,将第三报文与业务数据分开,不影响正常的数据报文,也可以提高第三报文传输的效率与可靠性。第三报文也可以是带内(In-band)报文,带内报文可以指携带在业务数据中的报文,本申请实施例对第三报文的具体形式不作限定。
示例性的,该第三报文中可以是与图6的实施例中的第一报文相同形式的报文,例如包括IP版本号、TCP头、RTT、Rate、路径信息中的一种或多种,在此不再赘述。与第一报文不同的是,第三报文的作用是用于指示路径中的路由器测量的物理链路容量信息(对应于图6的实施例的公式中的C)和当前物理链路速率信息(对应于图6的实施例的公式中的y(t))。
或者,第三报文中也可以与第一报文不同形式的报文,例如第三报文中可以包括IP版本号、TCP头、路径信息中的一种或多种,可以理解,因为本申请实施例中,各路由器只需要测量物理链路容量信息和当前物理链路速率信息,不需要计算流速率,因此不需要RTT等信息,所以在第三报文中可以不携带RTT等信息。
S902:入口路由器向第一中间路由器发送第三报文。
本申请实施例中,第一中间路由器是入口路由器在该路径中的下一跳路由器,入口路由器向第一中间路由器发送第三报文后,第一中间路由器可以执行S903和S904。
S903:第一中间路由器测量第一中间路由器的第一物理链路容量信息和当前物理链路速率信息。
具体应用中,第一中间路由器可以采用现有技术中的任意方式测量第一物理链路容量信息和当前物理链路速率信息,本申请实施例不作具体限定。
需要说明的是,任一个路由器测量自身的物理链路容量信息和当前物理链路速率信息时都可以采用与第一中间路由器相似的方法,后续将不再赘述各路由器测量物理 链路容量信息和当前物理链路速率信息的具体实现。对于某一个中间路由器,如果有多条路径经过该中间路由器,则该中间路由器将分别测量该多条路径在该中间路由器的物理链路容量信息和当前物理链路速率信息。
S904:第一中间路由器将第一物理链路容量信息和当前物理链路速率信息携带在第三报文中发送给下一跳路由器。
S905:第N中间路由器测量第N中间路由器的第N物理链路容量信息和当前物理链路速率信息。
S906:第N中间路由器将第N物理链路容量信息和当前物理链路速率信息携带在第三报文中发送给出口路由器。
本申请实施例中,第一中间路由器可以将第一物理链路容量信息和当前物理链路速率信息添加在第三报文中,然后将第三报文发给第一中间路由器的下一跳路由器,以此类推,之后下一跳路由器测量自身的物理链路容量信息和当前物理链路速率信息后,将自身的物理链路容量信息和当前物理链路速率信息添加在包括第一物理链路容量信息和当前物理链路速率信息的第一中,发送给该下一跳路由器的下一跳路由器,直到第N中间路由器,该第N中间路由器可以为出口路由器的上一跳路由器。
S907:出口路由器测量出口路由器的物理链路容量信息和当前物理链路速率信息,并将该物理链路容量信息和当前物理链路速率信息设置在第三报文,得到第四报文。
与中间路由器不同的是,出口路由器在测量自身的物理链路容量信息和当前物理链路速率信息,并将该物理链路容量信息和当前物理链路速率信息设置在第三报文后,是将得到的第四报文发送给出口路由器。
S908:出口路由器向入口路由器发送第四报文。
S909:入口路由器根据第四报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
示例性的,入口路由器可以基于速率控制协议(rate control protocol,RCP)中的定义计算流速率的方式先计算路径中各路由器的流速率,入口路由器可以将各路由器的最低流速率作为该路径的第一参数,或者第二低流速率信息作为该路径的第一参数,等,本申请不作具体限定。
例如,RCP中定义了下述公式:
Figure PCTCN2020121195-appb-000004
Figure PCTCN2020121195-appb-000005
也即,
Figure PCTCN2020121195-appb-000006
其中,对于路径中的其中一个路由器,R(t)为该路由器的流速率(也可以理解为第一路由器在该路径中允许通过的流速率),C为该路由器的物理链路容量信息,y(t)为该路由器的当前物理链路速率信息,q(t)为队列长度,d0为平均RTT,T为测量周期,α、β为影响系数(为根据实际设定的固定值)。
需要说明的是,对于多条路径,入口路由器可以生成多条路径中的每条路径的报文,并可以同时或分时向各路径中的下一跳路由器发送对应的报文,在入口路由器获取到多条路径的第一参数后,就可以为各路径分配适应的流量,在此不作赘述。
在一种可选的实现方式中,S901-S906的实现方式不变,S907可以替换为:出口路由器测量出口路由器的物理链路容量信息和当前物理链路速率信息,并根据从第N中间路由器接收的报文,计算该路径的第一参数。S908可以替换为:出口路由器向入口路由器发送该路径的第一参数。S909可以替换为:入口路由器接收该路径的第一参数。
与图9对应的实施例不同的是,本实施例中是由出口路由器计算路径的第一参数,计算方式与入口路由器计算路径第一参数的方式相似,在此不作赘述,从而可以节约入口路由器的测量资源。
在另一种可选的实现方式中,S901-S907的实现方式不变,S908可以替换为:出口路由器向电子设备发送第四报文,S909可以替换为:电子设备根据该第四报文计算该路径的第一参数。再添加步骤:电子设备向入口路由器发送该路径的第一参数,入口路由器接收该路径的第一参数。
与图9对应的实施例不同的是,本实施例中是由电子设备计算路径的第一参数,计算方式与入口路由器计算路径第一参数的方式相似,在此不作赘述,从而可以节约入口路由器的计算资源。
在又一种可选的实现方式中,各中间路由器以及出口路由器在测量各自的物理链路容量信息和当前物理链路速率信息后,可以发送给电子设备,由电子设备计算路径的第一参数后发送给入口路由器,从而可以节约入口路由器的计算资源。
在又一种可选的实现方式中,电子设备可以监控各中间路由器以及出口路由器,在各中间路由器以及出口路由器在测量各自的物理链路容量信息和当前物理链路速率信息后,电子设备可以获取各中间路由器以及出口路由器的物理链路容量信息和当前物理链路速率信息,由电子设备计算路径的第一参数后发送给入口路由器,从而可以节约入口路由器的计算资源。
示例性的,图10为本申请实施例提供的流量分配方法中获取一条路径的第一参数的信令交互流程示意图,如图10所示,该路径中可以包括入口路由器、出口路由器、以及N个中间路由器,N可以为大于或等于1的值,可以理解,在N为1时则图10中只包括一个中间路由器即可,该方法的信令交互可以包括:
S1001:入口路由器生成第一报文。
S1002:入口路由器向第一中间路由器发送第一报文。
S1003:第一中间路由器测量第一中间路由器的第一流速率。
S1004:在第一流速率小于第一报文中的流速率的情况下,第一中间路由器采用第一流速率替换第一报文中的流速率后,将替换后的第一报文发送给下一跳路由器。
S1005:第N中间路由器测量第N中间路由器的第N流速率。
S1006:在第N流速率小于第一报文中的流速率的情况下,第N中间路由器采用第N流速率替换第一报文中的流速率后,将替换后的第一报文发送给下一跳路由器。
S1007:出口路由器测量出口路由器的流速率,并在出口路由器的流速率小于第一 报文中的流速率的情况下,采用出口路由器的流速率替换第一报文中的流速,得到第二报文。
S1008:出口路由器向入口路由器发送第二报文。
S1009:入口路由器根据第二报文中的流速率得到该路径的第一参数。
与图6的实施例不同的是,本申请实施例中,在报文中携带一个流速率,各中间路由器和出口路由器在接收到上一跳路由器发送的报文后,会根据将自身计算得到的流速率与报文中的流速率比较,如果自身的流速率小于从上一跳路由器接收的报文中的流速率,则采用自身的流速率替换报文中的流速率,则入口路由器接收的第二报文中所包括的流速率就可以作为该路径的第一参数。其他的计算过程参照图6对应的实施例的记载,在此不作赘述。
本申请实施例中,因为报文中携带的数据较少,因此能够节约传输流量。
在入口路由器获取到多条路径的第一参数后,就可以为各路径分配适应的流量,在此不作赘述。
示例性的,如图11所示,示出了一种每一对入口路由器和出口路由器之间有多个路径的情况,例如,入口路由器A和出口路由器D是一对,实线条表示A和D之间的两条路径,入口路由器A可以发送路径测量请求报文,出口路由器D可以返回路径测量请求回应报文,入口路由器A可以评估两条路径的质量状态,并为两条路径分配适应的流量;入口路由器E和出口路由器H是一对,虚线条表示E和H之间的三条路径,入口路由器E可以发送路径测量请求报文,出口路由器H可以返回路径测量请求回应报文,入口路由器E可以评估两条路径的质量状态,并为三条路径分配适应的流量;入口路由器I和出口路由器L是一对,点划线条表示I和L之间的两条路径,入口路由器I可以发送路径测量请求报文,出口路由器L可以返回路径测量请求回应报文,入口路由器I可以评估两条路径的质量状态,并为两条路径分配适应的流量;从而使得网络中各路径的负载较为均衡,改善网络的通信质量。
图12为本申请实施例提供的一种流量分配方法的流程示意图,如图12所示,本实施例提供的方法包括以下步骤:
S1201:电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,多条路径是入口路由器和出口路由器之间的路径。
S1202:电子设备向入口路由器发送第一参数,第一参数用于入口路由器为一条或多条路径分配流量。
可选的,电子设备根据一条或多条路径中各路由器的流速率计算各路径的第一参数,包括:电子设备接收各路径中的路由器发送的报文,报文包括发送报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;电子设备根据各路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
可选的,电子设备为出口路由器,电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,包括:
出口路由器接收路径中上一跳路由器发送的报文,报文包括路径中位于出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;
出口路由器根据报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
本申请实施例的具体实现和达到的效果参照图5至图11所对应的实施例中电子设备或出口路由器所执行的步骤的记载,在此不再赘述。
图13为本申请实施例提供的一种流量分配方法的流程示意图,如图13所示,本实施例提供的方法包括以下步骤:
S1301:中间路由器接收路径中的上一跳路由器发送的报文,中间路由器为路径中除入口路由器和出口路由器外的路由器,报文包括路径中位于中间路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息。
S1302:中间路由器计算第一流速率,或测量物理链路容量信息和当前物理链路速率信息。
S1303:中间路由器将第一流速率或,物理链路容量信息和当前物理链路速率信息携带在报文中发送给路径中的下一跳路由器;或,在中间路由器计算得到的第一流速率小于上一跳路由器发送的报文中携带的流速率情况下,将上一跳路由器发送的报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的报文发送给下一跳路由器;其中,报文中携带一个流速率。
可选的,报文包括:路径的往返时延信息RTT,以及路径的当前流速率信息。
可选的,报文还包括:用于标识该路径的路径信息。
本申请实施例的具体实现和达到的效果参照图5至图11所对应的实施例中中间路由器所执行的步骤的记载,在此不再赘述。
图14为本申请实施例提供的一种流量分配装置的结构示意图,应用于入口路由器,包括处理模块141和分配模块142,其中,处理模块,用于获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量;分配模块,用于根据一条或者多条路径的第一参数,为一条或者多条路径分配流量。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;接收出口路由器返回的第二报文,第二报文为将该路径中每个路由器的流速率设置在第一报文中得到的报文;其中,该路径中的每个中间路由器用于将计算得到的流速率携带在第一报文中发送给下一跳路由器;根据第二报文中的每个路由器的流速率确定该路径的第一参数。
在一种可能的设计中,处理模块,具体还用于从第二报文中的路由器的流速率中确定最小流速率,最小流速率为该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,第一报文用于指示该路径中的路由器计算流速率;接收出口路由器返回的第二报文,第二报文中包括第一流速率,第一流速率为根据该路径中每个路由器的流速率和第一报文得到的;其中,该路径中的每个中间路由器用于:在该 中间路由器计算得到的流速率小于上一跳路由器发送的第一报文中携带的流速率情况下,将上一跳路由器发送的第一报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的第一报文发送给下一跳路由器;将第二报文携带的流速率确定该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第三报文,第三报文用于指示该路径中的路由器测量该路由器的物理链路容量信息和该路由器的当前物理链路速率信息;接收出口路由器返回的第三报文,第三报文为将该路径中每个路由器的物理链路容量信息和当前物理链路速率信息设置在第三报文中得到的报文;其中,该路径中的每个中间路由器用于将测量得到的物理链路容量信息和当前物理链路速率信息携带在第三报文中发送给下一跳路由器;根据第二报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
在一种可能的设计中,处理模块,具体用于:从第一电子设备接收一条或者多条路径的第一参数,一条或者多条路径的第一参数为第一电子设备获取路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,并根据路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算得到的。
在一种可能的设计中,分配模块具体用于:在入口路由器接收到第一数据流时,计算第一数据流的流量,并根据多条路径的第一参数,为多条路径分配流量;和/或,根据多条路径的第一参数,以及入口路由器中第二数据流的流量,为一条或多条路径更新流量。
本实施例的装置对应地可用于执行上述方法实施例中入口路由器执行的步骤,其实现原理和技术效果类似,此处不再赘述。
图15为本申请实施例提供的一种流量分配装置的结构示意图,应用于电子设备,包括计算模块151和发送模块152,其中计算模块,用于根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各路径的第一参数,多条路径是入口路由器和出口路由器之间的路径;发送模块,用于向入口路由器发送第一参数,第一参数用于入口路由器为一条或多条路径分配流量。
在一种可能的设计中,计算模块,具体用于接收各路径中的路由器发送的报文,报文包括发送报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;根据各路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
在一种可能的设计中,电子设备为出口路由器,计算模块,具体用于:接收路径中上一跳路由器发送的报文,报文包括路径中位于出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;根据报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
本实施例的装置对应地可用于执行上述方法实施例中电子设备执行的步骤,其实现原理和技术效果类似,此处不再赘述。
图16为本申请实施例提供的一种流量分配装置的结构示意图,应用于中间路由器, 包括接收模块161、计算模块162和发送模块163:接收模块,用于接收路径中的上一跳路由器发送的报文,中间路由器为路径中除入口路由器和出口路由器外的路由器,报文包括路径中位于中间路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;计算模块,用于计算第一流速率,或测量物理链路容量信息和当前物理链路速率信息;发送模块,用于将第一流速率或,物理链路容量信息和当前物理链路速率信息携带在报文中发送给路径中的下一跳路由器;或,在中间路由器计算得到的第一流速率小于上一跳路由器发送的报文中携带的流速率情况下,将上一跳路由器发送的报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的报文发送给下一跳路由器;其中,报文中携带一个流速率。
在一种可能的设计中,报文包括:路径的往返时延信息RTT,以及路径的当前流速率信息。
在一种可能的设计中,报文还包括:用于标识该路径的路径信息。
本实施例的装置对应地可用于执行上述方法实施例中中间路由器执行的步骤,其实现原理和技术效果类似,此处不再赘述。
图17为本申请提供的流量分配装置的硬件结构示意图。请参见图17,该流量分配装置包括:存储器171、处理器172和通信接口173,其中,存储器171、处理器172和通信接口173可以通信;示例性的,存储器171、处理器172和通信接口173可以通过通信总线174通信,存储器171用于存储计算机程序,处理器172执行计算机程序实现上述方法实施例所示的方法。
可选的,通信接口173还可以包括发送器和/或接收器。
可选的,上述处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请提供一种可读计算机存储介质,可读计算机存储介质用于存储计算机程序,计算机程序用于实现上述方法实施例所示的方法。
本申请还一种通信系统,包括如图14、15和16的流量分配装置。
本申请提供一种系统芯片,该系统芯片用于支持通信装置实现本申请实施例所示的功能(例如,入口路由器获取一条或者多条路径的第一参数,多条路径是入口路由器和出口路由器之间的路径,任一个路径的第一参数用于反映任一个路径允许通过的流量;入口路由器根据一条或者多条路径的第一参数,为一条或者多条路径分配流量),该芯片具体用于芯片系统,该芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。当实现上述方法的为第一设备内的芯片时,芯片包括处理单元,进一步的,芯片还可以包括通信单元,处理单元例如可以是处理器,当芯片包括通信单元时,通信单元例如可以是输入/输出接口、管脚或电路等。处理单元执行本申请实施例中各个处理模块所执行的全部或部分动作,通信单元可执行相应的接收或发送动作,在另一具体的实施例中,本申请中的接收设备的处理模块可以是芯片的处理单元,控制设备的接收模块或发送模块是芯片的通信单元。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (20)

  1. 一种流量分配方法,其特征在于,包括:
    入口路由器获取一条或者多条路径的第一参数,所述多条路径是所述入口路由器和出口路由器之间的路径,任一个所述路径的第一参数用于反映所述任一个路径允许通过的流量;
    所述入口路由器根据所述一条或者多条路径的第一参数,为一条或者多条所述路径分配流量。
  2. 根据权利要求1所述的方法,其特征在于,入口路由器获取一条或者多条路径的第一参数包括:
    对于每条路径,所述入口路由器向该路径中的下一跳路由器发送第一报文,所述第一报文用于指示该路径中的路由器计算流速率;
    所述入口路由器接收所述出口路由器返回的第二报文,所述第二报文为将该路径中每个路由器的流速率设置在所述第一报文中得到的报文;其中,该路径中的每个中间路由器用于将计算得到的流速率携带在所述第一报文中发送给下一跳路由器;
    所述入口路由器根据所述第二报文中的每个路由器的流速率确定该路径的第一参数。
  3. 根据权利要求2所述的方法,其特征在于,所述入口路由器根据所述第二报文中的每个路由器的流速率确定该路径的第一参数,包括:
    所述入口路由器从所述第二报文中的路由器的流速率中确定最小流速率,所述最小流速率为该路径的第一参数。
  4. 根据权利要求1所述的方法,其特征在于,入口路由器获取一条或者多条路径的第一参数包括:
    对于每条路径,所述入口路由器向该路径中的下一跳路由器发送第一报文,所述第一报文用于指示该路径中的路由器计算流速率;
    所述入口路由器接收所述出口路由器返回的第二报文,所述第二报文中包括第一流速率,所述第一流速率为根据该路径中每个路由器的流速率和第一报文得到的;其中,该路径中的每个中间路由器用于:在该中间路由器计算得到的流速率小于上一跳路由器发送的第一报文中携带的流速率情况下,将上一跳路由器发送的第一报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的第一报文发送给下一跳路由器;
    所述入口路由器将所述第二报文携带的流速率确定该路径的第一参数。
  5. 根据权利要求1所述的方法,其特征在于,入口路由器获取一条或者多条路径的第一参数包括:
    对于每条路径,所述入口路由器向该路径中的下一跳路由器发送第三报文,所述第三报文用于指示该路径中的路由器测量该路由器的物理链路容量信息和该路由器的当前物理链路速率信息;
    所述入口路由器接收所述出口路由器返回的第三报文,所述第三报文为将该路径中每个路由器的物理链路容量信息和当前物理链路速率信息设置在所述第三报文中得 到的报文;其中,该路径中的每个中间路由器用于将测量得到的物理链路容量信息和当前物理链路速率信息携带在所述第三报文中发送给下一跳路由器;
    所述入口路由器根据所述第二报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
  6. 根据权利要求1所述的方法,其特征在于,入口路由器获取一条或者多条路径的第一参数包括:
    所述入口路由器从第一电子设备接收所述一条或者多条路径的第一参数,所述一条或者多条路径的第一参数为所述第一电子设备获取所述路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,并根据所述路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算得到的。
  7. 根据权利要求1-6任一项所述的方法,其特征在于,所述入口路由器根据所述一条或者多条路径的第一参数,为一条或者多条所述路径分配流量包括:
    在所述入口路由器接收到第一数据流时,所述入口路由器计算所述第一数据流的流量,并根据所述多条路径的第一参数,为所述多条路径分配流量;和/或,
    所述入口路由器根据所述多条路径的第一参数,以及所述入口路由器中第二数据流的流量,为一条或多条所述路径更新流量。
  8. 一种流量分配方法,其特征在于,包括:
    电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各所述路径的第一参数,所述多条路径是入口路由器和出口路由器之间的路径;
    所述电子设备向所述入口路由器发送所述第一参数,所述第一参数用于所述入口路由器为一条或多条所述路径分配流量。
  9. 根据权利要求8所述的方法,其特征在于,电子设备根据一条或多条路径中各路由器的流速率计算各所述路径的第一参数,包括:
    所述电子设备接收各所述路径中的路由器发送的报文,所述报文包括发送所述报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;
    所述电子设备根据各所述路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
  10. 根据权利要求8所述的方法,其特征在于,所述电子设备为所述出口路由器,所述电子设备根据一条或多条路径中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算各所述路径的第一参数,包括:
    所述出口路由器接收路径中上一跳路由器发送的报文,所述报文包括所述路径中位于所述出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;
    所述出口路由器根据所述报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
  11. 一种流量分配装置,其特征在于,应用于入口路由器,所述装置包括:
    处理模块,用于获取一条或者多条路径的第一参数,所述多条路径是所述入口路由器和出口路由器之间的路径,任一个所述路径的第一参数用于反映所述任一个路径 允许通过的流量;
    分配模块,用于根据所述一条或者多条路径的第一参数,为一条或者多条所述路径分配流量。
  12. 根据权利要求11所述的装置,其特征在于,所述处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,所述第一报文用于指示该路径中的路由器计算流速率;接收所述出口路由器返回的第二报文,所述第二报文为将该路径中每个路由器的流速率设置在所述第一报文中得到的报文;其中,该路径中的每个中间路由器用于将计算得到的流速率携带在所述第一报文中发送给下一跳路由器;根据所述第二报文中的每个路由器的流速率确定该路径的第一参数。
  13. 根据权利要求12所述的装置,其特征在于,所述处理模块,具体还用于从所述第二报文中的路由器的流速率中确定最小流速率,所述最小流速率为该路径的第一参数。
  14. 根据权利要求11所述的装置,其特征在于,所述处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第一报文,所述第一报文用于指示该路径中的路由器计算流速率;接收所述出口路由器返回的第二报文,所述第二报文中包括第一流速率,所述第一流速率为根据该路径中每个路由器的流速率和第一报文得到的;其中,该路径中的每个中间路由器用于:在该中间路由器计算得到的流速率小于上一跳路由器发送的第一报文中携带的流速率情况下,将上一跳路由器发送的第一报文中携带的流速率替换为该中间路由器计算得到的流速率,并将替换后的第一报文发送给下一跳路由器;将所述第二报文携带的流速率确定该路径的第一参数。
  15. 根据权利要求11所述的装置,其特征在于,所述处理模块,具体用于:对于每条路径,向该路径中的下一跳路由器发送第三报文,所述第三报文用于指示该路径中的路由器测量该路由器的物理链路容量信息和该路由器的当前物理链路速率信息;接收所述出口路由器返回的第三报文,所述第三报文为将该路径中每个路由器的物理链路容量信息和当前物理链路速率信息设置在所述第三报文中得到的报文;其中,该路径中的每个中间路由器用于将测量得到的物理链路容量信息和当前物理链路速率信息携带在所述第三报文中发送给下一跳路由器;根据所述第二报文中的每个路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
  16. 根据权利要求11所述的装置,其特征在于,所述处理模块,具体用于:从第一电子设备接收所述一条或者多条路径的第一参数,所述一条或者多条路径的第一参数为所述第一电子设备获取所述路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,并根据所述路径中的各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算得到的。
  17. 根据权利要求11-16任一项所述的装置,其特征在于,所述分配模块具体用于:在所述入口路由器接收到第一数据流时,计算所述第一数据流的流量,并根据所述多条路径的第一参数,为所述多条路径分配流量;和/或,根据所述多条路径的第一参数,以及所述入口路由器中第二数据流的流量,为一条或多条所述路径更新流量。
  18. 一种流量分配装置,其特征在于,应用于电子设备,包括:
    计算模块,用于根据一条或多条路径中各路由器的流速率或各路由器的物理链路 容量信息和当前物理链路速率信息,计算各所述路径的第一参数,所述多条路径是入口路由器和出口路由器之间的路径;
    发送模块,用于向所述入口路由器发送所述第一参数,所述第一参数用于所述入口路由器为一条或多条所述路径分配流量。
  19. 根据权利要求18所述的装置,其特征在于,所述计算模块,具体用于接收各所述路径中的路由器发送的报文,所述报文包括发送所述报文的路由器的流速率,或各路由器的物理链路容量信息和当前物理链路速率信息;根据各所述路径中的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息,计算该路径的第一参数。
  20. 根据权利要求18所述的装置,其特征在于,所述电子设备为所述出口路由器,所述计算模块,具体用于:接收路径中上一跳路由器发送的报文,所述报文包括所述路径中位于所述出口路由器之前的路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息;根据所述报文中各路由器的流速率或各路由器的物理链路容量信息和当前物理链路速率信息计算该路径的第一参数。
PCT/CN2020/121195 2019-11-14 2020-10-15 流量分配方法及装置 WO2021093509A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911114729.0A CN112804159A (zh) 2019-11-14 2019-11-14 流量分配方法及装置
CN201911114729.0 2019-11-14

Publications (1)

Publication Number Publication Date
WO2021093509A1 true WO2021093509A1 (zh) 2021-05-20

Family

ID=75803776

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/121195 WO2021093509A1 (zh) 2019-11-14 2020-10-15 流量分配方法及装置

Country Status (2)

Country Link
CN (1) CN112804159A (zh)
WO (1) WO2021093509A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100214913A1 (en) * 2009-02-25 2010-08-26 Juniper Networks, Inc. Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering
CN103297341A (zh) * 2013-07-04 2013-09-11 清华大学 在域内路由器节点上配置流量的方法
CN104601485A (zh) * 2015-02-12 2015-05-06 清华大学 网络流量的分配方法及实现网络流量分配的路由方法
CN107204933A (zh) * 2016-03-16 2017-09-26 华为技术有限公司 分布式流量调节方法及装置
CN107835130A (zh) * 2017-12-12 2018-03-23 中国联合网络通信集团有限公司 一种流量分配方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100214913A1 (en) * 2009-02-25 2010-08-26 Juniper Networks, Inc. Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering
CN103297341A (zh) * 2013-07-04 2013-09-11 清华大学 在域内路由器节点上配置流量的方法
CN104601485A (zh) * 2015-02-12 2015-05-06 清华大学 网络流量的分配方法及实现网络流量分配的路由方法
CN107204933A (zh) * 2016-03-16 2017-09-26 华为技术有限公司 分布式流量调节方法及装置
CN107835130A (zh) * 2017-12-12 2018-03-23 中国联合网络通信集团有限公司 一种流量分配方法及装置

Also Published As

Publication number Publication date
CN112804159A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
US11316795B2 (en) Network flow control method and network device
CN111682952B (zh) 针对体验质量度量的按需探测
CN109412958B (zh) 数据中心的拥塞控制方法和装置
JP5276589B2 (ja) 遠隔通信ネットワークにおける情報転送の最適化方法
JP2020502948A (ja) パケット伝送システムおよび方法
US20150236962A1 (en) Method and system for using dynamic bandwidth detection to drive quality of service control refinement
Lu et al. SDN-based TCP congestion control in data center networks
CN109818881B (zh) Cdn带宽调度方法、采集及调度服务器和存储介质
US20160192233A1 (en) Congestion control for a multimedia session
JP7313480B2 (ja) スライスベースネットワークにおける輻輳回避
WO2018112877A1 (zh) 路径计算和访问请求分发方法、装置及系统
CN107770085B (zh) 一种网络负载均衡方法、设备及系统
US10536385B2 (en) Output rates for virtual output queses
WO2018219100A1 (zh) 数据传输的方法和设备
JP2023511918A (ja) サービスレベル調整方法および装置、デバイス、ならびに記憶媒体
WO2013000116A1 (zh) 一种漏桶限速方法及装置
CN114079638A (zh) 多协议混合网络的数据传输方法、装置和存储介质
US9054985B2 (en) System and method for dynamic rate limiting and shaping of traffic based on available bandwidth
WO2021203985A1 (zh) 一种拥塞信息同步的方法以及相关装置
US11190430B2 (en) Determining the bandwidth of a communication link
WO2021078286A1 (zh) 一种数据处理方法及其装置
WO2021093509A1 (zh) 流量分配方法及装置
JP2001069146A (ja) パケット交換ネットワーク区間空き帯域測定方法及び装置
CN109379163A (zh) 一种报文转发速率控制方法及装置
CN111224884B (zh) 拥塞控制的处理方法、报文转发装置及报文接收装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20886332

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20886332

Country of ref document: EP

Kind code of ref document: A1