Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP mux improvements for 10.2.1 #5077

Draft
wants to merge 12 commits into
base: release/ouroboros-network-0.19
Choose a base branch
from

Conversation

karknu
Copy link
Contributor

@karknu karknu commented Feb 12, 2025

Description

reasonably detailed description of the pull request

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.

Lower level benchmark for reading and writing over Sockets.
Uses local TCP sockets over ephemeral ports.
Reading a Mux segment used to require at least two syscalls.
One two read the header and one to read the rest of the data.

This change reads up to RecvBuffer bytes into a buffer in one go and
then serves data from it.
Enforce at least 1 byte payload data per SDU.
Permit sending of multiple SDUs through a single call to sendMany for
Socket bearers
Bearers without vector IO support emulate it through multiple calls to
write.
@karknu karknu force-pushed the karknu/10_2_1_read_buffer branch from 6c7acb8 to f5a2cca Compare February 18, 2025 10:16
This implements an optional read buffer for the Socket bearer.
@karknu karknu force-pushed the karknu/10_2_1_read_buffer branch from f5a2cca to 6bba9f0 Compare February 18, 2025 10:21
@karknu karknu force-pushed the karknu/10_2_1_read_buffer branch from 2e1b74b to dd44444 Compare February 18, 2025 14:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

1 participant