Skip to content

Conversation

@coot
Copy link
Collaborator

@coot coot commented Dec 19, 2025

Description

This PR contains a mux-leios-demo application which allows us to analyse mux
traffic in Wireshark. It includes a script that sets up virutal network
environment (based on ouroboros-consensus Leios demo).
It also adds a Wireshark dissector for mux protocol which improves the
dissector in ouroboros-network.

  • mux-leios-demo
  • mux-leios-demo: script to run a simulation
  • mux-leios-demo: added binary encoding / driver to req-resp protocol
  • mux: wireshark dissector
  • mux-leios-demo: added bursty server
  • mux: wireshark dissector improvements
  • mux: wireshark dissector improvements
  • mux-leios-demo: use threaded RTS

Checklist

Quality

  • Commit sequence makes sense and have useful messages, see ref.
  • New tests are added and existing tests are updated.
  • Self-reviewed the PR.

Maintenance

  • Linked an issue or added the PR to the current sprint of ouroboros-network project.
  • Added labels.
  • Updated changelog files.
  • The documentation has been properly updated, see ref.

@coot coot requested a review from a team as a code owner December 19, 2025 13:31
@github-project-automation github-project-automation bot moved this to In Progress in Ouroboros Network Dec 19, 2025
@coot coot self-assigned this Dec 19, 2025
@coot coot added mux issues related to network-mux leios Issues / PRs related to Leios labels Dec 19, 2025
@coot coot linked an issue Dec 19, 2025 that may be closed by this pull request
coot added 9 commits December 19, 2025 17:11
A mux demo with two mini-protocols, to simulate Praos & Leios traffic
which happen simultaneously.
This script is based on `ouroboros-consensus` leios demo.
This allows us to run mux-leios-demo without `CBOR` encoding.
The client sends an initial request, the server responds with a number
of replies, then the server terminates the protocol.

The original design had the problem that the Leios traffic was sending
data while the Praos was making another request (around 10 full
MuxSDUs), and since Praos is making more requests than Leios, it skews
the results.

TODO: the client should send how many replies to get, then the commands
to run this version would be similar to the original.
Sync with next MuxSDU if a tcp packet was lost.
* leios block is 1000 MuxSDUs
* praos block is 10 MuxSDUs

Define `EGRESS_THROUPUT`, `INGRESS_DELAY` and `RTS_OPTIONS` for easier
configuration.
@coot coot force-pushed the coot/leios-network-mux-demo-main branch from 8b80463 to 7425d39 Compare December 19, 2025 16:26
@coot coot requested a review from a team as a code owner December 19, 2025 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

leios Issues / PRs related to Leios mux issues related to network-mux

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

Network mux demo for analysing Leios/Praos traffic

2 participants