<oembed><type>rich</type><version>1.0</version><author_name>npub1ac86vemj7ce5z8jyxt39rna3tvwql6xd30ha3vxcd6esysp23d9qrlswfj</author_name><author_url>https://nostr.ae/npub1ac86vemj7ce5z8jyxt39rna3tvwql6xd30ha3vxcd6esysp23d9qrlswfj</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-12-14&#xA;📝 Original message:I think someone, maybe Pieter, commented on this relay issue that it&#xA;would be likely very transitory, as a lot of stuff would be fairly&#xA;quickly upgraded in practice from previous deployment experience, and&#xA;I think anyway there is a huge excess connectivity and capacity in the&#xA;p2p network vs having a connected network of various versions, and&#xA;supporting SPV client load (SPV load is quite low relative to&#xA;capacity, even one respectable node can support a large number of SPV&#xA;clients).&#xA;&#xA;(Ie so two classes of network node and connectivity wouldnt be a&#xA;problem in practice even if it did persist; also the higher capacity&#xA;better run nodes are more likely to upgrade due to having more clued&#xA;in power user, miner, pool or company operators).&#xA;&#xA;Maybe someone more detailed knowledge could clarify further.&#xA;&#xA;Adam&#xA;&#xA;On 14 December 2015 at 19:21, Jonathan Toomim via bitcoin-dev&#xA;&lt;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt; This means that a server supporting SW might only hear of the tx data and&#xA;&gt; not get the signature data for some transactions, depending on how the relay&#xA;&gt; rules worked (e.g. if the SW peers had higher minrelaytxfee settings than&#xA;&gt; the legacy peers). This would complicate fast block relay code like IBLTs,&#xA;&gt; since we now have to check to see that the recipient has both the tx data&#xA;&gt; and the witness/sig data.&#xA;&gt;&#xA;&gt; The same issue might happen with block relay if we do SW as a soft fork. A&#xA;&gt; SW node might see a block inv from a legacy node first, and might start&#xA;&gt; downloading the block from that node. This block would then be marked as&#xA;&gt; in-flight, and the witness data might not get downloaded. This shouldn&#39;t be&#xA;&gt; too hard to fix by creating an inv for the witness data as a separate&#xA;&gt; object, so that a node could download the block from e.g. Peer 1 and the&#xA;&gt; segwit data from Peer 2.&#xA;&gt;&#xA;&gt; Of course, the code would be simpler if we did this as a hard fork and we&#xA;&gt; could rely on everyone on the segwit fork supporting the segwit data.&#xA;&gt; Although maybe we want to write the interfaces in a way that supports some&#xA;&gt; nodes not downloading the segwit data anyway, just because not every node&#xA;&gt; will want that data.&#xA;&gt;&#xA;&gt; I haven&#39;t had time to read sipa&#39;s code yet. I apologize for talking out of a&#xA;&gt; position of ignorance. For anyone who has, do you feel like sharing how it&#xA;&gt; deals with these network relay issues?&#xA;&gt;&#xA;&gt; By the way, since this thread is really about SegWit and not about any other&#xA;&gt; mechanism for increasing Bitcoin capacity, perhaps we should rename it&#xA;&gt; accordingly?&#xA;&gt;&#xA;&gt;&#xA;&gt; On Dec 12, 2015, at 11:18 PM, Mark Friedenbach via bitcoin-dev&#xA;&gt; &lt;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&#xA;&gt; A segwit supporting server would be required to support relaying segwit&#xA;&gt; transactions, although a non-segwit server could at least inform a wallet of&#xA;&gt; segwit txns observed, even if it doesn&#39;t relay all information necessary to&#xA;&gt; validate.&#xA;&gt;&#xA;&gt; Non segwit servers and wallets would continue operations as if nothing had&#xA;&gt; occurred.&#xA;&gt;&#xA;&gt; If this means essentially that a soft fork deployment of SegWit will require&#xA;&gt; SPV wallet servers to change their logic (or risk not being able to send&#xA;&gt; payments) then it does seem to me that a hard fork to deploy this non&#xA;&gt; controversial change is not only cleaner (on the data structure side) but&#xA;&gt; safer in terms of the potential to affect the user experience.&#xA;&gt;&#xA;&gt;&#xA;&gt; — Regards,&#xA;&gt;&#xA;&gt;&#xA;&gt;&#xA;&gt; _______________________________________________&#xA;&gt; bitcoin-dev mailing list&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;</html></oembed>