TL;DR: “By the power of CTOR!,” miner and developer Jonathan Toomim announced half-jokingly, “Xthinner is now working with BCH mainnet blocks.” The Bitcoin Cash block propagation protocol is designed for better compression than previous attempts such as Compact Blocks, Xthin, and Graphene. In recent tests, Toomim claims the best performing block yielded 99.54% compression.
Xthinner Now Working with Bitcoin Cash Mainnet Blocks
“There’s still a lot of work to be done before the code is of high enough quality to be merged into Bitcoin ABC,” Toomim warned, “so don’t get too excited.” About three months ago, he revealed work on Xthinner, and the project has been something of a buzz ever since within the Bitcoin Cash community.
“I fixed the last showstopping bug in my Xthinner code and got it running between two of my ABC full nodes on mainnet,” Toomim explained in an update. “One node serves as a bridge to the rest of the world, receiving Compact Blocks and transmitting Xthinner. The other is connected to no other nodes except this bridge.”
As CoinSpice reported back in January, Toomim clarified the code was “designed to be fault-tolerant and to handle situations in which the sender and receiver’s mempools are not well synchronized with gracefully degrading performance — missing transactions or other decoding errors can be detected and corrected with one or (rarely) two additional round trips of communication.”
Best Performing Block, Speed of Block Propagation
The best performing block was transmitted in 1,660 bytes with 841 transactions in a 363 kilobyte-sized block. “That’s 99.54% compression or 15.79 bits/tx,” he stressed. “Uncoincidentally, this was also one of the largest blocks so far, with 23 minutes elapsed since the prior block.”
Block 577,310 was the first to be transmitted by Xthinner in this round of testing. Toomim admits “it was transmitted with only 24 transactions in mempool out of 2,865 total in the block. It worked nonetheless.” The code has gone on since without any “block taking more than 1.5 networking round trips. Most non-tiny blocks have gotten about 99.0% compression after fetching missing transactions, or about 99.3% before fetching. In comparison, Compact Blocks usually gets about 96-97% compression. Eight blocks have been complete on arrival without any missing transaction fetching (0.5 round trips), and 24 blocks have required a round trip to fetch missing transactions,” he detailed. “The code still has some known bugs and vulnerabilities, though, so don’t run it on anything you want to stay running.”
Xthinner doesn’t impact requirements for CPU, storage, or RAM on full nodes, “and has very little effect on total network traffic, which is dominated by tx announcements and historical block uploads,” Toomim insisted. Instead, its compression impacts the speed of block propagation, code he describes as “most sensitive to performance and latency for keeping Bitcoin decentralized while scaling, and has long been a sore point, so this optimization is worthwhile.”
DISCLOSURE: The author holds cryptocurrency as part of his financial portfolio, including BCH.
CONTINUE THE SPICE and check out our piping hot VIDEOS. Our podcast, The CoinSpice Podcast, has amazing guests. Follow CoinSpice on Twitter. Join our Telegram feed to make sure you never miss a post. Drop some BCH at the merch shop — we’ve got some spicy shirts for men and women. Don’t forget to help spread the word about CoinSpice on social media.