You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -41,6 +41,9 @@ Ouroboros Leios is introducing _(high-)throughput_ as a third key property and i
41
41
42
42
As it was the case for the Praos variant of Ouroboros (TODO: cite shelley network-design), the specification embodied in the published and peer-reviewed paper for Ouroboros Leios (TODO: cite leios paper) was not intended to be directly implementable. This was confirmed during initial R&D and feasibility studies, which identified several unsolved problems with the fully concurrent block production design proposed in the paper. The latest design presented in CIP-164, also known as "Linear Leios", focuses on the core idea of better utilizing resources in between the necessary "calm" periods of the Praos protocol and presents an immediately implementable design.
43
43
44
+
> [!WARNING]
45
+
> TODO: (re-)introduce the main protocol flow of Leios?
46
+
44
47
> [!WARNING]
45
48
> TODO: Notes on what could go here
46
49
> - Node is a concurrent, reactive (real-time) system
@@ -609,138 +612,31 @@ Genesis (Ouroboros Genesis) enables nodes to bootstrap from the genesis block wi
609
612
> [!WARNING]
610
613
> TODO: Introduce chapter as being the bridge between changes and implementation plan; also, these are only selected aspects that inform the implementation (and not cover principal risks to the protocol or things that are avoided by design)
611
614
615
+
> [!NOTE]
616
+
> Alternative: Move this chapter between Introduction/Overview and Architecture/Changes? Understanding the key threats does not require intimate understanding of node-level components, but having the key threats enumerated allows us to reference them when discussing details in the architecture chapter.
617
+
612
618
## Key threats
613
619
614
620
> [!WARNING]
615
-
> TODO: Selection of key threats that further inform the design and/or implementation plan. Incorporate / reference the [threat model](./threat-model.md)?
616
-
617
-
> [!CAUTION]
618
-
> FIXME: The following content is AI generated and based on the CIP + impact analysis. Reduce number of "key threats"
619
-
620
-
#### RSK-LeiosPraosContentionGC
621
-
622
-
**Description:** Leios components allocating in the same GHC heap as Praos might increase GC pauses, delaying RB diffusion.
623
-
624
-
**Impact:** HIGH - Could violate Praos $\Delta$ assumptions and compromise chain security.
625
-
626
-
**Mitigation Strategies:**
627
-
1.**Early validation via EXP-LeiosLedgerDbAnalyser:**
628
-
- Measure GC behavior for realistic EB transaction sequences
629
-
- Quantify mutator time and GC overhead
630
-
- Establish safe EB size limits
631
-
632
-
2.**Process isolation (if needed):**
633
-
- Separate Leios validation into dedicated process
634
-
- UTxO-HD-like IPC for ledger state access
635
-
- Accept overhead cost for GC isolation
636
-
637
-
3.**Monitoring and alerting:**
638
-
- Instrument GC statistics in node telemetry
639
-
- Alert on anomalous GC pause times
640
-
- Adaptive EB production throttling
641
-
642
-
#### RSK-LeiosPraosContentionDiskBandwidth
643
-
644
-
**Description:** Simultaneous Leios writes (EBs, votes, transactions) and Praos/Ledger operations might saturate disk I/O.
645
-
646
-
**Impact:** MEDIUM-HIGH - Especially with UTxO-HD where ledger state is on disk.
647
-
648
-
**Mitigation Strategies:**
649
-
1.**Rate limiting:**
650
-
- Limit Leios disk write rate with back-pressure to network
651
-
- Priority I/O scheduling for Praos operations
652
-
653
-
2.**Buffering and batching:**
654
-
- Memory buffer for EB writes before flushing
655
-
- Batch vote storage writes
656
-
657
-
3.**Validation via EXP-LeiosDiffusionOnly:**
658
-
- Measure disk I/O under ATK-LeiosProtocolBurst
659
-
- Quantify impact on Praos operations
660
-
- Tune buffer sizes and rate limits
661
-
662
-
#### RSK-LeiosLedgerOverheadLatency
663
-
664
-
**Description:** Processing 15000% of a Praos block worth of transactions in bursts might introduce unexpected latency.
621
+
> TODO: Selection of key threats and attacks that further inform the design and/or implementation plan. Incorporate / reference the full [threat model](../threat-model.md)
665
622
666
-
**Impact:** MEDIUM - Affects vote timing and certificate generation.
623
+
### Protocol bursts
667
624
668
-
**Mitigation Strategies:**
669
-
1.**Benchmarking via EXP-LeiosLedgerDbAnalyser:**
670
-
- Process realistic EB-sized transaction sequences
671
-
- Measure both full validation and reapplication
672
-
- Profile CPU and memory pressure
673
-
674
-
2.**Implementation optimization:**
675
-
- Lazy evaluation where safe
676
-
- Transaction validation result caching
677
-
- Parallel validation of independent transactions (future)
0 commit comments