<<On Thu, 19 Feb 2004 01:34:34 +0100, Andre Oppermann <[EMAIL PROTECTED]> said:

>  - there seems to be no boundary on how many segments we keep in the
>    tcp reassembly queue

I'm not aware of any TCP implementation which ever had such a
limitation.  Perhaps all the others implemented something like that in
the past few years and we haven't kept up?  (I've certainly been aware
of the attack for at least five years if not ten.)

I think the right answer may be a combination of throwing stuff away
more aggressively and compacting what we keep.  (Since we are already
doing an m_pullup() on incoming TCP segments anyway, we should at a
minimum ensure that we don't waste a cluster on each tinygram,
although this obviously still has a pathological case.)

> Something like this is needed for TCP as well to cope with this kind
> of resource exhaustion attack.

I would hope it would be structured more like
`max_holes_per_reassembly_buffer'.

-GAWollman

_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to