WO2018171351A1 - 一种流量控制的方法及节点 - Google Patents

一种流量控制的方法及节点 Download PDF

Info

Publication number
WO2018171351A1
WO2018171351A1 PCT/CN2018/075447 CN2018075447W WO2018171351A1 WO 2018171351 A1 WO2018171351 A1 WO 2018171351A1 CN 2018075447 W CN2018075447 W CN 2018075447W WO 2018171351 A1 WO2018171351 A1 WO 2018171351A1
Authority
WO
WIPO (PCT)
Prior art keywords
delay
packet
congestion
node
source node
Prior art date
Application number
PCT/CN2018/075447
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 华为技术有限公司
Priority to EP18770456.4A priority Critical patent/EP3588878A4/en
Priority to JP2019551981A priority patent/JP2020510367A/ja
Publication of WO2018171351A1 publication Critical patent/WO2018171351A1/zh
Priority to US16/577,523 priority patent/US20200014628A1/en

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
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • 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/11Identifying congestion
    • H04L47/115Identifying congestion using a dedicated packet
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/267Flow control; Congestion control using explicit feedback to the source, e.g. choke packets sent by the destination endpoint

Definitions

  • the present application relates to the field of communications technologies, and in particular, to a method and a node for flow control.
  • the end-to-end flow control method mainly determines the congestion based on the current delay and the packet loss rate, and then performs traffic control to cancel the congestion.
  • This type of traffic control has a large impact on the performance of the delay-sensitive service.
  • the CA service has a high latency requirement. If the delay is longer than tens of milliseconds, the control congestion delay is easily exceeded. The tolerance value of the delay sensitive service will result in a negative gain in the CA service.
  • the traffic control mode can only determine the congestion state based on the current delay. Therefore, the current traffic control mode cannot predict the congestion state in advance, so traffic control cannot be performed in advance, and flow control cannot be guaranteed.
  • the timeliness of the current flow control method does not relieve the congestion phenomenon in time, and the flow control delay is prone to occur, resulting in a large congestion delay or a serious packet loss.
  • the present application provides a method and a node for the flow control, which can solve the problem of serious congestion caused by end-to-end flow control lag in the prior art.
  • the first aspect of the present application provides a method for flow control, which can be used in a communication device or a communication system.
  • each node in the present application may be a functional module in the communication device, and the present application is used for Controlling flow control between different functional modules within the same communication device; when used for communication devices, each node in the present application may be an independent communication device, and the present application is for controlling between different communication devices in the same communication system.
  • Flow control may include:
  • the control node acquires a delay prediction value of the service packet sent by the source node to the destination node after the current time, and then the control node determines the current traffic transmission congestion according to the change trend of the packet delay and the delay prediction value. And detecting, by the detection result, the congestion detection result is sent to the source node, where the congestion detection result is used by the source node to reduce a sending rate of the service packet sent by the source node when determining that the congestion detection result is congested, where The change trend of the packet delay corresponds to the change of the congestion duration.
  • the existing mechanism it is only possible to determine whether the current traffic transmission is in a congested state according to the current traffic transmission, but cannot predict the congestion state in the future, and the packet loss phenomenon is prone to delay-sensitive services, and the existing mechanism
  • the present application is based on the predicted value of the delay of the service packet, and performs congestion detection according to the trend of the packet delay, and can predict the congestion state in advance, so that the source node can send the service packet at the source in advance. Dynamic control is performed, so that the traffic can be controlled in time by controlling the traffic in advance, and the probability of packet loss can be effectively reduced.
  • the change trend of the packet delay is represented by a delay variation curve
  • the delay prediction value of the service packet is obtained according to a delay variation curve in the current prediction period, and the delay variation in the current prediction period is obtained.
  • the curve is obtained according to a transmission time of the N detection packets and a reception time of the N detection packets, where the N detection packets are sent by the source node to the destination node in a current prediction period, where N is a positive integer.
  • the control node After the control node obtains the delay prediction value of the service packet sent after the current time, the control node calculates the packet delay according to the obtained N detection packets, and then obtains a delay variation curve according to the packet delay.
  • the packet delay of the N probe packets may be obtained, and a delay profile for indicating a change trend of the packet delay is obtained according to a packet delay and a fitting algorithm of the N probe packets. At least one delay prediction value is obtained according to the current delay and delay profile.
  • the control node obtains the predicted value of the delay calculated by the destination node according to the delay variation curve and the packet delay from the destination node.
  • the delay prediction value is obtained according to the current delay and the obtained delay curve.
  • the delay variation curve can be used for the current congestion detection period, and can also be used for at least one congestion detection period, or only for the current congestion detection period, so as to ensure the time used during the entire congestion detection period.
  • the delay curve is closest to the real traffic transmission state, and the delay prediction value predicted by the delay variation curve is correspondingly more accurate, and the congestion detection period can also be dynamically adjusted, which is not limited in this application.
  • the current time is t
  • the method further includes:
  • the control node predicts, according to the delay variation curve, a time delay prediction value of the source node at (t+ ⁇ t), and a time when the ⁇ t is t and then sends a probe packet, and ⁇ t is less than or equal to a preset threshold.
  • the congestion detection result is further used to indicate that when the source node determines that the current traffic transmission is not congested, according to the current rate at which the source node sends the service packet and the delay prediction value increases. The rate at which the source node sends the service packet.
  • control node may also perform congestion detection based on the switching of the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet, the congestion detection of the control node, and the adjustment frequency of the transmission rate of the service packet.
  • the flow control mode uniquely corresponds to the transmission frequency of the detection packet, the congestion detection of the control node, and the adjustment frequency of the transmission rate of the service packet.
  • Three functional modules can be separately set in the system, and then several gradient flow control modes are set according to the current congestion degree or the traffic transmission state, so that the control node can dynamically switch between the flow control modes at various levels.
  • the control node uses the first flow control mode to detect congestion of the current traffic transmission.
  • the control node uses the second flow control mode to detect congestion of the current traffic transmission.
  • a frequency conversion method based on analyzing characteristics such as traffic, congestion, and processor occupancy, it is possible to reduce congestion control execution frequency during periods of time when congestion control is not required (such as when there is no congestion or no traffic), thereby reducing congestion.
  • the impact of detection and flow control on device forwarding performance and processor performance, and through this frequency conversion approach can accommodate long-term, continuous congestion detection.
  • a second aspect of the present application provides a method for flow control, the method comprising:
  • the source node sends N probe packets to the destination node in the prediction period, where N is a positive integer, and the N probe packets are used by the destination node or the control node to predict a change trend of the packet delay, and the packet delay trend is changed. Corresponding to changes in congestion duration;
  • the transceiver module 1101 sends N probe packets to the destination node in the prediction period, and the N probe packets are used by the destination node or the control node to predict the trend of the packet delay, so that After receiving the congestion detection result sent by the control node 100, the current traffic transmission may be pre-controlled according to the congestion detection result, so that the transmission rate of the service packet can be dynamically controlled at the source in advance, so that the traffic is controlled in advance.
  • the method can control the traffic in time, and can effectively reduce the probability of packet loss.
  • the change trend of the packet delay is represented by a delay variation curve, and the delay prediction value of the service packet is obtained according to a delay variation curve in the current prediction period, and the delay variation in the current prediction period is obtained.
  • the curve is obtained based on the transmission timing of the N probe packets and the reception timing of the N probe packets.
  • the source node may send the transmission time information of the N detection packets to the control node, so that the control node may calculate the packet delay, and may also forward the transmission time information of the N detection packets to the control node through the destination node, for the control node.
  • the control node To calculate the packet delay, or to calculate the packet delay by the destination node, send the packet delay to the control node, or the destination node can further calculate the delay curve and even calculate after calculating the packet delay.
  • the control node After the delay prediction value is sent out, the control node is sent to the control node, so that the control node can predict the congestion state of the Acura time after the current time according to the obtained delay prediction value and the delay variation curve, thereby achieving the purpose of controlling the traffic in advance.
  • the transmission frequency of the N probe packets is fixed frequency or frequency conversion.
  • the N probe packets are transmitted according to at least one of traffic flow, congestion degree of traffic transmission, and system load.
  • the source node may also perform congestion detection and flow control based on the switching of the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet, the congestion detection of the control node, and the adjustment frequency of the transmission rate of the service packet, which may be in the system.
  • Three functional modules are respectively set, and then several gradient flow control modes are set according to the current congestion degree or the traffic transmission state, so that the source node can dynamically switch between the flow control modes at various levels.
  • the flow control mode uniquely corresponds to a transmission frequency of the detection packet and an adjustment frequency of the transmission rate of the service packet;
  • the source node When the congestion detection result is non-congested, the source node sends the probe packet and adjusts the transmission rate of the service packet by using the first flow control mode;
  • the source node sends the probe packet and adjusts the transmission rate of the service packet by using the second flow control mode.
  • the transmission frequency of the sounding packet is f1 in the prediction period
  • the frequency of the delay prediction value of the service packet based on the N sounding packets is f2, where f1>f2, f1 and f2 Both are positive numbers.
  • a third aspect of the present application provides a control node for flow control having a function of implementing a method corresponding to the flow control provided by the above first aspect.
  • the functions may be implemented by hardware or by corresponding software implemented by hardware.
  • the hardware or software includes one or more modules corresponding to the functions described above, which may be software and/or hardware.
  • control node includes:
  • a transceiver module configured to acquire a delay prediction value of a service packet sent by the source node to the destination node after the current time
  • a processing module configured to determine a congestion detection result of the current traffic transmission according to the change trend of the packet delay and the predicted delay value obtained by the transceiver module, and send the congestion detection result to the source node, where The congestion detection result is used by the source node to reduce the transmission rate of the service packet sent by the source node when the congestion detection result is determined to be congested, wherein the change trend of the packet delay corresponds to the change of the congestion duration.
  • the change trend of the packet delay is represented by a delay variation curve
  • the delay prediction value of the service packet is obtained according to a delay variation curve in a current prediction period
  • the delay variation curve in the current prediction period is according to N.
  • the transmission time of the detection packet and the reception time of the N detection packets are obtained, and the N detection packets are sent by the source node to the destination node in a current prediction period, where N is a positive integer.
  • the processing module is further configured to:
  • the packet delay of the N probe packets is obtained by the transceiver module, and a delay profile for indicating a change trend of the packet delay is obtained according to a packet delay and a fitting algorithm of the N probe packets.
  • the processing module is further configured to:
  • control node controls the traffic according to the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet and the adjustment frequency of the transmission rate of the service packet; the control control node further includes a detection module.
  • the detection module is used to:
  • the first traffic control mode is used to detect congestion of the current traffic transmission.
  • the second traffic control mode is used to detect congestion of the current traffic transmission.
  • control node includes:
  • At least one processor, memory and transceiver At least one processor, memory and transceiver
  • the memory is used to store program code
  • the processor is configured to invoke program code in the memory to perform the following operations:
  • the source node reduces the sending rate of the service packet sent by the source node when the congestion detection result is determined to be congested, wherein the change trend of the packet delay corresponds to the change of the congestion duration.
  • a fourth aspect of the present application provides a source node for flow control having a function of implementing a method corresponding to the flow control provided by the second aspect described above.
  • the functions may be implemented by hardware or by corresponding software implemented by hardware.
  • the hardware or software includes one or more modules corresponding to the functions described above, which may be software and/or hardware.
  • the source node includes:
  • a transceiver module configured to send N probe packets to the destination node in a prediction period, where N is a positive integer, and the N probe packets are used by the destination node or the control node to predict a trend of packet delay, the packet delay
  • the trend of change corresponds to the change in congestion duration
  • the processing module is configured to: when the congestion detection result is congested, reduce a rate at which the source node sends a service packet, where the congestion detection result is changed by the control node according to a packet delay trend and a source after the obtained current time The delay prediction value of the service packet sent by the node to the destination node is determined.
  • the change trend of the packet delay is represented by a delay variation curve
  • the delay prediction value of the service packet is obtained according to a delay variation curve in a current prediction period
  • the delay variation curve in the current prediction period is determined according to the The transmission time of the N probe packets and the reception timing of the N probe packets are obtained.
  • the transmission frequency of the N detection packets is a fixed frequency or a frequency conversion.
  • the N probe packets are transmitted according to at least one of traffic flow, congestion degree of traffic transmission, and system load.
  • the source node controls the traffic according to the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet and the adjustment frequency of the transmission rate of the service packet;
  • the transceiver module is specifically configured to:
  • the first flow control mode is used to send the probe packet and adjust the transmission rate of the service packet;
  • the second flow control mode is used to send the probe packet and adjust the transmission rate of the service packet.
  • the sending frequency of the sounding packet is f1 in the prediction period, and the frequency of the delay prediction value of the service packet based on the N sounding packets is f2, where f1>f2, f1 and f2 are positive number.
  • the source node includes:
  • At least one processor, memory and transceiver At least one processor, memory and transceiver
  • the memory is used to store program code
  • the processor is configured to invoke program code in the memory to perform the following operations:
  • N probe packets to the destination node in a prediction period, where N is a positive integer, and the N probe packets are used by the destination node or the control node to predict a trend of packet delay, the packet delay
  • the change trend corresponds to a change in congestion duration; receiving a congestion detection result sent by the control node;
  • a fifth aspect of the present application provides a communication system having a function of a method of implementing the flow control described in the above first aspect and second aspect.
  • the functions may be implemented by hardware or by corresponding software implemented by hardware.
  • the hardware or software includes one or more modules corresponding to the functions described above, which may be software and/or hardware.
  • the communication system includes:
  • the destination node, the control node of the third aspect, and the source node of the fourth aspect are the destination node, the control node of the third aspect, and the source node of the fourth aspect.
  • Yet another aspect of the present application provides a computer readable storage medium having instructions stored therein that, when executed on a computer, cause the computer to perform the methods described in the above aspects.
  • the application is based on the predicted value of the delay of the service packet, and performs congestion detection according to the trend of the packet delay, and can predict the congestion state in advance, so that the source node can advance in advance.
  • the source dynamically controls the sending rate of the service packet, so that the traffic can be controlled in time by controlling the traffic in advance, and the probability of packet loss can be effectively reduced.
  • FIG. 1 is a schematic diagram of a network topology of a communication system according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of flow control in an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of a delay variation curve in an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another flow of flow control according to an embodiment of the present invention.
  • FIG. 6 is another schematic flowchart of flow control in an embodiment of the present invention.
  • FIG. 7 is another schematic flowchart of flow control in an embodiment of the present invention.
  • FIG. 8 is another schematic flowchart of flow control according to an embodiment of the present invention.
  • FIG. 9 is a schematic diagram of a functional module of a frequency control mode variable frequency switching according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of a control node used for flow control according to an embodiment of the present invention.
  • FIG. 11 is a schematic diagram of a source node for flow control according to an embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of a physical device that performs flow control according to an embodiment of the present invention.
  • the terms “comprises” and “comprises” and “the” and “the” are intended to cover a non-exclusive inclusion, for example, a process, method, system, product, or device that comprises a series of steps or modules is not necessarily limited to Those steps or modules, but may include other steps or modules not explicitly listed or inherent to such processes, methods, products or devices, the division of the modules presented herein is merely a logical division. There may be additional divisions in the implementation of the actual application, for example, multiple modules may be combined or integrated into another system, or some features may be ignored, or not executed, and the displayed or discussed mutual coupling.
  • the direct coupling or the communication connection may be through some interfaces, and the indirect coupling or communication connection between the modules may be electrical or the like, which is not limited herein.
  • the modules or sub-modules described as separate components may or may not be physically separated, may not be physical modules, or may be distributed to multiple circuit modules, and some or all of them may be selected according to actual needs. Modules are used to achieve the objectives of the present application.
  • FIG. 1 is a schematic diagram of a network topology structure, where a source node refers to a transmission node that transmits data packets (including a probe packet and a service packet), and is also a transmission node that performs flow control.
  • a destination node is a transport node that receives packets from a source node.
  • a control node refers to a congestion detection node based on delay prediction, which can detect whether a transmission link from a source node to a destination node is in a congested state, and its deployment location is not limited, and can be deployed in one of the following situations: Independently deployed, deployed on the source node, deployed on the destination node, deployed in the transmission network between the source node and the destination node, and deployed on the control node that can maintain the topology of the network.
  • the source node sends the probe packet to the destination node through the network.
  • the probe packet can be used by the control node or the destination node to predict the delay prediction value of the service packet at some time after the current time, and then the control node obtains the time according to the acquisition.
  • the predicted value is used to perform congestion detection on the current congestion state of the transmission link, and the congestion detection result is sent to the source node, so that the source node can dynamically control the transmission rate of the service packet according to the congestion detection result, thereby dynamically controlling the traffic. transmission.
  • the present application mainly provides the following technical solutions:
  • Delay prediction based on the delay sample information obtained by the delay detection frame, estimating the future short-term delay value, detecting the congestion state based on the predicted delay prediction value, and performing congestion control in advance, thereby effectively avoiding congestion and solving the transmission congestion scenario.
  • Congestion detection and flow control lag affect delay-sensitive business performance issues.
  • the detection packet may be further transmitted based on analyzing characteristics such as traffic, congestion, and processor occupancy, and the congestion control execution frequency is reduced during a period in which congestion control is not required (for example, when there is no congestion or no service). Thereby reducing the impact of congestion control on device forwarding performance and processor performance.
  • each node in the present application may be a functional module in the communication device.
  • the application is used to control the flow control between different functional modules in the same communication device; when used in the communication device, each node in the present application may be an independent communication device, and the application is used to control the same communication system.
  • Flow control between different communication devices may include:
  • the source node sends N probe packets to the destination node in the prediction period.
  • the N is a positive integer, and the N detection packets are used by the destination node or the control node to predict a change trend of the packet delay, and the change trend of the packet delay corresponds to a change of the congestion duration.
  • the change trend of the packet delay may be represented by a delay variation curve, and the delay variation curve may refer to the graph shown in FIG. 3.
  • the time delay curve shown in FIG. 3 When the time delay curve shown in FIG. 3 is created, the sending time of each probe packet sent by the source node and the receiving time of each probe packet at the destination node are respectively obtained, and then according to the receiving time of the probe packet and the detection packet.
  • the packet delay of the probe packet can be obtained by sending the difference at the time of the transmission, and a total of N packet delays are obtained. Then, using the N packet delays as the delay samples, the fitting algorithm can be used to curve the N packet delays to obtain a delay variation curve as shown in FIG. 3, as shown in FIG.
  • the y(t) represents a delay prediction value
  • a0 and a1 are curve coefficients
  • t is a congestion time.
  • the deformation may be performed based on the formula, which is not limited in the present application.
  • the destination node receives N probe packets sent by the source node, and calculates N packet delays according to the N probe packets.
  • the control node acquires a delay prediction value of the service packet sent by the source node to the destination node after the current time.
  • the delay prediction value of the service packet is obtained according to the delay variation curve in the current prediction period, and the delay variation curve in the current prediction period is obtained according to the transmission time of the N detection packets and the reception time of the N detection packets.
  • the N probe packets are sent by the source node to the destination node in a current prediction period, where N is a positive integer.
  • the control node determines a congestion detection result of the current traffic transmission according to the change trend of the packet delay and the predicted value of the delay.
  • a congestion threshold may be set, and the value of the congestion threshold is not limited in this application.
  • the control node performs congestion detection, if the predicted value of the delay is not less than the congestion threshold, it may be determined that the current transmission state between the source node and the destination node is congestion, and vice versa.
  • the control node sends the congestion detection result to the source node.
  • the congestion detection result is used by the source node to reduce a sending rate of the service packet sent by the source node when determining that the congestion detection result is congestion.
  • the source node receives the congestion detection result sent by the control node, and reduces the rate at which the source node sends the service packet when the congestion detection result is congestion.
  • the existing mechanism it is only possible to determine whether the current traffic transmission is in a congested state according to the current traffic transmission, but cannot predict the congestion state in the future, and the packet loss phenomenon is prone to delay-sensitive services, and the existing mechanism
  • the present application is based on the predicted value of the delay of the service packet, and performs congestion detection according to the trend of the packet delay, and can predict the congestion state in advance, so that the source node can send the service packet at the source in advance. Dynamic control is performed, so that the traffic can be controlled in time by controlling the traffic in advance, and the probability of packet loss can be effectively reduced.
  • the congestion detection result is further used to indicate that the source node increases the source node according to a current rate at which the source node sends a service packet and the delay prediction value when determining that the current traffic transmission is not congested.
  • the rate at which a service packet is sent is further used to indicate that the source node increases the source node according to a current rate at which the source node sends a service packet and the delay prediction value when determining that the current traffic transmission is not congested.
  • the manner in which the control node obtains the predicted value of the delay is mainly divided into the following types:
  • the control node calculates N packet delays of N detection packets, and obtains a delay variation curve according to N packet delays.
  • the control node acquires the transmission time information of the N detection packets from the source node, and acquires the reception time information of the N detection packets from the destination node. For details, refer to FIG. 4 .
  • the control node acquires the transmission time information of the N detection packets and the reception time information of the N detection packets from the destination node. For details, refer to FIG. 5.
  • the control node After obtaining the transmission time and the receiving time of the N detection packets by (a) or (b), the control node calculates N packet delays, and then performs the curve fitting by using the fitting algorithm to obtain the curve delay. a delay profile for indicating a change trend of the packet delay, and then the control node may predict, according to the delay profile, a delay prediction value of the source node transmitting the packet at (t+ ⁇ t), where ⁇ t is The time at which the probe packet is transmitted after t, ⁇ t is less than or equal to the preset threshold.
  • the value of ⁇ t may be on the order of milliseconds.
  • the delay prediction value may be further defined to ensure that the delay prediction value finally selected for the congestion prediction does not exceed the delay prediction value obtained according to the delay variation curve, for example, the delay prediction value selected for the congestion prediction.
  • Delay1 pred Max(Delay2 pred, 0)
  • Delay2 pred is the delay prediction value obtained from the delay profile.
  • the delay variation curve can be used for the current congestion detection period, and can also be used for at least one congestion detection period, or only for the current congestion detection period, so as to ensure the time used during the entire congestion detection period.
  • the delay curve is closest to the real traffic transmission state, and the delay prediction value predicted by the delay variation curve is correspondingly more accurate, and the congestion detection period can also be dynamically adjusted, which is not limited in this application.
  • the destination node calculates the N packet delays of the N detection packets, and then the control node obtains the delay variation curve according to the N packet delays. For details, refer to FIG. 6.
  • the destination node obtains the transmission time information of the N detection packets from the source node, and then calculates N packet delays according to the reception time information of the N detection packets and the transmission time information of the N detection packets, and then calculates The N packet delays sent are sent to the control node.
  • control node performs curve fitting on the N packet delays to obtain a delay variation curve, and the subsequent control node can calculate (t+ ⁇ t) the delay prediction value of the transmission packet according to the obtained delay variation curve. And performing congestion prediction based on the delay prediction value of the (t + ⁇ t) transmission packet.
  • the destination node calculates the N packet delays of the N detection packets and obtains the delay variation curve, and then the control node calculates the delay prediction value. For details, refer to FIG. 7.
  • the destination node obtains the transmission time information of the N detection packets from the source node, and then calculates N packet delays according to the reception time information of the N detection packets and the transmission time information of the N detection packets, and then N packet delays are used for curve fitting to obtain a time delay curve. Then, the destination node sends the obtained delay variation curve to the control node, so that the control node can calculate (t+ ⁇ t) the delay prediction value of the transmission packet according to the obtained delay variation curve, and based on the (t+ ⁇ t). The delay prediction value of the transmitted packet is used for congestion prediction.
  • the destination node calculates the N packet delays of the N detection packets, acquires the delay variation curve, calculates the delay prediction value according to the delay variation curve, and sends the obtained delay prediction value to the control node, specifically Refer to Figure 8.
  • the transmission frequency of the N detection packets may be a fixed frequency or a frequency conversion.
  • the frequency at which the control node performs congestion detection is also a fixed frequency or a frequency conversion.
  • considering frequent transmission of probe packets and performing congestion detection may increase system load in a short period of time, which may degrade system system performance, such as reducing hardware forwarding functions and processor performance. It is also possible to adaptively adjust the frequency of transmitting the probe packet and the congestion detection, in particular, according to any factor that affects system performance (including traffic flow, congestion of traffic transmission, system load, etc.) Variable frequency transmission, the gradient of the frequency conversion can be set according to the performance of the system or the traffic flow.
  • the flow control mode uniquely corresponds to the transmission frequency of the detection packet, the congestion detection by the control node, and the adjustment frequency of the transmission rate of the service packet.
  • Three functional modules can be separately set in the system, and then according to the current congestion degree or the traffic transmission state.
  • Several gradient flow control modes are set, so that the source node, the destination node and the control node can dynamically switch between the flow control modes at various levels.
  • the source node sends the probe packet and adjusts the transmission rate of the service packet by using the first flow control mode.
  • the source node sends the probe packet and adjusts the transmission rate of the service packet by using the second flow control mode.
  • the switching condition of the flow control mode may be periodic switching, or may be switched according to the current congestion detection result, or may be based on whether the congestion duration is higher than the first threshold, and whether the non-congestion duration is higher than the second.
  • the threshold, the transmission frequency of the service packet is higher than the third threshold, whether the occupancy rate of the processor is higher than the fourth threshold, or whether the delay trigger threshold is higher than the fifth threshold, and the like is not limited.
  • the second flow control mode may be switched to the first flow control mode.
  • the first flow control mode may be switched to the first Two flow control modes.
  • the frequency conversion method for analyzing characteristics such as service traffic, congestion, and processor occupancy it is possible to reduce congestion during a period in which congestion control is not required (for example, when there is no congestion or no service).
  • the execution frequency is controlled to reduce the impact of congestion detection and flow control on device forwarding performance and processor performance, and this frequency conversion method can adapt to long-term, continuous congestion detection.
  • the transmission frequency f1 1 of the sounding packet, the frequency f2 1 for performing the delay prediction, and the frequency f3 1 for performing the congestion detection based on the delay prediction value As shown in FIG. 9, in the first flow control mode, the transmission frequency f1 1 of the sounding packet, the frequency f2 1 for performing the delay prediction, and the frequency f3 1 for performing the congestion detection based on the delay prediction value; The transmission frequency f1 2 of the sounding packet, the frequency f2 2 for performing the delay prediction, and the frequency f3 2 for performing the congestion detection based on the delay prediction value, where f1 1 > f1 2 , f2 1 > f2 2 , f3 1 > f3 2 .
  • the sending frequency of the sounding packet is f1 in the prediction period
  • the frequency of the delay prediction value of the service packet based on the N sounding packets is f2, where f1>f2 Both f1 and f2 are positive numbers.
  • the present application is also applicable to carrier aggregation (English full name: Carrier Aggregation, English abbreviation: CA), dual connectivity (English full name: Dual Connectivity, English full name: DC) and other collaborative service packages.
  • congestion detection can also be performed based on the predicted delay value. For example, when it is detected that the transmission path of the primary station to the secondary station is congested, the primary station reduces or stops the traffic flow diverted to the secondary station; when detecting that the transmission path of the primary station to the secondary station is not congested, the primary station increases to the secondary station. The traffic of the station is diverted.
  • the present application can predict the congestion state in advance based on the predicted delay prediction value, and perform traffic control in advance, thereby effectively avoiding the occurrence of congestion, and in particular, improving the forwarding of delay sensitive services (such as CA). performance.
  • delay sensitive services such as CA
  • FIGS. 1 to 9 The various technical features appearing in the embodiments described in any of the above-mentioned FIGS. 1 to 9 are also applicable to the embodiments corresponding to FIG. 10 and FIG. 11 in the present application, and the subsequent similarities are not described again.
  • control node 100 for flow control, and the control node 100 includes:
  • the transceiver module 1001 is configured to obtain a delay prediction value of a service packet sent by the source node to the destination node after the current time;
  • the processing module 1002 is configured to determine a congestion detection result of the current traffic transmission according to the change trend of the packet delay and the delay prediction value obtained by the transceiver module 1001, and send the congestion detection result to the source node.
  • the congestion detection result is used by the source node to reduce the transmission rate of the service packet sent by the source node when the congestion detection result is determined to be congested, wherein the change trend of the packet delay corresponds to the change of the congestion duration.
  • the processing module 1002 performs congestion detection based on the delay prediction value of the service packet and according to the change trend of the packet delay, and can predict the congestion state in advance, so that the source node can advance in advance. Dynamically control the sending rate of the service packets at the source, so that the traffic can be controlled in time by controlling the traffic in advance, and the probability of packet loss can be effectively reduced.
  • the change trend of the packet delay is represented by a delay variation curve
  • the delay prediction value of the service packet is obtained according to a delay variation curve in a current prediction period
  • the delay variation curve in the current prediction period is according to N.
  • the transmission time of the detection packet and the reception time of the N detection packets are obtained, and the N detection packets are sent by the source node to the destination node in a current prediction period, where N is a positive integer.
  • processing module 1002 is further configured to: before the control node acquires the delay prediction value of the service packet sent after the current time:
  • the processing module 1002 is further configured to:
  • control node 100 controls the traffic according to the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet and the adjustment frequency of the transmission rate of the service packet; the control control node 100 further includes a detection module. 1003.
  • the detecting module 1003 is configured to:
  • the first traffic control mode is used to detect congestion of the current traffic transmission.
  • the second traffic control mode is used to detect congestion of the current traffic transmission.
  • the source node 110 includes:
  • the transceiver module 1101 is configured to send N probe packets to the destination node in a prediction period, where N is a positive integer, and the N probe packets are used by the destination node or the control node to predict a trend of packet delay, where the packet time is The trend of the change corresponds to the change of the congestion time;
  • the processing module 1102 is configured to: when the congestion detection result is congested, reduce a rate at which the source node sends a service packet, where the congestion detection result is changed by the control node according to a packet delay and a current time after the acquisition The delay prediction value of the service packet sent by the source node to the destination node is determined.
  • the transceiver module 1101 sends N probe packets to the destination node in the prediction period, and the N probe packets are used by the destination node or the control node to predict the trend of the packet delay, so that After receiving the congestion detection result sent by the control node 100, the current traffic transmission may be pre-controlled according to the congestion detection result, so that the transmission rate of the service packet can be dynamically controlled at the source in advance, so that the traffic is controlled in advance.
  • the method can control the traffic in time, and can effectively reduce the probability of packet loss.
  • the change trend of the packet delay is represented by a delay variation curve
  • the delay prediction value of the service packet is obtained according to a delay variation curve in a current prediction period
  • the delay variation curve in the current prediction period is determined according to the The transmission time of the N probe packets and the reception timing of the N probe packets are obtained.
  • the transmission frequency of the N detection packets is a fixed frequency or a frequency conversion.
  • the N probe packets are transmitted according to at least one of traffic flow, congestion degree of traffic transmission, and system load.
  • the source node controls the traffic according to the flow control mode, where the flow control mode uniquely corresponds to the transmission frequency of the detection packet and the adjustment frequency of the transmission rate of the service packet;
  • the transceiver module is specifically configured to:
  • the first flow control mode is used to send the probe packet and adjust the transmission rate of the service packet;
  • the second flow control mode is used to send the probe packet and adjust the transmission rate of the service packet.
  • the physical devices corresponding to all the transceiver modules may be transceivers, and the physical devices corresponding to all the processing modules may be processed.
  • Device Each of the devices shown in FIG. 10 and FIG. 11 may have a structure as shown in FIG. 12.
  • the processor and the transceiver in FIG. 12 implement the aforementioned corresponding device.
  • the device module, the transmitting module and the receiving module provide the same or similar functions, and the memory storage processor in FIG. 12 needs to call the program code when executing the above flow control method.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules is only a logical function division.
  • there may be another division manner for example, multiple modules or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or module, and may be electrical, mechanical or otherwise.
  • the modules described as separate components may or may not be physically separated.
  • the components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed to multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
  • the integrated modules, if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium.
  • the computer program product includes one or more computer instructions.
  • the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
  • the computer instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be from a website site, computer, server or data center Transfer to another website site, computer, server, or data center by wire (eg, coaxial cable, fiber optic, digital subscriber line (DSL), or wireless (eg, infrared, wireless, microwave, etc.).
  • wire eg, coaxial cable, fiber optic, digital subscriber line (DSL), or wireless (eg, infrared, wireless, microwave, etc.).
  • the computer readable storage medium can be any available media that can be stored by a computer or a data storage device such as a server, data center, or the like that includes one or more available media.
  • the usable medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (such as a solid state disk (SSD)).

Landscapes

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

Abstract

一种流量控制的方法及节点,本方法包括:由源节点发送N个探测包给目的节点,控制节点获取根据N个探测包得到的包时延的变化趋势,然后控制节点根据包时延的变化趋势,以及当前时刻之后源节点向目的节点发送的业务包的时延预测值,确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。通过采用本方案,能够提前对流量传输的拥塞进行预测,从而使得源节点能够提前进行流量控制,减少由于流量控制滞后导致拥塞严重的问题。

Description

一种流量控制的方法及节点
本申请要求于2017年3月22日提交中国专利局、申请号为“201710173783.7”、发明名称为“一种流量控制的方法及节点”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及的是一种流量控制的方法及节点。
背景技术
目前,为了解决端对端之间的流量传输的拥塞现象,端到端的流量控制方法主要基于当前时延和丢包率来判断拥塞情况,然后通过进行流量控制来解除拥塞。这种流量控制方式对时延敏感业务的性能影响较大,如:CA业务对时延要求很高,如果连续几十毫秒以上时间段的时延都比较大,控制拥塞时延极易超过时延敏感业务的容忍值,会导致CA业务存在负增益。
由于流量控制需要考虑时效性,流量控制方式只能基于当前时延来判断拥塞状态,所以,采用目前的流量控制方式由于无法提前预知拥塞状态,所以也无法提前进行流量控制,进而无法保证流量控制的及时性,采用目前的流量控制方式并不能及时的解除拥塞现象,容易出现流量控制滞后,导致拥塞时延比较大或丢包比较严重。
发明内容
本申请提供了一种流量控制的方法及节点,能够解决现有技术中端对端的流量控制滞后导致拥塞严重的问题。
本申请第一方面提供一种流量控制的方法,该方法可用于通信设备或者通信系统,用于通信设备时,本申请中的各节点可以是通信设备中的功能模块,本申请则是用于控制同一通信设备内部不同功能模块之间的流量控制;用于通信设备时,本申请中的各节点可以是独立的通信设备,本申请则是用于控制同一通信系统中的不同通信设备之间的流量控制。基于上述两种应用场景,所述方法可包括:
首先,控制节点获取当前时刻之后源节点向目的节点发送的业务包的时延预测值,然后,所述控制节点根据包时延的变化趋势和所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
现有机制中,由于只能根据当前的流量传输来判断当前的流量传输是否处于拥塞状态,但无法预测到未来时刻的拥塞状态,且针对时延敏感业务易出现丢包现象,与现有机制相比,本申请中,本申请基于业务包的时延预测值,并根据包时延的变化趋势进行拥塞检测,能够提前预测到拥塞状态,使得源节点能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
在一些可能的设计中,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周期内发送给所述目的节点,N为正整数。
在一些可能的设计中,获取时延预测值有多种途径,具体如下:
1、在所述控制节点获取当前时刻之后发送的业务包的时延预测值之前控制节点根据获取到的N个探测包计算出包时延,然后根据包时延得到一个时延变化曲线,具体可以所述N个探测包的包时延,根据所述N个探测包的包时延和拟合算法得到用于表示所述包时延的变化趋势的时延变化曲线。再根据当前的时延和时延变化曲线得到至少一个时延预测值。
2、控制节点从目的节点处获取目的节点根据时延变化曲线和包时延计算出的时延预测值。
3、控制节点从目的节点处获取目的节点计算出的时延变化曲线后,根据当前的时延和获取的时延变化曲线得到上述时延预测值。
可选的,该时延变化曲线可用于当前的拥塞检测周期,也可用于至少一个拥塞检测周期,也可仅用于当前的拥塞检测周期,这样可以保证整个拥塞检测周期内,所使用的时延变化曲线最接近真实的流量传输状态,那么通过时延变化曲线预测出的时延预测值也就相应更为准确,拥塞检测周期也可以动态的调整,具体本申请均不作限定。
在一些可能的设计中,当前时刻为t,所述方法还包括:
所述控制节点根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
在一些可能的设计中,所述拥塞检测结果还用于指示所述源节点在确定当前的流量传输不拥塞时,根据当前所述源节点发送业务包的速率和所述时延预测值增加所述源节点发送业务包的速率。
在一些可能的设计中,控制节点还可以基于流量控制模式的切换进行拥塞检测,所述流量控制模式唯一对应探测包的发送频率、控制节点进行拥塞检测、以及业务包的发送速率的调整频率,在系统中可以分别设置三种功能模块,然后根据当前的拥塞程度或者流量传输状态设置几个梯度的流量控制模式,使得控制节点能够在各级流量控制模式之间动态切换。
当所述拥塞检测结果为非拥塞时,所述控制节点采用第一流量控制模式来对当前的流量传输的拥塞进行检测。
当所述拥塞检测结果为拥塞时,所述控制节点采用第二流量控制模式对当前的流量传输的拥塞进行检测。通过基于分析业务流量、拥塞情况、处理器占用率等特征的变频方式,能够实现在不需要进行拥塞控制的时间段内(如非拥塞时或无业务时)降低拥塞控制执行频率,从而降低拥塞检测和流量控制对设备转发性能和处理器性能的影响,并且通过这种变频方式能够适应长期、持续的拥塞检测。
本申请第二方面提供一种流量控制的方法,所述方法包括:
源节点在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;
所述源节点接收所述控制节点发送的拥塞检测结果,在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化 趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
相较于现有技术,本申请提供的方案中,收发模块1101在预测周期内向目的节点发送N个探测包,该N个探测包用于目的节点或控制节点预测包时延的变化趋势,使得在接收到控制节点100发送的拥塞检测结果后,可以根据该拥塞检测结果提前对当前的流量传输进行预先控制,从而能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
在一些可能的设计中,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据所述N个探测包的发送时刻和所述N个探测包的接收时刻得到。源节点可以将N个探测包的发送时刻信息发送给控制节点,以供控制节点去计算包时延,还可以将N个探测包的发送时刻信息通过目的节点转发给控制节点,以供控制节点去计算包时延,或者由目的节点去计算包时延后,将包时延发给控制节点,或者目的节点还可以在计算出包时延后,进一步的计算出时延变化曲线、甚至计算出时延预测值后,一同发送给控制节点,使得控制节点能够根据获取的时延预测值和时延变化曲线去预测当前时刻之后的,讴歌时刻的拥塞状态,从而达到提前控制流量的目的。
在一些可能的设计中,所述N个探测包的发送频率为定频或变频。
可选的,所述N个探测包根据业务流量、流量传输的拥塞程度和系统负荷中的至少一项变频发送。
源节点还可以基于流量控制模式的切换进行拥塞检测和流量控制,所述流量控制模式唯一对应探测包的发送频率、控制节点进行拥塞检测、以及业务包的发送速率的调整频率,在系统中可以分别设置三种功能模块,然后根据当前的拥塞程度或者流量传输状态设置几个梯度的流量控制模式,使得源节点能够在各级流量控制模式之间动态切换。
其中,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;
当所述拥塞检测结果为非拥塞时,所述源节点采用第一流量控制模式发送探测包和调整业务包的发送速率;
当所述拥塞检测结果为拥塞时,所述源节点采用第二流量控制模式发送探测包和调整业务包的发送速率。
可见,通过基于分析业务流量、拥塞情况、处理器占用率等特征的变频方式,能够实现在不需要进行拥塞控制的时间段内(如非拥塞时或无业务时)降低拥塞控制执行频率,从而降低拥塞检测和流量控制对设备转发性能和处理器性能的影响,并且通过这种变频方式能够适应长期、持续的拥塞检测。
在一些可能的设计中,设在所述预测周期内探测包的发送频率为f1,基于所述N个探测包预测业务包的时延预测值的频率为f2,其中f1>f2,f1和f2均为正数。
本申请第三方面提供一种用于流量控制的控制节点,具有实现对应于上述第一方面提供的流量控制的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一种可能的设计中,所述控制节点包括:
收发模块,用于获取当前时刻之后源节点向目的节点发送的业务包的时延预测值;
处理模块,用于根据包时延的变化趋势和所述收发模块获取的所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
可选的,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周期内发送给所述目的节点,N为正整数。
可选的,所述处理模块在所述控制节点获取当前时刻之后发送的业务包的时延预测值之前,还用于:
通过所述收发模块获取所述N个探测包的包时延,根据所述N个探测包的包时延和拟合算法得到用于表示所述包时延的变化趋势的时延变化曲线。
可选的,当前时刻为t,所述处理模块还用于:
根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
可选的,所述控制节点基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述控制控制节点还包括检测模块,所述检测模块用于:
当所述拥塞检测结果为非拥塞时,采用第一流量控制模式对当前的流量传输的拥塞进行检测。
当所述拥塞检测结果为拥塞时,采用第二流量控制模式对当前的流量传输的拥塞进行检测。
一种可能的设计中,所述控制节点包括:
至少一个处理器、存储器和收发器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行以下操作:
通过所述收发器获取当前时刻之后源节点向目的节点发送的业务包的时延预测值;
根据包时延的变化趋势和所述收发模块获取的所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
本申请第四方面提供一种用于流量控制的源节点,具有实现对应于上述第二方面提供的流量控制的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一种可能的设计中,所述源节点包括:
收发模块,用于在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;
接收所述控制节点发送的拥塞检测结果;
处理模块用于在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
可选的,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据所述N个探测包的发送时刻和所述N个探测包的接收时刻得到。
可选的,所述N个探测包的发送频率为定频或变频。
可选的,所述N个探测包根据业务流量、流量传输的拥塞程度和系统负荷中的至少一项变频发送。
可选的,所述源节点基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述收发模块具体用于:
当所述拥塞检测结果为非拥塞时,采用第一流量控制模式发送探测包和调整业务包的发送速率;
当所述拥塞检测结果为拥塞时,采用第二流量控制模式发送探测包和调整业务包的发送速率。
可选的,设在所述预测周期内探测包的发送频率为f1,基于所述N个探测包预测业务包的时延预测值的频率为f2,其中f1>f2,f1和f2均为正数。
一种可能的设计中,所述源节点包括:
至少一个处理器、存储器和收发器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行以下操作:
通过所述收发器在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;接收所述控制节点发送的拥塞检测结果;
在所述收发器接收到的所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
本申请第五方面提供一种通信系统,具有实现上述第一方面和第二方面中所述的流量控制的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。所述通信系统包括:
目的节点、第三方面所述控制节点以及第四方面所述的源节点。
本申请的又一方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
相较于现有技术,本申请提供的方案中,本申请基于业务包的时延预测值,并根据包时延的变化趋势进行拥塞检测,能够提前预测到拥塞状态,使得源节点能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
附图说明
图1为本发明实施例中通信系统的一种网络拓扑示意图;
图2为本发明实施例中流量控制的一种流程示意图;
图3为本发明实施例中时延变化曲线的一种示意图;
图4为本发明实施例中流量控制的另一种流程示意图;
图5为本发明实施例中流量控制的另一种流程示意图;
图6为本发明实施例中流量控制的另一种流程示意图;
图7为本发明实施例中流量控制的另一种流程示意图;
图8为本发明实施例中流量控制的另一种流程示意图;
图9为本发明实施例中流量控制模式变频切换的一种功能模块示意图;
图10为本发明实施例中用于流量控制的控制节点的一种结构示意图;
图11为本发明实施例中用于流量控制的源节点的一种示意图;
图12为本发明实施例中执行流量控制的实体设备的一种结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本文中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本文中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请方案的目的。
本申请供了一种流量控制的方法及节点。图1为一种网络拓扑结构示意图,其中,源节点是指发送数据包(包括探测包和业务包)的传输节点,也是进行流量控制的传输节点。目的节点是指接收来自源节点的数据包的传输节点。控制节点则是指基于时延预测的拥塞检测节点,其可以检测从源节点到目的节点之间的传输链路是否处于拥塞状态,其部署位置不受限制,具体可以部署在以下情形之一:独立部署、部署于源节点、部署于目的节点、 部署于源节点与目的节点之间的传输网络以及部署于控制节点等能够对本网络拓扑进行维护的控制节点上。
图1中,源节点通过网络发送探测包至目的节点,这些探测包可用于控制节点或者目的节点预测出当前时刻之后的某些时刻的业务包的时延预测值,然后控制节点根据获取到时延预测值去对当前的传输链路的拥塞状态进行拥塞检测,并将拥塞检测结果发送给源节点,使得源节点可以根据拥塞检测结果来动态的控制业务包的发送速率,从而动态的控制流量传输。
为解决流量控制不及时导致的流量传输拥塞的问题,本申请主要提供以下技术方案:
基于时延探测帧获得的时延样本信息进行时延预测,估算未来短时间内时延值,基于预测的时延预测值检测拥塞状态,提前进行拥塞控制,从而有效避免拥塞,解决传输拥塞场景下拥塞检测和流量控制滞后影响时延敏感业务性能问题。
此外,还可进一步基于分析业务流量、拥塞情况、处理器占有率等特征变频发送探测包,在不需要进行拥塞控制的时间段内(如非拥塞时或无业务时)降低拥塞控制执行频率,从而降低拥塞控制对设备转发性能和处理器性能的影响。
请参照图1,以下对本申请提供一种流量控制的方法进行举例说明,该方法可用于通信设备或者通信系统,用于通信设备时,本申请中的各节点可以是通信设备中的功能模块,本申请则是用于控制同一通信设备内部不同功能模块之间的流量控制;用于通信设备时,本申请中的各节点可以是独立的通信设备,本申请则是用于控制同一通信系统中的不同通信设备之间的流量控制。基于上述两类应用场景,所述方法可包括:
101、源节点在预测周期内向目的节点发送N个探测包。
其中,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化。
可选的,在一种实施方式中,所述包时延的变化趋势可用时延变化曲线表示,时延变化曲线可参考图3所示的曲线图。在制作图3所示的时延变化曲线时,首先分别获取源节点发送每个探测包的发送时刻,以及每个探测包在目的节点端的接收时刻,再根据探测包的接收时刻与探测包的发送时刻做差即可得到该探测包的包时延,共得到N个包时延。然后以这N个包时延作为时延样本,可以采用拟合算法对这N个包时延进行曲线拟合,即可得到一个如图3所示的时延变化曲线,图3所示的线性变化曲线为:y(t)=a0*1+a1*t。其中,y(t)表示时延预测值,a0和a1为曲线系数,t为拥塞时间,在其他实施方式中,还可以基于该公式进行形变,具体本申请不作限定。
102、目的节点接收源节点发送的N个探测包,根据N个探测包计算N个包时延。
103、控制节点获取当前时刻之后源节点向目的节点发送的业务包的时延预测值。
那么所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周期内发送给所述目的节点,N为正整数。
104、控制节点根据包时延的变化趋势和所述时延预测值确定当前的流量传输的拥塞检测结果。
在一些实施方式中,可设置一个拥塞门限值,该拥塞门限值的取值本申请不作限定。 在控制节点在进行拥塞检测时,所时延预测值不小于该拥塞门限值,则可确定当前源节点到目的节点之间的流量传输状态为拥塞,反之,则为非拥塞。
105、控制节点将所述拥塞检测结果发送给所述源节点。
其中,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率。
106、源节点接收所述控制节点发送的拥塞检测结果,在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率。
现有机制中,由于只能根据当前的流量传输来判断当前的流量传输是否处于拥塞状态,但无法预测到未来时刻的拥塞状态,且针对时延敏感业务易出现丢包现象,与现有机制相比,本申请中,本申请基于业务包的时延预测值,并根据包时延的变化趋势进行拥塞检测,能够提前预测到拥塞状态,使得源节点能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
可选的,所述拥塞检测结果还用于指示所述源节点在确定当前的流量传输不拥塞时,根据当前所述源节点发送业务包的速率和所述时延预测值增加所述源节点发送业务包的速率。
可选的,在一些发明实施例中,控制节点获取时延预测值的方式主要分以下几种:
1、由控制节点计算出N个探测包的N个包时延、根据N个包时延得到时延变化曲线。
(a)控制节点从源节点获取N个探测包的发送时刻信息,从目的节点获取N个探测包的接收时刻信息,具体可参考图4。
(b)控制节点从目的节点获取N个探测包的发送时刻信息以及N个探测包的接收时刻信息,具体可参考图5。
控制节点在通过(a)或(b)获取N个探测包的发送时刻和接收时刻后,计算出N个包时延,然后将这N个包时延通过拟合算法进行曲线拟合,得到一条用于表示所述包时延的变化趋势的时延变化曲线,然后控制节点可根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
举例来说,在图3所示的时延变化曲线的基础之上,可以用上述公式y(t)=a0*1+a1*t计算出(t+Δt)发送包的时延预测值,在本申请中,Δt的取值可以为毫秒级。只要保证选取的Δt所计算出的时延预测值接近原时延变化曲线即可,只要不偏离原时延变化曲线即可。此外,还可以进一步限定时延预测值,保证最终选择用于拥塞预测的时延预测值不超过根据时延变化曲线得到的时延预测值,例如,所选择用于拥塞预测的时延预测值Delay1 pred=Max(Delay2 pred,0),Delay2 pred为根据时延变化曲线得到的时延预测值。
可选的,该时延变化曲线可用于当前的拥塞检测周期,也可用于至少一个拥塞检测周期,也可仅用于当前的拥塞检测周期,这样可以保证整个拥塞检测周期内,所使用的时延变化曲线最接近真实的流量传输状态,那么通过时延变化曲线预测出的时延预测值也就相应更为准确,拥塞检测周期也可以动态的调整,具体本申请均不作限定。
2、由目的节点计算出N个探测包的N个包时延、再由控制节点根据N个包时延得到时延变化曲线,具体可参考图6。
首先,目的节点从源节点获取N个探测包的发送时刻信息,然后根据自身接收这N个 探测包的接收时刻信息和N个探测包的发送时刻信息计算出N个包时延,再将计算出的N个包时延发送给控制节点。
随后,控制节点将这N个包时延进行曲线拟合,得到一条时延变化曲线,在后续控制节点即可根据得到的时延变化曲线去计算(t+Δt)发送包的时延预测值,并基于该(t+Δt)发送包的时延预测值进行拥塞预测。
3、由目的节点计算出N个探测包的N个包时延以及获取时延变化曲线,再由控制节点计算时延预测值,具体可参考图7。
首先,目的节点从源节点获取N个探测包的发送时刻信息,然后根据自身接收这N个探测包的接收时刻信息和N个探测包的发送时刻信息计算出N个包时延,再将这N个包时延进行曲线拟合,得到一条时延变化曲线。然后目的节点将得到的时延变化曲线发送给控制节点,使得控制节点即可根据得到的时延变化曲线去计算(t+Δt)发送包的时延预测值,并基于该(t+Δt)发送包的时延预测值进行拥塞预测。
4、由目的节点计算出N个探测包的N个包时延、获取时延变化曲线、根据时延变化曲线计算时延预测值,再将得到的时延预测值发给控制节点,具体可参考图8。
可选的,在一些发明实施例中,所述N个探测包的发送频率可为定频或变频,相应的,控制节点进行拥塞检测的频率也为定频或变频。
在一些实施方式中,考虑到频繁的发送探测包以及进行拥塞检测可能会在短时间内增加系统符负荷,会降低系统系统性能,例如降低硬件的转发功能进而处理器的性能。还可以对发送探测包和拥塞检测的频率进行自适应的动态调整,具体来说,可根据影响系统性能的任意因素(包括业务流量、流量传输的拥塞程度和系统负荷等)中的至少一项变频发送,变频的梯度可以根据系统的性能或者业务流量来设定。
例如可以设定基于流量控制模式对流量进行控制,并且动态的切换不同的流量控制模式。所述流量控制模式唯一对应探测包的发送频率、控制节点进行拥塞检测、以及业务包的发送速率的调整频率,在系统中可以分别设置三种功能模块,然后根据当前的拥塞程度或者流量传输状态设置几个梯度的流量控制模式,使得源节点、目的节点和控制节点三者能够在各级流量控制模式之间动态切换。
当所述拥塞检测结果为非拥塞时,所述源节点采用第一流量控制模式发送探测包和调整业务包的发送速率。
当所述拥塞检测结果为拥塞时,所述源节点采用第二流量控制模式发送探测包和调整业务包的发送速率。
可选的,流量控制模式的切换条件可以是周期性切换,也可以是根据当前的拥塞检测结果来切换,还可以根据拥塞持续时长是否高于第一门限、非拥塞持续时长是否高于第二门限、业务包的发送频率是否高于第三门限,处理器的占用率是否高于第四门限,或者时延触发切换门限是否高于第五门限等切换条件,具体本申请不限定。
举例来说,对于从第二流量控制模式切换到第一流量控制模式的场景:
例如,当非拥塞持续时长高于第二门限,或者业务包的发送速率小于第三门限,或者处理器占用率高于第四门限时,可以从第二流量控制模式切换到第一流量控制模式。
对于从第一流量控制模式切换到第二流量控制模式的场景:
例如,当在某个拥塞检测周期内拥塞检测结果为拥塞,或者探测包的平均时延大于第五门限且业务包的发送速率高于第三门限时,可以从第一流量控制模式切换到第二流量控制模式。
由此可见,本申请中,基于分析业务流量、拥塞情况、处理器占用率等特征的变频方式,能够实现在不需要进行拥塞控制的时间段内(如非拥塞时或无业务时)降低拥塞控制执行频率,从而降低拥塞检测和流量控制对设备转发性能和处理器性能的影响,并且通过这种变频方式能够适应长期、持续的拥塞检测。
如图9所示,第一流量控制模式中,探测包的发送频率f1 1、进行时延预测的频率f2 1以及基于时延预测值进行拥塞检测的频率f3 1;第二流量控制模式中,探测包的发送频率f1 2、进行时延预测的频率f2 2以及基于时延预测值进行拥塞检测的频率f3 2,其中,f1 1>f1 2,f2 1>f2 2,f3 1>f3 2
可选的,在一些发明实施例中,设在所述预测周期内探测包的发送频率为f1,基于所述N个探测包预测业务包的时延预测值的频率为f2,其中f1>f2,f1和f2均为正数。
可选的,在一些发明实施例中,本申请还可应用于载波聚合(英文全称:Carrier Aggregation,英文简称:CA),双连接(英文全称:Dual Connectivity,英文全称:DC)等协同业务包从主站向辅站分流时,也可以基于时延预测值进行拥塞检测。例如,当检测到主站到辅站的传输路径拥塞时,主站降低或停止向辅站分流的业务流量;当检测到主站到辅站的传输路径非拥塞时,主站增大向辅站分流的业务流量。
基于上述各实施例,本申请能够基于预测的时延预测值提前预知拥塞状态,并提前进行流量控制,从而能够有效的避免拥塞的出现,尤其是提升时延敏感业务(如:CA)的转发性能。
上述图1-图9中任意所述的实施例中出现的额各技术特征也同样适用于本申请中的图10和图11所对应的实施例,后续类似之处不再赘述。
以上对本申请中一种流量控制的方法进行说明,以下对执行上述流量控制的方法的控制节点和源节点分别进行描述。
一、参照图10,对用于流量控制的控制节点100进行说明,控制节点100包括:
收发模块1001,用于获取当前时刻之后源节点向目的节点发送的业务包的时延预测值;
处理模块1002,用于根据包时延的变化趋势和所述收发模块1001获取的所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
相较于现有技术,本申请提供的方案中,处理模块1002基于业务包的时延预测值,并根据包时延的变化趋势进行拥塞检测,能够提前预测到拥塞状态,使得源节点能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
可选的,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周 期内发送给所述目的节点,N为正整数。
可选的,所述处理模块1002在所述控制节点获取当前时刻之后发送的业务包的时延预测值之前,还用于:
通过所述收发模块1001获取所述N个探测包的包时延,根据所述N个探测包的包时延和拟合算法得到用于表示所述包时延的变化趋势的时延变化曲线。
可选的,当前时刻为t,所述处理模块1002还用于:
根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
可选的,所述控制节点100基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述控制控制节点100还包括检测模块1003,所述检测模块1003用于:
当所述拥塞检测结果为非拥塞时,采用第一流量控制模式对当前的流量传输的拥塞进行检测。
当所述拥塞检测结果为拥塞时,采用第二流量控制模式对当前的流量传输的拥塞进行检测。
二、参照图11,对用于流量控制的源节点110,所述源节点110包括:
收发模块1101,用于在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;
接收所述控制节点发送的拥塞检测结果;
处理模块1102用于在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
相较于现有技术,本申请提供的方案中,收发模块1101在预测周期内向目的节点发送N个探测包,该N个探测包用于目的节点或控制节点预测包时延的变化趋势,使得在接收到控制节点100发送的拥塞检测结果后,可以根据该拥塞检测结果提前对当前的流量传输进行预先控制,从而能够提前在源头对业务包的发送速率进行动态控制,这样通过提前控制流量的方式能够及时的控制流量,也能有效的降低丢包的概率。
可选的,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据所述N个探测包的发送时刻和所述N个探测包的接收时刻得到。
可选的,所述N个探测包的发送频率为定频或变频。
可选的,所述N个探测包根据业务流量、流量传输的拥塞程度和系统负荷中的至少一项变频发送。
可选的,所述源节点基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述收发模块具体用于:
当所述拥塞检测结果为非拥塞时,采用第一流量控制模式发送探测包和调整业务包的发送速率;
当所述拥塞检测结果为拥塞时,采用第二流量控制模式发送探测包和调整业务包的发送速率。
需要说明的是,在本申请各实施例(包括图10以及图11所示的各实施例)中所有的收发模块对应的实体设备可以为收发器,所有的处理模块对应的实体设备可以为处理器。图10以及图11所示的各装置均可以具有如图12所示的结构,当其中一种装置具有如图12所示的结构时,图12中的处理器和收发器实现前述对应该装置的装置实施例提供的处理模块、发送模块和接收模块相同或相似的功能,图12中的存储器存储处理器执行上述流量控制的方法时需要调用的程序代码。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (23)

  1. 一种流量控制的方法,其特征在于,所述方法包括:
    控制节点获取当前时刻之后源节点向目的节点发送的业务包的时延预测值;
    所述控制节点根据包时延的变化趋势和所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
  2. 根据权利要求1所述的方法,其特征在于,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周期内发送给所述目的节点,N为正整数。
  3. 根据权利要求2所述的方法,其特征在于,在所述控制节点获取当前时刻之后发送的业务包的时延预测值之前,所述方法还包括:
    所述控制节点获取所述N个探测包的包时延,根据所述N个探测包的包时延和拟合算法得到用于表示所述包时延的变化趋势的时延变化曲线。
  4. 根据权利要求2或3所述的方法,其特征在于,当前时刻为t,所述方法还包括:
    所述控制节点根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
  5. 根据权利要求2-4任一所述的方法,其特征在于,所述拥塞检测结果还用于指示所述源节点在确定当前的流量传输不拥塞时,根据当前所述源节点发送业务包的速率和所述时延预测值增加所述源节点发送业务包的速率。
  6. 根据权利要求2-5任一所述的方法,其特征在于,所述方法基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;
    当所述拥塞检测结果为非拥塞时,所述控制节点采用第一流量控制模式对当前的流量传输的拥塞进行检测。
    当所述拥塞检测结果为拥塞时,所述控制节点采用第二流量控制模式对当前的流量传输的拥塞进行检测。
  7. 一种流量控制的方法,其特征在于,所述方法包括:
    源节点在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;
    所述源节点接收所述控制节点发送的拥塞检测结果,在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
  8. 根据权利要求7所述的方法,其特征在于,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据所述N个探测包的发送时刻和所述N个探测包的接收时刻得到。
  9. 根据权利要求8所述的方法,其特征在于,所述N个探测包的发送频率为定频或变频。
  10. 根据权利要求9所述的方法,其特征在于,所述N个探测包根据业务流量、流量传输的拥塞程度和系统负荷中的至少一项变频发送。
  11. 根据权利要求9或10所述的方法,其特征在于,所述方法基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;
    当所述拥塞检测结果为非拥塞时,所述源节点采用第一流量控制模式发送探测包和调整业务包的发送速率;
    当所述拥塞检测结果为拥塞时,所述源节点采用第二流量控制模式发送探测包和调整业务包的发送速率。
  12. 根据权利要求7-11任一所述的方法,其特征在于,设在所述预测周期内探测包的发送频率为f1,基于所述N个探测包预测业务包的时延预测值的频率为f2,其中f1>f2,f1和f2均为正数。
  13. 一种用于流量控制的控制节点,其特征在于,所述控制节点包括:
    收发模块,用于获取当前时刻之后源节点向目的节点发送的业务包的时延预测值;
    处理模块,用于根据包时延的变化趋势和所述收发模块获取的所述时延预测值确定当前的流量传输的拥塞检测结果,将所述拥塞检测结果发送给所述源节点,所述拥塞检测结果用于所述源节点在确定拥塞检测结果为拥塞时降低所述源节点发送业务包的发送速率,其中,所述包时延的变化趋势对应拥塞时长的变化。
  14. 根据权利要求13所述的控制节点,其特征在于,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据N个探测包的发送时刻和所述N个探测包的接收时刻得到,所述N个探测包由所述源节点在当前预测周期内发送给所述目的节点,N为正整数。
  15. 根据权利要求14所述的控制节点,其特征在于,所述处理模块在所述控制节点获取当前时刻之后发送的业务包的时延预测值之前,还用于:
    通过所述收发模块获取所述N个探测包的包时延,根据所述N个探测包的包时延和拟合算法得到用于表示所述包时延的变化趋势的时延变化曲线。
  16. 根据权利要求14或15所述的控制节点,其特征在于,当前时刻为t,所述处理模块还用于:
    根据所述时延变化曲线预测所述源节点在(t+Δt)发送包的时延预测值,Δt为t之后发送探测包的时刻,Δt小于或等于预设阈值。
  17. 根据权利要求14-16任一所述的控制节点,其特征在于,所述控制节点基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述控制控制节点还包括检测模块,所述检测模块用于:
    当所述拥塞检测结果为非拥塞时,采用第一流量控制模式对当前的流量传输的拥塞进行检测。
    当所述拥塞检测结果为拥塞时,采用第二流量控制模式对当前的流量传输的拥塞进行 检测。
  18. 一种用于流量控制的源节点,其特征在于,所述源节点包括:
    收发模块,用于在预测周期内向目的节点发送N个探测包,N为正整数,所述N个探测包用于所述目的节点或控制节点预测包时延的变化趋势,所述包时延的变化趋势对应拥塞时长的变化;
    接收所述控制节点发送的拥塞检测结果;
    处理模块用于在所述拥塞检测结果为拥塞时,降低所述源节点发送业务包的速率,所述拥塞检测结果由所述控制节点根据包时延的变化趋势和获取到的当前时刻之后源节点向目的节点发送的业务包的时延预测值确定。
  19. 根据权利要求18所述的源节点,其特征在于,所述包时延的变化趋势用时延变化曲线表示,所述业务包的时延预测值根据当前预测周期内的时延变化曲线得到,当前预测周期内的时延变化曲线根据所述N个探测包的发送时刻和所述N个探测包的接收时刻得到。
  20. 根据权利要求19所述的源节点,其特征在于,所述N个探测包的发送频率为定频或变频。
  21. 根据权利要求20所述的源节点,其特征在于,所述N个探测包根据业务流量、流量传输的拥塞程度和系统负荷中的至少一项变频发送。
  22. 根据权利要求20或21所述的源节点,其特征在于,所述源节点基于流量控制模式对流量进行控制,所述流量控制模式唯一对应探测包的发送频率和业务包的发送速率的调整频率;所述收发模块具体用于:
    当所述拥塞检测结果为非拥塞时,采用第一流量控制模式发送探测包和调整业务包的发送速率;
    当所述拥塞检测结果为拥塞时,采用第二流量控制模式发送探测包和调整业务包的发送速率。
  23. 根据权利要求18-22任一所述的源节点,其特征在于,设在所述预测周期内探测包的发送频率为f1,基于所述N个探测包预测业务包的时延预测值的频率为f2,其中f1>f2,f1和f2均为正数。
PCT/CN2018/075447 2017-03-22 2018-02-06 一种流量控制的方法及节点 WO2018171351A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP18770456.4A EP3588878A4 (en) 2017-03-22 2018-02-06 METHOD AND SYSTEM FOR FLOW CONTROL
JP2019551981A JP2020510367A (ja) 2017-03-22 2018-02-06 トラフィック制御のための方法及びノード
US16/577,523 US20200014628A1 (en) 2017-03-22 2019-09-20 Method And Node For Traffic Control

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710173783.7A CN107070805A (zh) 2017-03-22 2017-03-22 一种流量控制的方法及节点
CN201710173783.7 2017-03-22

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/577,523 Continuation US20200014628A1 (en) 2017-03-22 2019-09-20 Method And Node For Traffic Control

Publications (1)

Publication Number Publication Date
WO2018171351A1 true WO2018171351A1 (zh) 2018-09-27

Family

ID=59619993

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/075447 WO2018171351A1 (zh) 2017-03-22 2018-02-06 一种流量控制的方法及节点

Country Status (5)

Country Link
US (1) US20200014628A1 (zh)
EP (1) EP3588878A4 (zh)
JP (1) JP2020510367A (zh)
CN (1) CN107070805A (zh)
WO (1) WO2018171351A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107070805A (zh) * 2017-03-22 2017-08-18 上海华为技术有限公司 一种流量控制的方法及节点
CN110167018B (zh) * 2018-02-11 2021-12-10 华为技术有限公司 一种安全保护的方法、装置及接入网设备
CN112005528B (zh) * 2018-06-07 2022-08-26 华为技术有限公司 一种数据交换方法、数据交换节点及数据中心网络
US20200267114A1 (en) * 2019-02-15 2020-08-20 Juniper Networks, Inc. Load-balanced endpoints selection for client devices accessing the endpoints via a network
US10958555B2 (en) * 2019-03-15 2021-03-23 Juniper Networks, Inc. Real-time application-driven synthetic probing
CN112822117B (zh) * 2021-01-07 2022-11-22 厦门亿联网络技术股份有限公司 一种实时流媒体传输的拥塞检测方法及装置
CN114339858B (zh) * 2021-12-30 2023-12-05 天翼物联科技有限公司 终端发包参数调整方法、装置及相关设备
CN115002009A (zh) * 2022-05-17 2022-09-02 中国电信股份有限公司 一种流量采样方法、装置、系统、电子设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101826933A (zh) * 2010-01-21 2010-09-08 华北电力大学 基于自适应滤波的往返时延预测方法
CN105049369A (zh) * 2015-08-14 2015-11-11 浙江大学 异构无线网络中基于mptcp的视频传输拥塞控制方法
WO2016039673A1 (en) * 2014-09-10 2016-03-17 Telefonaktiebolaget L M Ericsson (Publ) Explicit congestion notification marking of user traffic
CN107070805A (zh) * 2017-03-22 2017-08-18 上海华为技术有限公司 一种流量控制的方法及节点

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100428802C (zh) * 2006-12-22 2008-10-22 清华大学 一种自适应多媒体播放的方法
JP5820238B2 (ja) * 2011-11-01 2015-11-24 日本放送協会 データ送信装置およびデータ受信装置
WO2013180613A2 (en) * 2012-05-29 2013-12-05 Telefonaktiebolaget L M Ericsson (Publ) Methods and nodes for improved estimation of available path capacity of a data transfer path
US9160663B2 (en) * 2013-03-15 2015-10-13 Google Inc. Dynamic congestion control
CN104243242B (zh) * 2014-09-26 2017-11-17 厦门亿联网络技术股份有限公司 一种基于网络抖动算法反应网络拥塞的方法
WO2016128931A1 (en) * 2015-02-11 2016-08-18 Telefonaktiebolaget Lm Ericsson (Publ) Ethernet congestion control and prevention
CN105119755B (zh) * 2015-09-10 2018-06-19 广州市百果园网络科技有限公司 一种抖动缓冲区调整方法及装置
CN105407411B (zh) * 2015-10-21 2019-05-03 广州市百果园网络科技有限公司 一种数据发送方法及数据发送装置
CN106301684B (zh) * 2016-08-12 2020-04-10 广州市百果园网络科技有限公司 一种媒体数据传输方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101826933A (zh) * 2010-01-21 2010-09-08 华北电力大学 基于自适应滤波的往返时延预测方法
WO2016039673A1 (en) * 2014-09-10 2016-03-17 Telefonaktiebolaget L M Ericsson (Publ) Explicit congestion notification marking of user traffic
CN105049369A (zh) * 2015-08-14 2015-11-11 浙江大学 异构无线网络中基于mptcp的视频传输拥塞控制方法
CN107070805A (zh) * 2017-03-22 2017-08-18 上海华为技术有限公司 一种流量控制的方法及节点

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3588878A4

Also Published As

Publication number Publication date
JP2020510367A (ja) 2020-04-02
CN107070805A (zh) 2017-08-18
US20200014628A1 (en) 2020-01-09
EP3588878A1 (en) 2020-01-01
EP3588878A4 (en) 2020-02-26

Similar Documents

Publication Publication Date Title
WO2018171351A1 (zh) 一种流量控制的方法及节点
US11601323B2 (en) Techniques for wireless access and wireline network integration
US8098648B2 (en) Load distributing method
WO2018001062A1 (zh) 一种计算转发路径的方法及网络设备
KR101107945B1 (ko) 패킷 손실 감소 방법
KR102350504B1 (ko) 통신 시스템에서 하향링크 전송률 제어를 위한 장치 및 방법
WO2016192466A1 (zh) 一种进行调度的方法和设备
JP2018521585A (ja) 第1の基地局又は第2の基地局を選択してユーザ装置(ue)にパケットデータユニット(pdu)を送信する方法及び装置
US10237194B2 (en) Maximize network capacity policy with heavy-tailed traffic
WO2021083160A1 (zh) 数据传输的方法和装置
US9100855B2 (en) Technique for handling congestion control
JP6478909B2 (ja) メディアプレフィル性能の改良
US10477594B2 (en) Apparatus and method for controlling speed of transmission layer in wireless communication system
JP2011176693A (ja) 移動体無線通信装置、tcpフロー制御装置及びその方法
US11159426B2 (en) Packet processing device and network system
JP2021520725A (ja) 伝送遅延の測定
JP2008227854A (ja) 無線通信システム、無線通信装置、無線通信方法
JP5306596B2 (ja) 通信制御装置、無線通信装置、通信制御方法および無線通信方法
WO2018053896A1 (zh) 一种基于中继器的数据自动路由方法及中继器
JP2014147019A (ja) 通信装置、通信方法及び通信プログラム
JP5324038B2 (ja) 通信制御装置、無線通信装置、通信制御方法及び無線通信方法
CN113728691B (zh) 控制电信网络的方法、电信网络系统
WO2023071361A1 (zh) 一种终端测量、上报及切换参数配置方法、装置、设备和介质
JP5324039B2 (ja) 通信制御装置、無線通信装置、通信制御方法及び無線通信方法
CN108235381B (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: 18770456

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019551981

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018770456

Country of ref document: EP

Effective date: 20190926