freebsd-skq/sys/netinet
lstewart 8300743dab Import a clean-room implementation of the experimental H-TCP congestion control
algorithm based on the Internet-Draft "draft-leith-tcp-htcp-06.txt". It is
implemented as a kernel module compatible with the recently committed modular
congestion control framework.

H-TCP was designed to provide increased throughput in fast and long-distance
networks. It attempts to maintain fairness when competing with legacy NewReno
TCP in lower speed scenarios where NewReno is able to operate adequately. The
paper "H-TCP: A framework for congestion control in high-speed and long-distance
networks" provides additional detail.

In collaboration with:	David Hayes <dahayes at swin edu au> and
			Grenville Armitage <garmitage at swin edu au>
Sponsored by:	FreeBSD Foundation
Reviewed by:	rpaulo (older patch from a few weeks ago)
MFC after:	3 months
2010-12-02 06:40:21 +00:00
..
cc Import a clean-room implementation of the experimental H-TCP congestion control 2010-12-02 06:40:21 +00:00
ipfw After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
libalias Standardise all Swinburne related copyright/licence statements throughout the 2010-11-12 00:44:18 +00:00
accf_data.c Rework socket upcalls to close some races with setup/teardown of upcalls. 2009-06-01 21:17:03 +00:00
accf_dns.c Rework socket upcalls to close some races with setup/teardown of upcalls. 2009-06-01 21:17:03 +00:00
accf_http.c Rework socket upcalls to close some races with setup/teardown of upcalls. 2009-06-01 21:17:03 +00:00
cc.h Make the CC framework more VIMAGE friendly by adding the machinery to allow 2010-11-16 09:34:31 +00:00
icmp6.h MFP4: @176978-176982, 176984, 176990-176994, 177441 2010-04-29 11:52:42 +00:00
icmp_var.h Many network stack subsystems use a single global data structure to hold 2009-08-02 19:43:32 +00:00
if_atm.c This main goals of this project are: 2008-12-15 06:10:57 +00:00
if_atm.h
if_ether.c Use time_uptime instead of non-monotonic time_second to drive ARP 2010-11-30 15:57:00 +00:00
if_ether.h Add arp_update_event. This replaces route_arp_update_event, which 2009-09-08 21:17:17 +00:00
igmp_var.h Update stats in struct igmpstat using two new macros: 2009-04-12 13:41:13 +00:00
igmp.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
igmp.h These are no longer referenced in the tree, so can be safely removed. 2009-06-10 18:12:15 +00:00
in_cksum.c
in_debug.c Add initial inet DDB support for show in_ifaddr and show sin commands which 2010-10-24 22:02:36 +00:00
in_gif.c MFP4: @176978-176982, 176984, 176990-176994, 177441 2010-04-29 11:52:42 +00:00
in_gif.h
in_mcast.c Fix a few issues related to the legacy 4.4 BSD multicast APIs. 2010-04-10 12:05:31 +00:00
in_pcb.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
in_pcb.h Abstract out initialization of most aspects of struct inpcbinfo from 2010-03-14 18:59:11 +00:00
in_proto.c Allow carp(4) to be loaded as a kernel module. Follow precedent set by 2010-08-11 00:51:50 +00:00
in_rmx.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
in_systm.h Use uint32_t instead of n_long and n_time, and uint16_t instead of n_short. 2009-02-13 15:14:43 +00:00
in_var.h Remove unused VNET_SET() and related macros; only VNET_GET() is 2009-07-16 21:13:04 +00:00
in.c Use time_uptime instead of non-monotonic time_second to drive ARP 2010-11-30 15:57:00 +00:00
in.h Make the RPC specific __rpc_inet_ntop() and __rpc_inet_pton() general 2010-09-24 15:01:45 +00:00
ip6.h Fix more continuous/contiguous typos (cf. r215955) 2010-11-27 21:51:39 +00:00
ip_carp.c Redo r166423. It is important not only skip freeing multicast 2010-11-24 05:24:36 +00:00
ip_carp.h Unbreak LINT by moving all carp hooks to net/if.c / netinet/ip_carp.h, with 2010-08-11 20:18:19 +00:00
ip_divert.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_divert.h Various cleanup done in ipfw3-head branch including: 2010-01-04 19:01:22 +00:00
ip_dummynet.h whitespace fixes (trailing whitespace, bad indentation 2010-04-19 16:17:30 +00:00
ip_ecn.c
ip_ecn.h
ip_encap.c (S)LIST_HEAD_INITIALIZER takes a (S)LIST_HEAD as an argument. 2009-12-28 22:56:30 +00:00
ip_encap.h
ip_fastfwd.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_fw.h The first customer of the SO_USER_COOKIE option: 2010-11-12 13:05:17 +00:00
ip_gre.c The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-01 17:05:46 +00:00
ip_gre.h The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-01 17:05:46 +00:00
ip_icmp.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_icmp.h MFP4: @176978-176982, 176984, 176990-176994, 177441 2010-04-29 11:52:42 +00:00
ip_id.c Rather than using hidden includes (with cicular dependencies), 2008-12-02 21:37:28 +00:00
ip_input.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_ipsec.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_ipsec.h Remove ifdefed out part of code, which seems to have originated a decade ago 2009-11-09 19:53:34 +00:00
ip_mroute.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
ip_mroute.h Virtualize the IPv4 multicast routing code. 2010-06-02 15:44:43 +00:00
ip_options.c Use ifa_ifwithaddr_check() rather than ifa_ifwithaddr() as we are not 2010-10-14 12:32:49 +00:00
ip_options.h Add function ip_checkrouteralert(), which will be used 2009-03-04 02:51:22 +00:00
ip_output.c IP_BINDANY is not correctly handled in getsockopt() case. 2010-09-24 14:38:54 +00:00
ip_var.h MFp4 CH=183052 183053 183258: 2010-09-02 17:43:44 +00:00
ip.h use u_char instead of u_int for short bitfields. 2010-02-01 14:13:44 +00:00
pim_var.h Virtualize the IPv4 multicast routing code. 2010-06-02 15:44:43 +00:00
pim.h
raw_ip.c Adding an address on an interface also requires the loopback route to 2010-09-12 18:04:47 +00:00
sctp_asconf.c Delay the assignment of a path for DATA chunk until they hit 2010-09-15 23:10:45 +00:00
sctp_asconf.h Delay the assignment of a path for DATA chunk until they hit 2010-09-15 23:10:45 +00:00
sctp_auth.c Fix a locking issue which shows up when the code is used 2010-09-19 11:42:16 +00:00
sctp_auth.h Use [] instead of [0] for flexible arrays. 2010-01-22 07:53:41 +00:00
sctp_bsd_addr.c Remove unused variable/assignment. 2010-09-15 21:19:54 +00:00
sctp_bsd_addr.h This adds back the Iterator to the sctp 2010-05-16 17:03:56 +00:00
sctp_cc_functions.c Adds new dtrace for cwnd functions and lay's 2010-11-25 13:39:55 +00:00
sctp_cc_functions.h
sctp_constants.h * Implement initial version of send buffer splitting. 2010-09-17 16:20:29 +00:00
sctp_crc32.c Simplify sctp_delayed_cksum() a bit. 2010-11-14 14:37:20 +00:00
sctp_crc32.h Fix the the SCTP_WITH_NO_CSUM option when used in combination with 2010-08-29 18:50:30 +00:00
sctp_dtrace_declare.h Adds new dtrace for cwnd functions and lay's 2010-11-25 13:39:55 +00:00
sctp_dtrace_define.h Adds new dtrace for cwnd functions and lay's 2010-11-25 13:39:55 +00:00
sctp_header.h Add missing SCTP_PACKED. Spotted by Irene Ruengeler. 2010-02-13 21:38:15 +00:00
sctp_indata.c Not only stop all timers when entering the SHUTDOWN_SENT state, 2010-11-07 14:39:40 +00:00
sctp_indata.h * Fix some race condition in SACK/NR-SACK processing. 2010-04-03 15:40:14 +00:00
sctp_input.c Not only stop all timers when entering the SHUTDOWN_SENT state, 2010-11-07 14:39:40 +00:00
sctp_input.h
sctp_lock_bsd.h 1) Optimize the cleanup and don't always depend on 2010-06-06 20:34:17 +00:00
sctp_os_bsd.h Fix typos. 2010-11-09 10:59:09 +00:00
sctp_os.h
sctp_output.c Take out special code for disable CRC computations on 2010-11-14 16:44:18 +00:00
sctp_output.h Delay the assignment of a path for DATA chunk until they hit 2010-09-15 23:10:45 +00:00
sctp_pcb.c Adds new dtrace for cwnd functions and lay's 2010-11-25 13:39:55 +00:00
sctp_pcb.h Fix the switching on/off of CMT using sysctl and socket option. 2010-08-28 17:59:51 +00:00
sctp_peeloff.c Fix the switching on/off of CMT using sysctl and socket option. 2010-08-28 17:59:51 +00:00
sctp_peeloff.h
sctp_structs.h PR SCTP Bugs. Basically a full sized frame of 2010-07-29 11:37:04 +00:00
sctp_sysctl.c Make the initial congestion window configurable via sysctl. 2010-09-17 18:53:07 +00:00
sctp_sysctl.h Allow the initial congestion window to be configure 2010-09-19 11:57:21 +00:00
sctp_timer.c Do not have the MTU table twice in the code. Therefore move the 2010-11-07 18:50:35 +00:00
sctp_timer.h Remove two functions which are not used. 2010-11-07 17:50:56 +00:00
sctp_uio.h Adds new dtrace for cwnd functions and lay's 2010-11-25 13:39:55 +00:00
sctp_usrreq.c Add an SCTP socket option to retrieve the number of timeouts 2010-11-16 22:16:38 +00:00
sctp_var.h * Fix some race condition in SACK/NR-SACK processing. 2010-04-03 15:40:14 +00:00
sctp.h Add an SCTP socket option to retrieve the number of timeouts 2010-11-16 22:16:38 +00:00
sctputil.c Don't print an empty line when printing mapping arrays. 2010-11-12 20:46:33 +00:00
sctputil.h Do not have the MTU table twice in the code. Therefore move the 2010-11-07 18:50:35 +00:00
siftr.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_debug.c Remove the "The option TCPDEBUG requires option INET." requirement. 2009-06-10 10:39:41 +00:00
tcp_debug.h Use uint32_t instead of n_long and n_time, and uint16_t instead of n_short. 2009-02-13 15:14:43 +00:00
tcp_fsm.h
tcp_hostcache.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_hostcache.h Add an essential .h file that skipped from the last commit (r185419). 2008-11-28 23:39:25 +00:00
tcp_input.c Set ssthresh appropriately on RTO. This change was accidentally not ported from 2010-12-02 01:01:37 +00:00
tcp_lro.c
tcp_lro.h
tcp_offload.c Merge the remainder of kern_vimage.c and vimage.h into vnet.c and 2009-08-01 19:26:27 +00:00
tcp_offload.h Replace struct tcpopt with a proxy toeopt struct in the TOE driver interface to 2009-07-13 11:51:02 +00:00
tcp_output.c - Reinstantiate the after_idle hook call in tcp_output(), which got lost 2010-12-02 01:36:00 +00:00
tcp_reass.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_sack.c This commit marks the first formal contribution of the "Five New TCP Congestion 2010-11-12 06:41:55 +00:00
tcp_seq.h
tcp_subr.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_syncache.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_syncache.h Replace struct tcpopt with a proxy toeopt struct in the TOE driver interface to 2009-07-13 11:51:02 +00:00
tcp_timer.c Pass NULL instead of 0 for the th pointer value. NULL != 0 on all platforms. 2010-12-02 00:47:55 +00:00
tcp_timer.h Remove the TCP inflight bandwidth limiter as announced in r211315 2010-09-16 21:06:45 +00:00
tcp_timewait.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
tcp_usrreq.c Add new, per connection, statistics for TCP, including: 2010-11-17 18:55:12 +00:00
tcp_var.h Add new, per connection, statistics for TCP, including: 2010-11-17 18:55:12 +00:00
tcp.h Add new, per connection, statistics for TCP, including: 2010-11-17 18:55:12 +00:00
tcpip.h
toedev.h
udp_usrreq.c After some off-list discussion, revert a number of changes to the 2010-11-22 19:32:54 +00:00
udp_var.h MFP4: @176978-176982, 176984, 176990-176994, 177441 2010-04-29 11:52:42 +00:00
udp.h Added support for NAT-Traversal (RFC 3948) in IPsec stack. 2009-06-12 15:44:35 +00:00