Просмотр исходного кода

NetworkLatencyMultiplierLambda fixes

- Reduce minimum to allow smaller values

- Enable setting via config
Rod Hynes 6 лет назад
Родитель
Сommit
42fa96f807
2 измененных файлов с 10 добавлено и 5 удалено
  1. 1 1
      psiphon/common/parameters/clientParameters.go
  2. 9 4
      psiphon/config.go

+ 1 - 1
psiphon/common/parameters/clientParameters.go

@@ -251,7 +251,7 @@ var defaultClientParameters = map[string]struct {
 	NetworkLatencyMultiplier:       {value: 0.0, minimum: 1.0},
 	NetworkLatencyMultiplierMin:    {value: 1.0, minimum: 1.0},
 	NetworkLatencyMultiplierMax:    {value: 3.0, minimum: 1.0},
-	NetworkLatencyMultiplierLambda: {value: 2.0, minimum: 1.0},
+	NetworkLatencyMultiplierLambda: {value: 2.0, minimum: 0.001},
 
 	TacticsWaitPeriod:        {value: 10 * time.Second, minimum: 0 * time.Second, flags: useNetworkLatencyMultiplier},
 	TacticsRetryPeriod:       {value: 5 * time.Second, minimum: 1 * time.Millisecond},

+ 9 - 4
psiphon/config.go

@@ -550,10 +550,11 @@ type Config struct {
 	ReplayLaterRoundMoveToFrontProbability *float64
 	ReplayRetainFailedProbability          *float64
 
-	// NetworkLatencyMultiplierMin and NetworkLatencyMultiplierMax are for
-	// testing purposes.
-	NetworkLatencyMultiplierMin float64
-	NetworkLatencyMultiplierMax float64
+	// NetworkLatencyMultiplierMin and other NetworkLatencyMultiplier fields are
+	// for testing purposes.
+	NetworkLatencyMultiplierMin    float64
+	NetworkLatencyMultiplierMax    float64
+	NetworkLatencyMultiplierLambda float64
 
 	// UseOnlyCustomTLSProfiles and other TLS configuration fields are for
 	// testing purposes.
@@ -933,6 +934,10 @@ func (config *Config) makeConfigParameters() map[string]interface{} {
 		applyParameters[parameters.NetworkLatencyMultiplierMax] = config.NetworkLatencyMultiplierMax
 	}
 
+	if config.NetworkLatencyMultiplierLambda > 0.0 {
+		applyParameters[parameters.NetworkLatencyMultiplierLambda] = config.NetworkLatencyMultiplierLambda
+	}
+
 	if len(config.LimitTunnelProtocols) > 0 {
 		applyParameters[parameters.LimitTunnelProtocols] = protocol.TunnelProtocols(config.LimitTunnelProtocols)
 	}