Return-Path: <james.obeirne@gmail.com> Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 6ADCFC000B for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 14 Feb 2022 19:51:40 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 5358C81763 for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 14 Feb 2022 19:51:40 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.098 X-Spam-Level: X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id bRPnu4heNDwj for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 14 Feb 2022 19:51:39 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [IPv6:2607:f8b0:4864:20::b2e]) by smtp1.osuosl.org (Postfix) with ESMTPS id 6D0D7813BE for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 14 Feb 2022 19:51:39 +0000 (UTC) Received: by mail-yb1-xb2e.google.com with SMTP id o19so49238389ybc.12 for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 14 Feb 2022 11:51:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UBJPVvre5aDrM4+jPfxWX8DwPyAkDA3vFP4twqr9skw=; b=htrmfK6etL/GmBHB/aZwh/Gbw7UAW020/3HhZUCe+owaaEwTxxXD1avEqpJYZpUdIa g9SgbLyW3eMaY/bRyBIK6QlRdMK+6JiTkHWOV+vwtVC7XzNh7Age0eISQ+7Tpu3H9LEF hC+sODcTA9x3LLUNkBJivwCHlaHr3xMRgFmI4q6kKs/t3LV+vEiydCPZNIEMB4Pv1bQX JAdxMklHGOLuxrUr/GurjlmrVtsDE8JvgdidrcHRDa/5ZL+Dld4oRz2rQj8AgRNFUNcB IT/9sACm3MmaqDimrpk6xD326xHKk1bnslUAOALQaTxV/Of8aeEITMyjnn3Hj45wRzNi MNMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UBJPVvre5aDrM4+jPfxWX8DwPyAkDA3vFP4twqr9skw=; b=7OFtpS4sd8Umy65kxoItAEWEJYJbemLaxIygslHyhEYPRYNwSep7YjyRxBmW68Il4s 9Os2Igw268fVNj+53J6BsZ6mL1207Hu7L+W6CsmW/ZRLJk28tkHJWKPIKFvjcREbFWkF kJbjn3oSO7fRDkMmWA5uii626SI00mZ7pBw5u/ZIKgV3SfZMVxHKCPli5xU+Vp80zBRJ /sIxkAgrGcNd8p3YZLsa1cho56LMtybu0Wt3h+k6xPgwPGCJL2Bd8joMPQWHg3ujqYJX rFu7NrHHDBGrBhscczlQhlF7l32aXIy/pHWLMHefy2JVcspuKSgyU4ZnI92S6g4wS67C 7c8A== X-Gm-Message-State: AOAM5316233sAr1zXf6PBx+GlpkKRPBbdn59EB86wB2VQiW9mB9Gsd/1 j9OfTugQMUCDHBQA4NVT0AFPYsOwhy3KD9J0lE0qxuScKXueZw== X-Google-Smtp-Source: ABdhPJyCAsSFEFdDIWhL534e2yzXMuY76XhAkLWu0gdE6G18WUknrk0V0SRv2/liI+stmuZ/UZ8ab93lChGHcfI81Tw= X-Received: by 2002:a81:4528:: with SMTP id s40mr386953ywa.188.1644868297905; Mon, 14 Feb 2022 11:51:37 -0800 (PST) MIME-Version: 1.0 References: <CAPfvXfKrnju1fzxOKs3Fx00NOPWHjedF7e4xMSGs8buwc0O2kw@mail.gmail.com> <8be86b19-04eb-af12-a54c-e1140ac62e3f@mattcorallo.com> In-Reply-To: <8be86b19-04eb-af12-a54c-e1140ac62e3f@mattcorallo.com> From: "James O'Beirne" <james.obeirne@gmail.com> Date: Mon, 14 Feb 2022 14:51:26 -0500 Message-ID: <CAPfvXfJX3sc_QKkWzPVRR=-P4eJb4SsfDNO4XjUxCgN1EK_Tpw@mail.gmail.com> To: Matt Corallo <lf-lists@mattcorallo.com> Content-Type: multipart/alternative; boundary="0000000000009958d205d7ffbe7b" Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org> Subject: Re: [bitcoin-dev] Thoughts on fee bumping X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org> List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe> List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/> List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org> List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help> List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe> X-List-Received-Date: Mon, 14 Feb 2022 19:51:40 -0000 --0000000000009958d205d7ffbe7b Content-Type: text/plain; charset="UTF-8" > This entirely misses the network cost. Yes, sure, we can send > "diffs", but if you send enough diffs eventually you send a lot of data. The whole point of that section of the email was to consider the network cost. There are many cases for which transmitting a supplementary 1-in-1-out transaction (i.e. a sponsorship txn) is going to be more efficient from a bandwidth standpoint than rebroadcasting a potentially large txn during RBF. > > In an ideal design, special structural foresight would not be > > needed in order for a txn's feerate to be improved after broadcast. > > > > Anchor outputs specified solely for CPFP, which amount to many > > bytes of wasted chainspace, are a hack. > It's probably > > uncontroversial at this > > This has nothing to do with fee bumping, though, this is only solved > with covenants or something in that direction, not different relay > policy. My post isn't only about relay policy; it's that txn sponsors allows for fee-bumping in cases where RBF isn't possible and CPFP would be wasteful, e.g. for a tree of precomputed vault transactions or - maybe more generally - certain kinds of covenants. > How does this not also fail your above criteria of not wasting block > space? In certain cases (e.g. vault structures), using sponsorship txns to bump fees as-needed is more blockspace-efficient than including mostly-unused CPFP "anchor" outputs that pay to fee-management wallets. I'm betting there are other similar cases where CPFP anchors are included but not necessarily used, and amount to wasted blockspace. > Further, this doesn't solve pinning attacks at all. In lightning we > want to be able to *replace* something in the mempool (or see it > confirm soon, but that assumes we know exactly what transaction is in > "the" mempool). Just being able to sponsor something doesn't help if > you don't know what that thing is. When would you be trying to bump the fee on a transaction without knowing what it is? Seeing a specific transaction "stuck" in the mempool seems to be a prerequisite to bumping fees. I'm not sure what you're getting at here. --0000000000009958d205d7ffbe7b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">> This entirely misses the network cost. Yes, sure, we = can send<br>> "diffs", but if you send enough diffs eventually= you send a lot of data.<br><br>The whole point of that section of the emai= l was to consider the<br>network cost. There are many cases for which trans= mitting a<br>supplementary 1-in-1-out transaction (i.e. a sponsorship txn) = is going<br>to be more efficient from a bandwidth standpoint than rebroadca= sting a<br>potentially large txn during RBF. <br><br>> > In an ideal = design, special structural foresight would not be<br>> > needed in or= der for a txn's feerate to be improved after broadcast.<br>> > <b= r>> > Anchor outputs specified solely for CPFP, which amount to many<= br>> > bytes of wasted chainspace, are a hack. > It's probably= <br>> > uncontroversial at this<br>><br>> This has nothing to d= o with fee bumping, though, this is only solved<br>> with covenants or s= omething in that direction, not different relay<br>> policy.<br><br>My p= ost isn't only about relay policy; it's that txn<br>sponsors allows= for fee-bumping in cases where RBF isn't possible and<br>CPFP would be= wasteful, e.g. for a tree of precomputed vault<br><div>transactions or - m= aybe more generally - certain kinds of</div><div>covenants.</div><br>> H= ow does this not also fail your above criteria of not wasting block<br>>= space?<br><br>In certain cases (e.g. vault structures), using sponsorship = txns to<br>bump fees as-needed is more blockspace-efficient than including<= br>mostly-unused CPFP "anchor" outputs that pay to fee-management= wallets.<br>I'm betting there are other similar cases where CPFP ancho= rs are<br>included but not necessarily used, and amount to wasted blockspac= e.<br><br>> Further, this doesn't solve pinning attacks at all. In l= ightning we<br>> want to be able to *replace* something in the mempool (= or see it<br>> confirm soon, but that assumes we know exactly what trans= action is in<br>> "the" mempool). Just being able to sponsor s= omething doesn't help if<br>> you don't know what that thing is.= <br><br>When would you be trying to bump the fee on a transaction without<b= r>knowing what it is? Seeing a specific transaction "stuck" in th= e<br>mempool seems to be a prerequisite to bumping fees. I'm not sure w= hat<br>you're getting at here.<br></div> --0000000000009958d205d7ffbe7b--