freebsd-skq/sys/netinet
Luigi Rizzo 988790bfd9 Implement per-flow queueing. Using a single pipe config rule,
now you can dynamically create rate-limited queues for different
flows using masks on dst/src IP, port and protocols.
Read the ipfw(8) manpage for details and examples.

Restructure the internals of the traffic shaper to use heaps,
so that it manages efficiently large number of queues.

Fix a bug which was present in the previous versions which could
cause, under certain unfrequent conditions, to send out very large
bursts of traffic.

All in all, this new code is much cleaner than the previous one and
should also perform better.

Work supported by Akamba Corp.
2000-01-08 11:24:46 +00:00
..
libalias Fix a '&&' that should have been a '&'. 1999-12-10 20:04:53 +00:00
fil.c KERNEL -> _KERNEL 2000-01-05 16:25:20 +00:00
icmp6.h KAME netinet6 basic part(no IPsec,no V6 Multicast Forwarding, no UDP/TCP 1999-11-22 02:45:11 +00:00
icmp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
if_atm.c udp IPv6 support, IPv6/IPv4 tunneling support in kernel, 1999-12-07 17:39:16 +00:00
if_atm.h Forward declare some structs so that this file is more self-sufficient. 1998-02-03 21:52:02 +00:00
if_ether.c Append missing newline to log() message for permanent ARP modification 1999-10-18 11:56:50 +00:00
if_ether.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
if_fddi.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
igmp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
igmp.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
igmp.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_cksum.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_gif.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_gif.h IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_hostcache.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_hostcache.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_pcb.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_pcb.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_proto.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in_rmx.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_systm.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
in.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
in.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip6.h KAME netinet6 basic part(no IPsec,no V6 Multicast Forwarding, no UDP/TCP 1999-11-22 02:45:11 +00:00
ip_auth.c KERNEL -> _KERNEL 2000-01-05 16:25:20 +00:00
ip_auth.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_compat.h Revive mlfk_ipl here. This version is slightly changed from 1999-12-06 20:36:50 +00:00
ip_divert.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_dummynet.c Implement per-flow queueing. Using a single pipe config rule, 2000-01-08 11:24:46 +00:00
ip_dummynet.h Implement per-flow queueing. Using a single pipe config rule, 2000-01-08 11:24:46 +00:00
ip_ecn.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_ecn.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_fil.c Revive mlfk_ipl here. This version is slightly changed from 1999-12-06 20:36:50 +00:00
ip_fil.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_flow.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ip_flow.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ip_frag.c KERNEL -> _KERNEL 2000-01-05 16:25:20 +00:00
ip_frag.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_ftp_pxy.c Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_fw.c udp IPv6 support, IPv6/IPv4 tunneling support in kernel, 1999-12-07 17:39:16 +00:00
ip_fw.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_icmp.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_icmp.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_input.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_log.c Get rid of useless osreldate include for KLD/LKM modules (sys/param.h 1999-11-23 22:16:41 +00:00
ip_mroute.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_mroute.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip_nat.c KERNEL -> _KERNEL 2000-01-05 16:25:20 +00:00
ip_nat.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_output.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ip_proxy.c Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_proxy.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_raudio_pxy.c Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_rcmd_pxy.c Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_state.c KERNEL -> _KERNEL 2000-01-05 16:25:20 +00:00
ip_state.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ip_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ip.h IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
ipl.h Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
ipprotosw.h IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
mlfk_ipl.c The ipfilter module name wasn't exactly conventional.. 1999-12-20 15:49:38 +00:00
raw_ip.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
tcp_debug.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
tcp_debug.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp_fsm.h Undo rev 1.10, which took out TH_FIN from the CLOSING state. This 1999-11-07 04:18:30 +00:00
tcp_input.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
tcp_output.c Restructure TCP timeout handling: 1999-08-30 21:17:07 +00:00
tcp_reass.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
tcp_seq.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp_subr.c Make tcp_drain() actually do something. When invoked (usually as a 1999-12-28 23:18:33 +00:00
tcp_timer.c Simplify, and return an error if the user attempts to set a TCP 1999-08-31 16:34:20 +00:00
tcp_timer.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp_timewait.c Make tcp_drain() actually do something. When invoked (usually as a 1999-12-28 23:18:33 +00:00
tcp_usrreq.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
tcp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
tcp.h KAME related header files additions and merges. 1999-11-05 14:41:39 +00:00
tcpip.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
udp_usrreq.c IPSEC support in the kernel. 1999-12-22 19:13:38 +00:00
udp_var.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
udp.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00