As discussed in #93225 , currently the concept of transport version is quite heavily integrated into release version compatibility. As release versions are not applicable for cloud deployments, we need to separate out code that manages initial tcp transport handshakes that negotiates the transport version from other code that manages transport messages.
The initial handshake should have its own version number, independent of on-prem version and transport version, that is used in the initial messages to negotiate the TransportVersion to use for actual communications. This also needs to be backwards-compatible with on-prem versions the released code needs to communicate with
As discussed in #93225 , currently the concept of transport version is quite heavily integrated into release version compatibility. As release versions are not applicable for cloud deployments, we need to separate out code that manages initial tcp transport handshakes that negotiates the transport version from other code that manages transport messages.
The initial handshake should have its own version number, independent of on-prem version and transport version, that is used in the initial messages to negotiate the TransportVersion to use for actual communications. This also needs to be backwards-compatible with on-prem versions the released code needs to communicate with