[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <C8A6796DE7C66C4ABCBC18106CB6C1CC164D13A516@ESESSCMS0356.eemea.ericsson.se>
Date: Fri, 1 Jun 2012 23:34:14 +0200
From: Hans Schillström <hans.schillstrom@...csson.com>
To: Eric Dumazet <eric.dumazet@...il.com>
CC: netdev <netdev@...r.kernel.org>,
Jesper Dangaard Brouer <brouer@...hat.com>,
David Miller <davem@...emloft.net>,
Neal Cardwell <ncardwell@...gle.com>,
Tom Herbert <therbert@...gle.com>
Subject: RE: [PATCH] tcp: do not create inetpeer on SYNACK message
Hi Eric
>Another problem on SYNFLOOD/DDOS attack is the inetpeer cache getting
>larger and larger, using lots of memory and cpu time.
>
>>tcp_v4_send_synack()
>->inet_csk_route_req()
> ->ip_route_output_flow()
> ->rt_set_nexthop()
> ->rt_init_metrics()
> ->inet_getpeer( create = true)
>
>This is a side effect of commit a4daad6b09230 (net: Pre-COW metrics for
>TCP) added in 2.6.39
>
>Possible solution :
>
>Instruct inet_csk_route_req() to remove FLOWI_FLAG_PRECOW_METRICS
>
It think we are on the right way now,
Some results from one of our testers:
before applying "reflect SYN queue_mapping into SYNACK"
"(The latest one from Eric is not included. I am building with
that one right now.)
Results were that with the same number of SYN/s, load went down
30% on each of the three Cpus that were handling the SYNs.
Great !!!"
I'm looking forward to see the results of the latests patch.
Then I think conntrack need a little shape up, like a "mini-conntrack"
it is way to expensive to alloc a full "coontack for every SYN.
I have a bunch of patches and ideas for that...
Thanks Eric for a great job
/Hans
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists