CN109218213B - Flow regulation and control method and device - Google Patents

Flow regulation and control method and device Download PDF

Info

Publication number
CN109218213B
CN109218213B CN201811112942.3A CN201811112942A CN109218213B CN 109218213 B CN109218213 B CN 109218213B CN 201811112942 A CN201811112942 A CN 201811112942A CN 109218213 B CN109218213 B CN 109218213B
Authority
CN
China
Prior art keywords
sub
transmission path
data streams
communication link
data stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811112942.3A
Other languages
Chinese (zh)
Other versions
CN109218213A (en
Inventor
袁航
祖立军
吴金坛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201811112942.3A priority Critical patent/CN109218213B/en
Publication of CN109218213A publication Critical patent/CN109218213A/en
Application granted granted Critical
Publication of CN109218213B publication Critical patent/CN109218213B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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

Abstract

The embodiment of the invention discloses a flow regulation and control method and a device, wherein the method comprises the following steps: after determining that a first communication link between a source node and a destination node fails, acquiring a transmission path corresponding to a data stream on the first communication link, and sending transmission paths corresponding to a plurality of sub-data streams on the first communication link to the source node, so that the source node can transmit the plurality of sub-data streams to the destination node through the transmission paths corresponding to the plurality of sub-data streams. In the embodiment of the invention, the data stream on the first communication link is transmitted through the transmission paths corresponding to the plurality of sub-data streams respectively, so that the total amount of the data stream on each transmission path can be controlled within the available bandwidth of the transmission path, the transmission path corresponding to the data stream on the first communication link is prevented from overload work in the process of transmitting the data stream, and the effectiveness of data stream transmission among different data centers in an internet system can be ensured.

Description

Flow regulation and control method and device
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for regulating and controlling traffic.
Background
At present, with the development of communication technology, each enterprise generally sets a plurality of data centers at different locations, and sets a plurality of communication links between different data centers to form an internet system. For example, as shown in fig. 1, an internet system has three data centers, namely, a data center DC1, a data center DC2, and a data center DC3, a communication link r1 and a communication link r2 are provided between the data center DC1 and the data center DC2, a communication link r3 and a communication link r4 are provided between the data center DC1 and the data center DC3, and a communication link r5 and a communication link r6 are provided between the data center DC2 and the data center DC 3. Each communication link in the internet system can transmit a certain data stream, and the data stream of one data center can be transmitted to other data centers through the data stream transmission among a plurality of communication links, so that the information sharing is realized.
In the implementation process, in order to avoid interruption of data stream transmission on the communication links caused by some factors (such as environmental impact or failure of a communication link caused by artificial damage), a corresponding backup communication link is usually assigned to each communication link in the inter-network system, for example, as shown in fig. 1, a corresponding backup communication link r2 may be assigned to the communication link r1, so that, when the communication link r1 fails, the data stream of the data center DC1 may be transmitted to the data center DC2 through the backup communication link r 2. However, each communication link in the internet system carries a part of data stream transmission tasks, when a communication link fails, the corresponding backup communication link transmits the original data stream on one hand, and transmits the data stream corresponding to the failed communication link on the other hand, at this time, the flow of the total data stream transmitted on the backup communication link may exceed the bandwidth limit of the backup communication link, so that the backup communication link is overloaded to work, the effectiveness of data stream transmission is poor, for example, the transmission speed of the data stream is reduced, and part of data in the data stream may be lost, which affects data processing between data centers.
In summary, a traffic control method is needed for ensuring the effectiveness of data stream transmission between different data centers in the internet system.
Disclosure of Invention
The embodiment of the invention provides a flow regulation and control method and device, which are used for ensuring the effectiveness of data stream transmission among different data centers in an internet system.
The embodiment of the invention provides a flow regulation and control method, which comprises the following steps:
after determining that a first communication link between a source node and a destination node fails, acquiring a transmission path corresponding to a data stream on the first communication link;
the data stream on the first communication link includes a plurality of sub data streams, a transmission path corresponding to the data stream on the first communication link includes transmission paths corresponding to the plurality of sub data streams, respectively, a transmission path corresponding to any one of the plurality of sub data streams is a first type transmission path or a second type transmission path, the first type transmission path includes one communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node;
and sending a transmission path corresponding to the data stream on the first communication link to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams respectively.
Optionally, a transmission path corresponding to any of the sub-data streams is determined as follows:
according to available bandwidths of a plurality of transmission paths from the source node to the destination node, selecting at least one alternative transmission path with an available bandwidth larger than or equal to a first threshold from the plurality of transmission paths, and determining an alternative transmission path with a highest priority in the at least one alternative transmission path as a transmission path corresponding to any sub-data stream, wherein the first threshold is determined according to the flow of any sub-data stream;
wherein the available bandwidth of the transmission path is a minimum available bandwidth of available bandwidths of at least one communication link included in the transmission path.
Optionally, the priority of each alternative transmission path in the at least one alternative transmission path is determined by:
Figure BDA0001809691840000031
wherein λ is i For the priority of the ith alternative transmission path, c i Alpha is a preset constant value and t is the total number of communication links contained in the ith alternative transmission path i The time required for transmitting the sub-data stream from the source node to the destination node through the ith alternative transmission path.
Optionally, the transmission paths corresponding to the multiple sub-data streams are determined as follows:
and determining transmission paths corresponding to the plurality of sub-data streams for the plurality of sub-data streams in sequence according to the sequence of the priorities of the plurality of sub-data streams from high to low.
The embodiment of the invention provides a flow regulation and control device, which comprises:
the system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring a transmission path corresponding to a data stream on a first communication link after determining that the first communication link between a source node and a destination node fails;
the data stream on the first communication link includes a plurality of sub data streams, a transmission path corresponding to the data stream on the first communication link includes transmission paths corresponding to the plurality of sub data streams, respectively, a transmission path corresponding to any one of the plurality of sub data streams is a first type transmission path or a second type transmission path, the first type transmission path includes one communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node;
a processing module, configured to send a transmission path corresponding to the data stream on the first communication link to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively.
Optionally, the obtaining module determines a transmission path corresponding to any of the sub-data streams by:
according to available bandwidths of a plurality of transmission paths from the source node to the destination node, selecting at least one alternative transmission path with an available bandwidth larger than or equal to a first threshold from the plurality of transmission paths, and determining an alternative transmission path with a highest priority in the at least one alternative transmission path as a transmission path corresponding to any sub-data stream, wherein the first threshold is determined according to the flow of any sub-data stream;
wherein the available bandwidth of the transmission path is a minimum available bandwidth of available bandwidths of at least one communication link included in the transmission path.
Optionally, the obtaining module determines the priority of each alternative transmission path in the at least one alternative transmission path by:
Figure BDA0001809691840000041
wherein λ is i For the priority value of the ith alternative transmission path, c i Alpha is a preset constant value and t is the total number of communication links contained in the ith alternative transmission path i The time required for transmitting the sub-data stream from the source node to the destination node through the ith alternative transmission path.
Optionally, the obtaining module determines transmission paths corresponding to the multiple sub-data streams respectively by:
and determining transmission paths corresponding to the plurality of sub-data streams for the plurality of sub-data streams in sequence according to the sequence of the priorities of the plurality of sub-data streams from high to low.
In the above embodiment of the present invention, after determining that the first communication link between the source node and the destination node has a fault, the transmission paths corresponding to the data streams on the first communication link are obtained, and the transmission paths corresponding to the multiple sub-data streams on the first communication link are sent to the source node, so that the source node can transmit the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively. In the embodiment of the invention, the data stream on the first communication link is transmitted through the transmission paths corresponding to the plurality of sub-data streams respectively, so that the total amount of the data stream on each transmission path can be controlled within the available bandwidth of the transmission path, and the transmission path corresponding to the data stream on the first communication link is prevented from overload operation in the process of transmitting the data stream when the first communication link fails, thereby ensuring the effectiveness of data stream transmission among different data centers in an interconnected network system.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic diagram of an internet system according to an embodiment of the present invention;
FIG. 2 is a diagram illustrating a system architecture suitable for use in accordance with an embodiment of the present invention;
fig. 3 is a schematic flow chart corresponding to a flow rate control method provided in an embodiment of the present invention;
fig. 4 is a schematic structural diagram of a flow rate control device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 2 is a schematic diagram of a system architecture applicable to the embodiment of the present application, as shown in fig. 2, the system architecture includes: the system comprises a capability arrangement layer, a device docking layer and an internet layer. The internet layer may include a plurality of data centers or a plurality of network devices (for convenience of description, referred to as bottom layer devices), and the device docking layer may interact with the internet layer and the capability orchestration layer, respectively.
Specifically, the device docking layer may collect relevant data corresponding to a plurality of bottom devices in the internet layer, and send the relevant data to the capability arrangement layer, after receiving the relevant data, the capability arrangement layer may perform logic analysis on the relevant data according to a user interface operation, generate a topology structure diagram of the internet system formed by the plurality of bottom devices in the internet layer, and generate a relevant policy configuration for the internet system, and the device docking layer may send the relevant policy configuration generated by the capability docking layer to the plurality of bottom devices in the internet layer, so that the plurality of bottom devices execute the corresponding policy configuration.
In one example, the topological structure diagram of the internet system shown in fig. 2 can be obtained through analysis, where the topological structure diagram may include one or more nodes and line segments between the nodes, where the nodes may refer to data centers or network devices set by an enterprise, and the line segments between the nodes may indicate communication links between two data centers or communication links between two network devices. As shown in fig. 2, the internet system includes four nodes, node a, node B, node C, and node D, where a communication link a1 and a communication link a2 are provided between node a and node B, a communication link a3 is provided between node a and node C, a communication link a4 and a communication link a5 are provided between node C and node D, and a communication link a6 is provided between node B and node D. Communication link a1 transmits data flow f from node a to node B, so the source node corresponding to data flow f may be node a, the destination node corresponding to data flow f may be node B, and the communication link corresponding to data flow f may be communication link a 1.
Based on the system architecture illustrated in fig. 2, fig. 3 is a schematic flow chart corresponding to a traffic control method provided in an embodiment of the present invention, where the method may be applied to an internet system, and the method includes:
step 301, after determining that a first communication link between a source node and a destination node fails, acquiring a transmission path corresponding to a data stream on the first communication link.
In the embodiment of the invention, the state of the internet system can be monitored according to a set period, or the state of the internet system can be monitored in real time, and when the data transmission relation on a certain communication link between two nodes in the internet system is monitored to be interrupted, the fault of the communication link can be determined. For convenience of description, a failed communication link is referred to as a first communication link, and a source node and a destination node corresponding to the first communication link may be acquired according to the first communication link. Further, a transmission path corresponding to the data stream on the first communication link may be acquired according to the first communication link.
In specific implementation, the transmission path corresponding to the data stream on the first communication link may be obtained by querying a preset table. In an example, the preset table may include transmission paths respectively corresponding to a plurality of nodes in an internet system, a plurality of communication links between the plurality of nodes, a plurality of sub-data streams on any one communication link, and a plurality of sub-data streams on any one communication link. In this embodiment of the present invention, the data stream on the first communication link may include a plurality of sub data streams, and the transmission path corresponding to the data stream on the first communication link may include transmission paths corresponding to the plurality of sub data streams, respectively. The multiple sub-data streams may include a first sub-data stream and a second sub-data stream, and transmission paths corresponding to the first sub-data stream and the second sub-data stream may be the same or different, which is not limited in this embodiment of the present invention. Further, a transmission path corresponding to any sub-data stream of the multiple sub-data streams may be a first type transmission path or a second type transmission path, the first type transmission path may include one communication link between the source node and the destination node, and the second type transmission path may include two or more communication links between the source node, one or more intermediate nodes, and the destination node.
Step 302, sending a transmission path corresponding to the data stream on the first communication link to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively.
In the above embodiment of the present invention, after determining that the first communication link between the source node and the destination node has a fault, the transmission paths corresponding to the data streams on the first communication link are obtained, and the transmission paths corresponding to the multiple sub-data streams on the first communication link are sent to the source node, so that the source node can transmit the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively. In the embodiment of the invention, the data stream on the first communication link is transmitted through the transmission paths corresponding to the plurality of sub-data streams respectively, so that the total amount of the data stream on each transmission path can be controlled within the available bandwidth of the transmission path, and the transmission path corresponding to the data stream on the first communication link is prevented from overload operation in the process of transmitting the data stream when the first communication link fails, thereby ensuring the effectiveness of data stream transmission among different data centers in an interconnected network system.
In step 301, the preset table may be updated according to the state of the internet system, and in a possible implementation manner, the state of the internet system may be monitored according to a set period, or the state of the internet system may also be monitored in real time, and for any communication link in the internet system, when it is monitored that the data transmission relationship on the communication link changes, transmission paths corresponding to a plurality of sub-data streams may be determined again for the plurality of sub-data streams from a plurality of transmission paths from a source node to a destination node corresponding to the communication link, and the preset table is updated.
In a specific implementation, for any communication link (referred to as a to-be-backed-up communication link for convenience of description) in the internet system included in the preset table, a data stream carried on the to-be-backed-up communication link between the source node and the destination node may be obtained, and the data stream carried on the to-be-backed-up communication link is divided to obtain a plurality of sub-data streams.
In the embodiment of the present invention, there may be multiple ways of dividing the data stream carried on the communication link to be backed up, and in a possible implementation manner, the data stream carried on the communication link to be backed up may be divided according to a quintuple of the data stream to obtain a plurality of sub data streams. Specifically, the five-tuple of the data stream may include a source IP address, a source port, a destination IP address, a destination port, and a transport layer protocol, and by analyzing the source IP address, the source port, the destination IP address, the destination port, and the application protocol of the data stream carried on the communication link to be backed up, the data stream with different five-tuple included in the data stream carried on the communication link to be backed up may be divided to obtain a plurality of sub-data streams. For example, the data streams with the same triplet in the quintuple of the data stream carried on the communication link to be backed up may be divided into one sub-data stream, or the data streams with the same quintuple in the quintuple of the data stream carried on the communication link to be backed up may be divided into one sub-data stream, or a method combining the triplet, the quadruplet and the quintuple may be adopted to divide the data stream carried on the communication link to be backed up, so that different divided sub-data streams have different quintuples. In a specific implementation, each of the sub-streams may be determined according to the flow of the sub-stream obtained by dividing, or other dividing methods may also be adopted according to actual needs, which is not specifically limited herein.
Based on the system architecture illustrated in fig. 2, in one example, a corresponding transmission path may be determined for data flow f on communication link a 1. Here, the flow rate of the data stream f on the communication link a1 may be 16000M, and by dividing the data stream f carried on the communication link a1, three sub-data streams may be obtained: substream f1, substream f2 and substream f3, the flows of the three substreams may be 500M, 600M, respectively. As shown in table 1, the data streams in the sub-data stream f1 may have the same source ip address (10.1.0.0/16) and the same destination ip address (10.2.0.0/16), the data streams in the sub-data stream f2 may have the same source ip address (10.3.1.0/24), the same destination ip address (10.3.2.0/24) and the same source port (1080), and the data streams in the sub-data stream f3 may have the same source ip address (10.4.1.0/24), the same destination ip address (10.4.2.0/24), the same source port (1080), the same destination port (80) and the same transport layer protocol (TCP).
Table 1: multiple sub-data stream examples obtained by division
Sub-data stream Source ip Source port Destination ip Destination port Transport layer protocol
Substream f1 10.1.0.0/16 10.2.0.0/16
Substream f2 10.3.1.0/24 1080 10.3.2.0/24
Substream f3 10.4.1.0/24 1080 10.4.2.0/24 80 TCP
Further, priorities may be determined for the plurality of divided sub-data streams, specifically, the priorities of the plurality of sub-data streams may be set according to actual needs, for example, the priorities of the plurality of sub-data streams may be set according to flow rates of the plurality of sub-data streams, or the priorities of the plurality of sub-data streams may be determined according to a dividing order of the plurality of sub-data streams, which is not limited in the embodiment of the present invention. In one example, the priority of the three sub-streams in table 1 can be set as follows: substream f1, substream f2, substream f 3.
In the embodiment of the present invention, by dividing the data stream carried on the communication link to be backed up, the data stream carried on the communication link to be backed up may be divided into a plurality of sub-data streams, and by dividing the data stream carried on the communication link to be backed up by using a quintuple of the data stream, each of the plurality of sub-data streams obtained by division may have the same quintuple, so that the sub-data streams having the same quintuple are placed on one communication link to be transmitted, thereby possibly simplifying the data transmission process of the internet system.
In step 301, after obtaining the plurality of sub-data streams by dividing, before determining a transmission path corresponding to the plurality of sub-data streams, a corresponding network tunnel may be established for each of the plurality of sub-data streams, where the transmission path of the network tunnel corresponding to each of the plurality of sub-data streams may be a first communication link, and for each of the plurality of sub-data streams, the source node may transmit the sub-data stream to the destination node through the corresponding network tunnel.
Further, after determining the multiple sub-data streams corresponding to the communication link to be backed up, the transmission paths corresponding to the multiple sub-data streams may be sequentially determined for the multiple sub-data streams according to the order of priorities of the multiple sub-data streams from high to low. For any of the plurality of sub-data streams, an available bandwidth for each of a plurality of transmission paths from the source node to the destination node may first be determined. The plurality of transmission paths from the source node to the destination node may include a first type transmission path and a second type transmission path, the first type transmission path includes one communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node. And, the available bandwidth of one transmission path may be a minimum available bandwidth among available bandwidths of at least one communication link included in the one transmission path. Here, the available bandwidth of a communication link may be a difference between a bandwidth that the communication link can carry and a bandwidth used on the communication link and a traffic of a sub-data stream allocated to the communication link. That is, if a transmission path has been determined for one sub-data stream, when a communication link currently transmitting the sub-data stream fails, even if the transmission path does not start to transmit the sub-data stream, the available bandwidth of any one of the communication links included in the transmission path may be determined as a difference between a bandwidth that can be carried on the one communication link and a bandwidth that is already used on the one communication link and a traffic of the sub-data stream allocated to the one communication link, and the available bandwidth of the transmission path may be a minimum available bandwidth among available bandwidths of at least one communication link included in the transmission path.
For example, based on the system architecture illustrated in fig. 2, three transmission paths T1, T2, and T3 may exist between the source node a and the destination node B, where the transmission path T1 is a first type transmission path and includes one communication link a2 between the source node a and the destination node B, the transmission path T2 is a second type transmission path and includes three communication links a3, a4, and a6 between the source node a, the intermediate node C, the intermediate node D, and the destination node B, and the transmission path T3 is a second type transmission path and includes three communication links a3, a5, and a6 between the source node a, the intermediate node C, the intermediate node D, and the destination node B. In one example, a transmission path may be determined for the sub-data stream f1 with the highest priority, where the transmission path T1 includes one communication link a1 (available bandwidth is 600M), and the available bandwidth of the transmission path T1 may be 600M; the transmission path T2 includes three communication links of a3 (available bandwidth is 1000M), a4 (available bandwidth is 500M), and a6 (available bandwidth is 900M), and the minimum available bandwidth of the available bandwidths of the three communication links is 500M, the available bandwidth of the transmission path T2 may be 500M; the transmission path T3 includes three communication links of a communication link a3 (available bandwidth is 1000M), a communication link a5 (available bandwidth is 600M), and a communication link a6 (available bandwidth is 900M), and the minimum available bandwidth of the available bandwidths of the three communication links is 600M, the available bandwidth of the transmission path T3 may be 600M. If the flow rate of the sub-stream f1 is 500M, the first threshold may be set to 500M, and since the available bandwidth of the transmission path T1 is 600M, the available bandwidth of the transmission path T2 is 500M, and the available bandwidth of the transmission path T3 is 600M, the sub-stream f1 may correspond to three alternative transmission paths, i.e., the transmission path T1, the transmission path T2, and the transmission path T3. In another example, if it is determined that the transmission path corresponding to the sub-data stream f1 is T2, a transmission path may be determined for the sub-data stream f2 with the second priority, and at this time, the available bandwidth of the communication link a3 included in the transmission path T2 is 500M, the available bandwidth of the communication link a4 is 0M, and the available bandwidth of the communication link a6 is 400M, and the available bandwidth of the transmission path T2 may be 0M.
In the embodiment of the present invention, at least one alternative transmission path whose available bandwidth is greater than or equal to the first threshold may be selected from multiple transmission paths according to the available bandwidths of the multiple transmission paths from the source node to the destination node. The first threshold may be determined according to a flow rate of the sub-data stream of the transmission path to be determined, and a set value of the first threshold may be the same as the flow rate of the sub-data stream of the transmission path to be determined, or may be greater than the flow rate of the sub-data stream of the transmission path to be determined.
It should be noted that, for a certain sub-data stream of the multiple sub-data streams, if it is determined that the available bandwidths of the multiple transmission paths from the source node to the destination node are all smaller than the first threshold, it is determined that the available bandwidths of the multiple transmission paths are all smaller than the traffic of the sub-data stream. At this time, the determination manner of the alternative transmission path may be various, for example, several transmission paths with larger available bandwidth among the multiple transmission paths may be selected as the alternative transmission paths; or, request information may be sent to the user interface according to a preset program, where the request information may include a flow rate of the sub-data stream and available bandwidths of the multiple transmission paths, and a next operation is determined according to information returned by the user interface, which is not specifically limited in this embodiment of the present invention.
In the embodiment of the present invention, the priority of each alternative transmission path in the at least one alternative transmission path may be respectively determined, and then the alternative transmission path with the highest priority in the at least one alternative transmission path is determined as the transmission path corresponding to the sub data stream. Specifically, there may be multiple ways to determine the priority of the alternative transmission path, and in a possible implementation manner, the priority of any one of the multiple alternative transmission paths may be determined as follows:
Figure BDA0001809691840000121
wherein λ is i For the priority of the ith alternative transmission path, c i Alpha is a preset constant value and t is the total number of communication links contained in the ith alternative transmission path i The time required for transmitting the sub-data stream from the source node to the destination node through the ith alternative transmission path. Here, the preset constant value α may be set by those skilled in the art according to actual situations, and the present invention is not limited thereto.
In specific implementation, data in the internet system may be collected according to a set period, or data in the internet system may also be collected in real time, and the calculation parameters are determined by analyzing the collected data (for convenience of description, c is shown i And t i Collectively referred to as computational parameters). The determination method of the calculation parameters may be various, for example, the most recent parameter may be determinedThe data acquired at one time is used as a calculation parameter, or an average value of the data acquired within a period of time is also used as a calculation parameter, or a maximum value of the data acquired within a period of time is also used as a calculation parameter, which is not specifically limited in the embodiment of the present invention.
Further, by determining the priority of each alternative transmission path, the alternative transmission path with the highest priority in the at least one alternative transmission path is determined as the transmission path corresponding to the sub-data stream, and if there are two alternative transmission paths with the highest priority, one of the alternative transmission paths with the highest priority may be selected and determined as the transmission path corresponding to the sub-data stream.
In step 301, the preset mapping table may be updated after the transmission path corresponding to one sub-data stream is determined, or the preset mapping table may be updated after the transmission paths corresponding to a plurality of sub-data streams are determined, which is not specifically limited in the embodiment of the present invention. By updating the preset table, the transmission path corresponding to the data stream on the first communication link in the updated internet system can be obtained.
In the embodiment of the invention, the transmission path is determined for the data stream on the communication link among the nodes in the internet system by updating the preset table, so that the transmission path corresponding to the plurality of sub-data streams on the first communication link in the updated preset table can be obtained and further distributed to the source node when the first communication link fails, the data stream on the first communication link can be smoothly transmitted to the destination node, and the stability of the internet system is ensured.
In step 302, transmission paths corresponding to the multiple sub-data streams on the first communication link acquired in the preset mapping table may be respectively sent to the source node, and the source node is controlled to transmit the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams.
In the above embodiment of the present invention, after determining that the first communication link between the source node and the destination node has a fault, the transmission paths corresponding to the data streams on the first communication link are obtained, and the transmission paths corresponding to the multiple sub-data streams on the first communication link are sent to the source node, so that the source node can transmit the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively. In the embodiment of the invention, the data stream on the first communication link is transmitted through the transmission paths corresponding to the plurality of sub-data streams respectively, so that the total amount of the data stream on each transmission path can be controlled within the available bandwidth of the transmission path, and the transmission path corresponding to the data stream on the first communication link is prevented from overload operation in the process of transmitting the data stream when the first communication link fails, thereby ensuring the effectiveness of data stream transmission among different data centers in an interconnected network system.
In view of the above method flows, embodiments of the present invention further provide a device for regulating and controlling flow, and the specific content of the device may be implemented with reference to the above method.
Fig. 4 is a schematic structural diagram of a flow rate regulation method and apparatus provided in an embodiment of the present invention, including:
an obtaining module 401, configured to obtain a transmission path corresponding to a data stream on a first communication link after determining that the first communication link between a source node and a destination node has a fault;
the data stream on the first communication link includes a plurality of sub data streams, a transmission path corresponding to the data stream on the first communication link includes transmission paths corresponding to the plurality of sub data streams, respectively, a transmission path corresponding to any one of the plurality of sub data streams is a first type transmission path or a second type transmission path, the first type transmission path includes one communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node;
a processing module 402, configured to send a transmission path corresponding to the data stream on the first communication link to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively.
Optionally, the obtaining module determines a transmission path corresponding to any of the sub-data streams by:
according to available bandwidths of a plurality of transmission paths from the source node to the destination node, selecting at least one alternative transmission path with an available bandwidth larger than or equal to a first threshold from the plurality of transmission paths, and determining an alternative transmission path with a highest priority in the at least one alternative transmission path as a transmission path corresponding to any sub-data stream, wherein the first threshold is determined according to the flow of any sub-data stream;
wherein the available bandwidth of the transmission path is a minimum available bandwidth of available bandwidths of at least one communication link included in the transmission path.
Optionally, the obtaining module determines the priority of each alternative transmission path in the at least one alternative transmission path by:
Figure BDA0001809691840000141
wherein λ is i For the priority value of the ith alternative transmission path, c i Alpha is a preset constant value and t is the total number of communication links contained in the ith alternative transmission path i The time required for transmitting the sub-data stream from the source node to the destination node through the ith alternative transmission path.
Optionally, the obtaining module determines transmission paths corresponding to the multiple sub-data streams respectively by:
and determining transmission paths corresponding to the plurality of sub-data streams for the plurality of sub-data streams in sequence according to the sequence of the priorities of the plurality of sub-data streams from high to low.
From the above, it can be seen that: in the above embodiment of the present invention, after determining that the first communication link between the source node and the destination node has a fault, the transmission paths corresponding to the data streams on the first communication link are obtained, and the transmission paths corresponding to the multiple sub-data streams on the first communication link are sent to the source node, so that the source node can transmit the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively. In the embodiment of the invention, the data stream on the first communication link is transmitted through the transmission paths corresponding to the plurality of sub-data streams respectively, so that the total amount of the data stream on each transmission path can be controlled within the available bandwidth of the transmission path, and the transmission path corresponding to the data stream on the first communication link is prevented from overload operation in the process of transmitting the data stream when the first communication link fails, thereby ensuring the effectiveness of data stream transmission among different data centers in an interconnected network system.
It should be apparent to those skilled in the art that embodiments of the present invention may be provided as a method, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all changes and modifications that fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (4)

1. A method of regulating flow, the method comprising:
after determining that a first communication link between a source node and a destination node fails, acquiring a data stream on the first communication link, and dividing the data stream according to a quintuple of the data stream to obtain a plurality of sub-data streams, wherein the quintuple comprises a source IP address, a source port, a destination IP address, a destination port and a transport layer protocol, and triples or quadruplets or quintuples of any sub-data stream are the same;
acquiring transmission paths corresponding to the plurality of sub-data streams respectively;
a transmission path corresponding to any sub-data stream of the multiple sub-data streams is a first type transmission path or a second type transmission path, the first type transmission path includes a communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node;
transmitting the transmission paths corresponding to the multiple sub-data streams to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams respectively;
determining a transmission path corresponding to any sub-data stream by the following method:
according to available bandwidths of a plurality of transmission paths from the source node to the destination node, selecting at least one alternative transmission path with an available bandwidth larger than or equal to a first threshold from the plurality of transmission paths, and determining an alternative transmission path with a highest priority in the at least one alternative transmission path as a transmission path corresponding to any sub-data stream, wherein the first threshold is determined according to the flow of any sub-data stream;
wherein the available bandwidth of the transmission path is a minimum available bandwidth of available bandwidths of at least one communication link included in the transmission path.
2. The method of claim 1, wherein the transmission paths corresponding to the sub-data streams are determined by:
and determining transmission paths corresponding to the plurality of sub-data streams for the plurality of sub-data streams in sequence according to the sequence from high priority to low priority of the plurality of sub-data streams.
3. A flow regulating device, comprising:
an obtaining module, configured to obtain a data stream on a first communication link after determining that a first communication link between a source node and a destination node is faulty, and divide the data stream according to a quintuple of the data stream to obtain multiple sub-data streams, where the quintuple includes a source IP address, a source port, a destination IP address, a destination port, and a transport layer protocol, and a triplet, a quadruplet, or a quintuple of any one of the sub-data streams is the same;
acquiring transmission paths corresponding to the plurality of sub-data streams respectively;
a transmission path corresponding to any sub-data stream of the multiple sub-data streams is a first type transmission path or a second type transmission path, the first type transmission path includes a communication link between the source node and the destination node, and the second type transmission path includes two or more communication links between the source node, one or more intermediate nodes, and the destination node;
a processing module, configured to send transmission paths corresponding to multiple sub-data streams to the source node, so that the source node transmits the multiple sub-data streams to the destination node through the transmission paths corresponding to the multiple sub-data streams, respectively;
the obtaining module determines a transmission path corresponding to any sub-data stream by the following method:
according to available bandwidths of a plurality of transmission paths from the source node to the destination node, selecting at least one alternative transmission path with an available bandwidth larger than or equal to a first threshold from the plurality of transmission paths, and determining an alternative transmission path with a highest priority in the at least one alternative transmission path as a transmission path corresponding to any sub-data stream, wherein the first threshold is determined according to the flow of any sub-data stream;
wherein the available bandwidth of the transmission path is a minimum available bandwidth of available bandwidths of at least one communication link included in the transmission path.
4. The apparatus of claim 3, wherein the obtaining module determines the transmission paths corresponding to the sub-data streams respectively by:
and determining transmission paths corresponding to the plurality of sub-data streams for the plurality of sub-data streams in sequence according to the sequence of the priorities of the plurality of sub-data streams from high to low.
CN201811112942.3A 2018-09-25 2018-09-25 Flow regulation and control method and device Active CN109218213B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811112942.3A CN109218213B (en) 2018-09-25 2018-09-25 Flow regulation and control method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811112942.3A CN109218213B (en) 2018-09-25 2018-09-25 Flow regulation and control method and device

Publications (2)

Publication Number Publication Date
CN109218213A CN109218213A (en) 2019-01-15
CN109218213B true CN109218213B (en) 2022-09-16

Family

ID=64984610

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811112942.3A Active CN109218213B (en) 2018-09-25 2018-09-25 Flow regulation and control method and device

Country Status (1)

Country Link
CN (1) CN109218213B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111315038B (en) * 2020-02-14 2022-03-01 腾讯科技(深圳)有限公司 Data transmission method and device, electronic equipment and storage medium
CN111343093B (en) * 2020-02-28 2021-07-09 腾讯科技(深圳)有限公司 Service data transmission method and device
CN113556285B (en) * 2021-07-21 2022-08-23 中国联合网络通信集团有限公司 Data transmission method and device
CN114422623B (en) * 2022-01-17 2022-11-18 山西省信息通信网络技术保障中心 Method and device for identifying abnormal traffic of Internet of vehicles based on instruction sequence
CN116471225B (en) * 2023-06-12 2023-08-18 中仪英斯泰克科技有限公司 Multicast stream transmission path optimization method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223671A (en) * 2010-04-15 2011-10-19 华为技术有限公司 Method and communication equipment for data transmission in wireless multihop network
CN106685822A (en) * 2015-11-11 2017-05-17 富士通株式会社 Route determination method and device
CN107682258A (en) * 2017-09-27 2018-02-09 北京邮电大学 A kind of multi-path network transmission method and device based on virtualization
CN108183856A (en) * 2016-12-08 2018-06-19 中兴通讯股份有限公司 A kind of method for routing foundation and device
CN108199955A (en) * 2016-12-08 2018-06-22 中兴通讯股份有限公司 A kind of method for routing foundation and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223671A (en) * 2010-04-15 2011-10-19 华为技术有限公司 Method and communication equipment for data transmission in wireless multihop network
CN106685822A (en) * 2015-11-11 2017-05-17 富士通株式会社 Route determination method and device
CN108183856A (en) * 2016-12-08 2018-06-19 中兴通讯股份有限公司 A kind of method for routing foundation and device
CN108199955A (en) * 2016-12-08 2018-06-22 中兴通讯股份有限公司 A kind of method for routing foundation and device
CN107682258A (en) * 2017-09-27 2018-02-09 北京邮电大学 A kind of multi-path network transmission method and device based on virtualization

Also Published As

Publication number Publication date
CN109218213A (en) 2019-01-15

Similar Documents

Publication Publication Date Title
CN109218213B (en) Flow regulation and control method and device
US10949233B2 (en) Optimized virtual network function service chaining with hardware acceleration
DE112018008119T5 (en) Modifying a resource allocation or strategy in response to control information from a virtual network function
CN110233798B (en) Data processing method, device and system
CN106411558B (en) Method and system for limiting data flow
US10541901B2 (en) Methods, systems and computer readable media for optimizing placement of virtual network visibility components
US20160352815A1 (en) Data Distribution Based on Network Information
US9537785B2 (en) Link aggregation group (LAG) link allocation
Zheng et al. Sentinel: Failure recovery in centralized traffic engineering
US11507487B2 (en) Control of a computing system to perform network fabric benchmark measurements
CN108476175B (en) Transfer SDN traffic engineering method and system using dual variables
CN116389365B (en) Switch data processing method and system
CN109088822B (en) Data flow forwarding method, device, system, computer equipment and storage medium
CN111817959A (en) Network path management method and device, SDN controller and readable storage medium
WO2017024965A1 (en) Method and system for limiting data traffic
CN116074204A (en) Routing method, routing computing device, electronic device, and computer storage medium
CN108737455B (en) Network service identification device and method
US20150372895A1 (en) Proactive Change of Communication Models
CN111901237B (en) Source routing method and system, related device and computer readable storage medium
CN112217727A (en) Multi-metric-dimension routing method and device, computer equipment and storage medium
KR101813165B1 (en) Adaptive control plane management method for software defined network and apparatus thereof
US20190334811A1 (en) Priority adjustments for election processes of routers
KR102579474B1 (en) Method and apparatus for network load balancing
CN113542149B (en) Network traffic load sharing method, storage medium, device and system
CN117544513B (en) Novel Internet of things customized service providing method and device based on fog resources

Legal Events

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