summaryrefslogtreecommitdiff
path: root/node/Peer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'node/Peer.hpp')
-rw-r--r--node/Peer.hpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/node/Peer.hpp b/node/Peer.hpp
index 9361f665..ddbe6f77 100644
--- a/node/Peer.hpp
+++ b/node/Peer.hpp
@@ -353,14 +353,18 @@ public:
inline int64_t isActive(int64_t now) const { return ((now - _lastNontrivialReceive) < ZT_PEER_ACTIVITY_TIMEOUT); }
/**
- * @return Latency in milliseconds of best path or 0xffff if unknown / no paths
+ * @return Latency in milliseconds of best/aggregate path or 0xffff if unknown / no paths
*/
inline unsigned int latency(const int64_t now)
{
- SharedPtr<Path> bp(getAppropriatePath(now,false));
- if (bp)
- return bp->latency();
- return 0xffff;
+ if (RR->node->getMultipathMode()) {
+ return (int)computeAggregateLinkMeanLatency();
+ } else {
+ SharedPtr<Path> bp(getAppropriatePath(now,false));
+ if (bp)
+ return bp->latency();
+ return 0xffff;
+ }
}
/**