## Uses of Interface
net.i2p.util.BandwidthEstimator

- Packages that use BandwidthEstimator
  Package | Description
  --- | ---
  net.i2p.client.streaming.impl | Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for communicating over the IP-like (unreliable, unauthenticated, unordered) I2P messages.
  net.i2p.util | Core utility classes and helper functions used throughout the I2P router and applications.

- - ### Uses of BandwidthEstimator in net.i2p.client.streaming.impl

    Classes in net.i2p.client.streaming.impl that implement BandwidthEstimator
    Modifier and Type | Class and Description
    --- | ---
    `(package private) class` | `SimpleBandwidthEstimator` A Westwood+ bandwidth estimator with a first stage anti-aliasing low pass filter based on RTT, and the time-varying Westwood filter based on inter-arrival time.

  - ### Uses of BandwidthEstimator in net.i2p.util

    Classes in net.i2p.util that implement BandwidthEstimator
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SyntheticREDQueue` A "synthetic" queue that does not store data but estimates the average queue size assuming a fixed output bandwidth, and applies the Random Early Detection (RED) algorithm to decide probabilistically whether to accept or drop packets.