-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Description
Hello,
While working on #56539, I noticed I misunderstood the use of MultipathTCP()
when it was discussed.
Despite the fact Apple and others have been pushing to avoid that, it can happen some middleboxes explicitly or accidentally block MPTCP, e.g. transparent proxy, some firewalls blocking all TCP extensions, etc. When this happens, MPTCP connections will fallback to TCP and continue to work with only one path.
App developers explicitly requiring MPTCP might want to know if a fallback to TCP has been done. The idea would then be to add a method to check such a thing, e.g.
pkg net, method (*TCPConn) MultipathTCP() (bool, error)
Similar to other TCPConn
methods (KeepAlive, No Delay, Linger, etc.), an error can be emitted if the connection is not OK.
The Linux kernel can tell us that: example.
A draft implementation has been shared on Gerrit.