CN107204932B - Network flow control method and device based on network end node - Google Patents

Network flow control method and device based on network end node Download PDF

Info

Publication number
CN107204932B
CN107204932B CN201710616628.8A CN201710616628A CN107204932B CN 107204932 B CN107204932 B CN 107204932B CN 201710616628 A CN201710616628 A CN 201710616628A CN 107204932 B CN107204932 B CN 107204932B
Authority
CN
China
Prior art keywords
network
configuration information
current
end node
state
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
CN201710616628.8A
Other languages
Chinese (zh)
Other versions
CN107204932A (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.)
Hunan Zhongyi Lihua Information Technology Co Ltd
Original Assignee
Hunan Zhongyi Lihua Information Technology 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 Hunan Zhongyi Lihua Information Technology Co Ltd filed Critical Hunan Zhongyi Lihua Information Technology Co Ltd
Priority to CN201710616628.8A priority Critical patent/CN107204932B/en
Publication of CN107204932A publication Critical patent/CN107204932A/en
Application granted granted Critical
Publication of CN107204932B publication Critical patent/CN107204932B/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

Landscapes

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

Abstract

The invention provides a network flow control method and a device based on a network end node, wherein the method comprises the following steps: obtaining available credit values, used credit values and first configuration information on the current network end node; calculating according to the first configuration information and the available credit value to obtain a first calculation result, and determining whether the current network is in a congestion state according to the first calculation result; and if the network node is in the congestion state, acquiring second configuration information, calculating according to the second configuration information and the used credit value to obtain a second calculation result, and controlling the current state of the network node for sending the message to the network according to the second calculation result. The network flow control method and the device based on the network end node can achieve better flow control and congestion avoidance effects only by credit information on the end node, are realized by using hardware, do not need software for control, and have the advantages of simplicity, high efficiency and instantaneity.

Description

Network flow control method and device based on network end node
Technical Field
The present invention relates to the field of communications, and in particular, to a network flow control method and apparatus based on a network end node.
Background
In large-scale interconnected networks, congestion often occurs on certain paths in the middle of the network due to routing planning, bursty traffic, resource limitations, and the like. The general expression is that multiple data streams need to reach a certain destination node or certain destination nodes through a few critical paths with limited bandwidth. The transmission bandwidth of the critical paths is occupied due to the limited receiving bandwidth of the destination nodes. At this time, if another data stream needs to pass through the critical path to reach other normal destination nodes, however, since the occupied critical path cannot be released, another normal data stream cannot be normally transmitted.
Data is continuously flowing on the network critical path generating congestion with the maximum bandwidth, but each data flow is allocated with little available bandwidth because of the excessive data flow needing to use the path. The reason is that some data streams occupy the bandwidth resource of the critical path due to the limited bandwidth of the receiving node, and are released slowly, so that other normal data streams needing to pass through the critical path are also affected during transmission. When congestion occurs in a local area of the network, if the congestion is not processed in time, the network congestion will be quickly spread to other areas of the network, and the congestion in a larger range of the network is caused.
Disclosure of Invention
The invention provides a network flow control method and a device based on a network end node, and aims to solve the problem of network congestion.
In order to achieve the above object, an embodiment of the present invention provides a network flow control method based on a network end node, including:
obtaining available credit values, used credit values and first configuration information on the current network end node;
if the first configuration information is first preset information, determining that the current network flow state is a non-congestion state;
if the first configuration information is second preset information, determining that the current network flow state is a congestion state;
if the first configuration information is third preset information, acquiring third configuration information, comparing the available credit value with a predefined threshold value configured by the third configuration information, and if the available credit value is smaller than the predefined threshold value, determining that the current flow state of the network is a congestion state;
if the network node is in the congestion state, second configuration information is obtained, and if the second configuration information is fourth preset information, the current network node is not allowed to send a message to the network;
if the second configuration information is fifth preset information, allowing the current network end node to send a message to the network;
if the second configuration information is sixth preset information, setting a plurality of calculation parameters through a configuration register, calculating the used credit value by using the calculation parameters, and controlling the state of the current network end node for sending a message to the network according to the second calculation result.
Wherein, if the first configuration information is third preset information, the step of obtaining third configuration information and comparing the available credit value with a predefined threshold configured by the third configuration information further includes:
and if the current network flow state is the congestion state and the available credit value is greater than or equal to the predefined threshold value, determining that the current network flow state is the non-congestion state.
Wherein, the step of obtaining a first calculation result by calculating according to the first configuration information and the available credit value and determining whether the current network is in a congestion state according to the first calculation result further comprises:
if the first configuration information is seventh preset information, setting a plurality of configuration signals through an external register, calculating the available credit value according to the plurality of configuration signals, and determining whether the current network is in a congestion state according to a calculation result.
The embodiment of the invention also provides a network flow control device based on the network end node, which comprises:
an acquisition module, configured to acquire an available credit value, a used credit value, and first configuration information at a current network end node;
a first computing module comprising:
a first determining module, configured to determine that a current network flow state is a non-congestion state if the first configuration information is first preset information;
a second determining module, configured to determine that a current flow state of the network is a congestion state if the first configuration information is second preset information;
a third determining module, configured to, if the first configuration information is third preset information, obtain third configuration information, compare the available credit value with a predefined threshold configured by the third configuration information, and if the available credit value is smaller than the predefined threshold, determine that a current flow state of the network is a congestion state;
a second calculating module, configured to obtain second configuration information if the mobile terminal is in a congestion state, where the second calculating module includes:
a fourth determining module, configured to disallow the current network end node to send a message to the network if the second configuration information is fourth preset information;
a fifth determining module, configured to allow the current network end node to send a message to the network if the second configuration information is fifth preset information;
a sixth determining module, configured to set, if the second configuration information is sixth preset information, a plurality of calculation parameters through a configuration register, calculate the used credit value using the calculation parameters, and control, according to the second calculation result, a state in which a current network end node sends a packet to a network.
The third determining module is further configured to determine that the current flow state of the network is a non-congestion state if the current flow state of the network is a congestion state and the available credit value is greater than or equal to the predefined threshold.
The scheme of the invention has the following beneficial effects:
the network flow control method and device based on the network end node in the embodiment of the invention can achieve better flow control and congestion avoidance effects only by using the credit information on the end node, are realized by using hardware, do not need software for control, and have the advantages of simplicity, high efficiency and instantaneity.
Drawings
Fig. 1 is a schematic flow chart of a network flow control method based on a network end node according to the present invention;
fig. 2 is a schematic structural diagram of a network flow control device based on a network end node according to the present invention.
Detailed Description
In order to make the technical problems, technical solutions and advantages of the present invention more apparent, the following detailed description is given with reference to the accompanying drawings and specific embodiments.
The invention provides a network flow control method and a device based on a network end node, aiming at the problem that the existing network is easy to be congested.
As shown in fig. 1, an embodiment of the present invention provides a network flow control method based on a network end node, including:
step 11, obtaining available credit value, used credit value and first configuration information on the current network end node;
step 12, calculating according to the first configuration information and the available credit value to obtain a first calculation result, and determining whether the current network is in a congestion state according to the first calculation result;
and step 13, if the network node is in the congestion state, acquiring second configuration information, calculating according to the second configuration information and the used credit value to obtain a second calculation result, and controlling the state of the current network node for sending the message to the network according to the second calculation result.
The network flow control method based on the network end node according to the embodiment of the present invention determines whether the current network is in a congestion state by acquiring the available credit value on the current network end node, and using the credit value and the first configuration information; the available credit value maintained and sent on the end node is available _ credit, the used credit value is used _ credit, and the maximum value of the default available credit value available _ credit and the used credit value used _ credit is 1023, namely the width of the 2 signals is 10 bits; the first configuration information is a cc _ enter _ mode, 2-bit signal, and is used for configuring whether the current end node enters a speed limit mode or not and how to enter the speed limit mode; the method can control and adjust the message sending rate of the current node according to the available credit of the end node when sending the message, can perform flow control on the sending node under the heavy load network environment, relieves the network congestion to a certain extent, and improves the network service quality.
Wherein, the step of calculating according to the first configuration information and the available credit value to obtain a first calculation result, and determining whether the current network is in a congestion state according to the first calculation result comprises:
if the first configuration information is first preset information, determining that the current network flow state is a non-congestion state;
if the first configuration information is second preset information, determining that the current network flow state is a congestion state;
and if the first configuration information is third preset information, acquiring third configuration information, comparing the available credit value with a predefined threshold value configured by the third configuration information, and if the available credit value is smaller than the predefined threshold value, determining that the current flow state of the network is a congestion state.
Wherein, if the first configuration information is third preset information, the step of obtaining third configuration information and comparing the available credit value with a predefined threshold configured by the third configuration information further includes: and if the current network flow state is the congestion state and the available credit value is greater than or equal to the predefined threshold value, determining that the current network flow state is the non-congestion state.
In the above embodiment of the present invention, the first configuration information is cc _ enter _ mode, and different values are assigned to the cc _ enter _ mode, so as to achieve the purpose of determining whether the current end node enters the speed limit mode; wherein, the first preset information is that cc _ enter _ mode is 0, when cc _ enter _ mode is 0, the current network circulation state is determined to be a non-congestion state, no matter what value of the current available credit, the current network circulation state does not enter a speed limit mode; the second preset message is that the cc _ enter _ mode is 1, when the cc _ enter _ mode is 1, the current circulation state of the network is determined to be a congestion state, and the current network enters a speed limit mode no matter what the value of the current available credit is; the third preset message is that cc _ enter _ mode is 2, and when cc _ enter _ mode is 2, the value of the current available credit needs to be compared with a predefined threshold, and then whether to enter the speed limit mode is determined according to the comparison result. If the current available credit value is smaller than a predefined threshold value, the current local congestion is considered to occur, and the speed limit mode is supposed to be entered at the moment; if the current node enters the speed-limiting mode, but the available credit value is greater than or equal to the predefined threshold value, the congestion in the network can be considered to be relieved, and the speed-limiting mode is exited at the moment; the third configuration information is a credit _ threshold, a 10-bit signal, and is used for configuring a threshold value used for comparing with the current available credit when cc _ enter _ mode is 2, and when available _ credit < credit _ threshold, entering a speed limit mode; otherwise, exiting the speed limit mode.
Wherein, if the network node is in the congestion state, the step of obtaining second configuration information, calculating according to the second configuration information and the used credit value to obtain a second calculation result, and controlling the state of the current network node sending the message to the network according to the second calculation result comprises:
if the second configuration information is fourth preset information, the current network end node is not allowed to send a message to the network;
if the second configuration information is fifth preset information, allowing the current network end node to send a message to the network;
if the second configuration information is sixth preset information, setting a plurality of calculation parameters through a configuration register, calculating the used credit value by using the calculation parameters, and controlling the state of the current network end node for sending a message to the network according to the second calculation result.
The second configuration information in the above embodiment of the present invention is a cc _ action _ mode, 2-bit signal, and is used to configure how to perform speed limit operation after the current end node enters the speed limit mode; wherein, the fourth preset message is that cc _ action _ mode is 0, and when cc _ action _ mode is 0, the current node is immediately stopped sending messages to the network in the speed-limiting mode until exiting the speed-limiting mode; the fifth preset message is that the cc _ action _ mode is 1, and when the cc _ action _ mode is 1, no speed limit measure is carried out even in a speed limit mode, namely, a message is still sent to the network according to a normal condition; the sixth preset information is cc _ action _ mode is 2, and when cc _ action _ mode is 2, 3 calculation parameters, namely, credit _ left _ shift, credit _ right _ shift, and credit _ ref, are set through the configuration register. At the same time, let next _ pkt _ interval be used _ credit × 2(credit_left_shift-credit_right_shift)+ credit _ ref, i.e., used _ credit is shifted left by credit _ left _ shift bits, the result is shifted right by credit _ right _ shift bits, and then the result is added to credit _ ref. The next _ pkt _ interval is the time interval from the last time the message is sent to the next time the message is sent. In this modeNext, according to the credit value used currently, the transmission interval between two adjacent messages is obtained through shifting and adding operations. If the credit value (used _ credit) used currently is larger, it indicates that the more packets sent out are cached in the next-level router and have not been forwarded continuously, that is, the more network congestion is serious, so the interval time between two adjacent packets is also larger.
Wherein, the step of obtaining a first calculation result by calculating according to the first configuration information and the available credit value and determining whether the current network is in a congestion state according to the first calculation result further comprises: if the first configuration information is seventh preset information, setting a plurality of configuration signals through an external register, calculating the available credit value according to the plurality of configuration signals, and determining whether the current network is in a congestion state according to a calculation result.
The seventh preset message in the above embodiment of the present invention is that the cc _ enter _ mode is 3, when the cc _ enter _ mode is 3, the total time that the currently available credit value is greater than a predetermined threshold value is counted first within a fixed time period, and if the total time is less than a predetermined value, the speed limit mode is entered. Specifically, a fixed time period, for example, the last 1 minute, and a predefined threshold are set; then, counting how long the available credit is greater than the threshold value in the period of time; this counted time is then compared with another predefined value. If the counted time is less than the predefined value, it indicates that in the recent period of time, the available credits are relatively small, that is, a large number of messages remain in the network, and the network may be in a congestion state currently, so that the network needs to enter a speed limit mode; otherwise, the available credit of the current node is still more in the recent period of time, so that the speed limit mode is not required to be entered.
Wherein the plurality of configuration signals are:
1) an enter _ cycle _ counter, a 32-bit signal, configured to configure a total number of clock cycles that need to be counted if the cc _ enter _ mode is 3, if the speed limit state is to be entered from the normal state;
2) an escape _ cycle _ counter, a 32-bit signal, configured to configure a total number of clock cycles that needs to be counted if the speed-limited state is to exit to the normal state when cc _ enter _ mode is 3;
3) an entry _ credit _ threshold, a 10-bit signal, is used to configure the maximum threshold of available credits if the rate limit state is to be entered from the normal state when cc _ entry _ mode is 3.
4) escape _ credit _ threshold, a 10-bit signal, is used to configure a minimum threshold of available credits if the speed limit state is to be exited to the normal state when cc _ enter _ mode is 3.
5) An entry _ cycle _ counter _ threshold, 32-bit signal, configured to set a minimum threshold of the counter T1 if the speed limit state is to be entered from the normal state when cc _ entry _ mode is equal to 3.
6) An escape _ cycle _ counter _ threshold, 32-bit signal, configured to set the minimum threshold of the counter T2 if the speed limit state is to be exited to the normal state when cc _ enter _ mode is 3.
Wherein, if the network node is in the congestion state, the step of obtaining second configuration information, calculating according to the second configuration information and the used credit value to obtain a second calculation result, and controlling the state that the current network node sends the message to the network according to the second calculation result further comprises: if the second configuration information is eighth preset information, continuously generating a random number through a linear feedback shift register, comparing the size of the random number with the size of the second calculation result, if the second calculation result is smaller than the random number, allowing the current network end node to send a message to the network, otherwise, not allowing the current network end node to send the message to the network.
The eighth preset message according to the above embodiment of the present invention is that the cc _ action _ mode is 3, and when the cc _ action _ mode is 3, the interval between the next packet and the previous packet is also determined according to the value of the currently available credit. The difference from the previous cc _ action _ mode of 2 is that the interval between the previous 2 packets and the next 2 packets will be a random value with a probability controlled by the current credit value. Specifically, a pseudo-random number generator is firstly set, and in the mode, random values are continuously generated; then, converting the current available credit once according to the fixed configuration according to a plurality of configuration signals by the same method, calculating the obtained value, comparing the value with the currently generated pseudo-random number, and if the value is smaller than the current pseudo-random number, sending a new message; otherwise, a new message cannot be sent now and needs to continue waiting.
Wherein the plurality of configuration signals are:
1) a credit _ left _ shift, 5-bit signal used for shifting left bit of used _ credit when calculating next _ pkt _ interval of two message sending intervals;
2) a credit _ right _ shift, 4-bit signal, which is used for right-shifting the used _ credit by bit when calculating the next _ pkt _ interval of two message sending intervals;
3) credit _ ref, a 32-bit signal, used to calculate the offset value added to the shift result when calculating the two message interval next _ pkt _ interval.
The network flow control method based on the network end node according to the above embodiment of the present invention specifically includes:
(1) setting a counter T1 with an initial value of 0, wherein in a certain clock cycle, if available _ credit < entry _ credit _ threshold in a certain clock cycle, T1 is T1+ 1; after the clock cycles of the continuous entry _ cycle _ counter pass, judging the relation between the T1 and the entry _ cycle _ counter _ threshold, and if the T1> the entry _ cycle _ counter _ threshold, determining that the speed limit state needs to be entered;
(2) setting a counter T2 with an initial value of 0, and if available _ credit > escape _ credit _ threshold in a certain clock cycle in consecutive escape _ cycle _ count clock cycles, then T2 is T2+ 1; after the clock cycles of the successive escape _ cycle _ counter pass, judging the relation between T2 and escape _ cycle _ counter _ threshold, and if T2> escape _ cycle _ counter _ threshold, determining that the speed limiting state can be exited;
(3) setting a variable next _ pkt _ interval with a width of 32, and making next _ pkt _ interval (used _ credit < < credit _ left _ shift) > > credit _ right _ shift + credit _ ref, namely, a time interval between 2 adjacent messages (wherein < < and > > are left-shift and right-shift operators, respectively) when cc _ action _ mode is 2;
(4) a 32-bit pseudo-random number generator based on a Linear Feedback Shift Register (LFSR) is provided, which generates a new 32-bit pseudo-random number LFSR random every clock cycle. When cc _ action _ mode is 3, if next _ pkt _ interval < lfsr _ random in a certain clock period, the message can be currently sent, otherwise, the message cannot be sent, so as to achieve the purpose of limiting the speed of the network end node.
The network flow control method based on the network end node does not need large-range or global congestion information, and only depends on local information (available credit value) on the current end node to judge whether local congestion occurs; the method has the advantages that the speed of injecting the message into the network by the end node can be limited in a faster mode without waiting for the reverse congestion control information to be transmitted back, the possibility of transmitting the congestion in a larger range is avoided in time, the more complex speed-limiting operation can be realized through proper parameter design, software is not needed to participate, the whole control process is realized by hardware, and the method is simple and efficient.
The specific embodiment of the network flow control method based on the network end node is to determine whether the current end node should enter a speed limit state. Let the current state be cc _ status. The cc _ status is 0 to indicate that the current node is in a normal state (non-speed-limited), and the cc _ status is 1 to indicate that the current node is in a speed-limited state (congestion occurs in the network). First, it should be determined according to an externally sent configuration signal cc _ enter _ mode. This cc _ enter _ mode signal typically needs to be fed through a configuration register that is software readable and writable and has a width of 2 bits. If the credit available on the current node is available _ credit and the used credit is used _ credit, the total credit value total _ credit is available _ credit + used _ credit.
(1.1) if cc _ enter _ mode is 0, cc _ status is 0.
(1.2) if cc _ enter _ mode is 1, cc _ status is 1.
(1.3) if cc _ enter _ mode is 2, setting a credit threshold register credit _ threshold through an external register, and judging the relation between available _ credit and credit _ threshold. If available _ credit < credit _ threshold, cc _ status is 1; if available _ credit > -credit _ threshold, cc _ status is 0.
(1.4) if cc _ enter _ mode is 3, the following 6 configuration signals are set by the external register: the number of cycles of the first clock cycle, the second clock cycle, the third clock cycle, the first cycle count, the second clock cycle count, the first cycle count, the second clock cycle count, the third clock cycle count, the fourth clock cycle count, the fifth clock cycle count, the sixth clock cycle count, the fifth clock cycle count, the sixth clock count, the fifth clock count, the sixth. If the current cc _ status is 0 and T1> enter _ cycle _ counter _ threshold, let cc _ status be 1; if the current cc _ status is 1 and T2> escape _ cycle _ counter _ threshold, let cc _ status be 0.
(2) And determining what speed limiting operation should be adopted by the current node in the speed limiting mode. And setting the permit _ transmit to indicate whether the current node allows the message to be sent outwards. If the permit _ transmit is 1, allowing to send the message; and if the permit _ transmit is 0, the message is not allowed to be sent. A configuration signal cc _ action _ mode is sent from an external configuration register. First, it is determined whether the message should be sent out currently according to the cc _ action _ mode signal.
(2.1) if cc _ action _ mode is 0, permit _ transmit is 1.
(2.2) if cc _ action _ mode is 1, permit _ transmit is 0.
(2.3) if cc _ action _ mode is 2, setting 3 calculation parameters, respectively, credit _ left _ shift, credit _ right _ shift, and credit _ ref, through the configuration register. At the same time, let next _ pkt _ interval be used _ credit × 2(credit_left_shift-credit_right_shift)+creditFor _ ref, the used _ credit is shifted left by credit _ left _ shift bits, the result is shifted right by credit _ right _ shift bits, and the result is added to credit _ ref. The next _ pkt _ interval is the time interval from the last time the message is sent to the next time the message is sent. In this mode, the transmission interval between two adjacent messages is obtained by shifting and adding operations according to the credit value currently used. If the credit value (used _ credit) used currently is larger, it indicates that the more packets sent out are cached in the next-level router and have not been forwarded continuously, that is, the more network congestion is serious, so the interval time between two adjacent packets is also larger. The specific implementation method is that a counter pkt _ interval _ count is set, after each message is sent, the value of pkt _ interval _ count is set to be the next _ pkt _ interval value according to the calculated next _ pkt _ interval value, then the value of pkt _ interval _ count is reduced by 1 in each clock cycle, and the operation of reducing by 1 is carried out until the value is 0. When pkt _ interval _ count is 0, set permit _ transmit to 1, otherwise permit _ transmit to 0. Meanwhile, according to the new next _ pkt _ interval value, setting a new initial value for pkt _ interval _ count, and repeating the steps until cc _ status is equal to 0 or cc _ action _ mode is not equal to 2.
(2.4) if cc _ action _ mode is 3, continuously generating a random number LFSR _ random through a Linear Feedback Shift Register (LFSR), if next _ pkt _ interval < LFSR _ random, then permit _ transmit is 1, otherwise permit _ transmit is 0. In this way, a new lfsr _ random is generated every clock cycle, and it is determined whether a message can be sent in every clock cycle, so that whether a message can be sent in a certain clock cycle is random. The more credits that are used, the less probability that a message is allowed to be sent during the period.
As shown in fig. 2, an embodiment of the present invention further provides a network flow control apparatus based on a network end node, including:
an acquisition module, configured to acquire an available credit value, a used credit value, and first configuration information at a current network end node;
the first calculation module is used for calculating to obtain a first calculation result according to the first configuration information and the available credit value and determining whether the current network is in a congestion state or not according to the first calculation result;
and the second calculation module is used for acquiring second configuration information if the network node is in the congestion state, calculating according to the second configuration information and the used credit value to obtain a second calculation result, and controlling the current state of the network node for sending the message to the network according to the second calculation result.
Wherein the first computing module comprises:
a first determining module, configured to determine that a current network flow state is a non-congestion state if the first configuration information is first preset information;
a second determining module, configured to determine that a current flow state of the network is a congestion state if the first configuration information is second preset information;
a third determining module, configured to, if the first configuration information is third preset information, obtain third configuration information, compare the available credit value with a predefined threshold configured by the third configuration information, and if the available credit value is smaller than the predefined threshold, determine that the current flow state of the network is a congestion state.
The third determining module is further configured to determine that the current flow state of the network is a non-congestion state if the current flow state of the network is a congestion state and the available credit value is greater than or equal to the predefined threshold.
Wherein the second computing module comprises:
a fourth determining module, configured to disallow the current network end node to send a message to the network if the second configuration information is fourth preset information;
a fifth determining module, configured to allow the current network end node to send a message to the network if the second configuration information is fifth preset information;
a sixth determining module, configured to set, if the second configuration information is sixth preset information, a plurality of calculation parameters through a configuration register, calculate the used credit value using the calculation parameters, and control, according to the second calculation result, a state in which a current network end node sends a packet to a network.
Wherein the first computing module comprises:
a seventh determining module, configured to set, if the first configuration information is seventh preset information, a plurality of configuration signals through an external register, calculate the available credit value according to the plurality of configuration signals, and determine whether the current network is in a congestion state according to a calculation result.
Wherein the second computing module comprises:
and an eighth determining module, configured to continuously generate a random number through a linear feedback shift register if the second configuration information is eighth preset information, compare the random number with the second calculation result, allow the current network end node to send a message to the network if the second calculation result is smaller than the random number, and otherwise disallow the current network end node to send the message to the network.
The network flow control method and device based on the network end node in the embodiment of the invention can achieve better flow control and congestion avoidance effects only by using the credit information on the end node, are realized by using hardware, do not need software for control, and have the advantages of simplicity, high efficiency and instantaneity.
While the foregoing is directed to the preferred embodiment of the present invention, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention as defined in the appended claims.

Claims (5)

1. A network flow control method based on a network end node is characterized by comprising the following steps:
obtaining available credit values, used credit values and first configuration information on the current network end node;
if the first configuration information is first preset information, determining that the current network flow state is a non-congestion state;
if the first configuration information is second preset information, determining that the current network flow state is a congestion state;
if the first configuration information is third preset information, acquiring third configuration information, comparing the available credit value with a predefined threshold value configured by the third configuration information, and if the available credit value is smaller than the predefined threshold value, determining that the current flow state of the network is a congestion state;
if the network node is in the congestion state, second configuration information is obtained, and if the second configuration information is fourth preset information, the current network node is not allowed to send a message to the network;
if the second configuration information is fifth preset information, allowing the current network end node to send a message to the network;
if the second configuration information is sixth preset information, setting a plurality of calculation parameters through a configuration register, calculating the used credit value by using the calculation parameters, and controlling the current state of the network end node for sending a message to the network.
2. The method of claim 1, wherein if the first configuration information is a third preset information, obtaining a third configuration information, and comparing the available credit value with a predefined threshold configured by the third configuration information further comprises:
and if the current network flow state is the congestion state and the available credit value is greater than or equal to the predefined threshold value, determining that the current network flow state is the non-congestion state.
3. The method of claim 2, wherein the step of calculating a first calculation result according to the first configuration information and the available credit value, and determining whether the current network is in a congestion state according to the first calculation result further comprises:
if the first configuration information is seventh preset information, setting a plurality of configuration signals through an external register, calculating the available credit value according to the plurality of configuration signals, and determining whether the current network is in a congestion state according to a calculation result.
4. A network flow control apparatus based on a network end node, comprising:
an acquisition module, configured to acquire an available credit value, a used credit value, and first configuration information at a current network end node;
a first computing module comprising:
a first determining module, configured to determine that a current network flow state is a non-congestion state if the first configuration information is first preset information;
a second determining module, configured to determine that a current flow state of the network is a congestion state if the first configuration information is second preset information;
a third determining module, configured to, if the first configuration information is third preset information, obtain third configuration information, compare the available credit value with a predefined threshold configured by the third configuration information, and if the available credit value is smaller than the predefined threshold, determine that a current flow state of the network is a congestion state;
a second calculating module, configured to obtain second configuration information if the mobile terminal is in a congestion state, where the second calculating module includes:
a fourth determining module, configured to disallow the current network end node to send a message to the network if the second configuration information is fourth preset information;
a fifth determining module, configured to allow the current network end node to send a message to the network if the second configuration information is fifth preset information;
and a sixth determining module, configured to set, if the second configuration information is sixth preset information, a plurality of calculation parameters through a configuration register, calculate the used credit value using the calculation parameters, and control a state where a current network end node sends a packet to a network.
5. The apparatus of claim 4, wherein the third determining module is further configured to determine the current network traffic status as a non-congested status if the current network traffic status is a congested status and the available credit value is greater than or equal to the predefined threshold.
CN201710616628.8A 2017-07-20 2017-07-20 Network flow control method and device based on network end node Active CN107204932B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710616628.8A CN107204932B (en) 2017-07-20 2017-07-20 Network flow control method and device based on network end node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710616628.8A CN107204932B (en) 2017-07-20 2017-07-20 Network flow control method and device based on network end node

Publications (2)

Publication Number Publication Date
CN107204932A CN107204932A (en) 2017-09-26
CN107204932B true CN107204932B (en) 2020-05-01

Family

ID=59911980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710616628.8A Active CN107204932B (en) 2017-07-20 2017-07-20 Network flow control method and device based on network end node

Country Status (1)

Country Link
CN (1) CN107204932B (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101815027B (en) * 2009-02-20 2012-11-28 中国移动通信集团公司 Method and device for determining availability of bundled link
CN101674253A (en) * 2009-10-16 2010-03-17 中兴通讯股份有限公司 Data transmission processing method and device applied in multipath networking
CN104468386B (en) * 2014-10-11 2017-11-24 新华三技术有限公司 Flow equalization method and device in a kind of Ethernet virtualization internet network
CN106506701A (en) * 2016-12-28 2017-03-15 北京奇艺世纪科技有限公司 A kind of server load balancing method and load equalizer
CN109104263A (en) * 2017-06-20 2018-12-28 阿里巴巴集团控股有限公司 Method of adjustment, the device and system of memory capacity

Also Published As

Publication number Publication date
CN107204932A (en) 2017-09-26

Similar Documents

Publication Publication Date Title
EP1417808B1 (en) Method and system for congestion control in a communications network
US6026075A (en) Flow control mechanism
US7324452B2 (en) Weighted credit-based arbitration using credit history
US20080232251A1 (en) Flow control method and receiving end device
CN112751691A (en) Network flow rate limiting method and device, central control equipment and gateway
KR980007250A (en) Method and apparatus for improved dynamic bandwidth prediction and adaptation in high-speed packet switching networks
KR20130108169A (en) Reducing headroom
JP5427707B2 (en) Data transmission system and method
CN104301250A (en) Wireless congestion control method and device
CN103416031A (en) Flow control method, apparatus and network
EP1065833B1 (en) Method and apparatus for managing communications between nodes in a bi-directional ring network
US20160359758A1 (en) Management of data transmission limits for congestion control
CN106658644A (en) Communication network routing method and device
CN112152863A (en) Distributed bandwidth allocation method and device
CN107204932B (en) Network flow control method and device based on network end node
US7672242B2 (en) Traffic management device and method thereof
JP2007259318A (en) Communication control apparatus and communication control method
CN117278482A (en) Token bucket implementation method and device
CN104734884B (en) A kind of GOOSE communication means and device
US20020167957A1 (en) Method and apparatus for scheduling data on a medium
JP2013524599A (en) Random gap insertion in optical ring networks
CN103973582A (en) Testing data stream transmission flow control method and system
JP5403756B2 (en) Management device, program, and traffic control method
JP2008166881A (en) Link aggregation circuit, and method for optimizing link aggregation access control logic
CN115277424B (en) Decision issuing method, device and storage medium in software defined network

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
CB02 Change of applicant information

Address after: 410205 room 0910, 9 / F, building 3, Huachuang International Plaza, No.109, Section 1, Furong Middle Road, wujialing street, Kaifu District, Changsha City, Hunan Province

Applicant after: Hunan Zhongyi Lihua Information Technology Co., Ltd

Address before: 410000, 105 building, 9 factory building, Changsha Central Electric Power Software Park, No. 39, pointed mountain road, Gaoxin Development Zone, Hunan, Changsha

Applicant before: HUNAN ZHONGYUN FEIHUA INFORMATION TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant