android_kernel_xiaomi_sdm845/net/dccp
Gerrit Renker 535c55df13 dccp tfrc/ccid-3: Computing Loss Rate from Loss Event Rate
This adds a function to take care of the following cases occurring in the
computation of the Loss Rate p:

 * 1/(2^32-1) is mapped into 0% as per RFC 4342, 8.5;
 * 1/0        is mapped into the maximum of 100%;
 * we want to avoid that p = 1/x is rounded down to 0 when x is very large,
   since this means accidentally re-entering slow-start (indicated by p==0).

In the last case, the minimum-resolution value of p is returned.

Furthermore, a bug in ccid3_hc_rx_getsockopt is fixed (1/0 was mapped into ~0U),
which now allows to consistently print the scaled p-values as

        printf("Loss Event Rate = %u.%04u %%\n", rx_info.tfrcrx_p / 10000, 
                                                 rx_info.tfrcrx_p % 10000);

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
2008-09-04 07:45:34 +02:00
..
ccids dccp tfrc/ccid-3: Computing Loss Rate from Loss Event Rate 2008-09-04 07:45:34 +02:00
ackvec.c dccp: Set per-connection CCIDs via socket options 2008-09-04 07:45:28 +02:00
ackvec.h dccp: Leave headroom for options when calculating the MPS 2008-09-04 07:45:33 +02:00
ccid.c dccp: Auto-load (when supported) CCID plugins for negotiation 2008-09-04 07:45:31 +02:00
ccid.h dccp: Add packet type information to CCID-specific option parsing 2008-09-04 07:45:34 +02:00
dccp.h dccp: Special case of the MPS for client-PARTOPEN with DataAcks 2008-09-04 07:45:33 +02:00
diag.c dccp ccid-2: Phase out the use of boolean Ack Vector sysctl 2008-09-04 07:45:31 +02:00
feat.c dccp ccid-2: Use feature-negotiation to report Ack Ratio changes 2008-09-04 07:45:32 +02:00
feat.h dccp: Debugging functions for feature negotiation 2008-09-04 07:45:32 +02:00
input.c dccp ccid-2: Phase out the use of boolean Ack Vector sysctl 2008-09-04 07:45:31 +02:00
ipv4.c dccp: Cleanup routines for feature negotiation 2008-09-04 07:45:26 +02:00
ipv6.c dccp: Cleanup routines for feature negotiation 2008-09-04 07:45:26 +02:00
ipv6.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
Kconfig [DCCP]: Promote CCID2 as default CCID 2008-01-28 14:54:46 -08:00
Makefile [DCCPv6]: Resolve conditional build problem 2006-12-02 21:22:28 -08:00
minisocks.c dccp: Implement both feature-local and feature-remote Sequence Window feature 2008-09-04 07:45:32 +02:00
options.c dccp: Add packet type information to CCID-specific option parsing 2008-09-04 07:45:34 +02:00
output.c dccp: Special case of the MPS for client-PARTOPEN with DataAcks 2008-09-04 07:45:33 +02:00
probe.c dccp ccid-3: Remove ccid3hc{tx,rx}_ prefixes 2008-09-04 07:45:33 +02:00
proto.c dccp ccid-2: Use feature-negotiation to report Ack Ratio changes 2008-09-04 07:45:32 +02:00
sysctl.c dccp: Initialisation and type-checking of feature sysctls 2008-09-04 07:45:32 +02:00
timer.c dccp: Limit feature negotiation to connection setup phase 2008-09-04 07:45:27 +02:00