Skip to content

throughput 4c: MTU-aware packetization to cut packet count (fewer per-packet syscalls / TUN / SipHash) #59

Description

@vxfemboy

Lever 4c of the single-core throughput campaign (4a send GSO ✓ #55, 4b TUN offload ✓ #56).

The post-4a/4b profiling showed the single-core ceiling is per-packet cost (kernel UDP send sendmsg ~23%, TUN write ~20%, SipHash ~9% — all charged per packet). Raising the tunnel MTU cuts the packet count for the same bytes, so it reduces every per-packet cost proportionally — the cheapest, most broadly-applicable remaining lever.

Scope

  • Make the tunnel MTU path-aware rather than a fixed conservative value; probe (PMTUD / PLPMTUD-style) and adapt, falling back cleanly to 1500-safe where the path can't carry more.
  • Interacts with FEC symbol sizing and the outer-UDP overhead budget — needs its own design (spec).

Note

  • Jumbo frames only help where the whole path supports them; 1500 stays the internet-safe default. The win is largest on controlled/LAN paths.
  • Related parked idea: inner-header compression (ROHC-style) — assessed low-priority for yip (loss-fragile + anti-DPI conflict); revisit only after 4c if a header-overhead bottleneck survives.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions