Lee Salzman
4de13a2c2e
avoid sending packets in unacknowledged window
2020-11-13 00:11:34 -05:00
Lee Salzman
0d1fb32ee8
fix for sending getting too far ahead of receiver
2020-10-19 20:21:04 -04:00
Lee Salzman
54dac7af81
revert failed throttle changes
2020-09-08 13:39:54 -04:00
Lee Salzman
b63fd5256a
clamp RTT variance a bit more loosely for throttle
2020-09-05 20:29:58 -04:00
Lee Salzman
65dc0f74d8
round RTT stats before comparing
2020-09-03 17:22:05 -04:00
Lee Salzman
bde113ef56
clamp minimum highest RTT variance
2020-09-01 00:26:10 -04:00
Lee Salzman
e55d226969
more command queuing fixes
2020-08-23 16:45:15 -04:00
Lee Salzman
8d55487767
make throttle more readily accelerate
2020-08-23 16:35:43 -04:00
Lee Salzman
5de0a6f764
make throttle even more tolerant of variance
2020-08-12 15:42:57 -04:00
Lee Salzman
eda26a26d9
clamp throttle variance from below based on RTT percentage
2020-07-24 01:50:34 -04:00
Lee Salzman
47d2e192aa
use unified outgoing command queue for reliable and unreliable commands
2020-07-23 04:42:59 -04:00
Lee Salzman
c25b57b2c1
stabilize packet throttle when RTT variance is low
2020-04-16 00:15:18 -04:00
Lee Salzman
f89e5986d0
don't throttle on first RTT measurement
2020-04-13 19:32:13 -04:00
Maxim
33c7d6903e
Return 0 instead of -1 on enet_protocol_receive_incoming_commands
...
Return 0 instead of -1 on enet_protocol_receive_incoming_commands when nothing received.
This allows the Service loop to continue running and not return an error when there is nothing to do with the socket receive.
From debugging I found sometimes the enet_protocol_receive_incoming_commands returns -1 because simply nothing happened in the 256 for loop.
Other functions like enet_protocol_send_outgoing_commands return 0 when nothing happened.
2020-04-07 11:58:08 +02:00
Lee Salzman
6991632abf
accumulate fractional RTT values
2020-04-04 12:30:54 -04:00
Lee Salzman
b4c427059a
clamp roundTripTime
2020-04-03 03:48:38 -04:00
Lee Salzman
6537dc81f3
make RTT calculations more TCP-like (contributed by Vladimir 'virtul' Ivannikov)
2020-03-03 15:34:06 -05:00
Lee Salzman
b8713bdf88
delay handling of DISCONNECT_LATER until in-flight unreliable packets are sent
2019-01-27 14:46:45 -05:00
lsalzman@gmail.com
7c27a5d5f8
fix window wrap check when sending reliable outgoing commands
2015-03-12 16:25:26 -07:00
lsalzman@gmail.com
9b06a12e71
handle case in bandwidth limit protocol where either incoming or outgoing limits are disabled, but not both
2015-03-09 11:54:01 -07:00
Lee Salzman
6ef4e7d277
limit number of packets that can be received per iteration of protocol loop
2014-09-29 15:49:34 +03:00
Lee Salzman
518144338d
fix maximumWaitingData handling to allow acknowledgements when the packet already exists
2014-04-14 21:21:21 +03:00
Lee Salzman
ea8d41f65c
added maximumPacketSize and maximumWaitingData fields for limiting peer buffer space
2014-04-14 19:11:44 +03:00
lsalzman
5721b667f2
avoid an enet_time_get call when timeout expires
2014-02-21 11:20:20 +02:00
lsalzman
84a4ac70ab
handle disconnects in connecting state
2013-11-27 16:33:09 +02:00
Lee Salzman
d45b44f2b5
allow loopback connections
2013-11-17 20:19:17 +02:00
Lee Salzman
4d7b80152b
small fix for duplicate peers
2013-08-18 17:20:17 +03:00
lsalzman
1658cf3a95
stub out enet_host_random_seed()
2013-08-09 09:41:57 +03:00
Lee Salzman
2d2440053d
typo fix
2013-05-12 11:04:00 +03:00
Lee Salzman
69b98608e5
track the number of connected peers to make throttling a bit cheaper
2013-05-11 21:53:55 +03:00
Lee Salzman
7dc0189ffb
handle EINTR in enet_socket_wait
2013-05-10 17:49:44 +03:00
Lee Salzman
714f40319a
set unused reliable sequence number field for acks to sane value
2013-03-23 17:22:32 +02:00
lsalzman
db685c3d4f
only use perror if ENET_DEBUG defined
2013-03-19 11:26:54 +02:00
lsalzman
4ce4aac149
added ENET_PACKET_FLAG_SENT to indicate that a packet has been sent
2013-02-27 16:29:22 +02:00
Lee Salzman
9185dc80bc
state handling cleanups
2013-01-07 20:46:31 +02:00
lsalzman
2d979ceb51
intercept callback support
2012-10-02 13:33:07 +03:00
Lee Salzman
0e0ace781b
merging some things from Ryan C. Gordon (icculus):
...
enet_socket_connect() shouldn't fail with non-blocking sockets.
Removed unused variable.
Sanity check for possible NULL dereference reported by clang's static…analysis.
Added an interface to shutdown().
Fixed typo in the comments.
2012-09-18 16:38:10 +03:00
Lee Salzman
74d4c4a88f
fix serialization of mtu in verify connect packet
2012-09-18 15:29:11 +03:00
Lee Salzman
f6160fd2e9
case warning fixes
2012-07-31 16:12:11 +03:00
lsalzman
ea8faf3579
added per-peer configurable ping interval and timeouts
...
1.3.4 release prep
2012-05-29 19:05:34 -07:00
eihrul
78222dc79e
sanity checks
2012-01-06 15:11:04 +00:00
eihrul
27d8c07142
only bail out of sending on a timeout if there really is an event to dispatch
2012-01-05 04:12:46 +00:00
eihrul
70d0d8f25d
warning workarounds
2011-12-31 12:37:26 +00:00
eihrul
7691ccc318
fixed bug with simultaneous disconnects not dispatching events
2011-06-28 15:25:53 +00:00
eihrul
cfb05d051b
unreliable fragment fixes
2011-05-31 09:44:09 +00:00
eihrul
f38c177db0
support for ENET_PACKET_FLAG_UNRELIABLE_FRAGMENT
...
1.3.2 release prep
2011-05-31 07:48:27 +00:00
eihrul
33e2fc6201
check received port
2011-05-30 19:00:26 +00:00
eihrul
c77495463b
fix bug with tracking reliable data in transit
2011-01-31 08:27:39 +00:00
eihrul
5258b40640
fixed bug where low reliable window stops pings from getting through
2011-01-31 06:17:58 +00:00
eihrul
1e18fd6001
reliable packet throttle tweak
2010-12-20 10:46:57 +00:00