Skip to content

docs(pmtu): document adaptive path MTU for long-lived sessions (I95-60371) - #1200

Merged
agrawalkaushik merged 4 commits into
masterfrom
kagrawal/adaptive-pmtu-guide
Oct 20, 2026
Merged

agrawalkaushik merged 4 commits into
masterfrom
kagrawal/adaptive-pmtu-guide

Conversation

@agrawalkaushik

Copy link
Copy Markdown
Contributor

Summary

Documents the Adaptive Path MTU feature introduced in SSR 7.2.0 (I95-60371), which lets the SSR correct an established flow's MTU in response to an underlay ICMP Fragmentation Needed message, without waiting for periodic Path MTU Discovery (PMTUD) or a session rebuild.

Context

Prior to SSR 7.2.0, a reduced underlay MTU was only discovered on the next periodic PMTUD cycle (every 10 minutes by default). Existing long-lived sessions (database replication, backups, tunnels) kept using a stale MTU until rebuilt, causing drops when a route change or added encapsulation reduced the available path MTU.

SSR 7.2.0 adds two complementary enhancements:

  1. Underlay ICMP Reaction — the ingress SSR intercepts the ICMP Fragmentation Needed message, updates the affected flow, and relays a corrected message (accounting for SVR overhead) to the original sender.
  2. Session Refresh — the affected flow is updated in place to the new MTU; the session is not rebuilt.

What's Covered

  • Hub-and-spoke walkthrough: Client → Spoke SSR → Underlay Device → Hub SSR → Server
  • Step-by-step trace of an underlay MTU drop (1500 → 1000), the ICMP response, in-place flow MTU update, and SVR-overhead-corrected client notification
  • Scenario contrast: TCP sender-side MSS reduction vs. UDP/DF=0 fabric fragmentation fallback
  • Asymmetric path / directional correction behavior
  • Configuration reference for enforced-mss automatic and PMTUD interval tuning
  • Verification via show peers, show stats icmp flow-mtu-updates, and packet capture guidance
  • Troubleshooting section for common failure modes

Verification Done

  • Reviewed full diff of docs/config_pmtu.md for formatting, Markdown validity, and Title Case headings
  • Confirmed terminology matches RFC 1191 phrasing ("ICMP Destination Unreachable: Fragmentation Needed and DF Set (Type 3, Code 4)", "ICMP Fragmentation Needed") with no internal-only jargon
  • Checked for trailing whitespace and tabs — none found
  • Validated all 4 Mermaid sequence diagrams with mmdc; each compiles cleanly to SVG with no errors
  • Confirmed "SVR" is an established public term used consistently across 90+ existing docs pages

…0371)

- Add comprehensive Adaptive Path MTU coverage for SSR 7.2.0 (I95-60371)
- Unify narrative around Client -> Spoke SSR -> Underlay -> Hub SSR -> Server topology
- Detail in-flight flow MTU updates, SVR overhead subtraction, and client notification
- Contrast TCP MSS resizing vs UDP/DF=0 fabric fragmentation fallback
- Scrub internal terminology in favor of RFC 1191 standard phrasing
- Verify Mermaid sequence diagrams compile cleanly to SVG

Co-authored-by: Copilot App <[email protected]>
@agrawalkaushik
agrawalkaushik force-pushed the kagrawal/adaptive-pmtu-guide branch from 2ecb466 to 95d3a06 Compare October 20, 2026 01:05
- Tighten passive constructions and bureaucratic phrasing
- Maintain direct senior-engineer whiteboard register
- Preserve all technical invariants, parameters, and Mermaid diagrams

Co-authored-by: Copilot App <[email protected]>
MichaelBaj
MichaelBaj previously approved these changes Oct 20, 2026
…Unreachable: message as a message and not just text (this was not initally clear to me).

@Chr1st0ph3rTurn3r Chr1st0ph3rTurn3r left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made some very minor text edits, mostly identifying the whole ICMP Destination Unreachable: message as a message and not just text (this was not initially clear to me).

@MichaelBaj
MichaelBaj self-requested a review October 20, 2026 14:36
@agrawalkaushik
agrawalkaushik merged commit 2da3443 into master Oct 20, 2026
1 check passed
@agrawalkaushik
agrawalkaushik deleted the kagrawal/adaptive-pmtu-guide branch October 20, 2026 19:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants