Date: Thu, 20 Nov 2003 12:07:39 -0800 (PST) From: Andre Oppermann <andre@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/conf files src/sys/net if_faith.c if_loop.c route.h rtsock.c src/sys/netinet in_pcb.c in_pcb.h in_rmx.c ip_divert.c ip_fw2.c ip_icmp.c ip_input.c ip_output.c raw_ip.c... Message-ID: <200311202007.hAKK7dLX093410@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
andre 2003/11/20 12:07:39 PST FreeBSD src repository Modified files: sys/conf files sys/net if_faith.c if_loop.c route.h rtsock.c sys/netinet in_pcb.c in_pcb.h in_rmx.c ip_divert.c ip_fw2.c ip_icmp.c ip_input.c ip_output.c raw_ip.c tcp_input.c tcp_output.c tcp_subr.c tcp_syncache.c tcp_timer.c tcp_usrreq.c tcp_var.h udp_usrreq.c sys/netinet6 icmp6.c in6_pcb.c in6_rmx.c in6_src.c ip6_output.c udp6_output.c Added files: sys/netinet tcp_hostcache.c Log: Introduce tcp_hostcache and remove the tcp specific metrics from the routing table. Move all usage and references in the tcp stack from the routing table metrics to the tcp hostcache. It caches measured parameters of past tcp sessions to provide better initial start values for following connections from or to the same source or destination. Depending on the network parameters to/from the remote host this can lead to significant speedups for new tcp connections after the first one because they inherit and shortcut the learning curve. tcp_hostcache is designed for multiple concurrent access in SMP environments with high contention and is hash indexed by remote ip address. It removes significant locking requirements from the tcp stack with regard to the routing table. Reviewed by: sam (mentor), bms Reviewed by: -net, -current, core@kame.net (IPv6 parts) Approved by: re (scottl) Revision Changes Path 1.854 +1 -0 src/sys/conf/files 1.24 +2 -11 src/sys/net/if_faith.c 1.92 +2 -11 src/sys/net/if_loop.c 1.54 +8 -2 src/sys/net/route.h 1.97 +21 -17 src/sys/net/rtsock.c 1.132 +14 -83 src/sys/netinet/in_pcb.c 1.67 +3 -16 src/sys/netinet/in_pcb.h 1.51 +1 -2 src/sys/netinet/in_rmx.c 1.80 +3 -6 src/sys/netinet/ip_divert.c 1.47 +6 -3 src/sys/netinet/ip_fw2.c 1.85 +28 -29 src/sys/netinet/ip_icmp.c 1.258 +8 -8 src/sys/netinet/ip_input.c 1.203 +9 -16 src/sys/netinet/ip_output.c 1.122 +1 -1 src/sys/netinet/raw_ip.c 1.1 +728 -0 src/sys/netinet/tcp_hostcache.c (new) 1.216 +200 -144 src/sys/netinet/tcp_input.c 1.83 +17 -27 src/sys/netinet/tcp_output.c 1.168 +124 -222 src/sys/netinet/tcp_subr.c 1.49 +34 -66 src/sys/netinet/tcp_syncache.c 1.63 +2 -5 src/sys/netinet/tcp_timer.c 1.89 +25 -20 src/sys/netinet/tcp_usrreq.c 1.93 +33 -11 src/sys/netinet/tcp_var.h 1.142 +12 -5 src/sys/netinet/udp_usrreq.c 1.50 +9 -21 src/sys/netinet6/icmp6.c 1.45 +8 -36 src/sys/netinet6/in6_pcb.c 1.12 +1 -2 src/sys/netinet6/in6_rmx.c 1.24 +37 -8 src/sys/netinet6/in6_src.c 1.70 +20 -7 src/sys/netinet6/ip6_output.c 1.15 +3 -6 src/sys/netinet6/udp6_output.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311202007.hAKK7dLX093410>