Bitcoin Forum
May 13, 2024, 04:36:03 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Development & Technical Discussion / Idea: Transaction propagation optimization on: March 08, 2018, 07:51:45 AM
Hi everyone,

Recently I’ve been thinking about ways to improve transaction propagation protocol.

It turns out that straightforward flooding scales poorly in terms of bandwidth required to run a Bitcoin Node. In other words, increase in a number of full nodes in the network or in transaction rate will dramatically increase bandwidth requirements for the infrastructure (more precisely, for nodes which accept incoming connections). I can provide a more detailed summary of the problem on request.

I’ve been running a Bitcoin Node and measurements showed that there is a significant redundancy in messages I’m sending. More precisely, only 5% of inv messages I’ve sent got a get_data back.

So I had a couple of ideas to make transaction propagation protocol more efficient while preserving and potentially expanding current privacy guarantees, the robustness of the network and end-to-end throughput of the network.

One of my ideas is applying filters to links to send only a subset of transaction inv messages. At the time of a handshake, a joining node can set a filter, in accordance to which the second node will advertise transactions. A joining node allocates the space of transactions among its neighbors so that it still has a full blockchain.

A full version of the protocol will include partial redundancy, malicious behavior detection, rotation of filters, ....

What do you think of the idea?
Were there any related prior research/proposals in Bitcoin/blockchains space?
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!