According to IOTA Engineering:

IRI 1.5.3 addresses the blowball problem seen on Mainnet.

What exactly is the blowball problem and what causes it?

up vote 4 down vote accepted

The blowball problem is this phenomena where a huge quantity of new transactions select more or less at the same time the exact same transaction (most of the time the latest milestone) as branch and trunk transaction.

On a tangle vizualizer this phenomena is visible in the form of "balls" where the center of the ball is a milestone, and the ball consist of a huge amount of tips.

enter image description here

It's a problem for the convergence of the tangle because when a walker reach the center of the ball it will have the choice between a wide variety of tips with more or less the same transition probability. Intuitively, we can understand that it take more time to obtain a solid consensus when facing such a wide variety of choice. And once the consensus is reached (i.e. some of the tips originally forming the ball have accumulated enough weight to attract the majority of the future walkers), all the other tips forming the ball will be "left behind" (i.e. forever tips).

The causes can be :

  • a problem/bug with the tip-sel algorithm
  • a spammer intentionally selecting the latest milestone as branch and trunk
  • something else ?
  • So no one really knows what the cause is? – Austin Powers Aug 3 at 14:23
  • I stated 2 situations creating blowballs. It is possible that I forgot/don't see something else. – ben75 Aug 3 at 17:09
  • "The blowball problem is this phenomena where a huge quantity of new transactions select more or less at the same time the exact same transaction" Any idea why this happens? If the wallet chooses a random trunk and branch, from a selection of tips, doesn't this indicate a major failure in the software somewhere? – Austin Powers Aug 3 at 17:48
  • Any idea why this happens? --> read my response to the end. The wallet don't select the tx, IRI does. The way to select tips is not enforced by the protocol. The challenge is to not be affected by blowballs (reducing their impact). – ben75 Aug 3 at 20:28

What is the Blowball Problem?

The blowball problem is caused by the IOTA IRI node returning the same branch and same trunk transaction when the wallet calls its 'getTransactionsToApprove` API function.

What Causes It?

This is caused by faulty and buggy software, that isn't able to find a different set of trunk and branch transactions, even though the call is made on totally different nodes.

This is the extent of it - an IRI node just needs to find 2 transactions that meet the requirements randomly and send them back to the caller.

Why Is This Such A Challenge?

I cannot see how this is such a challenge for the IRI node since it has thousands of transactions to choose from and even finding two transactions that meet the requirements and then randomly choosing a few should be computationally easy.

Perhaps someone can share why this is too difficult?

In any case, that is why the blowballs happen.

Your Answer

 
discard

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.