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

Unified Diff: net/quic/core/congestion_control/cubic_bytes.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 | « net/quic/core/congestion_control/cubic.cc ('k') | net/quic/core/congestion_control/cubic_bytes.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_bytes.h
diff --git a/net/quic/core/congestion_control/cubic_bytes.h b/net/quic/core/congestion_control/cubic_bytes.h
index 9775f212d42d1d90ed86fede3a920a3e8aa9ccd4..c205cef05e50e75a81690f8d6d9747a549a0676d 100644
--- a/net/quic/core/congestion_control/cubic_bytes.h
+++ b/net/quic/core/congestion_control/cubic_bytes.h
@@ -50,10 +50,21 @@ class QUIC_EXPORT_PRIVATE CubicBytes {
// window. Resets Cubic state during quiescence.
void OnApplicationLimited();
+ // If true, enable the fix for the convex-mode signing bug. See
+ // b/32170105 for more information about the bug.
+ // TODO(jokulik): Remove once the fix is enabled by default.
void SetFixConvexMode(bool fix_convex_mode);
+ // If true, fix CubicBytes quantization bug. See b/33273459 for
+ // more information about the bug.
+ // TODO(jokulik): Remove once the fix is enabled by default.
void SetFixCubicQuantization(bool fix_cubic_quantization);
+ // 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_beta_last_max);
+
private:
friend class test::CubicBytesTest;
@@ -61,10 +72,15 @@ class QUIC_EXPORT_PRIVATE CubicBytes {
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_;
@@ -108,6 +124,10 @@ class QUIC_EXPORT_PRIVATE CubicBytes {
// TODO(jokulik): Remove once the experiment is done.
bool fix_cubic_quantization_;
+ // 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(CubicBytes);
};
« no previous file with comments | « net/quic/core/congestion_control/cubic.cc ('k') | net/quic/core/congestion_control/cubic_bytes.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698