Closed Bug 1891963 Opened 6 months ago Closed 5 months ago

Fenix connects to https:://discord.com via HTTP/2 on cold page load, while Chrome Android uses HTTP/3

Categories

(Core :: Networking: HTTP, defect, P2)

defect

Tracking

()

RESOLVED FIXED
Tracking Status
firefox129 --- fixed

People

(Reporter: acreskey, Unassigned)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [necko-triaged])

When running live site browsertime tests, we see that Chrome, with a fresh profile, makes its first cold page load of https://discord.com via HTTP/3.
Fenix uses HTTP/2.

With about 150ms of latency, this is resulting in a mean connection time (including TLS) of about 425ms for Fenix, but 181 ms for Chrome.
(As reported via navigation timing api)

Note that while these results are reproducible, they are from live sites and should be considered to be datapoints. see here

Possibly Chrome is achieving the first connection via HTTP/3 via HTTPS RR?
I see that discord.com includes h3 in it's alpn field in the record:
https://www.nslookup.io/domains/discord.com/dns-records/https/

Whiteboard: [necko-triaged]

Let's see if this can be fixed by enabling native https record query.

Severity: -- → N/A
Priority: -- → P2
See Also: → 1890999

Verified that this is working in the latest Fenix nightly, i.e. connects via HTTP/3 on cold page load, fresh profile.

Valentin, from everything I've seen this is now fixed with the native https record queries. I believe you can close this one.

Flags: needinfo?(valentin.gosu)

Yes, this should now work for Fenix running on Android 10+

Flags: needinfo?(valentin.gosu)

Resolved via bug 1890999.

Status: NEW → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
See Also: → 1836523

Observed some nice improvements when we connect via HTTP/3 on discord.
We can contrast this with the previous behaviour by disabling https rr, compared here as fenix_nightly_https_rr_off

Although there is fair deal of noise, we can still discern reproducible regressions with 90% confidence when we disable the newly-added https resource records.
These range from ~25% to ~35%.
See serverConnectionTime, which is the time to establish the full connection including TLS.
https://docs.google.com/spreadsheets/d/1riQZJiFHqCeyejkc76d6-8hP7ktemS_ZIljcHqxlKZM/edit#gid=69412114&range=152:157

Depends on: 1906239
Type: enhancement → defect
You need to log in before you can comment on or make changes to this bug.