Prechádzať zdrojové kódy

don't throttle on first RTT measurement

Lee Salzman 5 rokov pred
rodič
commit
f89e5986d0
2 zmenil súbory, kde vykonal 4 pridanie a 3 odobranie
  1. 1 1
      include/enet/enet.h
  2. 3 2
      protocol.c

+ 1 - 1
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, 

+ 3 - 2
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)
        {