netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gavin McCullagh <gavin.mccullagh@nuim.ie>
To: netdev@vger.kernel.org
Cc: David Malone <David.Malone@nuim.ie>, Douglas Leith <doug.leith@nuim.ie>
Subject: Re: fixing opt-ack DoS against TCP stack
Date: Thu, 11 Jan 2007 13:19:08 +0000	[thread overview]
Message-ID: <20070111131908.GS31536@nuim.ie> (raw)
In-Reply-To: <20070109112656.1d6ee9ba@freekitty>

Hi,

[ moving this to netdev as requested ]

On Tue, 09 Jan 2007, Stephen Hemminger wrote:

> Actually, this paper seems to be a zombified version of:
> 	http://www.cs.ucsd.edu/~savage/papers/CCR99.pdf

Thanks.  In fairness to them, the emphasis is slightly different, Savage et
al are more interested in improving a receiver's performance, whereas
Sherwood seems more interested in a DoS attack.  However...

> It is not clear that current Linux systems are prone to the attack for a
> couple of reasons. First, Linux does more counts packets not bytes so
> extra ack's would be ignored. Turning on ABC would also help.

The issue I'm raising is not as much how you could artifically increase
Cwnd by dividing ACKs or sending them early.  The issue as I see it is that
if the receiver doesn't send dup acks, the sender never backs off and may
eventually flood its own link.  As the receiver need only ACK the odd
packet, the amplification can be substantial.

As this issue is already moreorless solved (in the research sense), I'm not
keen to spend a lot of time writing it up.  So, here's a quick throw
together of a small example experiment I ran yesterday.

	http://www.hamilton.ie/gavinmc/drop_dupack_attack/

> Lastly, the patch looks like it could cause more problems. It probably would
> break some application and other non-attacking TCP stacks. For this case, IMHO
> we need to wait for more research. If you want to pursue the problem, it needs
> to go through the RFC process.

I must admit I didn't read the patch in detail.  As I understand it, the
fix should (in principal) be compatible with other TCP stacks who should
just see an odd extra dropped packet and react with a duplicate ack as
usual.

Gavin


       reply	other threads:[~2007-01-11 13:19 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20070109103718.GE31536@nuim.ie>
     [not found] ` <20070109112656.1d6ee9ba@freekitty>
2007-01-11 13:19   ` Gavin McCullagh [this message]
2007-01-09 14:24 fixing opt-ack DoS against TCP stack Gavin McCullagh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070111131908.GS31536@nuim.ie \
    --to=gavin.mccullagh@nuim.ie \
    --cc=David.Malone@nuim.ie \
    --cc=doug.leith@nuim.ie \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).