From edb3d1cbf81d57e23b0dabdbc37f8de37a5dd4c5 Mon Sep 17 00:00:00 2001 From: Natalie Villasana Date: Thu, 20 Jun 2019 15:01:50 -0400 Subject: [PATCH] pkg/overlay: update node selection config values for reputation (#2264) --- pkg/overlay/config.go | 21 ++++++++++----------- scripts/testdata/satellite-config.yaml.lock | 10 +++++----- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/pkg/overlay/config.go b/pkg/overlay/config.go index c9d1d542d..764b64295 100644 --- a/pkg/overlay/config.go +++ b/pkg/overlay/config.go @@ -34,19 +34,18 @@ type NodeSelectionConfig struct { OnlineWindow time.Duration `help:"the amount of time without seeing a node before its considered offline" default:"1h"` DistinctIP bool `help:"require distinct IPs when choosing nodes for upload" releaseDefault:"true" devDefault:"false"` - AuditReputationRepairWeight float64 `help:"weight to apply to audit reputation for total repair reputation calculation" default:"1.0"` - AuditReputationUplinkWeight float64 `help:"weight to apply to audit reputation for total uplink reputation calculation" default:"1.0"` - AuditReputationAlpha0 float64 `help:"the initial shape 'alpha' used to calculate audit SNs reputation" default:"1.0"` - AuditReputationBeta0 float64 `help:"the initial shape 'beta' value used to calculate audit SNs reputation" default:"0.0"` - AuditReputationLambda float64 `help:"the forgetting factor used to calculate the audit SNs reputation" default:"1.0"` - AuditReputationWeight float64 `help:"the normalization weight used to calculate the audit SNs reputation" default:"1.0"` - // TODO(nat): figure out default for DQs - AuditReputationDQ float64 `help:"the reputation cut-off for disqualifying SNs based on audit history" default:"0.5"` + AuditReputationRepairWeight float64 `help:"weight to apply to audit reputation for total repair reputation calculation" default:"1.0"` + AuditReputationUplinkWeight float64 `help:"weight to apply to audit reputation for total uplink reputation calculation" default:"1.0"` + AuditReputationAlpha0 float64 `help:"the initial shape 'alpha' used to calculate audit SNs reputation" default:"1.0"` + AuditReputationBeta0 float64 `help:"the initial shape 'beta' value used to calculate audit SNs reputation" default:"0.0"` + AuditReputationLambda float64 `help:"the forgetting factor used to calculate the audit SNs reputation" default:"0.95"` + AuditReputationWeight float64 `help:"the normalization weight used to calculate the audit SNs reputation" default:"1.0"` + AuditReputationDQ float64 `help:"the reputation cut-off for disqualifying SNs based on audit history" default:"0.6"` UptimeReputationRepairWeight float64 `help:"weight to apply to uptime reputation for total repair reputation calculation" default:"1.0"` UptimeReputationUplinkWeight float64 `help:"weight to apply to uptime reputation for total uplink reputation calculation" default:"1.0"` - UptimeReputationAlpha0 float64 `help:"the initial shape 'alpha' used to calculate uptime SNs reputation" default:"1.0"` + UptimeReputationAlpha0 float64 `help:"the initial shape 'alpha' used to calculate uptime SNs reputation" default:"2.0"` UptimeReputationBeta0 float64 `help:"the initial shape 'beta' value used to calculate uptime SNs reputation" default:"0.0"` - UptimeReputationLambda float64 `help:"the forgetting factor used to calculate the uptime SNs reputation" default:"1.0"` + UptimeReputationLambda float64 `help:"the forgetting factor used to calculate the uptime SNs reputation" default:"0.99"` UptimeReputationWeight float64 `help:"the normalization weight used to calculate the uptime SNs reputation" default:"1.0"` - UptimeReputationDQ float64 `help:"the reputation cut-off for disqualifying SNs based on uptime history" default:"0.5"` + UptimeReputationDQ float64 `help:"the reputation cut-off for disqualifying SNs based on uptime history" default:"0.6"` } diff --git a/scripts/testdata/satellite-config.yaml.lock b/scripts/testdata/satellite-config.yaml.lock index 6114171a3..b92fa7871 100644 --- a/scripts/testdata/satellite-config.yaml.lock +++ b/scripts/testdata/satellite-config.yaml.lock @@ -203,10 +203,10 @@ kademlia.operator.wallet: "" # overlay.node.audit-reputation-beta0: 0 # the reputation cut-off for disqualifying SNs based on audit history -# overlay.node.audit-reputation-dq: 0.5 +# overlay.node.audit-reputation-dq: 0.6 # the forgetting factor used to calculate the audit SNs reputation -# overlay.node.audit-reputation-lambda: 1 +# overlay.node.audit-reputation-lambda: 0.95 # weight to apply to audit reputation for total repair reputation calculation # overlay.node.audit-reputation-repair-weight: 1 @@ -239,16 +239,16 @@ kademlia.operator.wallet: "" # overlay.node.uptime-ratio: 0.9 # the initial shape 'alpha' used to calculate uptime SNs reputation -# overlay.node.uptime-reputation-alpha0: 1 +# overlay.node.uptime-reputation-alpha0: 2 # the initial shape 'beta' value used to calculate uptime SNs reputation # overlay.node.uptime-reputation-beta0: 0 # the reputation cut-off for disqualifying SNs based on uptime history -# overlay.node.uptime-reputation-dq: 0.5 +# overlay.node.uptime-reputation-dq: 0.6 # the forgetting factor used to calculate the uptime SNs reputation -# overlay.node.uptime-reputation-lambda: 1 +# overlay.node.uptime-reputation-lambda: 0.99 # weight to apply to uptime reputation for total repair reputation calculation # overlay.node.uptime-reputation-repair-weight: 1