summaryrefslogtreecommitdiffstats
path: root/sys/modules/cc/cc_chd
diff options
context:
space:
mode:
authorlstewart <lstewart@FreeBSD.org>2011-02-01 07:05:14 +0000
committerlstewart <lstewart@FreeBSD.org>2011-02-01 07:05:14 +0000
commit6d2fcf0be267abddd11c92993c8f651bbf4a012d (patch)
treefcca66fd6475ff83c04ff0b2730b64ccb299fca6 /sys/modules/cc/cc_chd
parentac497e209c8794f8cbb775e30c15c2f91c668de3 (diff)
downloadFreeBSD-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/Makefile9
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>
OpenPOWER on IntegriCloud