The Big Bandwidth conspiracy? No, not really:)

in #help7 years ago (edited)

no-bandwith-head-pic
In the past week I've read many Steemians complaining about that they are unable to use the system because the only thing happening is an error message shows up. I hear many explanations as well. Some argued that this is because Steemit wants them to buy Steem Power, some blame it on the whales, and I even heard that bandwidth is a censorship. Well, I have to partially agree with the last one, but this censorship is supposed to be against the spammers only! But sometimes things go wrong unexpectedly.
I was trying to assure the minnows that this is not the end of the world and I'm sure the help is coming but really I had no idea what is going on. This led me to do some investigation and here is what I've found.

Why we are having the "Bandwidth limit error?"

bandwidth-error-message
The reason is the rapid growth of the platform. Many things have played a part in this problem and it might looks hopeless but the light is there at the end of the tunnel. If you don't care about the technical details, you can jump to the "Conclusion and solution" section at the end of my post.

The problem is (C*U*R*L)/S

That's actually not a word but a mathematical formula for calculating User Average Weekly Bandwidth. Without going too technical I'll explain how is this allocation calculated and why is this important.

Let's start with the basics

To prevent spamming the network, instead of paying transaction fees like at Bitcoin, when you write a post or comment, when you power up, when send money or change your profile picture, etc. so when you interact with the blockchain (make a transaction) you're using up part of your bandwidth.

Your nice post, after clicking the Post button is being converted into code. The browser will pack all the text, title and tags, than add your signature to the package and it is broadcasted to a witness who will include it into the next block. Your package have a size: X bytes. X bytes will be deducted from your bandwidth allowance.

You can check your remaining bandwidth at https://steemd.com/@username

pic

That "11mb" (11 Mega Bytes) you see above is my bandwidth allowance, the maximum amount of data I can transact with the blockchain. The number will go down as I send my post and it will regenerate over time.

Your number will be different because it's depends on many things, just to mention a few:

  • the traffic on the blockchain at time of your transaction
  • total traffic in the past few days
  • your SP
  • the TOTAL SP on the steem ecosystem.

OK, but I still don't know why the error?

Simply: Because of the growing popularity of Steemit!
You don't have to remember everything below but it will give you a better understanding of the issue.

What factors play a role:

total_vesting_shares

When your account was activated, you received some Steem Power. When you power up you get more SP. The total_vesting_shares is the amount of SP in the whole steem ecosystem, every user's SP together.

current_reserve_ratio

This variable is responsible for the allocation of bandwidth based on the traffic on the blockchain. As I found out from @rycharde's blog, if the network traffic hits over 50% of the capacity, the current_reserve_ratio drops. This is what happened lately it went from 20,000 to as low as 243! And it's only because of this unprecedented growth. Which is a very good thing, don't get me wrong but the blockchain wasn't ready for it. The developers will change this algorithm in the next soft fork (0.19.1).

maximum_block_size

Just briefly have to mention that every block can hold only a previously specified amount of transactions 65,536 Bytes. This number can be adjusted by the witnesses, each witness set his/her own maximum_block_size. @someguy123 has asked all the witnesses to increase their block size. As @blueorgy wrote in his blog, the new median is 98,304. This way helping to ease the pressure on the system temporarily.

The formula again

Finally we have all the variables explained, so let's do the math:

C = maximum_block_size
U = USER SP
R = current_reserve_ratio
L = Total blocks in 7 days
S = Total SP (total_vesting_shares/2060)

User Average Weekly Bandwidth = (C*U*R*L)/S

Conclusion and solution

Thanks to @timcliff's report we can be sure that the Steemit Developers are already working on the solution and they are most probably going to introduce a new algorithm for calculating the current_reserve_ratio, very soon.

In the meantime if you are unable to post, comment or upvote, the only thing you can do is to wait. Go to https://steemd.com/@your-username and check your bandwidth. It is recovering in a different rate at different times because of the traffic in the system but you should be able to transact after a short waiting.

Alternatively if you have less than 10SP you should check out @neoxian's post about her standing offer this might be a quick help.


Thanks for visiting and have a nice day!

FOLLOW ME!

--- resources list ---
Sort:  

Thank you for the clarity you have brought to this issue.
(It really did come as a shock when I was temporarily unable to post.)

I've also seen lots of the "Bandwidth" posts and was wondering what people were talking about. I was starting to wonder if they meant their broadband connections? :-D

I've yet to be affected although I don't seem to have had any replies for a couple of days which seems strange?

One good thing to come out of your post. I followed https://steemd.com/@dickturpin and some mad impressionable fool voted me for a witness. I shall don the smug face of "Trusted" all day now. \o/ :-)

nice article! I like the way you write.

Hey, thank you!

Your kind words taste like honey to my ego!:)

I've read some of your post and I have a question:
Are you sure, you're not me? Hahaha!

No, seriously. Your introduction post is like mine would be, if ever I'm going to finish it...

Be careful sir, because I'm following you now:)

Congratulations! This post has been upvoted from the communal account, @minnowsupport, by neander-squirrel from the Minnow Support Project. It's a witness project run by aggroed, ausbitbank, teamsteem, theprophet0, and someguy123. The goal is to help Steemit grow by supporting Minnows and creating a social network. Please find us in the Peace, Abundance, and Liberty Network (PALnet) Discord Channel. It's a completely public and open space to all members of the Steemit community who voluntarily choose to be there.

If you like what we're doing please upvote this comment so we can continue to build the community account that's supporting all members.