routing+lnrpc: make capacity factor configurable

We make the capacity factor configurable via an lnd.conf routerrpc
apriori parameter. The capacity factor trades off increased success
probability with a reduced set of channel candidates, which may lead to
increased fees. To let users choose whether the factor is active or not,
we add a config setting where a capacity fraction of 1.0 disables the
factor. We limit the capacity fraction to values between 0.75 and 1.0.
Lower values may discard too many channels.
This commit is contained in:
bitromortac
2023-02-24 11:59:44 +01:00
parent 73596ceac2
commit a73581610e
10 changed files with 113 additions and 47 deletions

View File

@ -880,6 +880,7 @@ func newServer(cfg *Config, listenAddrs []net.Addr,
AprioriHopProbability: aCfg.HopProbability,
PenaltyHalfLife: aCfg.PenaltyHalfLife,
AprioriWeight: aCfg.Weight,
CapacityFraction: aCfg.CapacityFraction,
}
estimator, err = routing.NewAprioriEstimator(