Skip to main content

Module forecast_sensor

Module forecast_sensor 

Source
Expand description

Item 16: Sprout-style stochastic forecast of the deliverable rate.

Sprout (Winstein, Sivaraman & Balakrishnan, NSDI 2013) treats a cellular / variable bottleneck as a rate process with uncertainty and forecasts a CONSERVATIVE lower bound on what it will deliver over the next tick, so a sender can pre-size its window ahead of a dip rather than react after the loss a dip causes. This is the receiver-side estimator: it is fed the delivered bytes per measurement interval and tracks the rate with a one-dimensional Kalman filter (the rate is a random walk under process noise q; each observation is the rate plus measurement noise r), then forecasts the 5th-percentile deliverable rate for the next tick as mean - 1.645 * sqrt(predicted variance), floored at zero.

Unlike the passive BtlBw (item 6), which is a windowed-MAX of the PAST delivery rate, this is a forward-looking, conservative LOWER bound: when the observed rate jumps around, the filter’s variance widens and the forecast drops at once - leading the dip - so the controller arms protection before the loss materialises. The noises scale with the current rate estimate, so one filter spans a bottleneck that varies by an order of magnitude.

Structs§

ArrivalForecast
Receiver-side Sprout-style rate forecaster.