Closed scalablecory closed 4 years ago
Triage: split dns changes into separate issue, track optimizing existing Connect calls for AF-specific lookups.
Triage: Asked for too many times, we should try to address it in 5.0.
Feedback:
[Flags]
from the enum. We can add it later if necessary as long as we only have 1 legal value on the enum right now.ConnectionAlgorithm
.Closing for mega-issue #33418.
@GrabYourPitchforks,
From https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/enum:
✔️ DO name flag enums with plural nouns or noun phrases and simple enums with singular nouns or noun phrases.
So, adding or removing the [Flags] attribute has implications on the enum name.
This proposal adds APIs needed to implement RFC 8305 "Happy Eyeballs" in
Socket.ConnectAsync
. This depends on #939.The simplified description of Happy Eyeballs is that it makes A and AAAA DNS requests in parallel, and then goes back and forth between A and AAAA beginning parallel
Connect()
at a set interval until it has a connection. This trades more overhead for improved latency of the rootConnectAsync
call.See https://github.com/dotnet/runtime/issues/26177#issuecomment-540141586 where we decided to explore this as a general
Socket
feature rather than onlySocketsHttpClient
.(API has cancellation support added where there previously hasn't been, to avoid needing to add yet more APIs later. See related #921)
26177 would be implemented using this, but is not blocked by it.