[tor-commits] [pluggable-transports/meek] branch turbotunnel updated: Port some performance tweaks from Champa.

gitolite role git at cupani.torproject.org
Thu Oct 27 23:30:45 UTC 2022


This is an automated email from the git hooks/post-receive script.

dcf pushed a commit to branch turbotunnel
in repository pluggable-transports/meek.

The following commit(s) were added to refs/heads/turbotunnel by this push:
     new 34cdac0  Port some performance tweaks from Champa.
34cdac0 is described below

commit 34cdac081025efea44ed35c372fb9d7a215eb03b
Author: David Fifield <david at bamsoftware.com>
AuthorDate: Thu Oct 27 17:25:46 2022 -0600

    Port some performance tweaks from Champa.
    
    Increase send and receive window sizes.
    https://repo.or.cz/champa.git/commit/d207527dd774f217cbb4ebdc2a1f4d3d3fc5e9d2
    
    Higher defaults for smux MaxReceiveBuffer and MaxStreamBuffer.
    https://repo.or.cz/champa.git/commit/5231ffeab1f701bdbebc9585a69b1c2db58b3e35
    
    Increase queueSize to 256.
    https://repo.or.cz/champa.git/commit/7d110808f0279c5130a7c5640cc472a00a679eff
---
 meek-client/meek-client.go | 3 +++
 meek-server/meek-server.go | 3 +++
 meek-server/turbotunnel.go | 2 +-
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/meek-client/meek-client.go b/meek-client/meek-client.go
index 9e0064c..683aa90 100644
--- a/meek-client/meek-client.go
+++ b/meek-client/meek-client.go
@@ -195,10 +195,13 @@ func handleSOCKS(socks *pt.SocksConn) error {
 		0, // default resend
 		1, // nc=1 => congestion window off
 	)
+	conn.SetWindowSize(1024, 1024) // default is 32, 32
 
 	smuxConfig := smux.DefaultConfig()
 	smuxConfig.Version = 2
 	smuxConfig.KeepAliveTimeout = smuxIdleTimeout
+	smuxConfig.MaxReceiveBuffer = 4 * 1024 * 1024 // default is 4 * 1024 * 1024
+	smuxConfig.MaxStreamBuffer = 1 * 1024 * 1024  // default is 65536
 	sess, err := smux.Client(conn, smuxConfig)
 	if err != nil {
 		return err
diff --git a/meek-server/meek-server.go b/meek-server/meek-server.go
index 0eeff39..a8efad2 100644
--- a/meek-server/meek-server.go
+++ b/meek-server/meek-server.go
@@ -210,6 +210,7 @@ func acceptSessions(ln *kcp.Listener) error {
 			0, // default resend
 			1, // nc=1 => congestion window off
 		)
+		conn.SetWindowSize(1024, 1024) // default is 32, 32
 
 		go func() {
 			defer conn.Close()
@@ -226,6 +227,8 @@ func acceptStreams(conn *kcp.UDPSession) error {
 	smuxConfig := smux.DefaultConfig()
 	smuxConfig.Version = 2
 	smuxConfig.KeepAliveTimeout = smuxIdleTimeout
+	smuxConfig.MaxReceiveBuffer = 4 * 1024 * 1024 // default is 4 * 1024 * 1024
+	smuxConfig.MaxStreamBuffer = 1 * 1024 * 1024  // default is 65536
 	sess, err := smux.Server(conn, smuxConfig)
 	if err != nil {
 		return err
diff --git a/meek-server/turbotunnel.go b/meek-server/turbotunnel.go
index 293ac76..277d656 100644
--- a/meek-server/turbotunnel.go
+++ b/meek-server/turbotunnel.go
@@ -17,7 +17,7 @@ import (
 )
 
 // The size of receive and send queues.
-const queueSize = 32
+const queueSize = 256
 
 // ClientID plays the role in QueuePacketConn that an (IP address, port) tuple
 // plays in a net.UDPConn. It is a persistent identifier that binds together all

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the tor-commits mailing list