Skip to content

Conversation

@Frando
Copy link
Member

@Frando Frando commented Jan 22, 2026

Description

Adds a TCP transport.
Mostly written as a test case for #3845. No direct intention of adding this as a public iroh feature for now.

Current code likely has issues around waker registration, will have to think it through properly.

It's public in the PR though so that I could wire it up to the iroh benchmark

cargo run --release -p iroh-bench -- iroh
[...]
Transferred 1073741824 bytes on 1 streams in 918.36ms (1115.03 MiB/s)
[...]

cargo run --release -p iroh-bench -- iroh --tcp
[...]
Transferred 1073741824 bytes on 1 streams in 1.49s (689.20 MiB/s)
[...]

edit: perf got better with the recent commits, it's at ~3/4 of regular iroh now on my machine.

So it's quite a bit slower than UDP on my machine, but that's localhost, and the code is not yet optimized.

Breaking Changes

Notes & open questions

Change checklist

  • Self-review.
  • Documentation updates following the style guide, if relevant.
  • Tests if relevant.
  • All breaking changes documented.
    • List all breaking changes in the above "Breaking Changes" section.
    • Open an issue or PR on any number0 repos that are affected by this breaking change. Give guidance on how the updates should be handled or do the actual updates themselves. The major ones are:

@Frando Frando changed the base branch from main to feat-user-transport-2 January 22, 2026 12:32
@Frando Frando marked this pull request as draft January 22, 2026 12:50
@github-actions
Copy link

github-actions bot commented Jan 22, 2026

Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/3880/docs/iroh/

Last updated: 2026-01-24T12:45:53Z

@n0bot n0bot bot added this to iroh Jan 22, 2026
@github-project-automation github-project-automation bot moved this to 🚑 Needs Triage in iroh Jan 22, 2026
@rklaehn
Copy link
Contributor

rklaehn commented Jan 22, 2026

I did a bunch of trait renames in the custom transports branch. Nothing fundamental though...

@dignifiedquire dignifiedquire moved this from 🚑 Needs Triage to 🏗 In progress in iroh Jan 26, 2026
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.

3 participants