Commit Graph

684 Commits

Author SHA1 Message Date
Marten Seemann
784ed16d94 Merge pull request #1945 from lucas-clemente/fix-flaky-token-generator-test
fix flaky token generator test on CI
2019-06-02 14:14:25 +08:00
Marten Seemann
d4da26bdbd fix flaky token generator test on CI 2019-06-02 13:57:51 +08:00
Marten Seemann
1873503937 reduce the Retry token expiry time to 10 seconds
The expiry time used to be 24 hours before. The reason for this long
duration was that this included tokens that were issued to be used
between separate connections in gQUIC. At the moment, we are only
generating tokens for Retry packets, i.e. within a single connection.
They are therefore expected to be used within a single round trip.
2019-06-01 16:32:54 +08:00
Marten Seemann
4e709efa2f Merge pull request #1939 from lucas-clemente/crypto-setup-error-signaling
improve error handling in the crypto setup
2019-05-31 19:30:43 +08:00
Marten Seemann
e361d3c5cd use a callback to signal completion of the handshake 2019-05-31 19:13:41 +08:00
Marten Seemann
4fd6a7cc99 use a struct to pass callbacks from the session to the crypto setup 2019-05-31 19:00:10 +08:00
Marten Seemann
3b4e552582 Merge pull request #1936 from lucas-clemente/token-timestamp
use a high resolution timestamp in the token
2019-05-31 18:57:51 +08:00
Marten Seemann
743868159f use a callback to pass handshake errors to the session 2019-05-31 18:35:37 +08:00
Marten Seemann
ed69ae2ce0 Merge pull request #1940 from lucas-clemente/unexpected-handshake-messages
fix crash when receiving unexpected handshake messages
2019-05-31 18:14:29 +08:00
Marten Seemann
002b36abf5 use a high resolution timestamp in the token 2019-05-31 18:13:11 +08:00
Marten Seemann
aa9ab41560 Merge pull request #1937 from lucas-clemente/fix-hrr-race
fix race condition in crypto setup when sending a HelloRetryRequest
2019-05-31 18:09:08 +08:00
Marten Seemann
6899eb3c86 Merge pull request #1938 from lucas-clemente/remove-unused-connection-state
remove unused handshake.ConnectionState struct definition
2019-05-31 18:08:03 +08:00
Marten Seemann
73bd91a093 fix crash when receiving unexpected handshake message 2019-05-31 18:04:44 +08:00
Marten Seemann
5d4a47a3f3 return a crypto error when receiving unexpected handshake messages 2019-05-31 17:57:07 +08:00
Marten Seemann
2f6ab5aa5f remove unused handshake.ConnectionState struct definition 2019-05-31 15:00:34 +08:00
Marten Seemann
0be4ee197f fix race condition in crypto setup when sending a HelloRetryRequest 2019-05-31 01:57:58 +08:00
Marten Seemann
1d6707325f name the quic.Cookie to quic.Token 2019-05-30 22:13:06 +08:00
Marten Seemann
06da72ae4e Merge pull request #1929 from lucas-clemente/drop-handshake-keys
drop Initial and Handshake keys when receiving the first 1-RTT ACK
2019-05-30 20:52:39 +08:00
Marten Seemann
8eda9306a6 Merge pull request #1934 from lucas-clemente/application-error-logging
fix logging of application errors
2019-05-30 18:08:51 +08:00
Marten Seemann
7a2ffb3ada Merge pull request #1930 from lucas-clemente/invalid-stream-id
introduce invalid stream ID to simplify the outgoing streams map
2019-05-30 18:07:39 +08:00
Marten Seemann
cd6047b58e fix logging of application errors 2019-05-30 17:15:19 +08:00
Marten Seemann
a4989c3d9c drop Initial and Handshake keys when receiving the first 1-RTT ACK 2019-05-30 14:19:26 +08:00
Marten Seemann
4834962cbd add a function to drop received packets of a certain encryption level 2019-05-30 14:19:11 +08:00
Marten Seemann
4d5b4fd790 add a function to drop sent packets of a certain encryption level 2019-05-30 13:47:16 +08:00
Marten Seemann
195bdc9944 remove unused handshakeComplete member variable from sent packet handler 2019-05-30 13:47:16 +08:00
Marten Seemann
82acc7f2b7 introduce invalid stream ID to simplify the outgoing streams map 2019-05-30 03:16:45 +08:00
Marten Seemann
ea33339d26 correct the bytes in flight when dropping crypto packets 2019-05-30 01:47:03 +08:00
Marten Seemann
8c40c3f768 improve logging of STREAMS_BLOCKED frames 2019-05-28 15:56:02 +02:00
Marten Seemann
c8aa4f4d4a improve logging of MAX_STREAMS frames 2019-05-28 15:54:25 +02:00
Marten Seemann
fd33eb319f add a flag to turn off PRR 2019-05-21 10:57:55 +01:00
Marten Seemann
8afed81c49 Merge pull request #1907 from lucas-clemente/can-send
use PRR when deciding if we're congestion limited
2019-05-20 08:44:33 +01:00
Marten Seemann
3e67c12d76 use PRR when deciding if we're congestion limited 2019-05-19 16:49:55 +02:00
Marten Seemann
fccdb1c558 use Reno instead of Cubic 2019-05-19 15:57:20 +02:00
Marten Seemann
e06961266c introduce an invalid packet number to simplify ackhandler and congestion 2019-05-14 06:41:13 +03:00
Marten Seemann
dca57baef6 Merge pull request #1901 from lucas-clemente/cleanup-send-algorithm
clean up the congestion interface
2019-05-13 16:10:17 +02:00
Marten Seemann
c869d51e52 remove unused SendAlgorithmWithDebugInfo from congestion package 2019-05-13 12:43:08 +02:00
Marten Seemann
448c49851b remove unused methods from the congestion interface 2019-05-13 12:11:29 +02:00
Marten Seemann
0a86224858 pass a string, not an error, to Session.CloseWithError 2019-05-13 08:04:24 +02:00
Marten Seemann
4e6df9041d use the max_ack_delay when computing the PTO duration 2019-05-08 14:47:46 +09:00
Marten Seemann
537737935c limit the ACK delay by max_ack_delay 2019-05-08 14:34:56 +09:00
Marten Seemann
0e33f3c0da don't send an ACK delay time for Initial and Handshake ACKs 2019-05-08 14:30:17 +09:00
Marten Seemann
f981339bc0 ignore the delay field for ACKs sent in Initial and Handshake packets 2019-05-08 14:15:42 +09:00
Marten Seemann
6c27967c8a include the timer granularity in the advertised max_ack_delay 2019-05-08 13:26:08 +09:00
Marten Seemann
af8c03ebaf advertize the max_ack_delay in the transport parameters 2019-05-08 13:22:37 +09:00
Marten Seemann
4042a8258c simplify writing of varint transport parameters 2019-05-08 12:53:19 +09:00
Marten Seemann
f847c5422d implement parsing and writing of the max_ack_delay transport parameter 2019-05-08 12:43:29 +09:00
Marten Seemann
5d999f3927 handle ACKs separately in the sent packet handler packet struct 2019-04-21 20:47:27 +09:00
Marten Seemann
450d777a51 use the timer granularity as a minimum for the loss detection timer 2019-04-16 11:34:49 +09:00
Marten Seemann
2c27cc0090 rename the reordering threshold constant in the sent packet handler 2019-04-16 11:32:01 +09:00
Marten Seemann
9dc29effdf rename loss delay variable in sent packet handler
That's how it's called in the WG draft pseudo code.
2019-04-16 11:25:58 +09:00