Closed Bug 1690008 Opened 5 years ago Closed 5 years ago

we want to fallback to TCP faster when Http3 with 0rtt is used

Categories

(Core :: Networking: HTTP, task, P1)

task

Tracking

()

RESOLVED FIXED
87 Branch
Tracking Status
firefox87 --- fixed

People

(Reporter: dragana, Assigned: kershaw)

References

(Blocks 1 open bug)

Details

(Whiteboard: [necko-triaged])

Attachments

(1 file, 1 obsolete file)

No description provided.

See the log below.

2021-02-01 12:01:18.370742 UTC - [Parent 76749: Socket Thread]: D/nsHttp nsHttpTransaction::OnHttp3BackupTimer [0x128936000]
2021-02-01 12:01:18.370757 UTC - [Parent 76749: Socket Thread]: V/nsHttp Init nsHttpConnectionInfo @0x1268745c0
2021-02-01 12:01:18.370795 UTC - [Parent 76749: Socket Thread]: V/nsHttp NulHttpTransaction::NullHttpTransaction() mActivityDistributor is active [this=0x128e9e040, www.google.com]
2021-02-01 12:01:18.370817 UTC - [Parent 76749: Socket Thread]: V/nsHttp GetH2orH3ActiveConn() request for ent 0x138563f90 .S.....[tlsflags0x00000000]www.google.com:443 {NPN-TOKEN h3-29}^partitionKey=%28https%2Cgoogle.com%29 found an active but inexperienced connection 0x12802b1a0 in native connection entry
2021-02-01 12:01:18.370832 UTC - [Parent 76749: Socket Thread]: V/nsHttp GetH2orH3ActiveConn() request for ent 0x138563f90 .S.....[tlsflags0x00000000]www.google.com:443 {NPN-TOKEN h3-29}^partitionKey=%28https%2Cgoogle.com%29 found an active but inexperienced connection 0x12802b1a0 in native connection entry
2021-02-01 12:01:18.370846 UTC - [Parent 76749: Socket Thread]: V/nsHttp ConnectionEntry::RestrictConnections 0x138563f90 .S.....[tlsflags0x00000000]www.google.com:443 {NPN-TOKEN h3-29}^partitionKey=%28https%2Cgoogle.com%29 restricted due to active >=h2
2021-02-01 12:01:18.370859 UTC - [Parent 76749: Socket Thread]: V/nsHttp OnMsgSpeculativeConnect Transport not created due to existing connection count

Actually, the fast fallback timer was fired, but we failed to create the speculative transaction. The reason is that we still use the same connection entry .S.....[tlsflags0x00000000]www.google.com:443 {NPN-TOKEN h3-29}^partitionKey=%28https%2Cgoogle.com%29 to create a non-http3 connection. To fix this, we should clear the npnToken in nsHttpConnectionInfo::CloneAsDirectRoute() here.

Assignee: nobody → kershaw

this is probably regression of bug 1687618

(In reply to Dragana Damjanovic [:dragana] from comment #2)

this is probably regression of bug 1687618

I think I was wrong here.

To make sure that old entries in AltSvc mapping db work, we also need to delete mNPNToken in CloneAsDirectRoute if mRoutedHost is empty.

Attachment #9200451 - Attachment is obsolete: true
Pushed by kjang@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a90360401f48 Clear npnToken when we want to create a non-http3 connection info r=necko-reviewers,dragana
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 87 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: