Open Bug 1909910 Opened 4 months ago Updated 2 months ago

enable QUIC PMTUD

Categories

(Core :: Networking, enhancement, P3)

enhancement

Tracking

()

ASSIGNED

People

(Reporter: mail, Assigned: mail)

Details

(Whiteboard: [necko-triaged])

Attachments

(2 files)

https://github.com/mozilla/neqo/pull/1903 added Datagram Packetization Layer Path MTU Discovery (DPLPMTUD) to Neqo. It is disabled by default.

This Bugzilla Bug tracks the rollout of the feature to Firefox.

As a first step, I will propose a Phabricator Patch to enable the feature on Firefox Nightly.

Enable Path MTU Discovery (PMTUD) on QUIC on Firefox Nightly.

Assignee: nobody → mail
Status: NEW → ASSIGNED
Severity: -- → S3
Priority: -- → P3
Whiteboard: [necko-triaged]
Pushed by kjang@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1c61a551fa53 enable QUIC PMTUD on nightly r=kershaw,necko-reviewers

Backed out for causing webtransport related wpt failures.

  • Backout link
  • Push with failures
  • Failure Log
  • Failure line: TEST-UNEXPECTED-TIMEOUT | /webtransport/datagrams.https.any.serviceworker.html | Sending and receiving datagrams is ready to use before session is established - Test timed out
Flags: needinfo?(mail)

What does the failing test try to do? Fail to transfer max-size+1 datagram sounds like it should be failing?

From what I can tell, yes, it should fail, but it did not.

For the record, here is the test mentioned in the comment above.

https://searchfox.org/mozilla-central/rev/7279a1df13a819be254fd4649e07c4ff93e4bd45/testing/web-platform/tests/webtransport/datagrams.https.any.js#194-208

The client uses the neqo_transport::Connection::max_datagram_size function to get the current max-size.

https://github.com/mozilla/neqo/blob/d5c656ab84fc233d7d3e0b378d997fc134806809/neqo-transport/src/connection/mod.rs#L3326-L3362

The function calculates the max-size based on the current MTU.

A guess:

  1. The test gets the max-size through max_datagram_size.
  2. The client's PMTUD increases the MTU.
  3. A single QUIC datagram can actually now fit more than max-size + 1.
  4. Sending of max-size + 1 succeeds and thus the test fails.

I can investigate this further. Though as discussed, I will prioritize https://bugzilla.mozilla.org/show_bug.cgi?id=1902065 for now.

Flags: needinfo?(leggert)

Thanks for the analysis. That very likely is the cause, I agree. Any easy fix would be to try and send a datagram not just one byte larger, but much larger.

Flags: needinfo?(leggert)
Flags: needinfo?(mail)

Enable Path MTU Discovery (PMTUD) on QUIC on Firefox Nightly.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: