elective-stereophonic
elective-stereophonic
NXT POS and Bitshares DPOS
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Stable Nxt Client: Nxt 1.12.2

Pages: 1 2 [3] 4 5 ... 7  All

Author Topic: NXT POS and Bitshares DPOS  (Read 26518 times)

Daedelus

  • Hero Member
  • *****
  • Karma: +230/-12
  • Offline Offline
  • Posts: 3280
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #40 on: July 27, 2014, 10:30:56 am »

You said it right, "It all depends on the amount of stake and amount of luck". All nodes receive transactions and can check whether they are unspent outputs but they don't have to forge (my definition of forging/mining: Selecting which transactions are included in the next block and selecting which previous block to reference. Agreed?). Everyone can be a node but a node can only be a significant forger if he has a significant stake.

A possible way to solve that would be to create a portal site. Those with high capacity nodes point their server at the portal, and those with Nxt to lease point their Nxt at the portal. The portal ensures that the leased Nxt is distributed throughout the network of high capacity nodes, creating a robust decentralized network.

+1, I saw you mention this in another thread. I like the idea but sounds technically difficult in practice given the 1440 wait time for moving forging power. The portal won't be able to re-assign forging power on the fly in real time. And the portal can't just forge with the whole stake and send fees out to the nodes in proportion, that woul be cetralisation into one pool.

Am I  understanding correctly? How could this be solved?
Logged
NXT: NXT-4CS7-S4N5-PTH5-A8R2Q

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #41 on: July 27, 2014, 11:09:32 am »

You said it right, "It all depends on the amount of stake and amount of luck". All nodes receive transactions and can check whether they are unspent outputs but they don't have to forge (my definition of forging/mining: Selecting which transactions are included in the next block and selecting which previous block to reference. Agreed?). Everyone can be a node but a node can only be a significant forger if he has a significant stake.

A possible way to solve that would be to create a portal site. Those with high capacity nodes point their server at the portal, and those with Nxt to lease point their Nxt at the portal. The portal ensures that the leased Nxt is distributed throughout the network of high capacity nodes, creating a robust decentralized network.

+1, I saw you mention this in another thread. I like the idea but sounds technically difficult in practice given the 1440 wait time for moving forging power. The portal won't be able to re-assign forging power on the fly in real time. And the portal can't just forge with the whole stake and send fees out to the nodes in proportion, that woul be cetralisation into one pool.

Am I  understanding correctly? How could this be solved?
I see what you mean. There are definitely problems with this idea.

Regarding the assigning of forging power.
One solution is that the portal assigns the lease directly to one server's address. User clicks on leasing portal, says how much it wants to lease and for how long, portal uses an algorithm to determine which server address should be used and tells user to lease to that address.

Another problem is ensuring that the servers pay back their forged Nxt to the leasee (or wherever the leasee wants the forged Nxt to go). Might mean that servers have to leave a deposit with the portal. Or maybe servers only receive a small amount of leased power until they prove that they are trustworthy. It's not like each individual block receives a lot of Nxt.


Logged
NXT-CSED-4PK5-AR4V-6UB5V

Brangdon

  • Hero Member
  • *****
  • Karma: +229/-25
  • Offline Offline
  • Posts: 1389
  • Quality is addictive.
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #42 on: July 27, 2014, 11:28:46 am »

I also have a question: Is the following possible? I have a lot of nxt (say 5 percent of the whole stake). I then lease my forging power to one of my own accounts that only has a small balance. This would mitigate the insecurity involved with having to have my bunch of next online all the time. In other words: Can I put my NXT in cold storage and be safe and at the same time have my forging power leased to an account I control and earn tx fees there?
That's roughly what I do. I have three accounts. One is a savings account, one a current account and one a forging account. The savings account is most secure; it's not actually offline yet (the default client doesn't support offline transactions well today) but the password is more buried and rarely used. That one contains the bulk of my coins. The forging account is least secure because it runs on AWS cloud and I don't trust Amazon sysops not to steal my NXT. It only holds a few coins. Both the savings account and the current account lease to the forging account.

This works pretty well. Leasing is a general purpose tool for managing how you arrange your accounts and how you forge.

Does anybody know about how many forgers there are that are big enough to not forge in a pool? That would be interesting.
Kind-of everyone is? Forging in a pool actually makes less money, because there are transaction fees first to lease and second to withdraw funds. If your income from forging is likely to be small compared to the fees, but you happen to have a computer online 24/7, it's probably better not to lease. So it isn't really to do with the size of the account, but how cheap bandwidth is for you.

All nodes receive transactions and can check whether they are unspent outputs but they don't have to forge (my definition of forging/mining: Selecting which transactions are included in the next block and selecting which previous block to reference. Agreed?). Everyone can be a node but a node can only be a significant forger if he has a significant stake.
Everyone can be a node, and everyone can be a forger, but not every forger is individually significant.

I added the "individually", because if we end up with a Pareto distribution with, say, 80% of NXT spread between accounts with, say, 10K NXT each, then individually each of those accounts doesn't amount to much, but all of them together make 51% attacks impossible.
Logged

devphp

  • Hero Member
  • *****
  • Karma: +87/-14
  • Offline Offline
  • Posts: 1229
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #43 on: July 27, 2014, 11:41:51 am »

Does anybody know about how many forgers there are that are big enough to not forge in a pool? That would be interesting.

300-350 accounts have successfuly forged blocks over the past 30 days.

This code can be used to select public keys of successful forgers from the blockchain.

Code: [Select]
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;

public class inspectDB {

public static void runQuery(int startHeight, int endHeight) {

Connection conn = null;

String dbUrl = "jdbc:h2:nxt_db/nxt;DB_CLOSE_ON_EXIT=FALSE";
dbUrl += ";DB_CLOSE_ON_EXIT=FALSE";

try {

Class.forName("org.h2.Driver");

conn = DriverManager.getConnection(dbUrl, "sa", "sa");

Statement stmt = conn.createStatement();
// generator_public_key
ArrayList<String> pubgenkeys = new ArrayList<String>();
String stmtStr = "SELECT generator_public_key, height, timestamp, total_amount FROM block where total_amount >= 0 and height > "
+ startHeight + " and height < " + endHeight;
ResultSet selectRS = stmt.executeQuery(stmtStr);// total_amount
while (selectRS.next()) {
String a = selectRS.getString(1);
pubgenkeys.add(a);

}

Iterator<String> it = pubgenkeys.iterator();
HashMap<String, Integer> occ = new HashMap<String, Integer>();
while (it.hasNext()) {
String cur = it.next();
// System.out.println(cur);
if (occ.containsKey(cur)) {
int last = occ.get(cur).intValue();
occ.remove(cur);
occ.put(cur, new Integer(last + 1));
} else
occ.put(cur, 1);
}

int numBlocks = endHeight - startHeight;
int numAddr = occ.values().size();

System.out.println("startBlock  " + startHeight
+ " generated by # addresses : " + numAddr
+ " (numBlocks: " + numBlocks + ")");

conn.close();

} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {

e.printStackTrace();
} finally {
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

}

public static void main(String[] args) {
int maxh = 200000;
int step = 10000;
for (int bh = 0; bh < maxh; bh += step) {
runQuery(bh, bh + step);
}
}
}

https://nxtblocks.info/#section/blockexplorer_charts
this graph has a 'Others' section that according to the blockchain represents 300+ successfully forging accounts.
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #44 on: July 27, 2014, 09:16:51 pm »

If you would want to process say >100 tx per second and have 10 second block times you would not only need high bandwidth, reliability / up-time (determining that someone missed his block with TF costs time and makes the network less predictable which might not be acceptable under high market competition) as well as a lot of CPU and memory although I can not assess at which point (how many tx per sec etc.) the CPU/memory begins to play a role.

1000 transactions are not an issue for today's processors. Even less for those to come. Within several years, that will be peanuts. I suspect that even smartphones will be able to handle that without effort.

CPU speed is not really the limiting constraint. Memory capacity (need more RAM), memory bandwidth (need more CPUs), and network bandwidth (need access to bigger cables) are the real killers.
It seems difficult to assess how much of a role hardware and bandwidth and reliability costs play. It is an open question. Maybe one of the bitshares delegates can make a precise calculation.

@ChuckOne, what did you mean by this?
Quote
However, considering the growth rate, we will not outpace the real-world technology and infrastructure.
« Last Edit: July 27, 2014, 09:32:51 pm by delulo »
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #45 on: July 27, 2014, 09:29:28 pm »

You said it right, "It all depends on the amount of stake and amount of luck". All nodes receive transactions and can check whether they are unspent outputs but they don't have to forge (my definition of forging/mining: Selecting which transactions are included in the next block and selecting which previous block to reference. Agreed?). Everyone can be a node but a node can only be a significant forger if he has a significant stake.

A possible way to solve that would be to create a portal site. Those with high capacity nodes point their server at the portal, and those with Nxt to lease point their Nxt at the portal. The portal ensures that the leased Nxt is distributed throughout the network of high capacity nodes, creating a robust decentralized network.

Don't know if that is technically possible but the result would be pretty close to my scenario for NXT POS + possibility for delegation/pools which was: Big stakholders that can froge without pools + one or two big pools with the rest of the leased stake.

I have a question though: You said:

One other thing to throw into the mix, the current plan is that Nxt is going to not allow leasors to lease to anyone with more than 0.5% of the forging power.  Meaning that it should be harder for anyone person to get a large percentage of the forging power.  Basically the same thing, right?

If I get that right, it is only possible, for a big stakeholder, to either be able to lease all his stake to an account hi controls as well so he can put his NXT in cold storage OR to limit the size of pools one can delegate to to xy%.  By cold storage I mean what ever is possible with NXT (atm), for example what Brangdon suggested "the password is more buried and rarely used."
This would also effect the scenario above. 
« Last Edit: July 27, 2014, 09:38:06 pm by delulo »
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #46 on: July 27, 2014, 09:45:28 pm »

Does anybody know about how many forgers there are that are big enough to not forge in a pool? That would be interesting.
Kind-of everyone is? Forging in a pool actually makes less money, because there are transaction fees first to lease and second to withdraw funds. If your income from forging is likely to be small compared to the fees, but you happen to have a computer online 24/7, it's probably better not to lease. So it isn't really to do with the size of the account, but how cheap bandwidth is for you.
Agreed! Whether this stays this way would depend on the outcome of the forging costs and rewards under conditions of market competition (competing for customers with low tx fees) and increased traffic and increased need for reliability. As said above, this is an open question.
 
All nodes receive transactions and can check whether they are unspent outputs but they don't have to forge (my definition of forging/mining: Selecting which transactions are included in the next block and selecting which previous block to reference. Agreed?). Everyone can be a node but a node can only be a significant forger if he has a significant stake.
Everyone can be a node, and everyone can be a forger, but not every forger is individually significant.
Well said!
Logged

ChuckOne

  • Hero Member
  • *****
  • Karma: +293/-17
  • Offline Offline
  • Posts: 3450
  • ☕ NXT-4BTE-8Y4K-CDS2-6TB82
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #47 on: July 27, 2014, 09:46:48 pm »

@ChuckOne, what did you mean by this?
Quote
However, considering the growth rate, we will not outpace the real-world technology and infrastructure.

Well, even though Nxt is PoS and thus requires a minimum, when scaling up the number of transactions, more will be demanded from the existing infrastructure and technology (resources).

However, Nxt is not growing at high speed but steadily, so does the demand.

On the other hand side, technology and existing infrastructure and technology is supposed to grow with or without Nxt. In any case, Nxt's demand will not outpace the available resources.
Logged

ChuckOne

  • Hero Member
  • *****
  • Karma: +293/-17
  • Offline Offline
  • Posts: 3450
  • ☕ NXT-4BTE-8Y4K-CDS2-6TB82
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #48 on: July 27, 2014, 09:50:00 pm »

Agreed! Whether this stays this way would depend on the outcome of the forging costs and rewards under conditions of market competition (competing for customers with low tx fees) and increased traffic and increased need for reliability. As said above, this is an open question.

It is an open question, indeed and time will tell. However, future hardware and infrastructure will provide cheap means to do the stuff on the side.
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #49 on: July 27, 2014, 09:51:30 pm »

Agreed! Whether this stays this way would depend on the outcome of the forging costs and rewards under conditions of market competition (competing for customers with low tx fees) and increased traffic and increased need for reliability. As said above, this is an open question.

It is an open question, indeed and time will tell. However, future hardware and infrastructure will provide cheap means to do the stuff on the side.
I linked your argument here https://bitsharestalk.org/index.php?topic=5564.new#new
Maybe someone with more of an insight into hardware requirements than me can come up with a well grounded estimate.

I also updated my assessment in the OP. I appreciate your feedback!
« Last Edit: July 27, 2014, 11:21:18 pm by delulo »
Logged

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #50 on: July 27, 2014, 11:18:53 pm »

@ChuckOne, what did you mean by this?
Quote
However, considering the growth rate, we will not outpace the real-world technology and infrastructure.

Well, even though Nxt is PoS and thus requires a minimum, when scaling up the number of transactions, more will be demanded from the existing infrastructure and technology (resources).

However, Nxt is not growing at high speed but steadily, so does the demand.

On the other hand side, technology and existing infrastructure and technology is supposed to grow with or without Nxt. In any case, Nxt's demand will not outpace the available resources.
Well, if I dont implement some sort of aggregation and InstantDEX tradebots go crazy, it could start pushing the current tx limits...
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

ChuckOne

  • Hero Member
  • *****
  • Karma: +293/-17
  • Offline Offline
  • Posts: 3450
  • ☕ NXT-4BTE-8Y4K-CDS2-6TB82
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #51 on: July 28, 2014, 06:43:23 am »

Well, if I dont implement some sort of aggregation and InstantDEX tradebots go crazy, it could start pushing the current tx limits...

Do it. ;)
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #52 on: August 01, 2014, 07:00:41 pm »

One Question: who gets the fees in Nxt:  a) the forger who included the block or b) all forgers share all fees equally (based on their stake).
Logged

devphp

  • Hero Member
  • *****
  • Karma: +87/-14
  • Offline Offline
  • Posts: 1229
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #53 on: August 01, 2014, 07:06:48 pm »

One Question: who gets the fees in Nxt:  a) the forger who included the block or b) all forgers share all fees equally (based on their stake).

a)
Logged

ChuckOne

  • Hero Member
  • *****
  • Karma: +293/-17
  • Offline Offline
  • Posts: 3450
  • ☕ NXT-4BTE-8Y4K-CDS2-6TB82
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #54 on: August 01, 2014, 07:10:57 pm »

Both are roughly the same.
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #55 on: August 01, 2014, 07:13:14 pm »

One Question: who gets the fees in Nxt:  a) the forger who included the block or b) all forgers share all fees equally (based on their stake).

a)
Ok. Thanks. That is what I guessed...
Logged

allwelder

  • Hero Member
  • *****
  • Karma: +196/-13
  • Offline Offline
  • Posts: 1867
  • NxtChina.org
    • View Profile
    • NxtChina.org
Re: NXT POS vs. Bitshares DPOS
« Reply #56 on: August 02, 2014, 01:10:58 am »

BTS---In practice BitShares isn't a distributed system, it is more like coordinated synchronized time shared centralized system. ---BM.
https://bitsharestalk.org/index.php?topic=5402.msg72829#msg72829

NXT---fully decentralized.
Logged
NxtChina |Weibo |Twitter Donation welcomed:NXT-APL9-66GU-K8LY-B3JJJ

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #57 on: August 04, 2014, 10:44:12 am »

BTS---In practice BitShares isn't a distributed system, it is more like coordinated synchronized time shared centralized system. ---BM.
https://bitsharestalk.org/index.php?topic=5402.msg72829#msg72829

NXT---fully decentralized.
It is not that simple and black and white. In the end there is probably not that much difference in terms of decentralization.
Logged

devphp

  • Hero Member
  • *****
  • Karma: +87/-14
  • Offline Offline
  • Posts: 1229
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #58 on: August 04, 2014, 10:48:16 am »

It is not that simple and black and white. In the end there is probably not that much difference in terms of decentralization.

Can one person run more than one delegate in Bitshares? How long will it take before there are 101 different people each running one delegate? If only 20 people run 101 delegates (each averaging to 5), that's not very decentralized. What are the economic incentives to run a delegate in Bitshares? I am just trying to understand it better, need answers.
Logged

delulo

  • Jr. Member
  • **
  • Karma: +4/-0
  • Offline Offline
  • Posts: 43
    • View Profile
Re: NXT POS vs. Bitshares DPOS
« Reply #59 on: August 04, 2014, 11:07:50 am »

It is not that simple and black and white. In the end there is probably not that much difference in terms of decentralization.

Can one person run more than one delegate in Bitshares? How long will it take before there are 101 different people each running one delegate? If only 20 people run 101 delegates (each averaging to 5), that's not very decentralized. What are the economic incentives to run a delegate in Bitshares? I am just trying to understand it better, need answers.
One person can run more than 1 delegate. But he would make that public then. Delegates are mostly people from the forum or publicly known individuals like Adam B Levine. So it would be unlikely to get votes from shareholders if you set up a sock puppet account on the forum and campaign with this to be a delegate of which people don't know that is is run by the same individual that also runs another delegates under another forum name. So it is possible for 20 people to run the 101 delegates if the shareholders vote this way.
The question is whether this is more centralized than the few major stakeholders that find most of the blocks in NXT. It was discussed here before whether economies of scale will lead to centralization of NXT forgers, see https://nxtforum.org/general-discussion/nxt-pos-vs-bitshares-dpos/msg71586/#msg71586 We agreed that it is an open question. You might also want to look at this https://bitsharestalk.org/index.php?topic=5564.0;all (the OP + some new arguments have been added recently).

Economic incentives are the tx fees the delegates - the same with NXT.
Logged
Pages: 1 2 [3] 4 5 ... 7  All
 

elective-stereophonic
elective-stereophonic
assembly
assembly