<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>International Conference on Computer and Intelligent Control, June</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Survey of model and algorithms of host-to-host congestion control</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pengtao Kang</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tao Feng</string-name>
          <email>feng09@163.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Xianming Gao</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Systems Engineering Institute AMS PLA</institution>
          ,
          <addr-line>Beijing 100039</addr-line>
          ,
          <country country="CN">China</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <volume>2</volume>
      <fpage>9</fpage>
      <lpage>30</lpage>
      <abstract>
        <p>Host-to-host congestion control is an important technology that avoids network congestion and improves network transmission performance by controlling the transmission rate. However, it is difficult for host-to-host congestion control mechanisms to remain effective in dynamic networks due to factors such as imperfect feedback information, error-prone congestion detection, slow convergence control algorithm, etc. In order to provide a basis for the development of new mechanisms, this paper provides a comprehensive review of control models, congestion detection and control algorithms, as well as evaluation indicators and the main challenges associated with such networks. Furthermore, the paper discusses the potential of intelligent algorithms and edge-host cooperation in host-to-host congestion control. host-to-host congestion control, control model, congestion detection algorithm Communication networks have seen a revolutionary shift in recent decades, largely due to soaring data consumption and the widespread adoption of connected devices [1]. As the number of devices and data usage surge, network congestion is emerging as a critical concern once again. Moreover, applications like live broadcasting and gaming, which are increasingly popular, demand stringent requirements for low latency, high bandwidth, and stable host-to-host communication [2, 3]. Consequently, refining the host-to-host congestion control mechanism has become an urgent practical matter.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>through network feedback signals, the paper effectively compares their strengths
and weaknesses.</p>
      <p>We highlight the main challenges in mechanism design, delving into how intelligent
algorithm and edge computing technologies could address issues like hosts
collaboration, feedback delay, and inaccuracy.</p>
      <p>The structure of the paper unfolds as follows: Section 2 classifies and compares control
models, while Section 3 provides a summary of congestion detection. Section 4 delves into
the analysis of control algorithms, and Section 5 introduces the evaluation indicators.
Section 6 elucidates the main challenges faced in mechanism design. Section 7 discusses
potential future directions, and the paper concludes in Section 8.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Control model</title>
      <p>Host-to-host congestion control models can be categorized based on the involvement of
switches into implicit feedback model and explicit feedback model. The implicit feedback
model operates without direct communication from switches, whereas the explicit feedback
model relies on direct signals or data from switches to manage congestion. This distinction
is vital for understanding the underlying mechanisms and effectiveness of each approach in
different network environments.</p>
      <sec id="sec-2-1">
        <title>2.1. Implicit feedback model</title>
        <p>The implicit feedback model is shown as Figure 1. This model is fundamentally composed
of the sender and the receiver. The basic operation process can be outlined in the following
steps:
1. The sender initiates the process by transmitting packets at a predetermined rate.
2. Upon receiving these packets, the receiver generates ACKs (acknowledge packets).
3. The receiver then sends these ACKs back to the sender.
4. The sender, upon receiving the ACKs, analyzes them to extract the network state.
5. Based on the results of this congestion detection, the sender implements a control
algorithm.
6. The sender adjusts its packet sending rate according to the outputs of the control
algorithm.</p>
        <p>
          The emergence of the implicit feedback model can be traced back to post-1986
developments, driven by the early switches’ limitations in providing network status
information to terminals. This led to the development of various host-to-host congestion
control mechanisms based on this model, such as Tahoe [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], TCP Reno [
          <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
          ], TCP NewReno
[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], TCP BBR [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], and referenced in [
          <xref ref-type="bibr" rid="ref10 ref11 ref12 ref9">9-12</xref>
          ].
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Explicit feedback model</title>
        <p>As illustrated in Figure 2, the explicit feedback model is composed of three key components:
the sender, the switch, and the receiver. The operation process unfolds as follows:
1. The sender starts by transmitting packets at a predetermined rate.
2. As packets pass through, the switch embeds network status information into them.
3. The receiver, upon receiving enhanced packets, adds network status information
into ACKs.
4. The receiver then sends these ACKs back to the sender.
5. The sender analyzes the ACKs to extract network status information.
6. Based on the congestion detection, the sender implements a specific control
algorithm.
7. The sender adjusts its transmission rate according to the results of the control
algorithm.</p>
        <p>
          The explicit feedback model gained prominence following the introduction of ECN
(Explicit Congestion Notification) in 2001, as per RFC 3168 [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]. This model has been
further developed and refined in various mechanisms, including DCQCN [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], HPCC [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] and
referenced in [15-21].
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Comparative analysis</title>
        <p>Through the above analysis, the implicit feedback model is characterized by its
straightforward structure, ease of implementation, and excellent scalability. However, it has
a limitation in collecting detailed network feedback, such as queue size and link utilization.</p>
        <p>The explicit feedback model enhances the implicit model by providing more detailed link
information, such as queue size and link utilization, for a deeper network understanding.
However, it has scalability and deployment challenges due to higher network device
capability requirements.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Congestion Detection</title>
      <sec id="sec-3-1">
        <title>3.1. Network status collection</title>
        <p>Network status collection is crucial for detecting congestion effectively. Here’s a summary
of the five primary methods for collecting network status information:
1. Using Packet Transmission Status: This basic method uses sent packets and received
ACKs to calculate RTT (round-trip time), infer available bandwidth from ACK rates,
and detect packet loss from ACKs. It’s simple, but limited in the data it can collect.
2. Using SDN Controller [22]: In SDN networks, the controller provides a full view,
collecting data like queue size and delay from switches. For instance, TCCS
mechanism [23] uses OpenFlow protocol to collect switch queue size for addressing
TCP incast issues. However, larger networks and loads can affect the timeliness of
data collection.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Congestion detection algorithms</title>
        <p>Congestion detection algorithms categorize the network into congested and uncongested
states using network status information. The normalized representation can be described
as follows:
fcongestion = tfraulsee
condition1
otherwise</p>
        <p>The condition1 denotes boundary conditions and its setting depends on the specific
network feedback information. Congestion detection algorithms can be categorized into
seven types based on the network status information they utilize.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.2.1. Loss-Based detection algorithm</title>
        <p>
          The Loss-Based detection algorithm uses packet loss as a key indicator of network
congestion. Packet loss is typically identified by observing duplicate ACKs. Notable
LossBased congestion detection mechanisms include TCP Tahoe [28], TCP Reno [29], and TCP
NewReno [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. The formula for Loss-Based congestion detection [28] is:
fcongestion = tfraulsee
        </p>
        <sec id="sec-3-3-1">
          <title>NACKi ≥ 3</title>
          <p>otherwise
NACKi represents the number of times ACKi.</p>
        </sec>
      </sec>
      <sec id="sec-3-4">
        <title>3.2.2. RTT-Based detection algorithm</title>
        <p>The queue size measures network congestion, and RTT mirrors this by reflecting the time
from packet send to ACK receipt. RTT fluctuates due to network queuing, with its average
(   ) rising with queue size. The RTT range widens with network load  (ratio of packet
arrival to departure rate), given as (−(1 −  ) − 1    (1 −  ) − 1   ), where  is
a window factor. Thus, RTT serves to evaluate network congestion. The RTT is calculated
using the following formula:
(1)
(2)</p>
        <p>R(tc ) = tc − ts −σ
fcongestion = tfraulsee</p>
        <p>R ≥ Thigh
otherwise</p>
        <p>Here   denotes the sending time of packet i,   represents the time when the sender
receives ACKi, and  stands for an error factor.</p>
        <p>
          There exist two types of congestion detection algorithms based on RTT:
1. Instantaneous RTT-Based Congestion Detection
 represents the most recent measured value of RTT, and  ℎ  ℎ is a threshold factor.
There are congestion detection mechanisms grounded in instantaneous RTT, examples
being TIMELY [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] and Swift [30].
        </p>
        <p>2. Average RTT-Based Congestion Detection</p>
        <p>RS = αRS + (1 −α )R, fcongestion = tfraulsee</p>
        <p>RS ≥ Thigh
otherwise</p>
        <p>Similar to the instantaneous RTT approach,   denotes the estimated value of RTT [28],
the variable α represents a smoothing factor. Schemes based on average RTT include Vegas
[31] and FAST TCP [32], among others.</p>
      </sec>
      <sec id="sec-3-5">
        <title>3.2.3. BDP-Based detection algorithm</title>
        <p>
          In the congestion control pipeline model, Figure 3 illustrates the interrelationships among
RTT, delivery rate, and the amount of data in flight (i.e., data sent but not yet acknowledged)
[
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. The blue line represents the stage where the queue size is zero, the green line represents
the stage where the queue size grows, and the red line represents the stage where the
packets exceed the buffer capacity.
        </p>
        <p>The Figure 3 shows that the optimal network transmission performance occurs where
the blue and green lines intersect, indicating the lowest RTT and highest delivery rate. In
(3)
(4)
(5)
Rα (t) = min(R(t)),</p>
        <p>
          ∀t ∈ [t − WR ,t]
 ( ) denotes the latest measured RTT, and   represents a window factor.
The formula for calculating the maximum delivery rate [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] is:
        </p>
        <p>B(t) = max(Rd(t)),</p>
        <p>∀t ∈ [t − WB ,t]
  ( ) =   /∆ , where   is the number of ACKs received during ∆ .   is a window
factor.</p>
        <p>In accordance with the definition of BDP, the BDP-Based congestion detection formula is:
fcongestion = tfraulsee</p>
        <p>
          N flight ≥ Rα ⋅ B
otherwise
   ℎ represents the amount of data in flight,   is the minimum RTT, and  is the
maximum delivery rate. BDP-Based congestion detection mechanisms, such as BBR [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] and
BBR-ACD [33], leverage these principles for effective congestion control.
        </p>
        <p>fcongestion = tfraulsee
getCNP = true
otherwise
fcongestion = tfraulsee</p>
        <p>
          Rsum / C ≥ ϕ
otherwise
the BDP-Based Detection Algorithm, the blue line’s region signifies no network congestion,
while other areas suggest congestion. The Bandwidth-Delay Product (BDP) is calculated as
the product of the minimum RTT and the maximum delivery rate, using statistical data for
these values. The formula for the minimum RTT [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] is given by:
(6)
(7)
(8)
(9)
(10)
        </p>
        <p>ECN-Based congestion detection mechanisms, such as DCTCP [25] and D2TCP [34],
utilize these principles to effectively detect and respond to network congestion.</p>
        <p>
          represents the total traffic of the bottleneck link,  represents the bandwidth of
the bottleneck link, and  is a threshold factor. Link-Utilization-Based congestion
detection mechanisms, such as HPCC [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] and EagerCC [35], leverage these principles to
effectively identify and respond to network congestion based on link utilization metrics.
        </p>
      </sec>
      <sec id="sec-3-6">
        <title>3.2.4. ECN-Based detection algorithm</title>
        <p>ECN is a mechanism that uses the last two bits of the DSCP (Differentiated Services Code
Point) field in the IP header to signal congestion. When a switch’s queue size exceeds a set
threshold, it marks subsequent packets with ECN. Upon receiving an ECN-marked packet,
the receiver generates a Congestion Notification Packet (CNP) and forwards it to the sender.
This process allows the detection of network congestion, and the formula is as follows:</p>
      </sec>
      <sec id="sec-3-7">
        <title>3.2.5. Link-Utilization-Based detection algorithm</title>
        <p>In the context of network congestion, link utilization serves as a direct indicator of the
congestion level. The congestion detection formula based on link utilization is expressed as:</p>
      </sec>
      <sec id="sec-3-8">
        <title>3.2.6. Equation-Based detection algorithm</title>
        <p>Equation-based congestion detection evaluates network state by constructing a utility
function. The formula based on equations is expressed as:
(11)
(12)
true
fcongestion =  false</p>
        <p>F(x1, x2 ,..., xN ) ≥ Thigh
otherwise
 represents the utility function.  1,  2    represent network status.  ℎ  ℎ is a
threshold factor. Equation-based congestion detection mechanisms allow for customizable
design to fit specific requirements. For instance, the network performance-oriented
congestion control framework [36] assesses network status by constructing a utility
function based on throughput, loss rate, and delay.</p>
      </sec>
      <sec id="sec-3-9">
        <title>3.2.7. Composite-Approach-Based detection algorithm</title>
        <p>Practical congestion control mechanisms often employ a combination of algorithms. The
congestion detection formula based on composite approach is expressed as:
fcongestion = tfraulsee
f1 = true or f2 = true
otherwise
 1 and  2 represent the results of certain detection algorithms.
Composite-ApproachBased Detection mechanisms leverage these principles to combining the advantages of
multiple detection methods. For example, TCP Africa [37] integrates both loss-based and
RTT-based algorithms for effective congestion detection.</p>
      </sec>
      <sec id="sec-3-10">
        <title>3.2.8. Comparative analysis</title>
        <p>

</p>
        <p>Loss-Based Detection Algorithm: The Loss-Based detection algorithm operates on a
simple principle and can be implemented in the implicit feedback model. It
effectively determines network congestion, serving as the fundamental detection
algorithm for TCP. However, it lacks the ability to differentiate between packet loss
due to damage and congestion, performing poorly in high-error-rate networks like
wireless networks. It exhibits low sensitivity in low congestion levels, leading to
potential buffer overflow issues.</p>
        <p>RTT-Based Detection Algorithm: The RTT-Based detection algorithm is
implementable in the implicit feedback model, allowing the adaptation of congestion
detection thresholds to different environments. Yet, its accuracy is influenced by the
randomness of RTT, and it suffers from a feedback time delay problem. As
congestion intensifies, the RTT feedback duration increases, resulting in delayed
congestion control.</p>
        <p>BDP-Based Detection Algorithm: Implementable in the implicit feedback model, the
BDP-Based detection algorithm is insensitive to packet loss, avoiding misjudgments
caused by damage-related losses in the Loss-Based detection. It effectively
determines worsening congestion based on RTT sensitivity. However, it heavily


relies on RTT and has a long detection period, leading to poor performance in highly
dynamic environments, such as wireless networks.</p>
        <p>ECN-Based and Link-Utilization-Based Detection Algorithms: Both ECN-Based and
Link-Utilization-Based detection algorithms can only be implemented in the explicit
feedback model. They accurately determine network congestion and proactively
control congestion through factor settings. However, they require network devices
to support corresponding protocols, resulting in poor scalability.</p>
        <p>Equation-Based and Composite-Approach-Based Detection Algorithms: The
Equation-Based detection algorithm establishes a mapping between network status
information and congestion using complex functions, offering fine granularity. The
Composite-Approach-Based detection algorithm combines the advantages of
multiple detection methods to improve adaptability. However, these algorithms
have high complexity, and their performance is challenging to guarantee in dynamic
environments.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Control Algorithm</title>
      <p>Disadvantages
Misjudgment during packet loss;</p>
      <p>Buffer overflow problems.</p>
      <p>Limited accuracy due to delay;</p>
      <p>Feedback delay problem.</p>
      <p>Heavy reliance on RTT;</p>
      <p>Long detection period;
Poor performance in dynamic</p>
      <p>environments.</p>
      <p>Complex structure;</p>
      <p>Poor scalability.</p>
      <p>High complexity;
Unstable performance in
dynamic environments.</p>
      <p>High complexity;
Unstable performance in
dynamic environments.</p>
      <p>The control algorithm computes the new sending rate based on congestion detection. The
basic strategy is to decrease the sending rate when congestion occurs and increase the
sending rate when there is no congestion. Its normalized representation is
RC ⋅ A − B
Rnew = 
RC ⋅C + D
fcongestion = true
fcongestion = false
,
   represents the new sending rate.   represents the current sending rate.  ,  , 
and  are the control parameters whose values depend on the network feedback
information. It should be noted that there is a corresponding linear relationship between
the sending rate and the congestion window, and that adjusting the congestion window can
be converted equivalently to adjusting the sending rate. According to the network feedback
information and calculation rules, six typical control algorithms are selected to be analysed
in this section.
(13)</p>
      <sec id="sec-4-1">
        <title>4.1. Loss-Based control algorithm: TCP Reno [38]</title>
      </sec>
      <sec id="sec-4-2">
        <title>4.1.1. Overview of the algorithm</title>
        <p>The TCP Reno algorithm encompasses several key components, including the slow start,
congestion avoidance, timeout retransmit, fast retransmit, and fast recovery algorithms.
1. Slow start algorithm</p>
        <p>When the congestion window (cwnd) is less than the slow-start threshold (ssthtesh), and
a new ACK is received, cwnd is incremented by 1 (in MSS, Maximum Segment Size units).
2. Congestion avoidance algorithm
When cwnd ≥ ssthtesh, upon receiving a new ACK, cwnd=cwnd+1/cwnd.
3. Timeout retransmission algorithm</p>
        <p>If RTT&gt;RTO (the retransmission timeout), ssthtesh=max(2, cwnd/2), and cwnd=1,
entering the slow-start state.</p>
        <p>4. Fast retransmit algorithm
5. Fast recovery algorithm</p>
        <p>Upon receiving 3 duplicate ACKs, ssthtesh=max(2, cwnd/2), and cwnd=cwnd/2. This
triggers the fast recovery state.</p>
        <p>In response to duplicate ACKs, cwnd=cwnd+1; upon receiving a new ACK, cwnd=ssthresh,
transitioning into the congestion avoidance state.</p>
      </sec>
      <sec id="sec-4-3">
        <title>4.1.2 Fluid model</title>
        <p> 0,
p(t) = pmax ⋅(q(t) − Kmin),
 1,
q(t) ≤ Kmin</p>
        <p>Kmin &lt; q(t) ≤Kmax
q(t) &gt; Kmax
(14)
(15)</p>
        <p>Ri (t) =
τ i (t) =
q(t)
C</p>
        <p>Wi (t)
τi</p>
        <p>i
+ Dprop
dWi(t) =
dt</p>
        <p>1 − Wi(t)
τi(t)
2</p>
        <p>Ri(t)p(t)</p>
      </sec>
      <sec id="sec-4-4">
        <title>4.1.3 Algorithm analysis</title>
        <p>1. Stability and Proof
remains constant. Assuming</p>
        <p>If the algorithm is stable, there must be a point where the sending rate of all flows
   = 0, the equations at the stable point can be derived as
(16)
(17)
(18)
(19)
(20)
2 = Wi2 ⋅ p
 ∑iN=1 τ i</p>
        <p>Wi = C</p>
        <p>The equations with two unknowns have a unique solution. Furthermore, the unique
solution satisfies 1 =  2 = ⋯ =   , indicating the stability of the TCP Reno algorithm.
2. Unfairness and Proof</p>
        <p>Assuming flow A and B share the same path, with   ( ) &gt;   ( ), let  ( ) =   ( ) −
  ( ). Utilizing equation (18), we can derive:
dWA(t) − dWB(t) = p(t)
dt
2τ (t)</p>
        <p>(WB2(t) − WA2(t)) &lt; 0</p>
        <p>The decreasing function  ( ) leads to equal congestion windows  1 =  2 = ⋯ =  
across flows, showing algorithm convergence. However, because   ( ) =   ( )/  , the
algorithm does not ensure fair bandwidth sharing, lacking inherent fairness.</p>
      </sec>
      <sec id="sec-4-5">
        <title>4.2. RTT-Based control algorithm: Patched TIMELY [39]</title>
      </sec>
      <sec id="sec-4-6">
        <title>4.2.1. Overview of the algorithm</title>
        <p>Patched TIMELY algorithm consists of two parts: RTT algorithm and rate algorithm.
1. RTT algorithm</p>
        <p>RTT = tc − ts −
seg.size</p>
        <p>NICrate

 refers to the time when packet  is sent, and   indicates the time when the   
is received. NICrate denotes the bandwidth capacity of the Network Interface Card (NIC),
while seg.size represents the size of an individual data burst.</p>
        <p>2. Rate algorithm

R + δ
R = R ⋅ (1 − β ⋅ (1 − Thigh / newRTT ))
δ ⋅ (1 − weight) + R ⋅ (1 − β ⋅ error ⋅ weight)
newRTT &lt; Tlow
newRTT &gt; Thigh
otherwise</p>
        <p>represents the newly measured round-trip time. The  acts as a step modifier
in the algorithm.   
and  ℎ  ℎ</p>
        <p>are critical threshold factors that guide the rate
adjustment. Additionally, error and weight function as regulatory factors in this context. The
algorithm employs specific formulas, incorporating 
and  ∗ as further regulatory
elements.</p>
        <p>g = r(t) / DminRTT ,
r(t) = (1 −α )r(t −τ *) +α∆RTT ,
error =
newRTT − Tlow ,</p>
        <p>Tlow
weight = 2g + 0.5
0

1
4.2.2. Fluid model
α
τ*
(−gi (t) +
q(t − τ') − q(t − τ' − τ*)</p>
        <p>C ⋅ DminRTT</p>
        <p>)
0

wi = 12gi + 0.5</p>
      </sec>
      <sec id="sec-4-7">
        <title>4.2.3. Algorithm analysis</title>
        <p>1. Stability and Proof
Bandwidth of 13 ottleneck link
Multiplicative decrease factor</p>
        <p>Considering the characteristics of a constant transmission rate and a stable queue size at
equilibrium, setting equation (24, 25) to zero leads to the following conclusion:
Ri = C
</p>
        <p>N

q* = NδCTlow + CTlow</p>
        <p>βC
The unique solution implies that the algorithm demonstrates stability.</p>
        <p>2. Fairness and Proof
 ∗</p>
        <p>&lt;   &lt;  ∗ ℎ  ℎ, The derivative of  ( ) =   ( ) −   ( ) is:
In the scenario where flows A and B share a bottleneck link, with   ( ) &gt;   ( ) and
dt
τ*
convergence. This ensures fair bandwidth sharing among flows in the Patched TIMELY
algorithm model, reflecting its fairness characteristic.</p>
      </sec>
      <sec id="sec-4-8">
        <title>4.3 BDP-Based control algorithm: TCP BBR [8]</title>
      </sec>
      <sec id="sec-4-9">
        <title>4.3.1 Overview of the algorithm</title>
        <p>TCP BBR consists of four main algorithms: Start-up, Drain, ProbeBW, and ProbeRTT. For an
in-depth understanding of the round-trip propagation time (  
) and the methods used
to measure the bottleneck bandwidth (BW), one should refer to Section 3.2.3.
1. Start-up algorithm</p>
        <p>Start-up phase fills the network pipe and transitions to Drain when the bandwidth
estimate stabilizes (no more than 1.25x increase over three assessments). During this phase,
(30)
(31)
R(t) =
ln 2
2 ⋅ BW (t),
cwnd(t) =
ln 2
2 ⋅ BW (t) ⋅ Dprop(t)
2. Drain algorithm</p>
        <p>In Drain, once the inflight data falls beneath the BDP threshold, the algorithm transitions
to the ProbeBW state. In this state, the calculations for rate and congestion window are as
3. ProbeBW algorithm</p>
        <p>ProbeBW algorithm regularly evaluates the bottleneck link’s bandwidth, typically every
8 round-trip propagation times. If</p>
        <p>increases within a 10-second window, the
algorithm moves to the ProbeRTT state. In ProbeBW, the rate and congestion window are
calculated as follows:
the sending rate (R) and congestion window (cwnd) are calculated with the following
considerations:
(32)
(33)
(34)
(35)
(36)
(37)
(38)
R(t) = Rgain ⋅ BW(t)</p>
        <p>Rgain = [1.25,0.75,1,1,1,1,1,1],
cwnd(t) = 2 ⋅ BW (t) ⋅ Dprop(t)
4. ProbeRTT algorithm</p>
        <p>The ProbeRTT algorithm runs for a maximum of 200 milliseconds before transitioning.
It switches back to Start-up or ProbeBW based on network load. During this state, the
algorithm calculates rate and congestion window as follows:</p>
      </sec>
      <sec id="sec-4-10">
        <title>4.3.2 Fluid model</title>
        <p>R(t) = BW (t),
cwnd(t) = 4(MSS)
dq
dt
Ti (t) =</p>
        <p>N
i=1
q(t)</p>
        <p>C</p>
      </sec>
      <sec id="sec-4-11">
        <title>4.3.3 Algorithm analysis</title>
        <p>1. Stability and Proof
Bandwidth of bottleneck link</p>
        <p>Propagation time of flow i
Setting equation (38) to zero yields a specific result:
 N
∑ Ri (t) = C
qi=(1t) = 0</p>
        <p>The result shows that the equations have multiple solutions, indicating that TCP BBR has
numerous stable points and confirming its inherent stability.</p>
        <p>2. Unfairness and Proof
be made:</p>
        <p>Given   ( ) &gt;   ( ) for flows A and B on the same path, the following observation can
d(RA(t) − RB(t)) = q(t − Dpirop) − q(t)
dt</p>
        <p>This leads to the conclusion that the rate difference between flows A and B is growing,
suggesting that flow A continues to dominate bandwidth at the bottleneck. This behavior
indicates a lack of fairness in the algorithm.</p>
      </sec>
      <sec id="sec-4-12">
        <title>4.4. ECN-Based control algorithm: DCQCN [11]</title>
      </sec>
      <sec id="sec-4-13">
        <title>4.4.1. Overview of the algorithm</title>
        <p>DCQCN consists of switch, receiver and sender algorithms.</p>
        <p>1. Switch algorithm
p(t) = 
0
1



 q(t) − Kmin Pmax
 Kmax − Kmin
q(t) ≤ Kmin
be sent per N microseconds.</p>
        <p>Here 
represents the marking probability.    
and   
define the minimum
and maximum thresholds, respectively, and   
denotes the maximum probability limit.</p>
        <p>After receiving an ECN-marked packet, the receiver sends a CNP. Maximum one CNP can
(39)
(40)
(41)
3. Sender algorithm</p>
        <p>The sender algorithm primarily governs the packet transmission rate (  ) utilizing
factors such as α (initial value is 1),  ′,   ,  , Timer   , and Byte counter   . When the
sender receives a CNP,</p>
        <p>RT = R ,</p>
        <p>C</p>
        <p>RC = RC (1 −α / 2),
α = (1 − g)α + g
If sender gets no CNP for ′,
If no CNP is received and max(NT, NBC) ≤ F occurs,
If no CNP is received and min(NT, NBC) &gt; F occurs,
α = (1 − g)α</p>
        <p>RC = (RT + RC ) / 2</p>
        <p>In other cases,</p>
      </sec>
      <sec id="sec-4-14">
        <title>4.4.2. Fluid model</title>
        <p>RT = RT + iRAI
i = NT or NBC ,</p>
        <p>RC = (RC + RT ) / 2
RT = RT + RAI ,</p>
        <p>RC = (RC + RT ) / 2
</p>
        <p>0
p(t) =  q(t) − Kmin pmax
 Kmax − Kmin
 1
q(t) ≤ Kmin
dα(i) = g ((1 − (1 − p(t −τ * ))τ'R(Ci) (t−τ* )) − α(i)(t))
dt τ'
dRC(i) = − RC(i)(t)α(i)(t)
dt</p>
        <p>(1 − (1 − p(t − τ*))τRC(i)(t−τ*) )
RT(i)(t) −2τRC(i)(t) RC(i)(t − τ*)p(t − τ*)</p>
        <p>2 (1 − p(t − τ*))−B − 1
RT(i)(t) − RC(i)(t) RC(i)(t − τ*)p(t − τ*)</p>
        <p>2 (1 − p(t − τ*))−TRC(i)(t−τ*) − 1
dRT(i) = − RT(i)(t) − RC(i )(t) (1 − (1 − p(t − τ*))τRC(i)(t−τ*) )
dt
+
+</p>
        <p>τ
RAI RC(i)(t − τ*)
RAI RC(i)(t − τ*)
(1 − p(t − τ*))FBp(t − τ*)</p>
        <p>(1 − p(t − τ*))−B − 1
(1 − p(t − τ*))FTRC(i)(t−τ*)p(t − τ*)
(1 − p(t − τ*))−TRC(i)(t−τ*) − 1
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
DCQCN Model Equation Parameters</p>
        <p>Current rate
Target rate
Decrease factor
Time
Low threshold
High threshold
Probability factor
Decrease factor
Queue size of bottleneck link





 

 ∗
 ′</p>
      </sec>
      <sec id="sec-4-15">
        <title>4.4.3. Algorithm analysis</title>
        <p>1. Stability and Proof</p>
        <p>Initially, if the bandwidth is underutilized, the sending rate increases. If it surpasses the
bottleneck capacity, congestion occurs, and the sending rate decreases. Therefore, at the
stable point, the bottleneck link bandwidth must be fully occupied and the queue size will
remain constant. Assuming the queue size at stable time is  ∗, the following equations can
be obtained.</p>
        <p>Combining equation (49-51), we see that
Here  ( )∗, a, b, c, d, e is denoted as follows：
 N
∑ RC(i)(t) = C

 i=1
p* =

 dα
 dt</p>
        <p>q * −Kmin
Kmax − Kmin</p>
        <p>Pmax
dt
dRT = 0 ,
dR
dt</p>
        <p>C = 0
a2α (i)*
τ 2RAI (b + c)(d + e)
= 0 ,
RC(i) =</p>
        <p>,
α (i)∗ = 1 − (1 − p* )τ ’RC(i)
a = 1 − (1 − p* )τRC(i)</p>
        <p>b = ((1 − p* )−B − 1)−1 p*
,
,
c = ((1 − p* )−TRC(i) − 1)−1 p*</p>
        <p>d = ((1 − p* )−B − 1)−1(1 − p* )FB p*
e = ((1 − p* )−TRC(i) − 1)−1(1 − p* )FTRC(i) p*
.</p>
        <p>,
(52)
(53)
(54)
Let
f (p* ) = τ 2RAI (b + c)(d + e)</p>
        <p>a2α (i)*
flows share  ∗, it follows that</p>
        <p>R(1)* = R(2)* = ⋅⋅⋅ = R(N)* = C / N</p>
        <p>C C C
.
the continuity principle, when   ( ) &gt; 0, there exists  ∗ such that</p>
        <p>Based on the above analysis, the DCQCN algorithm has a unique stable point, where all
flows have equal sending rates. Therefore, the DCQCN algorithm is stable.
f (p* ) = R(i)*</p>
        <p>C . Since all
. When   ( ) &gt; 0,  (0) = 0 and  (1) → +∞. According to</p>
        <p>The DCQCN algorithm’s fairness isn’t directly discernible from equation (51) due to the
interplay between RC and RT. To prove fairness, the paper uses a discrete method,
examining RC changes between CNPs. Here, we first prove two theorems.</p>
        <p>Theorem 1. In DCQCN algorithm, the smaller the sending rate of flow i is, the more
additive growth occurs between adjacent CNPs.</p>
        <p>Proof of Theorem 1. The switch algorithm estimates a flow collects CNPs at a rate of
p*RC*∆t. When a CNP is collected, the average packet sending rate is 1/p packets. This
means that the sending rates of adjacent CNPs for each flow are the same. DCQCN controls
this rate via a timer and byte counter. For equal data sent, the increment of the byte counter
is the same, but the timer increments more with smaller sending rates. Therefore, for flows
with smaller sending rates, the additive growth between adjacent CNPs occurs more
frequently.</p>
        <p>Theorem 2. In DCQCN algorithm,   ( ) is a converging function.</p>
        <p>Proof of Theorem 2. If the time interval between adjacent CNPs of flow i is ∆t, then
α (i)(t + ∆t) = (1 − g)∆t/τ '((1 − g)α (i)(t) + g) &lt; (1 − g)1+∆t/τ 'α (i)(t) &lt; α (i)(t)
(55)</p>
        <p>The function   ( ) is monotonically decreasing. Given that   ( ) &gt; 0 and 0&lt;g&lt;1, it
follows that  ( )( + ∆ )&gt;0. By induction,   ( ) &gt;0 for all t&gt;0. As   ( ) is monotonically
decreasing with an upper bound, it must converge.</p>
        <p>Below, we study the changes between adjacent CNPs. Let the receiving times of adjacent
CNPs be t and t+∆t, besides, the rate decreases at  +  ( → 0) and then experiences
additive growth for  ( ) times.</p>
        <p>Let   ( )( +  ) = (1 − 2−1 ( )( )  ( )( ) and   ( ) =  ∗( ∗ &gt; 0) , according to the
DCQCN algorithm and Theorem 2, we get that when the rate increase occurs 0 times,
  ( )[0] =   ( )( ),   ( )[0] =   ( )( +  ), ∆
=   ( )[0] −   ( )( ) = −2−1  ( )( ) ∗ .By
induction, we can obtain that at t+∆t, after N(i) growth times, ∆ = 1 − 2− ( )   −
2− ( )−1  ( )( ) ∗.</p>
        <p>Assuming the number of rate increases between adjacent CNPs at the stable point
  ( ) =</p>
        <p>, ∆ = 0 is  ( ). According to Theorem 1, if   ( )( ) &gt;  / for flow i,  ( ) &lt;
 ( ) . We can get that ∆ ( ) = 1 − 2− ( )   −2− ( )−1  ( )( ) ∗ &lt; ∆ ( ) = 0 . So
  ( )( ) will converge to the stable point where  ( )( ) =  / . When   ( )( ) &lt;  / , the</p>
        <p>In summary, in the DCQCN algorithm, all flows will share the bottleneck bandwidth. So
proof method is the same.
the algorithm is fair.</p>
      </sec>
      <sec id="sec-4-16">
        <title>4.5. Link-Utilization-Based control algorithm: HPCC [14]</title>
      </sec>
      <sec id="sec-4-17">
        <title>4.5.1. Overview of the algorithm</title>
        <p>HPCC consists of bottleneck link utilization and congestion window algorithms.
1. Bottlenck link utilization algorithm</p>
        <p>U = max(Uj )
Uj = qj + txRatej × T</p>
        <p>=
C × T
q</p>
        <p>j
C × T
+
txRatej</p>
        <p>C
txRatej =
ack1.txBytesj − ack0.txBytesj
ack1.tsj − ack0.tsj
(56)
(57)
(58)
(59)
(60)
(61)</p>
        <p>U represents the bottleneck link utilization,    1 and    0 are two ACKs, T denotes
the minimun RTT. For link  ,   ,   ,  
  , 
.   
and  represent the bandwidth
utilization, queue size, sending rate, sending data volume, timestamp and bandwidth,
respectively.</p>
        <p>2. Congestion window algorithm
   is a step factor, and η is generally set to 0.95.</p>
      </sec>
      <sec id="sec-4-18">
        <title>4.5.2. Fluid model</title>
        <p>W =</p>
        <p>W
U /η</p>
        <p>+ WAI
Ra(t) =
U j(t) = C1 ∑i Ri(t)</p>
        <p>Wa(t)</p>
        <p>τ
η
dWa(t) = (U j(t −τ )
dt
−1) Wa(t −τ ) + WAI
τ
τ</p>
        <p>Sending rate of flow a
Congestion window size of flow a
Control loop delay
Bottlenck link of flow a
the utilization of link j

 


 
flow at bottleneck link j
Sending rate of flow i
Threshold
Bandwidth of bottlenck link
Additive increase step</p>
      </sec>
      <sec id="sec-4-19">
        <title>4.5.3. Algorithm analysis</title>
        <p>1. Stability and Proof
Let the left side of equation (58) be zero, then</p>
        <p>Wa(t) =</p>
        <p>U j(t −τ )WAI</p>
        <p>U j(t −τ ) −η
For any   ( − ),   ( ) has a unique solution, so the algorithm is stable.
2. Unfairness and Proof</p>
        <p>The increasing function  ( ) contradicts the fairness assumption. Thus, HPCC
algorithm is unfair.</p>
      </sec>
      <sec id="sec-4-20">
        <title>4.6. Machine-Learning-Based control algorithm: TCP Drinc [40]</title>
        <p>TCP Drinc leverages deep reinforcement learning to regulate transmission rate. It defines
event S as a series of states, represented as  = [ 0,  1, . . . ,   ]. The state space is defined as
  = [∆ ( ),   ( ),  ( ),  ( ),    ( )] . Here, ∆ ( ) indicates the variation in the
congestion window size,   ( ) signifies the round-trip time,  ( ) is the ratio of
propagation time to RTT,  ( ) highlights the disparity between RTT and propagation time,
and    ( ) refers to the interval between successive ACKs.</p>
        <p>The action space is defined as  = [ =  + 1;  =  − 1;  =  +  −1;  =  −
 −1;  =  ].  is the congestion widow size.</p>
        <p>The reward is defined as  ( ) =  ( +   ( +   ( ))) −  ( ). Related functions are
listed below:</p>
        <p>Assuming the algorithm is fair, for flows with different initial rates, the rate difference
between them will decrease over time. If flows A and B have the same path and   ( ) &gt;
  ( ),    &lt;  . Let  ( ) =   ( ) &gt;   ( ), then
(62)
(63)
U(t) = Uα (z(t)) − βUα (τ RTT (t))</p>
        <p>t+L−1
z(t) = ∑ x(l) ⋅ (1 −η )</p>
        <p>1 −η L+1 ⋅η l−t
l=t
log(l)

Uα (l) =  l1−α
1 −α
α = 1
otherwise
,
,</p>
        <p>In the aforementioned equations,  ( ) symbolizes the network throughput at time  ,
which is derived from the congestion window and RTT. The variables  ,  ,  and  are
introduced as adjustment factors to fine-tune the algorithm. Importantly, this algorithm is
characterized by a dynamic relationship between its inputs and outputs, precluding the
formulation of a fluid model equation for analytical purposes.</p>
      </sec>
      <sec id="sec-4-21">
        <title>4.7. Comparative analysis</title>
        <p>From the standpoint of control models, algorithms based on packet loss, RTT, and
Bandwidth-Delay Product (BDP) are straightforward in their approach, allowing
implementation within an implicit feedback model. In contrast, algorithms reliant on ECN
and link utilization necessitate an explicit feedback model, entailing more complex
protocols.</p>
        <p>Regarding algorithm characteristics, the input-output relationship in the first five types
of algorithms is typically fixed. Algorithms based on packet loss, RTT, BDP, and ECN struggle
to calculate the ideal regulation rate, often resorting to heuristic strategies for incremental
adjustments. This approach introduces a degree of latency. Conversely, algorithms focusing
on link utilization avoid this drawback but demand significant network feedback data, thus
incurring higher bandwidth and computational resource costs.</p>
        <p>Control algorithms integrating machine learning exhibit a dynamic control model
contingent on specific network feedback signals. These algorithms excel in adapting to
network environment changes, automatically adjusting relevant factors to optimize
regulation strategies and enhance performance. However, the complexity of designing
appropriate reward functions, ensuring swift convergence, and managing unpredictable
outcomes makes them inherently complex.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Evaluation Indicators</title>
      <p>The criteria for assessing host-to-host congestion control are derived from network
performance metrics as outlined in [41]. Despite variations in emphasis among different
schemes, four key indicators are universally recognized: Throughput, Delay, Packet Loss
Rate, and Fairness Index, as referenced in [42].</p>
      <p>1. Throughput
2. Delay</p>
      <p>Throughput is defined as the quantity of data successfully transmitted over a network
per unit of time. This metric serves as a direct indicator of a control mechanism's efficacy.
Generally, higher throughput equates to superior performance. The formula for calculating
throughput is as follows:</p>
      <p>In this formula, ∆t represents the duration of the operational period, while N denotes the
total amount of data successfully received by the receiver.</p>
      <p>x = N / ∆t
(64)</p>
      <p>Delay is the total time for a packet's transmission and reception, including sending,
transmission, processing, and queuing delays. Optimal network performance is
characterized by low delay and its stability, which is often associated with higher
throughput and stable transmission quality. For practical measurement, the smoothed RTT
is commonly used. The formula is as follows:</p>
      <p>T(t) = αT(t) + (1 −α )(t − ts)
(65)
  is the send time for packet i, t is the    receipt time, and α is the smoothing factor.
3. Packet Loss Rate</p>
      <p>Packet Loss Rate is the ratio of lost packets to the total packets sent over a period, key
for analyzing data flows. Higher loss rates may signal network congestion and are critical
for assessing congestion control. The lower the rate, the better the performance, ideally. The
formula for Packet Loss Rate is as follows:
4. Fairness Index</p>
      <p>The Fairness Index serves as a measure of how equitably congestion control mechanisms
distribute network resources under congested conditions, quantitatively assessing fairness
in resource allocation. A common formula for calculating the Fairness Index [43] is as
follows:</p>
      <p>is the amount of data successfully received by the receiver in time interval ∆ , and
Nsend is the amount of data sent by the sender in the same period.</p>
      <p>represents the throughput for the flow  . The Fairness Index ranges from 0 to 1, with
higher values indicating better fairness. Achieving a high Fairness Index is important for
protocol coexistence on the Internet, making it a key metric for assessing congestion control
protocols.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Main Challenges</title>
      <p>A systematic analysis reveals three critical aspects of host-to-host congestion control:
realtime collection of network status, precise congestion detection, and efficient packet sending
rate control. To address these aspects, host-to-host congestion control mechanisms
encounter several challenges:
1. Hosts Coordination</p>
      <p>Host-to-host congestion control operates as a distributed system without a central
control authority. Each host independently executes control algorithms. Inconsistencies or
conflicts in the behavior of different hosts can lead to uneven bandwidth allocation, creating
fairness issues. This disparity can also trigger network congestion, adversely impacting
network transmission performance. Thus, achieving effective coordination among hosts
represents a significant challenge.</p>
      <p>2. Feedback Delay</p>
      <p>Host-to-host congestion control relies on a feedback mechanism, requiring hosts to
gather network feedback and adjust their sending rates accordingly. This process inherently
introduces a delay, especially during periods of network congestion, potentially hindering
the timely acquisition of current network status. Such delays can result in suboptimal
decision-making, affecting congestion control efficacy. Addressing feedback delay is,
therefore, a pivotal challenge.</p>
      <p>3. Inaccurate Feedback</p>
      <p>Beyond the issues caused by feedback delay, the accuracy of feedback in host-to-host
congestion control is also compromised by factors like network noise, packet loss, and
inherent randomness (e.g., RTT variation). These elements can lead to erroneous
congestion control decisions. Consequently, resolving the issue of inaccurate feedback is
another crucial challenge.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Future Directions</title>
      <p>Through the examination of existing research and considering the latest technological
trends, we identify two key areas that hold significant potential for future exploration.
1. Edge-host Collaboration Control Model</p>
      <p>Using the idea of edge computing, the Edge-host collaboration control model could
offload some of the congestion detection and control functions to the edge switches. In
terms of distribution, edge switches exhibit a more centralized nature compared to hosts,
offering several advantages for congestion detection and control. Firstly, edge switches can
aggregate information from multiple hosts, thereby providing more comprehensive data for
congestion detection. Secondly, the feedback path can be shortened by leveraging edge
switches. Thirdly, the utilization of edge switches can minimize the redundant collection of
network state information, consequently reducing transmission overhead. Lastly, the
integration of edge switches can effectively coordinate host behavior locally and address
local fairness issues. Hence, the Edge-Host Collaboration Control Model signifies a
promising research direction.</p>
      <p>2. Intelligent Congestion Detection and Control Algorithm</p>
      <p>Intelligent congestion detection and control algorithm has emerged as a prominent area
of research in recent years, yielding substantial advancements. Innovative mechanisms like
Orca [44] and Sage [45] employ deep reinforcement learning to craft intelligent algorithms,
facilitating efficient data transmission in intricate network environments. This algorithm,
rooted in mathematical and statistical principles, discerns the patterns of network
congestion changes. Through logical reasoning, it calculates the optimal sending rate based
on network feedback information, thereby enhancing congestion control performance.</p>
      <p>Despite current challenges in applying intelligent algorithms to congestion control—
such as intricate model training, complex reward function design, and slow convergence—
their successes in fields like computer vision, speech recognition, and AIGC underscore their
capability to address complex issues. With ongoing technological progress, intelligent
algorithms are poised to access more extensive network information and adeptly learn
network characteristics and congestion control strategies. Consequently, the Intelligent
Congestion Detection and Control Algorithm is set to significantly enhance its efficiency and
adaptability, establishing itself as a pivotal area for future research.</p>
    </sec>
    <sec id="sec-8">
      <title>8. Conclusions</title>
      <p>Host-to-host congestion control, which is key for high-quality network transmission by
managing data rates, must now focus on efficiency and adaptability. This paper reviews
congestion control mechanisms across four areas: control models, detection methods,
algorithms, and evaluation metrics. It analyzes the three main challenges in this domain and
discusses the potential of machine learning and edge collaboration. It concludes that a
systematic and comprehensive optimization of host-to-host congestion control is necessary
to meet the demands of emerging networks.
[15] D. Giannopoulos, N. Chrysos, E. Mageiropoulos, “Accurate Congestion Control for RDMA
Transfers,” Proceedings of the 2018 Twelfth IEEE/ACM International Symposium on
Networks-on-Chip (NOCS), IEEE, 2018.
[16] R. Mittal, A. Shpiner, A. Panda, “Revisiting Network Support for RDMA,” The
Proceedings of the 2018 Conference of the ACM Special Interest Group on Data
Communication, 2018.
[17] J. Geng, J. Yan, Y. Zhang, “P4QCN: Congestion Control Using P4-capable Device in Data</p>
      <p>Center Networks,” Electronics, pp. 280, 2019.
[18] W. Cheng, K. Qian, W. Jiang, “Re-architecting Congestion Management in Lossless
Ethernet,” Proceedings of the 17th USENIX Symposium on Networked Systems Design
and Implementation (NSDI 20), 2020.
[19] P. Taheri, D. Menikkumbura, E. Vanini, “RoCC: Robust Congestion Control for RDMA,”
the Proceedings of the 16th International Conference on Emerging Networking
EXperiments and Technologies, 2020.
[20] Y. Hu, Z. Shi, Y. Nie, “Dcqcn Advanced (dcqcn-a): Combining ECN and RTT for RDMA
Congestion Control,” proceedings of the 2021 IEEE 5th Information Technology,
Networking, Electronic and Automation Control Conference (ITNEC), IEEE, 2021.
[21] J. Zhang, J. Shi, X. Zhong, “Receiver-Driven RDMA Congestion Control By Differentiating
Congestion Types in Datacenter Networks,” Proceedings of the 2021 IEEE 29th
International Conference on Network Protocols (ICNP), IEEE,2021.
[22] Y. Binghao, L. Qinrang, S. Jianliang, “A Survey of Low-Latency Transmission Strategies
in Software Defined Networking,” Computer Science Review, pp. 40, 2021.
[23] Y. Lu, Z. Ling, S. Zhu, “SDTCP: Towards Datacenter TCP Congestion Control with SDN
for IoT Applications,” Sensors, pp. 109, 2017.
[24] P4.ORG, “In-band Network Telemetry (INT) Dataplane Specificatio,” 2021.
[25] Mohammad, Alizadeh, Albert, “Computer Communication Review: A Quarterly
Publication of the Special Interest Group on Data Communication,” Data Center TCP
(DCTCP), 2010.
[26] F. Lu, H. Du, A. Jain, “CQIC: Revisiting Cross-Layer Congestion Control for Cellular
Networks,” Proceedings of the Proceedings of the 16th International Workshop on
Mobile Computing Systems and Applications, 2015.
[27] Y. XIE, F. YI, K. Jamieson, “PBE-CC: Congestion Control Via Endpoint-Centric,
PhysicalLayer Bandwidth Measurements,” Proceedings of the Proceedings of the Annual
Conference of the ACM Special Interest Group on Data Communication on Applications,
Technologies, Architectures, and Protocols for Computer Communication, USA, 2020.
[28] J. Postel, “Transmission Control Protocol,” RFC 793, 1981.
[29] J. M. Mathis, S. Floyd, A. Romanow, “TCP Selective Acknowledgement Options,” RFC
2018, 2003.
[30] G. Kumar, N. Dukkipati, K. Jang, “Swift: Delay is Simple and Effective for Congestion
Control in the Datacenter,” Proceedings of the SIGCOMM’20: Annual Conference of the
ACM Special Interest Group on Data Communication on the Applications, Technologies,
Architectures, and Protocols for Computer Communication, 2020.
[31] L. S. Brakmo, L. L. Peterson, “TCP Vegas: End to End Congestion Avoidance on A Global</p>
      <p>Internet,” IEEE, 1995.
[32] C. Jin, D. X. Wei, “LOW S H. FAST TCP: Motivation, Architecture, Algorithms,
Performance,” Proceedings of the INFOCOM 2004 Twenty-third AnnualJoint
Conference of the IEEE Computer and Communications Societies, 2004.
[33] I. Mahmud, G-H. Kim, T. Lubna, “BBR-ACD: BBR with Advanced Congestion Detection,”</p>
      <p>Electronics, pp. 136, 2020.
[34] B. Vamanan, J. Hasan, T. N. Vijaykumar, “Deadline-Aware Datacenter TCP (D2TCP),”</p>
      <p>ACM SIGCOMM Computer Communication Review, pp. 115-26, 2012.
[35] Y. Lu, G. Yuan, Y. Bai, “EagerCC: An Ultra-Low Latency Congestion Control Mechanism
in Datacenter Networks,” Computer Networks, pp. 236, 2023.
[36] M. Dong, Q. Li, D. Zarchy, “PCC: Re-Architecting Congestion Control for Consistent High</p>
      <p>Performance,” USENIX Association, 2014.
[37] R. King, R. Baraniuk, R. Riedi, “TCP-Africa: An Adaptive and Fair Rapid Increase Rule for
Scalable TCP,” Proceedings of the INFOCOM 2005 24th Annual Joint Conference of the
IEEE Computer and Communications Societies Proceedings IEEE, 2005.
[38] J. Padhye, V. Firoiu, D. F. Towsley, “Modeling TCP Reno Performance: A Simple Model
and Its Empirical Validation,” IEEE/ACM Transactions on Networking, pp. 133-45,
2000.
[39] Y. Zhu, M. Ghobadi, V. Misra, “ECN or Delay: Lessons Learnt from Analysis of DCQCN
and TIMELY,” ACM, 2016.
[40] K. Xiao, S. Mao, J. K. Tugnait, “TCP-Drinc: Smart Congestion Control Based on Deep</p>
      <p>Reinforcement Learning,” IEEE Access, pp. 11892-904, 2019.
[41] T. ITU, “Terms and Definitions Related to Quality of Service and Network Performance</p>
      <p>Including Dependability,” Recommendation E, pp. 800, 1994.
[42] V. Kushwaha, R. Gupta, “Congestion Control for High-Speed Wired Network: A
Systematic Literature Review,” Journal of Network and Computer Applications, pp.
6278, 2014.
[43] R. Jain, K. Ramakrishnan, “Congestion Avoidance in Computer Networks with A
Connectionless Network Layer: Concepts, Goals and Methodology,” Proceedings of the
[1988] Proceedings Computer Networking Symposium, IEEE, 1988.
[44] S. Abbasloo, C. Y. Yen, H. J. Chao, “Classic Meets Modern: A Pragmatic Learning-Based
Congestion Control for the Internet,” Proceedings of the SIGCOMM’20: Annual
Conference of the ACM Special Interest Group on Data Communication on the
Applications, Technologies, Architectures, and Protocols for Computer Communication,
2020.
[45] C. Y. Yen, S. Abbasloo, H. J. Chao, “Computers Can Learn from the Heuristic Designs and
Master Internet Congestion Control,” Proceedings of the ACM SIGCOMM 2023
Conference, 2023.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Cisco</surname>
            <given-names>U</given-names>
          </string-name>
          , “
          <article-title>Cisco annual internet report (2018-2023) white paper</article-title>
          ,” Cisco: San Jose, CA, USA,
          <source>volume10(1)</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>35</lpage>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Milovanovic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Bojkovic</surname>
          </string-name>
          , M. Indoonundon, “
          <article-title>5G Low-latency Communication in Virtual Reality Services: Performance Requirements</article-title>
          and Promising Solutions,”
          <source>World Scientific and Engineering Academy and Society (WSEAS)</source>
          ,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>N. M.</given-names>
            <surname>QUY</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. A.</given-names>
            <surname>NGOC</surname>
          </string-name>
          ,
          <string-name>
            <surname>N. T. BAN</surname>
          </string-name>
          , “
          <article-title>Edge Computing for Real-Time Internet of Things Applications: Future Internet Revolution</article-title>
          , Wireless Personal Communications,” pp.
          <fpage>1423</fpage>
          -
          <lpage>52</lpage>
          ,
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>V.</given-names>
            <surname>Jacobson</surname>
          </string-name>
          , “Congestion Avoidance and Control,” ACM SIGCOMM Computer Communication Review, pp.
          <fpage>314</fpage>
          -
          <lpage>29</lpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>S.</given-names>
            <surname>Floyd</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Jacobson</surname>
          </string-name>
          , “
          <article-title>Random Early Detection Gateways for Congestion Avoidance</article-title>
          ,” IEEE/ACM Transactions on Networking, pp.
          <fpage>397</fpage>
          -
          <lpage>413</lpage>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>W.</given-names>
            <surname>Stevens</surname>
          </string-name>
          , “Congestion Avoidance,
          <source>Fast Retransmit and Fast Recovery Algorithm,” RFC</source>
          <year>2001</year>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Gurtov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Henderson</surname>
          </string-name>
          , S. Floyd, “
          <article-title>The NewReno Modification to TCP's Fast Recovery Algorithm</article-title>
          ,
          <source>” RFC 6582</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>N.</given-names>
            <surname>Cardwell</surname>
          </string-name>
          , Y. Cheng, C. S. Gunn, “BBR:
          <string-name>
            <surname>Congestion-Based Congestion</surname>
            <given-names>Control</given-names>
          </string-name>
          ,”
          <source>Communications of the ACM</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>S.</given-names>
            <surname>Ha</surname>
          </string-name>
          ,
          <string-name>
            <surname>I.Rhee</surname>
          </string-name>
          , L. Xu, “
          <article-title>CUBIC: A New TCP-friendly High-Speed TCP Variant,” ACM SIGOPS Operating Systems Review</article-title>
          , pp.
          <fpage>64</fpage>
          -
          <lpage>74</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>R.</given-names>
            <surname>Mittal</surname>
          </string-name>
          , V. T. LAM, N. DUKKIPATI, “
          <article-title>TIMELY: RTT-based Congestion Control for the Datacenter,”</article-title>
          <source>Proceedings of the ACM Conference on Special Interest Group on Data Communication</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Eran</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          “Firestone,
          <article-title>Congestion Control for Large-Scale RDMA Deployments,</article-title>
          ” ACM,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>R.</given-names>
            <surname>Xie</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Jia</surname>
          </string-name>
          , K. Wu, “
          <article-title>Adaptive Online Decision Method for Initial Congestion Window in 5G Mobile Edge Computing Using Deep Reinforcement Learning,”</article-title>
          <source>IEEE Journal on Selected Areas in Communications</source>
          , pp.
          <fpage>389</fpage>
          -
          <lpage>403</lpage>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>K. K. Ramakrishnan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Floyd</surname>
            ,
            <given-names>D. L.</given-names>
          </string-name>
          <string-name>
            <surname>Black</surname>
          </string-name>
          , “
          <article-title>The Addition of Explicit Congestion Notification (ECN) to IP,”</article-title>
          <source>RFC 3168</source>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            Y. li,
            <given-names>R.</given-names>
            <surname>Miao</surname>
          </string-name>
          , H. Liu, “HPCC: High Precision Congestion Control,
          <source>” Proceedings of the ACM Special Interest Group on Data Communication</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>