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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions