Add mechanism to collect how many bytes that has been used on the non-default network by QUIC connection migration on path degrading. In the near future, we might want to use this to bound data usage and turn off connection migration on path degrading if data usage exceeds limits provided by application through config.
The last two commits will enable us to bound data usage roughly:
for each default network, each session will be granted X number of times to migrate to non-default network if default network is OnPathDegrading. And when that happens, the session will be granted up to (2Y-1) seconds on the non-default network for each migration.
Thus the data usage on non-default network for OnPathDegrading is bounded by X(2Y-1).
You could specify: X and Y with the following configuration params:
X - "max_migrations_to_non_default_network_on_path_degrading":X
Y - "max_time_on_non_default_network_seconds": Y
e.g. X=4, Y=10
"max_migrations_to_non_default_network_on_path_degrading":4,
"max_time_on_non_default_network_seconds": 10
Comment 1 by bugdroid1@chromium.org
, Dec 13 2017