TvdW / bitpeer

Bitpeer is an experimental Bitcoin relay server. Its event-driven architecture makes it extremely fast, and it was designed to be very lightweight.
BSD 3-Clause "New" or "Revised" License
9 stars 2 forks source link

Bandwidth Spikes when sending blocks causes packet loss and high transfer latency #11

Closed TheBlueMatt closed 7 years ago

TheBlueMatt commented 7 years ago

You might be interested in watching one of the technical talks I've done on FIBRE, or reading http://bluematt.bitcoin.ninja/2016/07/07/relay-networks/ and http://bitcoinfibre.org/

Because of the design of bitpeer (sending a flood of blocks over TCP all at once), it causes packet loss spikes which, in turn, causes a significant increase in latency to send blocks. You can observe this phenomenon pretty easily if you're sitting on the other end, though if you aren't looking at wireshark/tcpdump (and are just looking at what kernel exposes to you) you wont see it.

TvdW commented 7 years ago

Go advertise somewhere else.

TheBlueMatt commented 7 years ago

Huh? I didn't mean to come off as advertising, was instead pointing out a technical issue. While things like FIBRE are more complete fixes, in order for this project to be truly low-latency you'd likely want to add compact block + XThin support, as well as limit outbound bandwidth in your software (by sending to nodes in sequence instead of in parallel). Because these are not implemented, a ton of latency is added by TCP and you end up providing blocks much slower than you otherwise would.

On December 29, 2016 3:33:21 PM GMT+01:00, Tom van der Woerdt notifications@github.com wrote:

Go advertise somewhere else.

-- You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub: https://github.com/TvdW/bitpeer/issues/11#issuecomment-269638279