CN113572655A - Congestion detection method and system for loss-free network - Google Patents

Congestion detection method and system for loss-free network Download PDF

Info

Publication number
CN113572655A
CN113572655A CN202110665574.0A CN202110665574A CN113572655A CN 113572655 A CN113572655 A CN 113572655A CN 202110665574 A CN202110665574 A CN 202110665574A CN 113572655 A CN113572655 A CN 113572655A
Authority
CN
China
Prior art keywords
state
port
congestion
data packet
switch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110665574.0A
Other languages
Chinese (zh)
Other versions
CN113572655B (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN202110665574.0A priority Critical patent/CN113572655B/en
Priority claimed from CN202110665574.0A external-priority patent/CN113572655B/en
Publication of CN113572655A publication Critical patent/CN113572655A/en
Application granted granted Critical
Publication of CN113572655B publication Critical patent/CN113572655B/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
    • 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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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
    • 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/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a congestion detection method and a system of a loss-free network, wherein the method comprises the following steps: acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp; and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time. By detecting the time length of the switch port opening period and the evolution characteristics of the data packet queue length, the invention can accurately detect and identify the conversion among three states of the switch port in the loss-free network, and correctly mark the data packet, so that the congestion control algorithm can more efficiently finish the speed regulation decision, and the flow finishing time and the throughput are improved.

Description

Congestion detection method and system for loss-free network
Technical Field
The invention relates to the technical field of congestion control algorithms, in particular to a congestion detection method and a congestion detection system for a loss-free network.
Background
The lossless network has the advantages of zero packet loss and low delay, and becomes a promising development direction in the data center. The loss-free network depends on a hop-by-hop flow control technology (called a hop-by-hop flow control technology for short) so as to ensure zero packet loss, and the following two hop-by-hop flow control technologies exist:
the method comprises the following steps of firstly, a hop-by-hop flow control technology based on cache: when the queue length of a downstream switch port exceeds a threshold XOFFWhen the upstream switch receives the PAUSE frame, the downstream switch stops sending data; when the queue length of the downstream switch port decreases to another threshold XONAnd then, the downstream switch sends the RESUME frame to the upstream switch, so that the upstream switch recovers normal sending when receiving the RESUME frame.
Secondly, a hop-by-hop flow control technology based on a timer: the downstream switch maintains a register (ABR) of the number of received blocks to record the amount of data received. Meanwhile, the downstream switch periodically sends a Credit Limit (FCCL) message to the upstream switch, where the FCCL message is maintained by a port of the downstream switch and includes the sum of the currently allocated buffer size and the ABR (i.e., the number of received data blocks) of the downstream switch. The upstream switch maintains a Flow Control Total Block send register (FCTBS) to record the number of data blocks Sent by the switch. When the difference between FCCL and FCTBS is the number of available credit values after the FCCL message is received by the upstream switch, the upstream switch can only send packets if there are available credit values.
The two hop-by-hop flow control technologies essentially adopt the same idea to avoid overflow of the cache on the switch: switch ports may alternate between ON (ON) and OFF (OFF); when a port is closed, subsequent packets are queued for available buffering on downstream switches. In a loss-free network, while zero packet loss is ensured by the hop-by-hop flow control technology, a state (to-be-fixed state) of switching back and forth for multiple times in a short time exists between the ON state and the OFF state of a port of a switch, and the new state is ignored in the prior art, so that the real state of the port is falsely detected, and an uncongested data packet is falsely marked, so that a congestion control algorithm makes a wrong speed regulation decision, and the flow completion time and the throughput are influenced. Therefore, there is a need for a congestion detection method and system for a loss-free network to solve the above problems.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a congestion detection method and a congestion detection system for a loss-free network.
The invention provides a congestion detection method of a loss-free network, which comprises the following steps:
acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp;
and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
According to the congestion detection method of the loss-free network provided by the invention, the method further comprises the following steps:
if the network is not lost and a hop-by-hop flow control technology based on the cache is adopted, the port closing state ending timestamp is the timestamp of the RESUME frame received last time;
if the loss-free network adopts a hop-by-hop flow control technology based on a timer, the port closing state ending timestamp is a timestamp when a new credit value is received in a state that a last credit value is zero, the credit value is obtained through a difference value between a credit limit value and the number of data blocks sent by the switch, and the credit limit value is the sum of the currently allocated buffer amount of the downstream switch and the received data blocks.
According to the congestion detection method of the lossless network provided by the invention, the congestion detection result of the lossless network is obtained according to the port state switching time difference and the switch port state at the current time, and the congestion detection method comprises the following steps:
comparing and judging the port state switching time difference value with a preset time threshold;
updating the port state of the switch according to the judgment result and the port state of the switch at the current moment, and marking a data packet;
the switch port state comprises a non-congestion state, a congestion state and a waiting state, wherein the non-congestion state is a state that a port is opened and no data packet queue is accumulated, the congestion state is a state that the port is opened and the data packet queue is accumulated, and the waiting state is a state that the port is switched on and off for a plurality of times;
and obtaining a congestion detection result of the loss-free network according to the updating result and the marking result.
According to the congestion detection method of the lossless network provided by the invention, before the comparing and judging the difference value of the port state switching time and the preset time length threshold, the method further comprises the following steps:
if the non-loss network adopts a hop-by-hop flow control technology based on the cache, the formula of the preset duration threshold is as follows:
Figure BDA0003117247090000031
Figure BDA0003117247090000032
wherein, TmaxRepresenting a preset time threshold, XoffPreset port queue entry length threshold, X, indicating trigger for PAUSE frame transmissiononRepresenting a preset port queue entry length threshold for triggering RESUME frame sending, C representing link bandwidth, tau representing response time, epsilon representing a fixed parameter, link delay representing link delay, and MTU representing a maximum transmission unit;
and if the loss-free network adopts a hop-by-hop flow control technology based on the timer, the preset time threshold is the preset overtime of the timer.
According to the congestion detection method of the lossless network provided by the invention, the updating of the switch port state and the marking of the data packet are carried out according to the judgment result and the switch port state at the current moment, and the method comprises the following steps:
when the difference value of the port state switching time is greater than or equal to the preset time threshold and the port state of the switch at the current time is a non-waiting state,
if the length of the data packet queue is larger than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet;
and if the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the state of the switch port to be a non-congestion state, and dequeuing the data packet.
According to the congestion detection method of the lossless network provided by the invention, the switch port state is updated according to the judgment result and the switch port state at the current moment, and the data packet is marked, and the method further comprises the following steps:
when the port state switching time difference is greater than or equal to the preset time length threshold and the port state of the switch at the current time is to be set,
if the length of the data packet queue is reduced and the length of the data packet queue is larger than the threshold value of the length of the congestion queue, dequeuing the data packet;
if the length of the data packet queue is reduced and the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the port state of the switch into a non-congestion state, and dequeuing the data packet;
and if the length of the data packet queue is not reduced and the length of the data packet queue is greater than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet.
According to the congestion detection method of the lossless network provided by the invention, the switch port state is updated according to the judgment result and the switch port state at the current moment, and the data packet is marked, and the method further comprises the following steps:
when the port state switching time difference is smaller than the preset time length threshold, updating the port state of the switch to be in a waiting state, and if the data packet is not marked to be in a congestion state, marking the data packet to be in the waiting state;
if the packet has been marked as experiencing a congestion state, the packet is dequeued.
The invention also provides a congestion detection system of a loss-free network, comprising:
the port switching processing module is used for acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp;
and the congestion detection module is used for obtaining a congestion detection result of the loss-free network according to the port state switching time difference and the switch port state at the current time.
The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the congestion detection method for a lossless network as described in any one of the above.
The present invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when being executed by a processor, carries out the steps of the congestion detection method for a loss-free network as described in any of the above.
According to the congestion detection method and system for the lossless network, provided by the invention, the transition among three states of the switch port in the lossless network can be accurately detected and identified by detecting the time length of the switch port Opening (ON) period and the evolution characteristics of the data packet queue length, and the data packet is correctly marked, so that a congestion control algorithm can more efficiently finish a speed regulation decision, and the flow completion time and the throughput are improved.
Drawings
In order to more clearly illustrate the technical solutions of the present invention or the prior art, the drawings needed for the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
Fig. 1 is a schematic flow chart of a congestion detection method for a lossless network according to the present invention;
FIG. 2 is a schematic diagram illustrating the transition between three states provided by the present invention;
FIG. 3 is a schematic diagram of a network topology of a simulation configuration provided by the present invention;
fig. 4 is a schematic diagram of an evolution situation and a marking situation of a switch egress port queue length in two scenarios of the cache-based hop-by-hop flow control technology provided by the present invention;
fig. 5 is a schematic diagram of an evolution situation and a marking situation of a switch egress port queue length in two scenarios of the timer-based hop-by-hop flow control technology provided by the present invention;
fig. 6 is a schematic diagram showing a comparison between the flow completion speeds of the congestion detection mechanism provided by the present invention in cooperation with a congestion control algorithm and a conventional congestion control algorithm in a large-scale simulation experiment;
fig. 7 is a schematic structural diagram of a congestion detection system of a loss-free network according to the present invention;
fig. 8 is a schematic structural diagram of an electronic device provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is obvious that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In a loss-free network, a switch needs to accurately detect a state related to congestion, and specifically, a switch port in the loss-free network has three states: uncongested state (0): ports are always ON (ON) with no queue length accumulation (i.e., packet queue length accumulation); congested state (1): ports are always ON (ON), there is queue length accumulation, and queue length accumulation is only caused by congestion and not caused by ports being closed; to-be-stationary (/): the ports are switched ON-OFF (ON-OFF).
In a loss-free network, while zero packet loss is ensured, the hop-by-hop flow control technology causes the state of a port of a switch to be switched back and forth for multiple times in a short time between ON and OFF (ON-OFF), and the new state is ignored in the prior art, so that the real state of the port is detected by mistake, and the data packet which is not congested is marked by mistake, and then a congestion control algorithm makes a wrong speed regulation decision to influence the flow completion time and the throughput.
Fig. 1 is a schematic flow chart of a congestion detection method for a loss-free network according to the present invention, and as shown in fig. 1, the present invention provides a congestion detection method for a loss-free network, including:
step 101, acquiring a port state switching time difference value according to a current timestamp and a port closing state ending timestamp;
and step 102, obtaining a congestion detection result of the lossless network according to the port state switching time difference value and the switch port state at the current time.
In the present invention, a switch in a loss-free network is explained as an execution subject. Three states (non-congestion state, congestion state and pending state) of a switch port in a loss-free network are identified, wherein the identification of the pending state is based ON the characteristic that the port is in an ON-OFF (ON-OFF) state, that is, when the switch port is in an ON period after ending the OFF period, the duration of the ON period is usually small.
Further, first, the switch records a timestamp t at the end of the port-off stateoff(ii) a When the port is opened again, according to the current time stamps t and toffThe difference between the two, namely the difference of the port state switching time, if the difference is less than the preset time length threshold TmaxIf so, indicating that the port enters an undetermined state, and updating the state of the port to the undetermined state; when the current port is in pending state, if the current time stamp t and t are detectedoffThe difference between the two is greater than or equal to the threshold value TmaxIf so, judging whether the exchanger enters a congestion state or a non-congestion state according to whether the length of the data packet queue is increased. FIG. 2 is a schematic diagram of the transition of three states provided by the present invention, three congestion states in the switchThe handover may be as described with reference to fig. 2.
Specifically, on the basis of the above embodiment, the method further includes:
if the network is not lost and a hop-by-hop flow control technology based on the cache is adopted, the port closing state ending timestamp is the timestamp of the RESUME frame received last time;
if the loss-free network adopts a hop-by-hop flow control technology based on a timer, the port closing state ending timestamp is a timestamp when a new credit value is received in a state that a last credit value is zero, the credit value is obtained through a difference value between a credit limit value and the number of data blocks sent by the switch, and the credit limit value is the sum of the currently allocated buffer amount of the downstream switch and the received data blocks.
It should be noted that, for the cache-based hop-by-hop flow control technique, toffThe time when the switch receives the RESUME frame last time, specifically, after receiving the PAUSE frame, the port is closed, until the next RESUME frame is received, the port is closed, the port is opened again, and the data packet can not be transmitted, and the timestamp at this time is the port closed state end timestamp. The port can only read, mark and dequeue the data packet after being opened, so that the current timestamp of each data packet is different from the port closed state ending timestamp, the duration length of the port in the open state until now is obtained, and the port is further distinguished from the state of being opened all the time or the state of switching for multiple times in a period of time according to the duration length.
For timer-based hop-by-hop flow control techniques, toffIn the invention, the credit value is calculated by the difference between the FCCL of the downstream switch and the FCTBS of the upstream switch, and the switch port acquires the available credit value: when the credit is zero, no more data is sent. Specifically, the port sends a partial data packet to the port to cause the port to send a messageThe port is closed at this time when the utilization value is zero, the port closing state is ended and the port is re-opened when the switch receives a new credit update value, and the time stamp at this time is the port closing state ending time stamp.
According to the congestion detection method of the lossless network, provided by the invention, the transition among three states of the switch port in the lossless network can be accurately detected and identified by detecting the time length of the switch port Opening (ON) period and the evolution characteristics of the data packet queue length, and the data packet is correctly marked, so that a congestion control algorithm can more efficiently finish a speed regulation decision, and the flow completion time and the throughput are improved.
On the basis of the above embodiment, obtaining a congestion detection result of a lossless network according to the port state switching time difference and the switch port state at the current time includes:
and comparing and judging the port state switching time difference value with a preset time threshold.
In the invention, firstly, the difference between the current timestamp and the port closing state ending timestamp is calculated, and then the difference is compared with a preset duration threshold.
Updating the port state of the switch according to the judgment result and the port state of the switch at the current moment, and marking a data packet;
the switch port state comprises a non-congestion state, a congestion state and a waiting state, wherein the non-congestion state is a state that a port is opened and no data packet queue is accumulated, the congestion state is a state that the port is opened and the data packet queue is accumulated, and the waiting state is a state that the port is switched on and off for a plurality of times;
and obtaining a congestion detection result of the loss-free network according to the updating result and the marking result.
According to the comparison result of the port state switching time difference value and the preset time length threshold value and the state of the switch port at the current time, the congestion state of the switch in the loss-free network is judged and obtained, further, the congestion state of the switch is updated, and the corresponding state identification is marked on the data packet.
On the basis of the above embodiment, before the comparing and determining the difference between the port state switching times and the preset duration threshold, the method further includes:
if the non-loss network adopts a hop-by-hop flow control technology based on the cache, the formula of the preset duration threshold is as follows:
Figure BDA0003117247090000091
Figure BDA0003117247090000092
wherein, TmaxRepresenting a preset duration threshold; xoffPreset port queue entry length threshold, X, indicating trigger for PAUSE frame transmissiononRepresents a predetermined port queue length threshold for triggering the transmission of a RESUME frame, in this embodiment, XoffThe difference between Xon and MTU is set to twice the maximum transmission unit MTU; c represents the link bandwidth, and tau represents the response time; epsilon represents a fixed parameter, and in the present embodiment, epsilon is 0.05; link delay represents link delay, and MTU represents a maximum transmission unit;
if the loss-free network adopts a hop-by-hop flow control technology based on a timer, the preset time threshold is the preset timeout time of the timer, in this embodiment, the preset time threshold is the preset timeout time of the timer, that is, the credit update period, specifically, the working principle of the timer is to trigger a certain event when the timeout time reaches the preset timeout time after presetting a timeout time. In this embodiment, the timeout time of the timer of the downstream switch is a credit update period, which is equivalent to triggering once every other credit update period, sending an FCCL message to the upstream switch, and resetting the next timeout time, where the preset timeout time of the timer does not exceed 65535 symbol time.
On the basis of the above embodiment, the updating the switch port state and marking the packet according to the determination result and the switch port state at the current time includes:
when the difference value of the port state switching time is greater than or equal to the preset time threshold and the port state of the switch at the current time is a non-waiting state,
if the length of the data packet queue is larger than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet;
and if the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the state of the switch port to be a non-congestion state, and dequeuing the data packet.
On the basis of the above embodiment, the updating the switch port state and marking the packet according to the determination result and the switch port state at the current time further includes:
when the port state switching time difference is greater than or equal to the preset time length threshold and the port state of the switch at the current time is to be set,
if the length of the data packet queue is reduced and the length of the data packet queue is larger than the threshold value of the length of the congestion queue, dequeuing the data packet;
if the length of the data packet queue is reduced and the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the port state of the switch into a non-congestion state, and dequeuing the data packet;
and if the length of the data packet queue is not reduced and the length of the data packet queue is greater than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet.
On the basis of the above embodiment, the updating the switch port state and marking the packet according to the determination result and the switch port state at the current time further includes:
when the port state switching time difference is smaller than the preset time length threshold, updating the port state of the switch to be in a waiting state, and if the data packet is not marked to be in a congestion state, marking the data packet to be in the waiting state;
if the packet has been marked as experiencing a congestion state, the packet is dequeued.
On the basis of the above embodiment, an overall flow of the congestion detection method for a lossless network provided by the present invention is described by an embodiment, and the specific steps are as follows:
s1, calculating the current time stamp t of the exchanger and the last port closing state ending time stamp toffDifference value T betweendIf T isd>=TmaxAnd the current state of the port is in the non-pending state (i.e. in the non-congested state or the congested state), go to step S2; if Td>=TmaxAnd the current state of the port is pending, go to step S3; if Td<TmaxUpdating the state of the port to be determined, and executing step S4;
s2, if the queue length of the data packet in the switch exceeds the threshold q of the queue length of the congestion at the momentlenIt should be noted that, in this embodiment, the threshold of the length of the congestion queue is used to determine whether the port is congested, and the threshold is usually smaller, for example, generally selected between 5KB and 200 KB. And X for triggering PAUSE frame and RESUME frameoffAnd XonValue, typically greater than a congestion queue length threshold, e.g. Xoff320KB or 512KB, and XonValue and XoffThe difference in value is small and is generally set as Xoff=Xon+2 KB; if the length of the data packet queue in the switch is less than or equal to the threshold value q of the length of the congestion queue at the momentlenUpdating the current state of the port to be in a non-congestion state, and executing the step S7;
s3, if the preset time length threshold T is lastmaxIn the time period, the length of the data packet queue is reduced, and the length of the current data packet queue is higher than the threshold value q of the length of the congestion queuelenStep S7 is executed; if the length of the current data packet queue is less than or equal to the threshold value q of the length of the congestion queuelenUpdating the current state of the port to be in a non-congestion state, and executing the step S7; if it was last presetDuration threshold TmaxIn the time period, the length of the data packet queue is not reduced and the length of the data packet queue is larger than a threshold q of the length of the congestion queuelenUpdating the current state of the port to be the congestion state, and executing the step S6;
s4, if the data packet is not marked to experience congestion state, executing step S5; otherwise, executing step S7;
s5, marking the data packet as undergoing a pending state (UE), going to step S8;
s6, marking the packet as experiencing Congestion (CE);
s7, dequeuing the data packet;
s8, the steps S1 to S7 are repeated until the switch finishes working.
In another embodiment, simulation results show that the congestion detection mechanism of the loss-free network provided by the invention can correctly mark three states of the port of the switch. Specifically, fig. 3 is a schematic diagram of a network topology of a simulation configuration provided by the present invention, and reference may be made to fig. 3, where in the simulation experiment, a link is 40Gbps, a propagation delay is 4us, and an MTU is 1000B. For the network using the cache-based hop-by-hop technique, T is calculated by the formula of the above embodimentmaxValue 100.4us, switch Xoff320 KB. For networks using timer-based hop-by-hop flow control techniques, the Tc value is 40us and the switch caches 280KB per port. As shown in fig. 3, the sender S1 sends a long stream F1 to the receiver R1. Senders a0 to a14 as burst traffic send concurrent 64KB short streams to R1. Assume that F1 reaches 40Gbps at the start of the simulation. Starting at timestamp 0, the concurrent short stream starts and lasts about 3 ms. After the short stream starts, the long streams F0 and F2 are simultaneously transmitted to the receiving end R0 at a constant rate. Fig. 4 is a schematic diagram of an evolution situation and a marking situation of an output port queue length of a switch in two scenarios of the cache-based hop-by-hop flow control technique provided by the present invention, and fig. 5 is a schematic diagram of an evolution situation and a marking situation of an output port queue length of a switch in two scenarios of the timer-based hop-by-hop flow control technique provided by the present invention, which can be referred to fig. 3, 4, and 5:
in the single congestion point scenario, port P3 is the only congestion point. Stream F1 begins at a rate of 40 Gbps. After the short stream starts, streams F0 and F2 are transmitted at a constant 5Gbps rate. When flows F0 and F2 start, the rate of F1 has dropped below 15Gbps under the sender congestion control algorithm. At this time, the ports P2 and P1 transition from the pending state to the uncongested state.
In the multiple congestion point scenario, ports P3 and P2 are both congestion points. Stream F1 begins at a rate of 40 Gbps. After the short stream starts, streams F0 and F2 are transmitted at a constant 25Gbps rate. When flows F0 and F2 start, the rate of F1 has dropped below 15Gbps under the sender congestion control algorithm. At this time, the port P2 changes from the pending state to the congestion state; port P1 is pending.
The large-scale simulation result of the embodiment shows that the congestion control algorithm can obtain better performance and accelerate the flow completion speed by matching with the three-state congestion detection and marking mechanism provided by the invention. For congested flows, aggressive throttling; for the pending flow, its rate is kept constant. In this embodiment, the network topology is a three-tier fat-tree topology, 250 servers. Link speed 40Gbps, propagation delay 4us, MTU 1000B. Fig. 6 is a schematic diagram showing a comparison between flow completion speeds of a congestion detection mechanism provided by the present invention and a congestion control algorithm in a large-scale simulation experiment in cooperation with a conventional congestion control algorithm, as shown in fig. 6, taking a cache-based hop-by-hop flow control technique as an example, TmaxThe value was 100.4 us. The slowdown (slowdown) of each flow is counted, namely:
Figure BDA0003117247090000131
in this embodiment, the reference completion time for a flow may be calculated in advance from the known flow size divided by the link speed. The smaller the slowdown, the closer to 1, indicating better flow completion time performance. Referring to fig. 6, a slowdown indicator between different flow sizes is shown, including a slowdown of 99 percentile and a slowdown of 50 percentile. Dcqcn (data centered Quantized Congestion notification) is a common Congestion protocol, and its Congestion detection mechanism only judges whether Congestion occurs according to the queue length, but ignores the pending state of the port, which may cause misjudgment. After the tri-state congestion detection method provided by the invention is adopted, the congested port and the undetermined port can be correctly distinguished, the congestion flow passing through the congested port is timely decelerated, and the flow only passing through the undetermined port is not unnecessarily decelerated, so that the flow completion speed is improved. The result shows that in the DCQCN + tri-state congestion detection method (adopting the curve marked by the hollow marks), both the 99 percentile slowdown curve and the 50 decile slowdown curve are positioned below the DCQCN curve, and the performance is obviously improved.
Fig. 7 is a schematic structural diagram of a congestion detection system of a lossless network according to the present invention, and as shown in fig. 7, the present invention provides a congestion detection system of a lossless network, which includes a port switching processing module 701 and a congestion detection module 702, where the port switching processing module 701 is configured to obtain a port state switching time difference according to a current timestamp and a port closing state ending timestamp; the congestion detection module 702 is configured to obtain a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
According to the congestion detection system of the lossless network, provided by the invention, the transition among three states of the switch port in the lossless network can be accurately detected and identified by detecting the time length of the switch port Opening (ON) period and the evolution characteristics of the data packet queue length, and the data packet is correctly marked, so that a congestion control algorithm can more efficiently finish a speed regulation decision, and the flow completion time and the throughput are improved.
The system provided by the present invention is used for executing the above method embodiments, and for the specific processes and details, reference is made to the above embodiments, which are not described herein again.
Fig. 8 is a schematic structural diagram of an electronic device provided in the present invention, and as shown in fig. 8, the electronic device may include: a processor (processor)801, a communication interface (communication interface)802, a memory (memory)803 and a communication bus 804, wherein the processor 801, the communication interface 802 and the memory 803 complete communication with each other through the communication bus 804. The processor 801 may invoke logic instructions in the memory 803 to perform a congestion detection method for a loss-free network, the method comprising: acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp; and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
In addition, the logic instructions in the memory 803 may be implemented in the form of software functional units and stored in a computer readable storage medium when the logic instructions are sold or used as independent products. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
In another aspect, the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions, when the program instructions are executed by a computer, the computer being capable of executing the congestion detection method for a lossless network provided by the above methods, the method including: acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp; and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
In yet another aspect, the present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored, the computer program being implemented by a processor to perform the congestion detection method for a loss-free network provided in the foregoing embodiments, the method including: acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp; and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. A congestion detection method for a loss-free network, comprising:
acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp;
and obtaining a congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time.
2. The method of congestion detection for a loss-free network of claim 1, wherein the method further comprises:
if the network is not lost and a hop-by-hop flow control technology based on the cache is adopted, the port closing state ending timestamp is the timestamp of the RESUME frame received last time;
if the loss-free network adopts a hop-by-hop flow control technology based on a timer, the port closing state ending timestamp is a timestamp when a new credit value is received in a state that a last credit value is zero, the credit value is obtained through a difference value between a credit limit value and the number of data blocks sent by the switch, and the credit limit value is the sum of the currently allocated buffer amount of the downstream switch and the received data blocks.
3. The method according to claim 1, wherein obtaining the congestion detection result of the lossless network according to the port state switching time difference and the switch port state at the current time includes:
comparing and judging the port state switching time difference value with a preset time threshold;
updating the port state of the switch according to the judgment result and the port state of the switch at the current moment, and marking a data packet;
the switch port state comprises a non-congestion state, a congestion state and a waiting state, wherein the non-congestion state is a state that a port is opened and no data packet queue is accumulated, the congestion state is a state that the port is opened and the data packet queue is accumulated, and the waiting state is a state that the port is switched on and off for a plurality of times;
and obtaining a congestion detection result of the loss-free network according to the updating result and the marking result.
4. The method according to claim 3, wherein before the comparing and determining the difference between the port state switching time and the preset time threshold, the method further comprises:
if the non-loss network adopts a hop-by-hop flow control technology based on the cache, the formula of the preset duration threshold is as follows:
Figure FDA0003117247080000021
Figure FDA0003117247080000022
wherein, TmaxRepresenting a preset time threshold, XoffPreset port queue entry length threshold, X, indicating trigger for PAUSE frame transmissiononRepresenting a preset port queue entry length threshold for triggering RESUME frame sending, C representing link bandwidth, tau representing response time, epsilon representing a fixed parameter, link delay representing link delay, and MTU representing a maximum transmission unit;
and if the loss-free network adopts a hop-by-hop flow control technology based on the timer, the preset time threshold is the preset overtime of the timer.
5. The method according to claim 3, wherein the updating the switch port state and marking the packet according to the judgment result and the switch port state at the current time comprises:
when the difference value of the port state switching time is greater than or equal to the preset time threshold and the port state of the switch at the current time is a non-waiting state,
if the length of the data packet queue is larger than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet;
and if the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the state of the switch port to be a non-congestion state, and dequeuing the data packet.
6. The method according to claim 3, wherein the updating the switch port state and marking the packet according to the judgment result and the switch port state at the current time further comprises:
when the port state switching time difference is greater than or equal to the preset time length threshold and the port state of the switch at the current time is to be set,
if the length of the data packet queue is reduced and the length of the data packet queue is larger than the threshold value of the length of the congestion queue, dequeuing the data packet;
if the length of the data packet queue is reduced and the length of the data packet queue is less than or equal to the threshold value of the length of the congestion queue, updating the port state of the switch into a non-congestion state, and dequeuing the data packet;
and if the length of the data packet queue is not reduced and the length of the data packet queue is greater than the threshold value of the length of the congestion queue, updating the state of the switch port to be in a congestion state, marking the congestion state of the data packet, and dequeuing the data packet.
7. The method according to claim 3, wherein the updating the switch port state and marking the packet according to the judgment result and the switch port state at the current time further comprises:
when the port state switching time difference is smaller than the preset time length threshold, updating the port state of the switch to be in a waiting state, and if the data packet is not marked to be in a congestion state, marking the data packet to be in the waiting state;
if the packet has been marked as experiencing a congestion state, the packet is dequeued.
8. A congestion detection system for a loss-free network, comprising:
the port switching processing module is used for acquiring a port state switching time difference value according to the current timestamp and the port closing state ending timestamp;
and the congestion detection module is used for obtaining a congestion detection result of the loss-free network according to the port state switching time difference and the switch port state at the current time.
9. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor when executing the computer program realizes the steps of the congestion detection method of a lossless network according to any of claims 1 to 7.
10. A non-transitory computer readable storage medium having stored thereon a computer program, which when executed by a processor, performs the steps of the congestion method of the loss-free network according to any one of claims 1 to 7.
CN202110665574.0A 2021-06-16 Congestion detection method and system for non-lost network Active CN113572655B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110665574.0A CN113572655B (en) 2021-06-16 Congestion detection method and system for non-lost network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110665574.0A CN113572655B (en) 2021-06-16 Congestion detection method and system for non-lost network

Publications (2)

Publication Number Publication Date
CN113572655A true CN113572655A (en) 2021-10-29
CN113572655B CN113572655B (en) 2024-06-07

Family

ID=

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113949651A (en) * 2021-11-01 2022-01-18 北京百度网讯科技有限公司 Network transmission method, device, equipment, storage medium and program product
CN116208289A (en) * 2023-04-28 2023-06-02 北京邮电大学 Time synchronization method and device based on white box switch and electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10063481B1 (en) * 2015-11-10 2018-08-28 U.S. Department Of Energy Network endpoint congestion management
CN108512774A (en) * 2018-04-18 2018-09-07 清华大学 Without the jamming control method lost in network
CN108540395A (en) * 2018-04-18 2018-09-14 清华大学 Without the congestion judgment method lost in network
CN109005053A (en) * 2018-07-11 2018-12-14 新华三技术有限公司 A kind of port status determines method and forwarding device
US20200236052A1 (en) * 2020-03-04 2020-07-23 Arvind Srinivasan Improving end-to-end congestion reaction using adaptive routing and congestion-hint based throttling for ip-routed datacenter networks
CN111526096A (en) * 2020-03-13 2020-08-11 北京交通大学 Intelligent identification network state prediction and congestion control system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10063481B1 (en) * 2015-11-10 2018-08-28 U.S. Department Of Energy Network endpoint congestion management
CN108512774A (en) * 2018-04-18 2018-09-07 清华大学 Without the jamming control method lost in network
CN108540395A (en) * 2018-04-18 2018-09-14 清华大学 Without the congestion judgment method lost in network
CN109005053A (en) * 2018-07-11 2018-12-14 新华三技术有限公司 A kind of port status determines method and forwarding device
US20200236052A1 (en) * 2020-03-04 2020-07-23 Arvind Srinivasan Improving end-to-end congestion reaction using adaptive routing and congestion-hint based throttling for ip-routed datacenter networks
CN111526096A (en) * 2020-03-13 2020-08-11 北京交通大学 Intelligent identification network state prediction and congestion control system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HUANG SHAN 等: "Congestion control in high-speed lossless data center networks: A survey", FUTURE GENERATION COMPUTER SYSTEMS, 3 July 2018 (2018-07-03), pages 360 - 374 *
罗鉴 等: "无损以太网关键技术研究", 中兴通讯技术, 31 August 2012 (2012-08-31), pages 27 - 31 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113949651A (en) * 2021-11-01 2022-01-18 北京百度网讯科技有限公司 Network transmission method, device, equipment, storage medium and program product
CN116208289A (en) * 2023-04-28 2023-06-02 北京邮电大学 Time synchronization method and device based on white box switch and electronic equipment
CN116208289B (en) * 2023-04-28 2023-07-21 北京邮电大学 Time synchronization method and device based on white box switch and electronic equipment

Similar Documents

Publication Publication Date Title
US11336581B2 (en) Automatic rate limiting based on explicit network congestion notification in smart network interface card
CN107204931B (en) Communication device and method for communication
JP5157577B2 (en) Packet buffer management device for determining arrival packet discard and its discard determination method
CN106062726B (en) Flow aware buffer management for data center switches
CN109120544B (en) Transmission control method based on host end flow scheduling in data center network
EP1805524B1 (en) Active queue management method and device
US7911960B1 (en) Delayed-start method for minimizing internal switch congestion
US9674102B2 (en) Methods and network device for oversubscription handling
CN112104562B (en) Congestion control method and device, communication network and computer storage medium
CN107948103B (en) Switch PFC control method and control system based on prediction
US7164687B2 (en) Queue control method and relay apparatus using the method
US8081644B2 (en) Method and device for controlling a queue buffer
US11290388B2 (en) Flow control method and apparatus
EP2979407A1 (en) Re-marking of packets for queue control
CN110138678B (en) Data transmission control method and device, network transmission equipment and storage medium
CN113315720B (en) Data flow control method, system and equipment
CN113064738B (en) Active queue management method based on summary data
JP7211765B2 (en) PACKET TRANSFER DEVICE, METHOD AND PROGRAM
CN113572655B (en) Congestion detection method and system for non-lost network
CN113572655A (en) Congestion detection method and system for loss-free network
JPWO2003053012A1 (en) Policing control method, control device thereof, and network system using the control device
CN115914115A (en) Network congestion control method, device and communication system
JP4276094B2 (en) Communication apparatus and priority control method for performing priority control of packet
CN115102905A (en) ECN (engineering-centric networking) waterline adjusting method and device
RU2728948C1 (en) Method for early detection of occurrence moment of poisson&#39;s teletraffic overload

Legal Events

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