Commit Graph

2652 Commits

Author SHA1 Message Date
Marten Seemann
2e8a5807ba queue stream-level window updates from the flow controller directly 2018-05-08 15:17:45 +09:00
Marten Seemann
b93827ca60 Merge pull request #1343 from lucas-clemente/log-conn-flow-control-ensure-min-increases
log all connection flow control window increases
2018-05-08 14:58:33 +09:00
Marten Seemann
5e5a4a9c77 Merge pull request #1346 from lucas-clemente/crypto-setup-logging
add some logging to the gQUIC crypto setups
2018-05-08 14:48:17 +09:00
Marten Seemann
e7f88efd2c Merge pull request #1344 from lucas-clemente/header-logging
indent header log entries using tabs, not spaces
2018-05-08 14:25:23 +09:00
Marten Seemann
924bcc5914 add some logging to the client's crypto setup 2018-05-08 14:24:38 +09:00
Marten Seemann
39757c1a1a add some logging to the server's crypto setup 2018-05-08 14:24:38 +09:00
Marten Seemann
8840363dbf Merge pull request #1348 from lucas-clemente/httpguts
use H2 helper functions from httpguts repository
2018-05-08 14:23:00 +09:00
Marten Seemann
5a0a231c02 use H2 helper functions from httpguts repository
httplex was merged into httpguts:
cbb82b59bc
2018-05-08 14:00:31 +09:00
Marten Seemann
628f878b79 Merge pull request #1342 from lucas-clemente/fix-stream-flow-control-logging
fix logging of stream flow control window increases
2018-05-08 07:25:38 +09:00
Marten Seemann
cfabf0c6d7 Merge pull request #1341 from lucas-clemente/rename-max-streams
rename the constants for the max stream ids in the transport parameters
2018-05-08 07:22:30 +09:00
Marten Seemann
94c48d371a indent header log entries using tabs, not spaces 2018-05-07 09:11:34 +09:00
Marten Seemann
7d1f17e5d6 log all connection flow control window increases 2018-05-06 22:07:54 +09:00
Marten Seemann
a7591e2370 fix logging of stream flow control window increases 2018-05-06 21:52:41 +09:00
Marten Seemann
f29c37b951 rename the constants for the max stream ids in the transport parameters
No functional change expected.
2018-05-06 12:13:04 +09:00
Marten Seemann
a58cfd64e9 Merge pull request #1336 from lucas-clemente/congestion-in-bytes
switch to a byte-based congestion controller
2018-05-05 14:57:51 +09:00
Marten Seemann
45d5acef14 Merge pull request #1333 from lucas-clemente/acks-for-delayed-packets
don't send an ACK when receiving a packet that wouldn't be acked
2018-05-05 14:54:11 +09:00
Marten Seemann
1b9ac93c13 Merge pull request #1331 from lucas-clemente/fix-1330
set the ACK frame delay time when generating the frame
2018-05-05 14:23:50 +09:00
Marten Seemann
bd032826ca Merge pull request #1334 from lucas-clemente/cleanup-rtt-stats
remove unused functions from the RTT stats
2018-05-05 14:17:12 +09:00
Marten Seemann
1a1894ea18 Merge pull request #1332 from lucas-clemente/improve-ack-logging
improve logging of ACK frames with ranges
2018-05-05 13:59:12 +09:00
Marten Seemann
2b97fb41c9 switch to a byte-based congestion controller
Chrome removed the packet-based congestion controller and switched to
byte-based as well.
2018-05-02 23:45:23 +09:00
Marten Seemann
3cd6cc3e9f move the initial RTT estimate to the congestion package 2018-05-01 18:57:05 +09:00
Marten Seemann
4a7bab9ffe remove unused functions from the RTT stats
These functions are not used anywhere, and were removed from Chromium
code as well.
2018-05-01 18:50:28 +09:00
Marten Seemann
5140addd8a don't send an ACK when receiving a packet that wouldn't be acked
There's a lower bound which packets get acknowledged in an ACK frame.
When receiving a packet smaller than that bound, which was reported
missing before, it's not necessary to immediately queue an ACK, since it
wouldn't be included in the ACK frame anyway.
2018-05-01 12:32:44 +09:00
Marten Seemann
b83a4c069d improve logging of ACK frames with ranges 2018-05-01 11:40:10 +09:00
Marten Seemann
ee968aff67 set the ACK frame delay time when generating the frame 2018-04-30 21:50:33 +09:00
Lucas Clemente
2127e2f1de Merge pull request #1329 from lucas-clemente/lucas-clemente-patch-1
Fix KEX test on windows
2018-04-30 11:27:57 +02:00
Lucas Clemente
5907bfa168 Fix KEX test on windows
This makes the code rotate the key if `time.Since(kexCurrentTime) == kexLifetime`, which prevents an issue with low-resolution clocks (e.g. in our appveyor tests).
2018-04-30 11:14:46 +02:00
Lucas Clemente
47fd869154 Merge pull request #1328 from lucas-clemente/lucas-clemente-patch-1
Fix unnecessary stack growth when parsing frames
2018-04-30 11:00:17 +02:00
Lucas Clemente
0d8f0be92b Fix unnecessary stack growth when parsing frames 2018-04-30 10:28:18 +02:00
Marten Seemann
0aa793876c Merge pull request #1327 from lucas-clemente/remove-stray-code-comment
remove stray commented code in the session
2018-04-30 17:18:35 +09:00
Marten Seemann
903747fdc7 remove stray commented code in the session 2018-04-29 20:48:03 +09:00
Marten Seemann
376fccbde2 Merge pull request #1322 from lucas-clemente/tlp
implement TLPs
2018-04-25 21:37:57 +09:00
Marten Seemann
1420b138d5 implement TLPs 2018-04-25 20:47:18 +09:00
Marten Seemann
dd03501f13 Merge pull request #1321 from lucas-clemente/fix-1308
fix deadlock when receiving two packets with diversification nonces
2018-04-24 21:33:26 +09:00
Marten Seemann
0c014c0aff fix deadlock when receiving two packets with diversification nonces 2018-04-24 21:14:58 +09:00
Marten Seemann
d6e9e3faa2 Merge pull request #1313 from lucas-clemente/fix-1305
implement the payload length field in the Long Header
2018-04-23 18:25:22 +09:00
Marten Seemann
cc536fb895 cut packets at the payload length when receiving 2018-04-23 17:47:17 +09:00
Marten Seemann
a7f550ae0f set the payload length on Long Headers when packing packets 2018-04-23 17:41:07 +09:00
Marten Seemann
596ef35a80 implement parsing and writing of the Payload Length Long Header field 2018-04-23 17:39:03 +09:00
Marten Seemann
0e58a679d6 Merge pull request #1319 from lucas-clemente/fix-1307
use different source and destination connection IDs
2018-04-23 17:29:45 +09:00
Marten Seemann
b1de5df2f8 Merge pull request #1311 from lucas-clemente/fix-1302
limit the size of the ACK frame
2018-04-23 17:23:52 +09:00
Marten Seemann
cb0395ae37 Merge pull request #1316 from lucas-clemente/fix-1310
implement PATH_CHALLENGE and PATH_RESPONSE frames
2018-04-23 17:13:39 +09:00
Marten Seemann
126de06cc0 Merge pull request #1320 from lucas-clemente/fix-vnp-logging
fix logging of version negotiation packets
2018-04-23 17:00:25 +09:00
Marten Seemann
f353658547 limit the size of an ACK frame to 1000 bytes 2018-04-23 16:44:39 +09:00
Marten Seemann
4891b65c4b refactor calculation of ACK ranges into a separate function 2018-04-23 16:44:38 +09:00
Marten Seemann
83b670841a Merge pull request #1318 from lucas-clemente/fix-1317
fix flaky key exchange generation test on AppVeyor
2018-04-23 16:41:30 +09:00
Marten Seemann
e813d41376 handle PATH_CHALLENGE frames, reject PATH_RESPONSE frames 2018-04-23 16:41:06 +09:00
Marten Seemann
108e574581 implement parsing and writing of the PATH_RESPONSE frame 2018-04-23 16:41:06 +09:00
Marten Seemann
f53f3eee9f implement parsing and writing of the PATH_CHALLENGE frame 2018-04-23 16:41:06 +09:00
Marten Seemann
3eee652ce5 Merge pull request #1315 from lucas-clemente/fix-1314
change the type byte of the IETF ACK frame from 0x0e to 0x0d
2018-04-23 16:40:35 +09:00