Pages:
Author

Topic: DagCoin: a cryptocurrency without blocks - page 15. (Read 70882 times)

legendary
Activity: 2142
Merit: 1010
Newbie
September 23, 2015, 02:11:39 PM
If I'm trying to transact in Dagcoin, it doesn't matter to me that maybe 100,000 nodes could potentially have my parent transaction, the only thing that matters to me is finding the node which does have it, and that's where my new transaction is going to go. The next transaction, which relies upon mine, is similarly going to go to that node, and so on. No one wants their transactions left out on a loose strand.
On the flipside, nodes want to get as many transactions as they possibly can because that's presumably where they'll get their revenue in Dagcoin.
So there definitely is an incentive on both sides to centralize the network.

Separately, the amount of bandwidth necessary to store a transaction at VISA is orders of magnitude less than what it costs to propagate a transaction across a network. So if we were looking at you're example, and say doing 2000KB/s for an average of 2000TPS, we would need at least 7000 times that bandwidth to comfortably propagate over 7000 nodes or 218.75MB/s (1750Mb/s).

Looks like we are talking about different DAG-coins. My version of DAG doesn't care about network topology.


Separately, the amount of bandwidth necessary to store a transaction at VISA is orders of magnitude less than what it costs to propagate a transaction across a network. So if we were looking at you're example, and say doing 2000KB/s for an average of 2000TPS, we would need at least 7000 times that bandwidth to comfortably propagate over 7000 nodes or 218.75MB/s (1750Mb/s).

Let's check your numbers. IP header size = 40 bytes, UDP header size = 8 bytes, transaction size = 1024 bytes. 40 + 8 + 1024 = 1072. Small world topology with 3 neighbors (this is enough to effectively propagate data) requires to send 3 times of that, which is 25'728 bits. For 100 Mbps we get 3'886 TPS. And this is without multicast enabled on routers between nodes.
sr. member
Activity: 433
Merit: 267
September 23, 2015, 01:52:49 PM
I was being a little facetious.
I don't see how this protocol avoids the tradeoff between transactions per second and decentralization, and just repeating the claim isn't helping me understand. You mine on old transaction, ok, so what? How does that help us any more than mining on top of recent transactions in regards to centralization?

100 Mbps allows 12'000 TPS for 1 KiB transactions. There is no an incentive to centralize with conventional hardware. VISA peak TPS is reported to be 56'000 TPS (https://en.bitcoin.it/wiki/Scalability). Average is 2'000 TPS.
If I'm trying to transact in Dagcoin, it doesn't matter to me that maybe 100,000 nodes could potentially have my parent transaction, the only thing that matters to me is finding the node which does have it, and that's where my new transaction is going to go. The next transaction, which relies upon mine, is similarly going to go to that node, and so on. No one wants their transactions left out on a loose strand.
On the flipside, nodes want to get as many transactions as they possibly can because that's presumably where they'll get their revenue in Dagcoin.
So there definitely is an incentive on both sides to centralize the network.

Separately, the amount of bandwidth necessary to store a transaction at VISA is orders of magnitude less than what it costs to propagate a transaction across a network. So if we were looking at your example, and say doing 2000KB/s for an average of 2000TPS, we would need at least 7000 times that bandwidth to propagate over 7000 nodes or 218.75MB/s (1750Mb/s).

Note: I'm using "node" here in the usual sense of the word; a geographically separated mining entity.
legendary
Activity: 2142
Merit: 1010
Newbie
September 23, 2015, 12:18:27 PM
I was being a little facetious.
I don't see how this protocol avoids the tradeoff between transactions per second and decentralization, and just repeating the claim isn't helping me understand. You mine on old transaction, ok, so what? How does that help us any more than mining on top of recent transactions in regards to centralization?

100 Mbps allows 12'000 TPS for 1 KiB transactions. There is no an incentive to centralize with conventional hardware. VISA peak TPS is reported to be 56'000 TPS (https://en.bitcoin.it/wiki/Scalability). Average is 2'000 TPS.
sr. member
Activity: 433
Merit: 267
September 23, 2015, 11:48:01 AM
#99
We already mine on top of old transactions
No. We mine on top of recent transactions.

I was being a little facetious.
I don't see how this protocol avoids the tradeoff between transactions per second and decentralization, and just repeating the claim isn't helping me understand. You mine on old transaction, ok, so what? How does that help us any more than mining on top of recent transactions in regards to centralization?
legendary
Activity: 2142
Merit: 1010
Newbie
September 23, 2015, 11:44:36 AM
#98
We already mine on top of old transactions

No. We mine on top of recent transactions.


The full node is the heart of the issue. If there are only a handful of full nodes, and thousands of thin clients, then this protocol isn't decentralized, which is the claim in the whitepaper.

Can't comment on that whitepaper.
sr. member
Activity: 433
Merit: 267
September 23, 2015, 11:38:23 AM
#97
We used to think that bigger blocks increase rate of orphaned blocks and hence it's more profitable to put all miners into a single location (i.e. centralize). For blockless blockchain it's not a case because it's allowable to "mine" on top of old transactions.
We already mine on top of old transactions, that's certainly not novel.

To allow full nodes to operate with limited bandwidth, i.e. to allow decentralization.
Yes.

To allow full nodes to operate with limited bandwidth, i.e. to allow decentralization.

DAG makes it much easier to handle intensive data flow because of multicast. A single transaction easily fits into MTU and if it's not received by few of the endpoints it's not a problem. Even more, TPS bursts are automatically smoothed, a full node needs majority of the transactions only if it sends or receives money, in all other cases it needs only to verify PoW and rebroadcast transactions to its neighbors (if multicasting is disabled).
The full node is the heart of the issue. If there are only a handful of full nodes, and thousands of thin clients, then this protocol isn't decentralized, which is the claim in the whitepaper.

Quote from: Sergio Demian Lerner
DagCoin is a cryptocurrency design that attempts to be highly decentralized by merging the concepts of transactions and blocks and making each user that transact a miner.
Emphasis mine.
legendary
Activity: 2142
Merit: 1010
Newbie
September 23, 2015, 10:39:52 AM
#96
To allow full nodes to operate with limited bandwidth, i.e. to allow decentralization.

DAG makes it much easier to handle intensive data flow because of multicast. A single transaction easily fits into MTU and if it's not received by few of the endpoints it's not a problem. Even more, TPS bursts are automatically smoothed, a full node needs majority of the transactions only if it sends or receives money, in all other cases it needs only to verify PoW and rebroadcast transactions to its neighbors (if multicasting is disabled).
legendary
Activity: 2142
Merit: 1010
Newbie
September 23, 2015, 10:31:45 AM
#95
Could someone explain how this;

No mining centralization
No block limit drama

is compatible with this;

No hard TPS limit

Thanks..

We used to think that bigger blocks increase rate of orphaned blocks and hence it's more profitable to put all miners into a single location (i.e. centralize). For blockless blockchain it's not a case because it's allowable to "mine" on top of old transactions.
legendary
Activity: 990
Merit: 1108
September 23, 2015, 10:27:42 AM
#94
why does there have to be any limits to transactions per second?

To allow full nodes to operate with limited bandwidth, i.e. to allow decentralization.
legendary
Activity: 1176
Merit: 1134
September 23, 2015, 10:23:29 AM
#93
are you disagreeing with the statement that the more nodes there are (whatever you call them, wherever they are) the more transactions can be processed?

PoW protects from all nodes being in one location
Since "nodes"/checkpoints are based on transactions, that's kind of like saying, "are you disagreeing that more transactions means that more transactions can be processed?" Well no, I'm not disagreeing with that.

PoW only protects from all nodes being in one location (centralization) when it is simultaneously coupled with a limit to transactions per second, otherwise one physical location would out-compete others.
I dont understand...

Can you explain how one physical location can out-compete the others, when they are all merged into the single txnet?

The cost to check a tx is much less than to do the PoW, so there can be "islands" pumping out lots of tx, but what prevents them from propagating and merging into a single set of transactions?

why does there have to be any limits to transactions per second?

sr. member
Activity: 433
Merit: 267
September 23, 2015, 10:08:34 AM
#92
are you disagreeing with the statement that the more nodes there are (whatever you call them, wherever they are) the more transactions can be processed?

PoW protects from all nodes being in one location
Since "nodes"/checkpoints are based on transactions, that's kind of like saying, "are you disagreeing that more transactions means that more transactions can be processed?" Well no, I'm not disagreeing with that.

PoW only protects from all nodes being in one location (centralization) when it is simultaneously coupled with a limit to transactions per second, otherwise one physical location would out-compete others.
legendary
Activity: 1176
Merit: 1134
September 23, 2015, 09:55:19 AM
#91
Could someone explain how this;

No mining centralization
No block limit drama

is compatible with this;

No hard TPS limit

Thanks..
the total transaction capacity scales with the total number of nodes.


Every "node" could be in the same location, even the same machine.

Quote from: Sergio Demian Lerner
At a certain frequency the software chooses a transaction that references
a high number of parent nodes.

Of course, not every past transaction could be reachable, as users may decide to never reference
certain published transaction. However, the parent selection, with average out-degree 2, and low network
latency, can guarantee that there will be frequent checkpoints referencing almost all previous
transactions.

After a checkpoint is found, the software updates all nodes reachable from the checkpoint with a
forward pointer to this checkpoint. A checkpoint has its own score counter, initially set to zero. When
the update algorithm reaches a checkpoint node, it increments the counter and stops propagating
backward. The score of a transaction is computed as the last stored score in the transaction plus the
score of the pointed checkpoint. Checkpoints are considered as nodes on the DAG, so the same checkpoint
finding algorithm can make checkpoints that refer to other forward checkpoints.

https://bitslog.files.wordpress.com/2015/09/dagcoin-v41.pdf
are you disagreeing with the statement that the more nodes there are (whatever you call them, wherever they are) the more transactions can be processed?

PoW protects from all nodes being in one location
sr. member
Activity: 433
Merit: 267
September 23, 2015, 08:57:36 AM
#90
Could someone explain how this;

No mining centralization
No block limit drama

is compatible with this;

No hard TPS limit

Thanks..
the total transaction capacity scales with the total number of nodes.


Every "node" could be in the same location, even the same machine.

Quote from: Sergio Demian Lerner
At a certain frequency the software chooses a transaction that references
a high number of parent nodes.

Of course, not every past transaction could be reachable, as users may decide to never reference
certain published transaction. However, the parent selection, with average out-degree 2, and low network
latency, can guarantee that there will be frequent checkpoints referencing almost all previous
transactions.

After a checkpoint is found, the software updates all nodes reachable from the checkpoint with a
forward pointer to this checkpoint. A checkpoint has its own score counter, initially set to zero. When
the update algorithm reaches a checkpoint node, it increments the counter and stops propagating
backward. The score of a transaction is computed as the last stored score in the transaction plus the
score of the pointed checkpoint. Checkpoints are considered as nodes on the DAG, so the same checkpoint
finding algorithm can make checkpoints that refer to other forward checkpoints.

https://bitslog.files.wordpress.com/2015/09/dagcoin-v41.pdf
legendary
Activity: 1176
Merit: 1134
September 23, 2015, 08:48:47 AM
#89
Could someone explain how this;

No mining centralization
No block limit drama

is compatible with this;

No hard TPS limit

Thanks..
the total transaction capacity scales with the total number of nodes.

sr. member
Activity: 433
Merit: 267
September 23, 2015, 07:27:21 AM
#88
Could someone explain how this;

No mining centralization
No block limit drama

is compatible with this;

No hard TPS limit

Thanks..
legendary
Activity: 2968
Merit: 1198
September 23, 2015, 02:00:49 AM
#87
Wrong; blocks need timestamps in order to retarget the PoW difficulty.
Quoting from

https://en.bitcoin.it/wiki/Difficulty

"The difficulty is adjusted every 2016 blocks based on the time it took to find the previous 2016 blocks"

Blocks can lie only a little about their timestamp; if too far out of whack, the block
is not relayed.

Notice how the interval is large enough to make the massive errors in timestamp values insignificant? There is something like a 22 minute window of validity for timestamps in bitcoin. They're basically useless, except when dealing with them over a massive interval, such as in the retargeting.

The window of validity is quite a bit wider than that, arguably infinitely wide (at least up to the limit of the timestamp data type). By consensus, the timestamp has to be later than the median of the last 11 blocks, which typically is close to an hour in the past. It can be up to two hours in the future (relative to a node's view of "current time") for relay purposes, but the consensus has no maximum timestamp at all.

In normal usage the window of validity is small compared to the retargeting window, but edge cases can be important too.
legendary
Activity: 1820
Merit: 1001
September 23, 2015, 01:16:42 AM
#86
but whats the advantage of not having blocks?

To name a few:

No mining centralization
No block limit drama
No hard TPS limit
Relaxed requirement for bandwidth
True micropayments

Nice few advantages their and can see a lot more coming from this in the future. No doubt will lead the way for crypto and indeed maybe change how future crypto coins are created.
legendary
Activity: 2142
Merit: 1010
Newbie
September 22, 2015, 10:31:40 AM
#85
but whats the advantage of not having blocks?

To name a few:

No mining centralization
No block limit drama
No hard TPS limit
Relaxed requirement for bandwidth
True micropayments
legendary
Activity: 1302
Merit: 1008
Core dev leaves me neg feedback #abuse #political
September 22, 2015, 10:26:13 AM
#84
but whats the advantage of not having blocks?
legendary
Activity: 2142
Merit: 1010
Newbie
September 22, 2015, 09:49:39 AM
#83
Wrong; blocks need timestamps in order to retarget the PoW difficulty.

Only if you need supply inflation schedule tied to the outer world timeline, like 150 BTC per hour goal.
Pages:
Jump to: