commit 470bde64e6d1161b0bcf0b266aa67ecbdd016774 Author: Mike Perry mikeperry-git@torproject.org Date: Tue Nov 6 01:23:10 2018 +0000
Prop #254: Clarify special cases for bin 0 and inf bin-1. --- proposals/254-padding-negotiation.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/proposals/254-padding-negotiation.txt b/proposals/254-padding-negotiation.txt index e569dcc..8cad35d 100644 --- a/proposals/254-padding-negotiation.txt +++ b/proposals/254-padding-negotiation.txt @@ -161,7 +161,8 @@ covering the range of the histogram, which is range_usec. The intermediate bins thus divide the timespan range_usec with offset start_usec+rtt_estimate, so that smaller bin indexes represent narrower time ranges, doubling up until the last bin. The last bin before the "infinity bin" -thus covers [start_usec+rtt_estimate+range_usec/2, CIRCPAD_DELAY_INFINITE). +thus covers [start_usec+rtt_estimate+range_usec/2, +start_usec+rtt_estimate+range_usec).
This exponentially increasing bin width allows the histograms to most accurately represent small interpacket delay (where accuracy is needed), and @@ -203,6 +204,12 @@ are defined: When all bins are empty in a histogram, the padding machine emits the internal "bins empty" event to itself.
+Bin 0 and the bin before the infinity bin both have special rules for purposes +of token removal. While removing tokens, all values less than bin 0 are +treated as part of bin 0, and all values greater than +start_usec+rtt_estimate+range_sec are treated as part of the bin before the +infinity bin. + 3.2. State Machine Selection
Clients will select which of the defined available padding machines to use