user6863: Good day , I am relatively new to Cardano ecosystem and want to understand how it works specifically with Ouroboros protocol.
Watching the video in IOHK channel I got some insides but still have many questions. Specifically
The protocol chooses the validator from the pool based on the amount of stakes they have. Where this pool is located, who controls it ? Can participants just run nodes locally and always vote for themself instead of going to this pool ?
The Epoch is split into slots and each slot is 20 seconds which means every 20 seconds Cardano protocol takes some transactions from the pool and create a block.
The question is , where those transactions are stored prior to creating a block ? What is the limit of transactions stored in one block and why ?

user382: Stake pools are registered on-chain via a registration certificate. That certificate contains the hash of the cold key and hash of the VRF among other things. The pool operator then generates a KES key and opcert signed by the cold key, and runs their pool with these secrets. The node then identifies it's own leadership schedule using the VRF key and starts creating blocks based on stake it has. Typically a new pool needs over 1M Ada delegation to regularly make blocks every epoch. You can run with less than that, but you'll have a lot of epochs with zero rewards which tends to lose delegators over time.

user29: This is from what I have understood so far with Ouroboros in general:

The protocol chooses the validator from the pool based on the amount
of stakes they have. Where this pool is located, who controls it ? Can
participants just run nodes locally and always vote for themself
instead of going to this pool ?

In Ouroboros Proof of Stake design, they have this thing called "slot leader" in every epoch. This slot leader means "The pool that have the right to create the next block". Slot leader is chosen prior the current epoch, chosen by the proportion amount of ADA to total ADA staked in the network [1]. One Stake Pool, given enough ADA they have, could create multiple block in one epoch. You can see this on https://adapools.org/, the number of expected blocks that they will produce vs the actual block they've made.
The Stake Pool Operator do not have control of those ADA in the pool. The delegators who delegate their wallet (which have some amount of ADA in it) to a Stake Pool only provide a certificate of the delegation. This certificate consists information about 'which Stake Pool does this wallet delegate to'.
That said, participants cannot run a node and have their node selected everytime, because the network have this slot leader system.

The Epoch is split into slots and each slot is 20 seconds which means every 20 seconds Cardano protocol takes some transactions from the pool and create a block.

In Cardano, -only true in current Shelley era-, the block will be on average created every 20-40 slot, which translates to 20-40 seconds because 1 slot = 1 second [2]. You can check this on https://cardanoscan.io/, and see the slot ticker running every second.

The question is , where those transactions are stored prior to creating a block ? What is the limit of transactions stored in one block and why ?

The transaction is stored in the 'Mempool' (Memory Pool), a list of already signed transaction but haven't made it into a block yet. The next slot leader will pull transactions from this mempool and then include it into a block. This mempool is located in every machine running the stake pool. The block have a capacity of max 80KB [3]. Every transaction will be varying from 600Bytes to 16KB, so each block will have different number of transactions stored in it. You can check Cardanoscan to check how many transactions happened in one block.
I hope this can answer your question
References:

Ouroboros: Cardano’s Proof of stake blockchain protocol. – https://youtu.be/D4HegNgnuNo
Design Specification for Delegation and Incentives in Cardano – https://hydra.iohk.io/build/3744897/download/1/delegation_design_spec.pdf
[Article] Cardano Developers Propose Block Size Increase – https://www.coindesk.com/tech/2022/02/02/cardano-developers-proposes-block-size-increase/


6863: <p>Good day , I am relatively new to Cardano ecosystem and want to understand how it works specifically with Ouroboros protocol.</p>
<p>Watching the <a href="https://www.youtube.com/watch?v=CfzCQcQBkk4&amp;t=1169s" rel="nofollow noreferrer">video</a> in IOHK channel I got some insides but still have many questions. Specifically</p>
<p>The protocol chooses the validator from the pool based on the amount of stakes they have. Where this pool is located, who controls it ? Can participants just run nodes locally and always vote for themself instead of going to this pool ?</p>
<p>The Epoch is split into slots and each slot is 20 seconds which means every 20 seconds Cardano protocol takes some transactions from the pool and create a block.</p>
<p>The question is , where those transactions are stored prior to creating a block ? What is the limit of transactions stored in one block and why ?</p>
 382: <p>Stake pools are registered on-chain via a registration certificate. That certificate contains the hash of the cold key and hash of the VRF among other things. The pool operator then generates a KES key and opcert signed by the cold key, and runs their pool with these secrets. The node then identifies it's own leadership schedule using the VRF key and starts creating blocks based on stake it has. Typically a new pool needs over 1M Ada delegation to regularly make blocks every epoch. You can run with less than that, but you'll have a lot of epochs with zero rewards which tends to lose delegators over time.</p>
 29: <p>This is from what I have understood so far with Ouroboros in general:</p>
<blockquote>
<p>The protocol chooses the validator from the pool based on the amount
of stakes they have. Where this pool is located, who controls it ? Can
participants just run nodes locally and always vote for themself
instead of going to this pool ?</p>
</blockquote>
<p>In Ouroboros Proof of Stake design, they have this thing called &quot;slot leader&quot; in every epoch. This slot leader means &quot;The pool that have the right to create the next block&quot;. Slot leader is chosen prior the current epoch, chosen by the proportion amount of ADA to total ADA staked in the network <em><strong>[1]</strong></em>. One Stake Pool, given enough ADA they have, could create multiple block in one epoch. You can see this on <a href="https://adapools.org/" rel="nofollow noreferrer">https://adapools.org/</a>, the number of expected blocks that they will produce vs the actual block they've made.</p>
<p>The Stake Pool Operator do not have control of those ADA in the pool. The delegators who delegate their wallet (which have some amount of ADA in it) to a Stake Pool only provide a certificate of the delegation. This certificate consists information about 'which Stake Pool does this wallet delegate to'.</p>
<p>That said, participants cannot run a node and have their node selected everytime, because the network have this slot leader system.</p>
<blockquote>
<p>The Epoch is split into slots and each slot is 20 seconds which means every 20 seconds Cardano protocol takes some transactions from the pool and create a block.</p>
</blockquote>
<p>In Cardano, -only true in current Shelley era-, the block will be <em>on average</em> created every 20-40 slot, which translates to 20-40 seconds because 1 slot = 1 second <em><strong>[2]</strong></em>. You can check this on <a href="https://cardanoscan.io/" rel="nofollow noreferrer">https://cardanoscan.io/</a>, and see the slot ticker running every second.</p>
<blockquote>
<p>The question is , where those transactions are stored prior to creating a block ? What is the limit of transactions stored in one block and why ?</p>
</blockquote>
<p>The transaction is stored in the 'Mempool' (Memory Pool), a list of already signed transaction but haven't made it into a block yet. The next slot leader will pull transactions from this mempool and then include it into a block. This mempool is located in every machine running the stake pool. The block have a capacity of max 80KB <em><strong>[3]</strong></em>. Every transaction will be varying from 600Bytes to 16KB, so each block will have different number of transactions stored in it. You can check Cardanoscan to check how many transactions happened in one block.</p>
<p>I hope this can answer your question</p>
<p>References:</p>
<ol>
<li><strong>Ouroboros: Cardano’s Proof of stake blockchain protocol.</strong> – <a href="https://youtu.be/D4HegNgnuNo" rel="nofollow noreferrer">https://youtu.be/D4HegNgnuNo</a></li>
<li><strong>Design Specification for Delegation and Incentives in Cardano</strong> – <a href="https://hydra.iohk.io/build/3744897/download/1/delegation_design_spec.pdf" rel="nofollow noreferrer">https://hydra.iohk.io/build/3744897/download/1/delegation_design_spec.pdf</a></li>
<li>[Article] <strong>Cardano Developers Propose Block Size Increase</strong> – <a href="https://www.coindesk.com/tech/2022/02/02/cardano-developers-proposes-block-size-increase/" rel="nofollow noreferrer">https://www.coindesk.com/tech/2022/02/02/cardano-developers-proposes-block-size-increase/</a></li>
</ol>
