(trying to "plan" this thing so that the designing doesn't happen on the PR itself)
xmux is a setting in splithttp. however, the principle can be applied to h2 and grpc transports. there are a few ways to port it:
Option 1: Just copy it to grpcSettings
"grpcSettings": {
"xmux": ...
}
Option 2: Make it global
xmux replaces the mux key. For transports that support xmux, it is used. For transports that do not support xmux, mux.cool is used:
"network": "websocket",
"mux": { // mux.cool
"concurrency": 8
}
"network": "grpc",
"mux": { // h2mux/xmux
"concurrency": 8
}
can add a "type" setting like sing-box, but IMO it can be chosen automatically (for each transport, there is an "obvious best" one)
thoughts?
(trying to "plan" this thing so that the designing doesn't happen on the PR itself)
xmux is a setting in splithttp. however, the principle can be applied to h2 and grpc transports. there are a few ways to port it:
Option 1: Just copy it to
grpcSettingsOption 2: Make it global
xmuxreplaces themuxkey. For transports that supportxmux, it is used. For transports that do not supportxmux, mux.cool is used:can add a
"type"setting like sing-box, but IMO it can be chosen automatically (for each transport, there is an "obvious best" one)thoughts?