uber / tchannel-go

Go implementation of a multiplexing and framing protocol for RPC calls
http://uber.github.io/tchannel/
MIT License
490 stars 84 forks source link

Add MPTCP support #897

Closed zhiyipanuber closed 1 year ago

zhiyipanuber commented 1 year ago

This PR adds MPTCP support. It's based on go 1.21 net package.

When EnableMPTCP is passed with ChannelOptions to create a new channel, tchannel will use MPTCP instead TCP for network connection. MPTCP requires underlying system support MPTCP. Tchannel will use normal TCP connection if EnableMPTCP is in one of following cases:

  1. sets to false.
  2. not passed in ChannelOptions.
  3. not supported by underlying system.
CLAassistant commented 1 year ago

CLA assistant check
All committers have signed the CLA.