diff options
author | Lawrence Stewart <lstewart@FreeBSD.org> | 2011-02-01 06:17:00 +0000 |
---|---|---|
committer | Lawrence Stewart <lstewart@FreeBSD.org> | 2011-02-01 06:17:00 +0000 |
commit | 1d4ed791d05008b20e264721e656b96e97585fc3 (patch) | |
tree | 481d88b037d974ed25de61098f31ace416269c84 /sys/modules/cc | |
parent | 29e9b81e771176f73c53c93b05cff638cc8118c6 (diff) | |
download | src-1d4ed791d05008b20e264721e656b96e97585fc3.tar.gz src-1d4ed791d05008b20e264721e656b96e97585fc3.zip |
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
Notes
Notes:
svn path=/head/; revision=218152
Diffstat (limited to 'sys/modules/cc')
-rw-r--r-- | sys/modules/cc/Makefile | 3 | ||||
-rw-r--r-- | sys/modules/cc/cc_vegas/Makefile | 9 |
2 files changed, 11 insertions, 1 deletions
diff --git a/sys/modules/cc/Makefile b/sys/modules/cc/Makefile index 9743e7928e90..31554b06ab30 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 000000000000..075bd41e4a2a --- /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> |