Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Unified Diff: net/quic/core/congestion_control/cubic.h

Issue 2569723004: relnote: Protected by --quic_fix_beta_last_max. Fix conservative decrease for n-connection emulatio… (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | net/quic/core/congestion_control/cubic.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/core/congestion_control/cubic.h
diff --git a/net/quic/core/congestion_control/cubic.h b/net/quic/core/congestion_control/cubic.h
index 39c008c2c1403106afac7593b17dd0e166366af4..8c1afb3d5a3b90382e276779e2a3c7a00134863a 100644
--- a/net/quic/core/congestion_control/cubic.h
+++ b/net/quic/core/congestion_control/cubic.h
@@ -19,6 +19,10 @@
namespace net {
+namespace test {
+class CubicTest;
+} // namespace test
+
class QUIC_EXPORT_PRIVATE Cubic {
public:
explicit Cubic(const QuicClock* clock);
@@ -50,15 +54,27 @@ class QUIC_EXPORT_PRIVATE Cubic {
// TODO(jokulik): Remove once the fix is enabled by default.
void SetFixConvexMode(bool fix_convex_mode);
+ // If true, enable the fix for scaling BetaLastMax for n-nonnection
+ // emulation. See b/33272010 for more information about the bug.
+ // TODO(jokulik): Remove once the fix is enabled by default.
+ void SetFixBetaLastMax(bool fix_bet_last_max);
+
private:
+ friend class test::CubicTest;
+
static const QuicTime::Delta MaxCubicTimeInterval() {
return QuicTime::Delta::FromMilliseconds(30);
}
- // Compute the TCP Cubic alpha and beta based on the current number of
- // connections.
+ // Compute the TCP Cubic alpha, beta, and beta-last-max based on the
+ // current number of connections.
float Alpha() const;
float Beta() const;
+ float BetaLastMax() const;
+
+ QuicByteCount last_max_congestion_window() const {
+ return last_max_congestion_window_;
+ }
const QuicClock* clock_;
@@ -107,6 +123,10 @@ class QUIC_EXPORT_PRIVATE Cubic {
// TODO(jokulik): Remove once the cubic convex experiment is done.
bool fix_convex_mode_;
+ // Fix beta last max for n-connection-emulation.
+ // TODO(jokulik): Remove once the corresponding experiment is done.
+ bool fix_beta_last_max_;
+
DISALLOW_COPY_AND_ASSIGN(Cubic);
};
« no previous file with comments | « no previous file | net/quic/core/congestion_control/cubic.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698