From ea08de668e91dd988bc3ae510290aa6b6cbb9c88 Mon Sep 17 00:00:00 2001 From: fatedier Date: Sun, 4 Jun 2023 19:58:55 +0800 Subject: [PATCH] yamux: change default MaxStreamWindowSize to 6MB (#3474) --- client/proxy/xtcp.go | 2 +- client/service.go | 1 + client/visitor/xtcp.go | 2 +- server/service.go | 1 + 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/client/proxy/xtcp.go b/client/proxy/xtcp.go index 4ba8d50..e6c7620 100644 --- a/client/proxy/xtcp.go +++ b/client/proxy/xtcp.go @@ -137,7 +137,7 @@ func (pxy *XTCPProxy) listenByKCP(listenConn *net.UDPConn, raddr *net.UDPAddr, s fmuxCfg := fmux.DefaultConfig() fmuxCfg.KeepAliveInterval = 10 * time.Second - fmuxCfg.MaxStreamWindowSize = 2 * 1024 * 1024 + fmuxCfg.MaxStreamWindowSize = 6 * 1024 * 1024 fmuxCfg.LogOutput = io.Discard session, err := fmux.Server(remote, fmuxCfg) if err != nil { diff --git a/client/service.go b/client/service.go index 0849484..df85c05 100644 --- a/client/service.go +++ b/client/service.go @@ -396,6 +396,7 @@ func (cm *ConnectionManager) OpenConnection() error { fmuxCfg := fmux.DefaultConfig() fmuxCfg.KeepAliveInterval = time.Duration(cm.cfg.TCPMuxKeepaliveInterval) * time.Second fmuxCfg.LogOutput = io.Discard + fmuxCfg.MaxStreamWindowSize = 6 * 1024 * 1024 session, err := fmux.Client(conn, fmuxCfg) if err != nil { return err diff --git a/client/visitor/xtcp.go b/client/visitor/xtcp.go index 73f3078..8dcd936 100644 --- a/client/visitor/xtcp.go +++ b/client/visitor/xtcp.go @@ -351,7 +351,7 @@ func (ks *KCPTunnelSession) Init(listenConn *net.UDPConn, raddr *net.UDPAddr) er fmuxCfg := fmux.DefaultConfig() fmuxCfg.KeepAliveInterval = 10 * time.Second - fmuxCfg.MaxStreamWindowSize = 2 * 1024 * 1024 + fmuxCfg.MaxStreamWindowSize = 6 * 1024 * 1024 fmuxCfg.LogOutput = io.Discard session, err := fmux.Client(remote, fmuxCfg) if err != nil { diff --git a/server/service.go b/server/service.go index e67ee73..3c4f5a8 100644 --- a/server/service.go +++ b/server/service.go @@ -461,6 +461,7 @@ func (svr *Service) HandleListener(l net.Listener) { fmuxCfg := fmux.DefaultConfig() fmuxCfg.KeepAliveInterval = time.Duration(svr.cfg.TCPMuxKeepaliveInterval) * time.Second fmuxCfg.LogOutput = io.Discard + fmuxCfg.MaxStreamWindowSize = 6 * 1024 * 1024 session, err := fmux.Server(frpConn, fmuxCfg) if err != nil { log.Warn("Failed to create mux connection: %v", err)