Author Topic: Why DPOS is better than other POS  (Read 24691 times)

0 Members and 1 Guest are viewing this topic.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Subscribing to this awesome discussion .. +5%

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
Quote
But in reality the validation costs per transaction are not fixed, they decrease as transactions increase -

I actually think economies of scale work slightly differently in this case:

1) Does the cost per GB of ram increase as you add more ram to a system?   Eventually speed of light, mother board size, etc results in moving to higher-end, lower volume, components and thus a higher price due to their speciality / bleeding edge nature.    As the system hits the limits of network, CPU, and memory technology prices go up for each additional transaction.

2) Transaction Processing is sequential by nature

With this in mind I think it is fair to assume that a fixed validation cost is fair.

 +5% Thanks. I can't think of any advantage to having 1000 delegates vs. 100 besides the 'idea' of more decentralisation anyway, (But lots of other new disadvantages.)

Offline bytemaster

this is tough subject matter to translate into noobspeak.

be back soon with another draft, keep the input coming if you got it.

Be sure to point out how this applies to Proof of Work systems... especiall Proof-of-Chain like ethereum is doing.   We can then post a blog article and pump it on Reddit and draw a huge debate.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

Quote
But in reality the validation costs per transaction are not fixed, they decrease as transactions increase -

I actually think economies of scale work slightly differently in this case:

1) Does the cost per GB of ram increase as you add more ram to a system?   Eventually speed of light, mother board size, etc results in moving to higher-end, lower volume, components and thus a higher price due to their speciality / bleeding edge nature.    As the system hits the limits of network, CPU, and memory technology prices go up for each additional transaction.

2) Transaction Processing is sequential by nature

With this in mind I think it is fair to assume that a fixed validation cost is fair.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

merockstar

  • Guest
this is tough subject matter to translate into noobspeak.

be back soon with another draft, keep the input coming if you got it.

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
it feels lacking.

what points am I missing guys?


It's good. As you say people are short term focused until it becomes an issue. (Edit: So I mean most of the above isn't a huge selling point yet.)

What it could be missing -

Even now isn't DPOS able to offer meaningfully lower transaction fees than most other systems?

At the moment the chart here says variable* http://wiki.bitshares.org/index.php/Why_choose_Bitshares%3F
& links to an explanation of 'burn rate'. Unfortunately that gives me no way to make a $ comparison.

Originally my understanding was that we could already easily be 10x cheaper than the $0.05 or $0.06 you pay in NXT and mostly pay in Bitcoin.

If my understanding is correct then the financial advantage of our system will have a big impact in applications like tipping or content purchase from the outset. (If you tip someone $0.2 or want to read a publication/article for $0.2 paying a 25% fee of $0.05 via NXT/BTC is pretty steep, if we are 10x cheaper then DPOS could dominate the micropayments area from the outset.)

The cost of running nodes in our system:  $100 / month * 101 delegates =>  $10,100 / month in operating costs.   Delegates will need to earn that from transaction fees.  At 1 transaction per second that will require fees of $0.004.    At 0.25 trx per second (one trx every 4 seconds) it will require $0.02 per transaction to cover costs.

As the network grows the costs grow non-linearly as you go from commodity hardware to high-end hardware.     I suspect that at the end of the day we will likely have fees of about $0.05 like the other networks.    Unfortunately, for the other networks, their fees are expected to be shared with those leasing forging power (Nxt) or only those with greater than 1% of the stake (Peercoin). 

We will likely target fees high enough to prevent spam and abuse but allow legitimate use.   Starting out with a fee of $0.02 will probably be sufficient once the market cap grows the fee will grow with it to $0.05-$0.10 and make being a delegate profitable and thus pay for the OTHER THINGS delegates should be doing. 

I think the article is very good, but could probably use some examples that visually show that Peercoin will centralize to less than 100 people and that Nxt forgers will not be able to pay those that lease them forging power.

 +5% Thanks for the explanation.

I might have misunderstood it, but this is where I'm at now, the article assumes that validation costs are fixed

Quote
Assuming a fixed validation cost per transaction and a fixed fee per transaction, there is a limit to the amount of decentralization that can take place. 

But in reality the validation costs per transaction are not fixed, they decrease as transactions increase -

Quote
The cost of running nodes in our system:  $100 / month * 101 delegates =>  $10,100 / month in operating costs.   Delegates will need to earn that from transaction fees.  At 1 transaction per second that will require fees of $0.004.    At 0.25 trx per second (one trx every 4 seconds) it will require $0.02 per transaction to cover costs.

So doesn't this mean that over time as the amount of transactions increase,  the transaction fee needed from each transaction for a delegate to BE will get lower and lower, getting to a point where the difference in transaction fee required between a 100 delegate system and a 1000 delegate system will become unnoticeable? ($0.0001 vs. $0.00001)

A 100 delegate system could charge the same fee but take the running costs and profits that would have gone to the 900 other delegates and return those to shareholders/benefit the business but again once the BE transaction fee gets really low &/CAP gets high, the interest rate this represents to shareholders will be negligible.






Offline bytemaster

Quote
Blockchain-based Mining
We have not finalized the details of this, but Ethereum will likely use something similar to the following for its mining algorithm:

1. Let H = sha3(sha3(block header without nonce) ++ nonce ++ i) for i in [0 ...16]

2. Let N be the number of transactions in the block.

3. Let T be the (H mod N)th transaction in the block.

4. Let S be the parent block state.

5. Apply T[0] … T[15] to S, and let the resulting state be S’.

6. Let x = sha3(S’.root)

7. The block is valid if x * difficulty <= 2^256

This has the following properties:

1. This is extremely memory-hard, even more so than Dagger, since mining effectively requires access to the entire blockchain. However it is parallelizable with shared disk space, so it will likely be GPU-dominated, not CPU-dominated as Dagger originally hoped to be.

2. It is memory-easy to verify, since a proof of validity consists of only the relatively small subset of Patricia nodes that are used while processing T[0] … T[15]

3. All miners essentially have to be full nodes; asking the network for block data for every nonce is prohibitively slow. Thus there will be a larger number of full nodes in Ethereum than in Bitcoin.

4. As a result of (3), one of the major motivations to use centralized mining pools, the fact that they allow miners to operate without downloading the entire blockchain, is nullified. The other main reason to use mining pools, the fact that they even out the payout rate, can be assomplished just as easily with the decentralized p2pool (which we will likely end up supporting with development resources)

5. ASICs for this mining algorithm are simultaneously ASICs for transaction processing, so Ethereum ASICs will help solve the scalability problem.

From here, there is only really one optimization that can be made: figuring out some way to get past the obstacle that every full node must process every transaction. This is a hard problem; a truly scalable and effective solution will take a while to develop. However, this is a strong start, and may even end up as one of the key ingredients to a final solution.

In effect Ethereum is forcing all miners to bear the cost of a full node.... the number of full nodes will thus be proportional to expected fees / dilution.   

https://blog.ethereum.org/2014/02/18/ethereum-scalability-and-decentralization-updates/

Quote
5. ASICs for this mining algorithm are simultaneously ASICs for transaction processing, so Ethereum ASICs will help solve the scalability problem.

So in addition to using Ghost / Randomness in an attempt to get up to 12 second blocks (ie: processing a lot of orphaned blocks) only those able to run a full node can mine and thus negating the decentralization aspect of it.   

Economics really is the key to everything.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

I think the focus of this article isn't "short term", but more of the long-term.... in the short term they are all "equal" in the long term ours has the best chance of controlling centralization.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

it feels lacking.

what points am I missing guys?


It's good. As you say people are short term focused until it becomes an issue. (Edit: So I mean most of the above isn't a huge selling point yet.)

What it could be missing -

Even now isn't DPOS able to offer meaningfully lower transaction fees than most other systems?

At the moment the chart here says variable* http://wiki.bitshares.org/index.php/Why_choose_Bitshares%3F
& links to an explanation of 'burn rate'. Unfortunately that gives me no way to make a $ comparison.

Originally my understanding was that we could already easily be 10x cheaper than the $0.05 or $0.06 you pay in NXT and mostly pay in Bitcoin.

If my understanding is correct then the financial advantage of our system will have a big impact in applications like tipping or content purchase from the outset. (If you tip someone $0.2 or want to read a publication/article for $0.2 paying a 25% fee of $0.05 via NXT/BTC is pretty steep, if we are 10x cheaper then DPOS could dominate the micropayments area from the outset.)

The cost of running nodes in our system:  $100 / month * 101 delegates =>  $10,100 / month in operating costs.   Delegates will need to earn that from transaction fees.  At 1 transaction per second that will require fees of $0.004.    At 0.25 trx per second (one trx every 4 seconds) it will require $0.02 per transaction to cover costs.

As the network grows the costs grow non-linearly as you go from commodity hardware to high-end hardware.     I suspect that at the end of the day we will likely have fees of about $0.05 like the other networks.    Unfortunately, for the other networks, their fees are expected to be shared with those leasing forging power (Nxt) or only those with greater than 1% of the stake (Peercoin). 

We will likely target fees high enough to prevent spam and abuse but allow legitimate use.   Starting out with a fee of $0.02 will probably be sufficient once the market cap grows the fee will grow with it to $0.05-$0.10 and make being a delegate profitable and thus pay for the OTHER THINGS delegates should be doing. 

I think the article is very good, but could probably use some examples that visually show that Peercoin will centralize to less than 100 people and that Nxt forgers will not be able to pay those that lease them forging power.   

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

merockstar

  • Guest
it feels lacking.

what points am I missing guys?


It's good. As you say people are short term focused until it becomes an issue. (Edit: So I mean most of the above isn't a huge selling point yet.)

What it could be missing -

Even now isn't DPOS able to offer meaningfully lower transaction fees than most other systems?

At the moment the chart here says variable* http://wiki.bitshares.org/index.php/Why_choose_Bitshares%3F
& links to an explanation of 'burn rate'. Unfortunately that gives me no way to make a $ comparison.

Originally my understanding was that we could already easily be 10x cheaper than the $0.05 or $0.06 you pay in NXT and mostly pay in Bitcoin.

If my understanding is correct then the financial advantage of our system will have a big impact in applications like tipping or content purchase from the outset. (If you tip someone $0.2 or want to read a publication/article for $0.2 paying a 25% fee of $0.05 via NXT/BTC is pretty steep, if we are 10x cheaper then DPOS could dominate the micropayments area from the outset.)

+5% will add that stuff

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
it feels lacking.

what points am I missing guys?


It's good. As you say people are short term focused until it becomes an issue. (Edit: So I mean most of the above isn't a huge selling point yet.)

What it could be missing -

Even now isn't DPOS able to offer meaningfully lower transaction fees than most other systems?

At the moment the chart here says variable* http://wiki.bitshares.org/index.php/Why_choose_Bitshares%3F
& links to an explanation of 'burn rate'. Unfortunately that gives me no way to make a $ comparison.

Originally my understanding was that we could already easily be 10x cheaper than the $0.05 or $0.06 you pay in NXT and mostly pay in Bitcoin.

If my understanding is correct then the financial advantage of our system will have a big impact in applications like tipping or content purchase from the outset. (If you tip someone $0.2 or want to read a publication/article for $0.2 paying a 25% fee of $0.05 via NXT/BTC is pretty steep, if we are 10x cheaper then DPOS could dominate the micropayments area from the outset.)
« Last Edit: July 13, 2014, 04:14:47 pm by Empirical1 »

merockstar

  • Guest
it feels lacking.

what points am I missing guys?



first draft Proof of Stake Scalability

What is the problem?

Proof of stake systems are off to a great start. From our current vantage point these new ways of validating the blockchain implemented in currencies like Peercoin and Nxt, seem to adequately secure their respective blockchains while simultaneously promising to create a fraction of the carbon footprint that their Proof of Work based predecessors do. It has long been known that without increased transactions fees Proof of Work systems will eventually no longer be able to provide enough incentive to motivate a sufficient variety of miners to still call the network decentralized.

At smaller scales the effect of validation cost goes unnoticed. When you're only conducting 1/10000 of the number of transactions as a major credit card company, it doesn't cost that much to validate transactions, leaving all the attention on how decentralized the network is, and what is the cost per transaction.

With relatively few transactions in a market that has not yet gone mainstream it makes sense that validation cost has yet to become a serious matter in any as validation can be done with much less computer power. Already we see that in Peercoin and Nxt that to make gains from running a node, one must have a substantial amount of currency up for stake.

You can see this coming if you've ever tried to mint Peercoin with only a hundred coins to your name, or forge Nxt with only a thousand. It just doesn't happen in a timely manner, and that means you have to keep your node running for a longer amount of time to mint a given amount, and the longer a node runs the more resources it consumes. At this early stage, that extra time running a node is pretty much negligible because the electricity and computing resources to do so won't constitute much at this stage of the game, without very many people making transactions. Given more popularity, and thus more transactions that need validating, this problem will increase in time, given more general usage.

This problem can be mitigated with transaction fees but at a certain point, in order to remain profitable, transaction fees would have to increase to the point that spending the currency would become discouraging and people wouldn't use the currency for it's intended purpose so that's a non-option. This is less of a problem with Peercoin because it's designed to be leaner, and more oriented towards savings and larger transactions anyway, but Nxt is supposed to be more of a bread buying currency and this could lead to issues later.

The only option is centralization, which occurs naturally in both of these schemes over time because as it becomes more expensive to validate the network the only people doing it will be those with enough money to make the returns from validating the network profitable.

How to balance centralization with scalability?

It seems an inevitability that no matter how you spin it one of two scenarios will play out in the current systems left unchecked, either centralization will take hold, or transaction fees will get unwieldy. So how should we mitigate this? The most recently posed solution to this is Decentralized Proof of Stake. In a DPOS system centralization is anticipated, and introduced by design but voted on in a decentralized manner using a system similar to reddit's upvoting to determine delegates tasked with the duty of signing nodes and preventing the blockchain from forking. Delegates can be voted on automatically based on the systems own analysis of how it's performing, or in cases where it may be necessary, they can also be voted on manually. A vote happens with each transaction so it's like a continuously ongoing election.

In DPOS those delegates chosen to secure the system, unhindered by any process designed to enforce decentralization, are incentivised by transaction fees and the prospect of being re-elected, to do their job correctly. The difference here is that the number of delegates are limited, and the amount of stake one holds or amount of computing resources one owns is seperated from their ability to secure the network. This results in a much more financially efficient scheme for validating transactions while still achieving a measured amount of decentralization to keep the network from being taken over by a few small parties.

Offline luckybit

  • Hero Member
  • *****
  • Posts: 2921
    • View Profile
  • BitShares: Luckybit

Green is Income   Yellow is Profit  Blue is Cost

Assuming a fixed validation cost per transaction and a fixed fee per transaction, there is a limit to the amount of decentralization that can take place. 

Assuming the validation cost exactly equals the fee a network is completely centralized and can only afford one validator.
Assuming the fee is 100x the cost of validation then the network can support 100 validators.

What you will quickly see is that systems like Nxt and Peercoin must have very excessive fees if they would like to maintain the illusion that everyone can be a validator and earn fees at scale.    What this means for Nxt / Peercoin is that anyone with less than 1% stake cannot validate profitably unless their fees are higher than our DPOS chain. 

So if these chains assume 100 is to centralized and start promoting they have 1000 validators then their fees must be 10x.  If they grew to be the size of bitcoin ($10 B) then only those with $1M worth of coin could validate profitably and most would consider that an elite club.    If they reduce the minimum stake to be a validator to $1000, then their fees would be 10,000 times higher than our fees.   

Now we assume that every one with less than the amount required to validate doesn't participate and we assume a "reasonable" distribution of wealth, you will quickly see that unless they have insane fees, there will only be a handful of people with enough stake to validate profitably. 

What we can conclude from this is that the only way for POS to work is to delegate it.  In the case of Nxt they can pool their stake by some means and ultimately this will end up like DPOS prior to approval voting with a variable number of delegates.   Those doing the delegating wouldn't actually receive any income like you see with mining pools because the validation expenses will be consuming the vast majority of the transaction fees.

End result is that decentralization has a cost proportional to the number of validators and that costs do not disappear.  At scale these costs will centralize any system that does not support delegation.   We should design this kind of centralization in from the beginning so that it can be properly managed and controlled by the users instead of evolving in some adhoc manner as an unintended consequence.

 
+5%
This is excellent. We need more of these charts and graphs because that is what ultimately convinces investors.

I have to admit your arguments are very convincing. 
« Last Edit: July 13, 2014, 03:27:11 am by luckybit »
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline gyhy

  • Hero Member
  • *****
  • Posts: 852
    • View Profile

merockstar

  • Guest
abscissa?

because the cost is always the same, but more transactions keep getting loaded into it as the coin grows in popularity (right?)