5
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2024-09-20 00:12:33 +00:00

possible fix if monotonic time resolution is related to packet reordering

This commit is contained in:
Arceliar 2019-11-25 17:40:58 -06:00
parent 3e07995518
commit 98339cdc3f

View File

@ -808,12 +808,12 @@ func (t *switchTable) _handleIdle(port switchPort) bool {
packet := buf.packets[0]
coords := switch_getPacketCoords(packet.bytes)
priority := float64(now.Sub(packet.time)) / float64(buf.size)
if priority > bestPriority && t.portIsCloser(coords, port) {
if priority >= bestPriority && t.portIsCloser(coords, port) {
best = streamID
bestPriority = priority
}
}
if bestPriority != 0 {
if best != "" {
buf := t.queues.bufs[best]
var packet switch_packetInfo
// TODO decide if this should be LIFO or FIFO