From f89e5986d06033f6b6421163444960f78dec99f8 Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Mon, 13 Apr 2020 19:32:13 -0400 Subject: [PATCH] don't throttle on first RTT measurement --- include/enet/enet.h | 2 +- protocol.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/include/enet/enet.h b/include/enet/enet.h index 174e062..baea93a 100644 --- a/include/enet/enet.h +++ b/include/enet/enet.h @@ -216,7 +216,7 @@ enum ENET_HOST_DEFAULT_MAXIMUM_PACKET_SIZE = 32 * 1024 * 1024, ENET_HOST_DEFAULT_MAXIMUM_WAITING_DATA = 32 * 1024 * 1024, - ENET_PEER_DEFAULT_ROUND_TRIP_TIME = 350, + ENET_PEER_DEFAULT_ROUND_TRIP_TIME = 500, ENET_PEER_DEFAULT_PACKET_THROTTLE = 32, ENET_PEER_PACKET_THROTTLE_SCALE = 32, ENET_PEER_PACKET_THROTTLE_COUNTER = 7, diff --git a/protocol.c b/protocol.c index a1d7ee1..163ebca 100644 --- a/protocol.c +++ b/protocol.c @@ -854,12 +854,13 @@ enet_protocol_handle_acknowledge (ENetHost * host, ENetEvent * event, ENetPeer * roundTripTime = ENET_TIME_DIFFERENCE (host -> serviceTime, receivedSentTime); roundTripTime = ENET_MAX (roundTripTime, 1); - enet_peer_throttle (peer, roundTripTime); - if (peer -> lastReceiveTime > 0) { enet_uint32 accumRoundTripTime = (peer -> roundTripTime << 8) + peer -> roundTripTimeRemainder; enet_uint32 accumRoundTripTimeVariance = (peer -> roundTripTimeVariance << 8) + peer -> roundTripTimeVarianceRemainder; + + enet_peer_throttle (peer, roundTripTime); + roundTripTime <<= 8; if (roundTripTime >= accumRoundTripTime) {