Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Jan 2009 04:24:15 +0000 (UTC)
From:      Lawrence Stewart <lstewart@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r187578 - in projects/tcp_cc_8.x/share/man: man4 man9
Message-ID:  <200901220424.n0M4OFpN000521@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: lstewart
Date: Thu Jan 22 04:24:15 2009
New Revision: 187578
URL: http://svn.freebsd.org/changeset/base/187578

Log:
  WIP man pages.

Added:
  projects/tcp_cc_8.x/share/man/man4/cc_htcp.4   (contents, props changed)
  projects/tcp_cc_8.x/share/man/man9/cc.9   (contents, props changed)

Added: projects/tcp_cc_8.x/share/man/man4/cc_htcp.4
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/tcp_cc_8.x/share/man/man4/cc_htcp.4	Thu Jan 22 04:24:15 2009	(r187578)
@@ -0,0 +1,78 @@
+.\"
+.\" Copyright (c) 2008 Lawrence Stewart <lstewart@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions, and the following disclaimer,
+.\"    without modification, immediately at the beginning of the file.
+.\" 2. The name of the author may not be used to endorse or promote products
+.\"    derived from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
+.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd Nov 17, 2008
+.Dt CC_HTCP 4
+.Os
+.Sh NAME
+.Nm cc_htcp
+.Nd HTCP Congestion Control Algorithm
+.Sh DESCRIPTION
+The
+.N
+congestion control algorithm
+.Ss Runtime Configuration
+The following
+.Xr sysctl 8
+variables are available for tuning:
+.Bl -tag -width ".Va net.inet.tcp.cc.htcp.adaptive_backoff" -offset indent
+.It Va net.inet.tcp.cc.htcp.adaptive_backoff
+Controls use of the adaptive backoff algorithm, which is designed to keep
+network queues non-empty during periods of recovery from congestion.
+Default is 0 (disabled).
+.El
+.Bl -tag -width ".Va net.inet.tcp.cc.htcp.rtt_scaling" -offset indent
+.It Va net.inet.tcp.cc.htcp.rtt_scaling
+Controls use of the RTT scaling algorithm, which is designed to make congestion
+window increase invariant with respect to RTT during the connection's regular
+mode of operation (congestion avoidance).
+Default is 0 (disabled).
+.El
+.Sh SEE ALSO
+.Xr cc 9
+.Sh HISTORY
+The
+.Nm
+congestion control module first appeared in
+.Fx 8.0 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+congestion control module was written by
+.An James Healy Aq jimmy@deefa.com
+and
+.An Lawrence Stewart Aq lstewart@FreeBSD.org
+while working at the Centre for Advanced Internet Architectures,
+Swinburne University (http://caia.swin.edu.au/).
+.Pp
+This manual page was written by
+.An Lawrence Stewart Aq lstewart@FreeBSD.org .
+.Sh ACKNOWLEDGMENTS
+Development of this software was made possible in part by a grant from the
+Cisco University Research Program Fund at Community Foundation Silicon Valley.
+

Added: projects/tcp_cc_8.x/share/man/man9/cc.9
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/tcp_cc_8.x/share/man/man9/cc.9	Thu Jan 22 04:24:15 2009	(r187578)
@@ -0,0 +1,122 @@
+.\"
+.\" Copyright (c) 2008 Lawrence Stewart <lstewart@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions, and the following disclaimer,
+.\"    without modification, immediately at the beginning of the file.
+.\" 2. The name of the author may not be used to endorse or promote products
+.\"    derived from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
+.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd Nov 17, 2008
+.Dt CC 9
+.Os
+.Sh NAME
+.Nm cc ,
+.Nm cc_register_algorithm ,
+.Nm cc_deregister_algorithm
+.Nd Modular Congestion Control
+.Sh SYNOPSIS
+.In netinet/cc.h
+.Ft int
+.Fn cc_register_algorithm "struct cc_algo *add_cc"
+.Ft int
+.Fn cc_deregister_algorithm "struct cc_algo *remove_cc"
+.Sh DESCRIPTION
+The
+.Nm
+framework provides an interface to dynamically add/remove transport protocol
+related congestion control algorithms to/from the running kernel.
+.Pp
+Congestion control algorithms are identified by an ASCII name and set of
+hook function implementations encapsulated in a
+.Vt "struct cc_algo" ,
+which has the following members:
+.Bd -literal -offset indent
+struct cc_algo {
+	char	name[TCP_CA_NAME_MAX];
+	int	(*init) (struct tcpcb *tp);
+	void	(*deinit) (struct tcpcb *tp);
+	void	(*cwnd_init) (struct tcpcb *tp);
+	void	(*ack_received) (struct tcpcb *tp, struct tcphdr *th);
+	void	(*pre_fr) (struct tcpcb *tp, struct tcphdr *th);
+	void	(*post_fr) (struct tcpcb *tp, struct tcphdr *th);
+	void	(*after_idle) (struct tcpcb *tp);
+	void	(*after_timeout) (struct tcpcb *tp);
+};
+.Ed
+.Pp
+The
+.Va name
+field identifies the unique name of the algorithm.
+.Ss Runtime Configuration
+The following
+.Xr sysctl 8
+variables are available for tuning:
+.Bl -tag -width ".Va net.inet.tcp.cc.available" -offset indent
+.It Va net.inet.tcp.cc.available
+Identifies the list of currently available congestion control algorithms by
+name.
+.El
+.Bl -tag -width ".Va net.inet.tcp.cc.algorithm" -offset indent
+.It Va net.inet.tcp.cc.algorithm
+Specifies which congestion control algorithm will be used by default for new TCP
+connections. Setting this variable to one of the names in the
+.Va net.inet.tcp.cc.available
+list will change the system default for all new connections.
+.Sh FUNCTIONS
+The
+.Fn cc_register_algorithm
+function registers the algorithm pointed to by
+.Fa add_cc
+with the framework.
+.Sh IMPLEMENTATION NOTES
+.Sh RETURN VALUES
+The
+.Fn cc_register_algorithm
+function returns non-zero on failure.
+.Sh SEE ALSO
+.Xr cc_htcp 4 ,
+.Xr cc_cubic 4 ,
+.Xr tcp 4 ,
+.Xr sctp 4
+.Sh HISTORY
+The modular Congestion Control (CC) framework first appeared in
+.Fx 8.0 .
+.Sh FUTURE WORK
+Integrate with
+.Xr sctp 4 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+framework was written by
+.An James Healy Aq jimmy@deefa.com
+and
+.An Lawrence Stewart Aq lstewart@FreeBSD.org
+while working at the Centre for Advanced Internet Architectures,
+Swinburne University (http://caia.swin.edu.au/).
+.Pp
+This manual page was written by
+.An Lawrence Stewart Aq lstewart@FreeBSD.org .
+.Sh ACKNOWLEDGMENTS
+Development of this software was made possible in part by a grant from the
+Cisco University Research Program Fund at Community Foundation Silicon Valley.
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200901220424.n0M4OFpN000521>