summaryrefslogtreecommitdiffstats
path: root/sys/modules/cc
diff options
context:
space:
mode:
authorlstewart <lstewart@FreeBSD.org>2011-02-01 06:17:00 +0000
committerlstewart <lstewart@FreeBSD.org>2011-02-01 06:17:00 +0000
commitfec0e548bc97d0bd87c39a322bac9ddede91fa3f (patch)
tree481d88b037d974ed25de61098f31ace416269c84 /sys/modules/cc
parent630b2f088a67ff1b18fee1352b5c9e10d7d3f495 (diff)
downloadFreeBSD-src-fec0e548bc97d0bd87c39a322bac9ddede91fa3f.zip
FreeBSD-src-fec0e548bc97d0bd87c39a322bac9ddede91fa3f.tar.gz
Import a clean-room implementation of the VEGAS congestion control algorithm
based on the paper "TCP Vegas: end to end congestion avoidance on a global internet" by Brakmo and Peterson. It is implemented as a kernel module compatible with the recently committed modular congestion control framework. VEGAS uses network delay as a congestion indicator and unlike regular loss-based algorithms, attempts to keep the network operating with stable queuing delays and no congestion losses. By keeping network buffers used along the path within a set range, queuing delays are kept low while maintaining high throughput. 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')
-rw-r--r--sys/modules/cc/Makefile3
-rw-r--r--sys/modules/cc/cc_vegas/Makefile9
2 files changed, 11 insertions, 1 deletions
diff --git a/sys/modules/cc/Makefile b/sys/modules/cc/Makefile
index 9743e79..31554b0 100644
--- a/sys/modules/cc/Makefile
+++ b/sys/modules/cc/Makefile
@@ -1,6 +1,7 @@
# $FreeBSD$
SUBDIR= cc_cubic \
- cc_htcp
+ cc_htcp \
+ cc_vegas
.include <bsd.subdir.mk>
diff --git a/sys/modules/cc/cc_vegas/Makefile b/sys/modules/cc/cc_vegas/Makefile
new file mode 100644
index 0000000..075bd41
--- /dev/null
+++ b/sys/modules/cc/cc_vegas/Makefile
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+.PATH: ${.CURDIR}/../../../netinet/cc
+KMOD= cc_vegas
+SRCS= cc_vegas.c
+
+.include <bsd.kmod.mk>
OpenPOWER on IntegriCloud