public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Matt Whitlock <bip@mattwhitlock•name>
To: Patrick Strateman <patrick.strateman@gmail•com>
Cc: bitcoin-dev@lists•linuxfoundation.org
Subject: Re: [bitcoin-dev] Can we penalize peers who relay rejected replacement txs?
Date: Thu, 09 Jul 2015 21:36:38 -0400	[thread overview]
Message-ID: <3260721.l4JVm1ozWG@crushinator> (raw)
In-Reply-To: <CADPq5bkyhdGocJncJfG5xkes6Qx-oHyeAsw0CUugqdqJZeubSQ@mail.gmail.com>

My reasons for wanting this are two-fold:

1.) To reduce the CPU load due to Bitcoind. Presently I am seeing periods of time in which Bitcoind is pegging a CPU core. Given that the flood of spam transactions appears mostly to be invalid under RBF rules, I would like to cut off the flood coming into my node by temp-banning the peers who are relaying invalid replacement transactions.

2.) If enough other nodes also implement this banning rule, then we could potentially cut off the flood of spam right at the source. Then the spammer would be forced to build and publish *non-conflicting* transactions to continue the attack, and this would be much costlier to maintain, as then *all* of the spam transactions could eventually have their fees collected by miners, not just some non-conflicting subset of the spam.


On Thursday, 9 July 2015, at 6:27 pm, Patrick Strateman wrote:
> What do you gain by banning peers doing this?
> 
> I'm thinking practically nothing.
> 
> On Jul 9, 2015 4:55 PM, "Matt Whitlock" <bip@mattwhitlock•name> wrote:
> 
> > I'm presently running my full node with Peter Todd's full replace-by-fee
> > patch set [1]. I am seeing a LOT of messages in the log about replacement
> > transactions being rejected due to their paying less in fees than the
> > transactions they would replace. I understand that this could happen
> > legitimately from time to time, due to my node's receiving a replacing
> > transaction prior to receiving the replaced transaction; however, due to
> > the ongoing spam attack, I am seeing a steady stream of these rejection
> > messages, dozens per second at times. I am wondering if each replacement
> > rejection ought to penalize the peer who relayed the offending transaction,
> > and if the penalty builds up enough, then the peer could be temporarily
> > banned, similar to how other "misbehaving" peers are treated.
> >
> > [1] https://github.com/petertodd/bitcoin/commits/replace-by-fee-v0.10.2



  parent reply	other threads:[~2015-07-10  1:36 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-09 23:55 Matt Whitlock
     [not found] ` <CADPq5bkyhdGocJncJfG5xkes6Qx-oHyeAsw0CUugqdqJZeubSQ@mail.gmail.com>
2015-07-10  1:36   ` Matt Whitlock [this message]
2015-07-10  1:57 ` Tom Harding
2015-07-10  2:00   ` Matt Whitlock
2015-07-10  0:42 Raystonn
2015-07-10  1:12 ` Matt Whitlock
2015-07-10  1:18 Raystonn

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=3260721.l4JVm1ozWG@crushinator \
    --to=bip@mattwhitlock$(echo .)name \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=patrick.strateman@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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