diff options
author | Christoph Paasch <christoph.paasch@uclouvain.be> | 2013-03-17 04:23:34 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-03-17 14:35:13 -0400 |
commit | 1a2c6181c4a1922021b4d7df373bba612c3e5f04 (patch) | |
tree | 1346c9b1db83495a98fbcf95f8e521c67fc55cb9 /net/ipv4/syncookies.c | |
parent | 94d8f2b133c9ff97105adc1233d1a35e16e1e7a6 (diff) |
tcp: Remove TCPCT
TCPCT uses option-number 253, reserved for experimental use and should
not be used in production environments.
Further, TCPCT does not fully implement RFC 6013.
As a nice side-effect, removing TCPCT increases TCP's performance for
very short flows:
Doing an apache-benchmark with -c 100 -n 100000, sending HTTP-requests
for files of 1KB size.
before this patch:
average (among 7 runs) of 20845.5 Requests/Second
after:
average (among 7 runs) of 21403.6 Requests/Second
Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/syncookies.c')
-rw-r--r-- | net/ipv4/syncookies.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/ipv4/syncookies.c b/net/ipv4/syncookies.c index ef54377fb11c..7f4a5cb8f8d0 100644 --- a/net/ipv4/syncookies.c +++ b/net/ipv4/syncookies.c | |||
@@ -267,7 +267,6 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb, | |||
267 | struct ip_options *opt) | 267 | struct ip_options *opt) |
268 | { | 268 | { |
269 | struct tcp_options_received tcp_opt; | 269 | struct tcp_options_received tcp_opt; |
270 | const u8 *hash_location; | ||
271 | struct inet_request_sock *ireq; | 270 | struct inet_request_sock *ireq; |
272 | struct tcp_request_sock *treq; | 271 | struct tcp_request_sock *treq; |
273 | struct tcp_sock *tp = tcp_sk(sk); | 272 | struct tcp_sock *tp = tcp_sk(sk); |
@@ -294,7 +293,7 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb, | |||
294 | 293 | ||
295 | /* check for timestamp cookie support */ | 294 | /* check for timestamp cookie support */ |
296 | memset(&tcp_opt, 0, sizeof(tcp_opt)); | 295 | memset(&tcp_opt, 0, sizeof(tcp_opt)); |
297 | tcp_parse_options(skb, &tcp_opt, &hash_location, 0, NULL); | 296 | tcp_parse_options(skb, &tcp_opt, 0, NULL); |
298 | 297 | ||
299 | if (!cookie_check_timestamp(&tcp_opt, sock_net(sk), &ecn_ok)) | 298 | if (!cookie_check_timestamp(&tcp_opt, sock_net(sk), &ecn_ok)) |
300 | goto out; | 299 | goto out; |