diff options
author | lstewart <lstewart@FreeBSD.org> | 2011-02-01 07:05:14 +0000 |
---|---|---|
committer | lstewart <lstewart@FreeBSD.org> | 2011-02-01 07:05:14 +0000 |
commit | 6d2fcf0be267abddd11c92993c8f651bbf4a012d (patch) | |
tree | fcca66fd6475ff83c04ff0b2730b64ccb299fca6 /sys/modules/cc/cc_chd | |
parent | ac497e209c8794f8cbb775e30c15c2f91c668de3 (diff) | |
download | FreeBSD-src-6d2fcf0be267abddd11c92993c8f651bbf4a012d.zip FreeBSD-src-6d2fcf0be267abddd11c92993c8f651bbf4a012d.tar.gz |
Import an implementation of the CAIA-Hamilton-Delay (CHD) congestion control
algorithm described in the paper "Improved coexistence and loss tolerance for
delay based TCP congestion control" by Hayes and Armitage. It is implemented as
a kernel module compatible with the recently committed modular congestion
control framework.
CHD enhances the approach taken by the Hamilton-Delay (HD) algorithm to provide
tolerance to non-congestion related packet loss and improvements to coexistence
with loss-based congestion control algorithms. A key idea in improving
coexistence with loss-based congestion control algorithms is the use of a shadow
window, which attempts to track how NewReno's congestion window (cwnd) would
evolve. At the next packet loss congestion event, CHD uses the shadow window to
correct cwnd in a way that reduces the amount of unfairness CHD experiences when
competing with loss-based algorithms.
In collaboration with: David Hayes <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
Sponsored by: FreeBSD Foundation
Reviewed by: bz and others along the way
MFC after: 3 months
Diffstat (limited to 'sys/modules/cc/cc_chd')
-rw-r--r-- | sys/modules/cc/cc_chd/Makefile | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/modules/cc/cc_chd/Makefile b/sys/modules/cc/cc_chd/Makefile new file mode 100644 index 0000000..20577f8 --- /dev/null +++ b/sys/modules/cc/cc_chd/Makefile @@ -0,0 +1,9 @@ +# $FreeBSD$ + +.include <bsd.own.mk> + +.PATH: ${.CURDIR}/../../../netinet/cc +KMOD= cc_chd +SRCS= cc_chd.c + +.include <bsd.kmod.mk> |