Methods and systems for estimating network available bandwidth using packet pairs and spatial filtering
First Claim
1. A method, comprising:
- generating histogram data using packet pairs received from a data source via a network, the histogram data including bandwidth samples derived from the received packet pairs, the histogram data being associated with a plurality of bins of a histogram;
spatially filtering the histogram data, the spatial filtering including;
averaging values of samples in each bin of the plurality of bins to form a bin average for each bin;
forming smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and
forming a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors; and
estimating bandwidth available on the network using the spatially filtered histogram data.
2 Assignments
0 Petitions
Accused Products
Abstract
Estimation of available bandwidth on a network uses packet pairs and spatially filtering. Packet pairs are transmitted over the network. The dispersion of the packet pairs is used to generate samples of the available bandwidth, which are then classified into bins to generate a histogram. The bins can have uniform bin widths, and the histogram data can be aged so that older samples are given less weight in the estimation. The histogram data is then spatially filtered. Kernel density algorithms can be used to spatially filter the histogram data. The network available bandwidth is estimated using the spatially filtered histogram data. Alternatively, the spatially filtered histogram data can be temporally filtered before the available bandwidth is estimated.
-
Citations
53 Claims
-
1. A method, comprising:
-
generating histogram data using packet pairs received from a data source via a network, the histogram data including bandwidth samples derived from the received packet pairs, the histogram data being associated with a plurality of bins of a histogram; spatially filtering the histogram data, the spatial filtering including; averaging values of samples in each bin of the plurality of bins to form a bin average for each bin; forming smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and forming a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors; and estimating bandwidth available on the network using the spatially filtered histogram data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer storage medium comprising computer-executable instructions stored on the computer-readable storage medium and configured to perform operations comprising:
-
generating histogram data using packet pairs received from a data source via a network, the histogram data including bandwidth samples derived from received packet pairs, and the histogram data being associated with a plurality of bins of a histogram; spatially filtering the histogram data, the spatial filtering including; averaging values of samples in each bin of the plurality of bins to form a bin average for each bin; forming smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and forming a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors; and estimating bandwidth available on the network using the spatially filtered histogram data. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A system, comprising:
-
a processor; a network interface coupled to the processor to receive data from a data source coupled to a network; and a bandwidth estimator operated by the processor to estimate available bandwidth on the network, the bandwidth estimator including; a histogram generator to generate histogram data derived from packet pairs the sent by the data source and received via the network interface, the histogram data including bandwidth samples contained in one or more bins of a plurality of bins; and a spatial filter to filter histogram data from the histogram generator, wherein the spatial filter is to filter the histogram data by; averaging values of samples in each bin of the plurality of bins to form a bin average for each bin; forming smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and forming a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer storage medium comprising a plurality of executable instructions configured to program a computing device to implement components including:
a bandwidth estimator to estimate available bandwidth on a network, the bandwidth estimator including; a histogram generator to generate histogram data derived from packet pairs the sent by a data source over the network, the histogram data including bandwidth samples contained in one or more bins of a plurality of bins; and a spatial filter to filter histogram data from the histogram generator, wherein the spatial filter is to filter the histogram data by; averaging values of samples in each bin of the plurality of bins to form a bin average for each bin; forming smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and forming a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44, 45, 46)
-
47. A system, comprising:
-
means for receiving data from a data source coupled to a network; means for generating histogram data from packet pairs the sent by the data source and received via the means for receiving, the histogram data including bandwidth samples contained in one or more bins of a plurality of bins; and means for spatially filtering histogram data generated by the means for generating, wherein the means for spatially filtering; averages values of samples in each bin of the plurality of bins to form a bin average for each bin; forms smoothed bin counts for the plurality of bins by calculating, for each bin, a weighted average of a bin count of that bin and of bin count(s) of adjacent bin(s), the bin counts being weighted utilizing normalized scaling factors; and forms a smoothed bin average for a bin in the plurality of bins having a highest smoothed bin count by calculating, for the bin in the plurality of bins having the highest smoothed bin count, a weighted average of a bin average of that bin and of bin average(s) of adjacent bin(s), the bin averages utilizing normalized scaling factors. - View Dependent Claims (48, 49, 50, 51, 52, 53)
-
Specification