linux/net/dccp/ccids
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
..
lib dccp tfrc/ccid-3: Computing Loss Rate from Loss Event Rate 2008-09-04 07:45:34 +02:00
ccid2.c dccp ccid-2: Remove ccid2hc{tx,rx}_ prefixes 2008-09-04 07:45:33 +02:00
ccid2.h dccp ccid-2: Remove ccid2hc{tx,rx}_ prefixes 2008-09-04 07:45:33 +02:00
ccid3.c dccp tfrc/ccid-3: Computing Loss Rate from Loss Event Rate 2008-09-04 07:45:34 +02:00
ccid3.h dccp ccid-3: Simplify and consolidate tx_parse_options 2008-09-04 07:45:34 +02:00
Kconfig
Makefile