Marten Seemann
14a31d49a0
add a type for the key phase and use it for header parsing and writing
2019-06-22 20:01:18 +08:00
Marten Seemann
d495b4bada
remove unused function GetPacketNumberLength
2019-06-21 20:13:59 +08:00
Marten Seemann
453aa23553
use a varint for the error code in the CONNECTION_CLOSE frame
2019-06-14 17:35:40 +08:00
Marten Seemann
857e4ae9a9
use stream numbers, not stream ids, in the stream maps
2019-06-05 20:01:51 +08:00
Marten Seemann
a8633a952c
introduce a type for the stream number
2019-06-05 17:45:17 +08:00
Marten Seemann
0dd26f4a4c
return the invalid stream ID if no streams are allowed
2019-06-05 15:17:30 +08:00
Marten Seemann
34543848f0
send a NEW_TOKEN from after completing the handshake (as a server)
2019-06-02 14:18:27 +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
1d6707325f
name the quic.Cookie to quic.Token
2019-05-30 22:13:06 +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
e06961266c
introduce an invalid packet number to simplify ackhandler and congestion
2019-05-14 06:41:13 +03: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
f847c5422d
implement parsing and writing of the max_ack_delay transport parameter
2019-05-08 12:43:29 +09:00
Marten Seemann
b5336be518
rename retransmittable to ack-eliciting
2019-04-12 13:25:39 +09:00
Marten Seemann
7b02b87026
reject MAX_STREAMS frames with too large stream counts
2019-04-01 11:57:23 +09:00
Marten Seemann
e7ed5e3c92
implement the crypto stream for post-handshake crypto messages
2019-02-06 22:51:44 +08:00
Marten Seemann
6834c37462
move the maximum ack delay exponennt to the protocol constants
2019-01-28 16:37:00 +09:00
Marten Seemann
155ebd18a2
parse and send the ack_delay_exponent in the transport parameters
2019-01-28 16:09:47 +09:00
Marten Seemann
ee75f5e2f2
implement ACK frame parsing using an ack delay exponent
2019-01-28 16:09:47 +09:00
Marten Seemann
3f80870922
change the version number for the development version
...
This now uses the highest version number reserved for quic-go in
https://github.com/quicwg/base-drafts/wiki/QUIC-Versions .
2019-01-10 22:06:29 +07:00
Marten Seemann
90514d53d1
reject new connection attempts if the server's accept queue is full
2019-01-06 15:26:43 +07:00
Marten Seemann
c06a0ca037
rename InferPacketNumber to DecodePacketNumber
...
That's how it's called in the draft.
2018-12-14 16:46:40 +06:30
Marten Seemann
314056f6dd
increase mininum stateless reset size
2018-11-29 11:22:20 +07:00
Marten Seemann
46487e5267
remove unused constant NonForwardSecurePacketSizeReduction
2018-11-29 09:39:43 +07:00
Marten Seemann
aba2c3d031
remove all references to Public Resets in comments
2018-11-28 11:58:05 +07:00
Marten Seemann
ddf677845b
Merge pull request #1643 from lucas-clemente/enable-packet-number-decoding-test
...
enable packet number encoding test case taken from the draft
2018-11-27 18:27:28 +07:00
Marten Seemann
83fac8ebb8
Merge pull request #1632 from lucas-clemente/remove-max-client-hellos
...
remove unused constant MaxClientHellos
2018-11-27 17:24:09 +07:00
Marten Seemann
364214229d
enable packet number encoding test case taken from the draft
2018-11-27 17:23:05 +07:00
Marten Seemann
fb550aaa10
remove unused constant MaxClientHellos
2018-11-27 09:28:17 +07:00
Marten Seemann
2add1d2fea
add the packet number decoding and encoding test cases from the draft
2018-11-26 23:05:56 +07:00
Marten Seemann
bfb467e9b8
use the new packet number format
2018-11-26 23:05:55 +07:00
Marten Seemann
faed2ba30a
remove version dependency of packet number inferring
2018-11-26 22:46:08 +07:00
Marten Seemann
53aeb7d592
don't use the wire encoding for the PacketType constant
2018-11-26 22:45:28 +07:00
Marten Seemann
39e1e9a6f8
implement receiving of stateless resets
2018-11-20 10:07:30 +07:00
Marten Seemann
54c287c7e6
Merge pull request #1614 from lucas-clemente/rename-params-file
...
rename the file containing the parameters
2018-11-19 20:46:16 +07:00
Marten Seemann
7696bf59ea
remove 6 byte packet numbers
2018-11-19 16:15:02 +07:00
Marten Seemann
82cfd38537
rename the file containing the parameters
2018-11-19 16:06:37 +07:00
Marten Seemann
001f76559a
reduce the duration we keep the mapping for retired connection IDs alive
...
This duration only needs to cover typical reordering on the network.
5 seconds should be plenty.
2018-11-17 08:16:06 +07:00
Marten Seemann
1dd0b9a635
rename the duration that we keep old connection ID mappings alive
2018-11-16 21:22:32 +07:00
Marten Seemann
df7c6a221b
use higher initial flow control windows
2018-11-12 23:38:07 +07:00
Marten Seemann
4b37ecb2b5
use the same default max flow control window sizes for client and server
2018-11-12 23:38:07 +07:00
Marten Seemann
9518c90c0a
implement and use the MAX_STREAMS frame
2018-11-10 09:38:50 +07:00
Marten Seemann
0f931ca54e
use a uint64 for stream counts
2018-11-10 09:05:33 +07:00
Marten Seemann
e8de94485c
move more stream ID logic to the protocol package
2018-11-10 09:05:33 +07:00
Marten Seemann
5768b492d7
introduce a type for unidirctional and bidirectional streams
2018-11-01 15:50:47 +07:00
Marten Seemann
14a4464266
implement some stream ID helper functions
2018-10-30 12:52:48 +07:00
Marten Seemann
a1acfc3045
rename {Stream,Connection}FlowControlWindow to InitialMax{Stream}Data
2018-10-30 12:52:42 +07:00
Marten Seemann
3266e36811
drop support for gQUIC
2018-10-30 10:20:39 +07:00
Marten Seemann
82508f1562
use tls-tris instead of mint
2018-10-26 16:18:49 +07:00