Transaction Speed (not transaction throughput)


#1

I have read the technical documentation on the Ouroborus protocol. It is my understanding that blocks will be generated every 120 seconds “slots”. Does this mean that a transaction may take up to 120 seconds to complete?

That doesn’t sound right, certain dapp use-cases require near-real-time transactions. I see Ripple is 3.5s. I also see people on reddit saying Cardano is a couple of seconds. But I can’t see how it can be if blocks are generated every 120 seconds. Am I misunderstanding something? Sorry, bit of a noob.


#2

Hi Hazel,
Blocks are every 20 seconds in Ouroboros currently. You show it as every 120 seconds (or 2 minutes) which is likely the confusion.
You can see it in action here - https://cardanoexplorer.com (doesn’t show seconds but you’ll see 3 slots all at < 1 minute, 3 at 1 minute, etc.)

Hope that helps!


#3

Thank you, I see it.

Can I ask what the design rationale was for 20s blocks? Why not 2s blocks? I think there will be dapp use-cases where 20s will be too long.


#4

Hi Hazel,
My understanding is that 20 seconds was a good tradeoff setting for the current version of Ouroboros in terms of block speed vs. ability for the network to process/handle. However, the Shelley release which is coming very soon will be more optimized for speed and may change that block time.

Also, I would bear in mind that Ouroboros Praos is coming, and after that Ouroboros Hydra. Praos may not change that 20 seconds but I’m reasonably confident Hydra will as Hydra gets into 10,000+ tps by moving to DAG and sharding.

So the 20 seconds is simply a currently set parameter but by no means the ‘be all, end all’ setting for Cardano. There’s a lot more coming very soon that will jump up things speed wise and could decrease that 20 second interval.


#5

Perfect, thank you.


#6

I just live this here for information : Bitcoin snack machine

In this post, Satoshi explains that even though the blockchain process a block every 10 minutes, you can still use BTC for real time transaction. What matters the most is the propagation speed in the network and a vendor would be able to spot double spending by monitoring the different transaction on network (and if such a thing happens, cancel the transaction)