Marten Seemann
07d4fd0991
use the new qtls interface for (re)storing app data with a session state
...
Application data is now retrieved and restored via two callbacks on the
qtls.Config. This allows us the get rid of the rather complex wrapping
of the qtls.ClientSessionCache. Furthermore, it makes sure that we only
restore the application data when qtls decides to actually use the
ticket.
2020-07-01 14:00:08 +07:00
Marten Seemann
f926945ae5
Merge pull request #2632 from lucas-clemente/remove-superfluous-0rtt-logging
...
remove superfluous parameters logged when not doing 0-RTT
2020-07-01 13:55:37 +07:00
Marten Seemann
eb57da6c11
Merge pull request #2636 from lucas-clemente/fix-bandwidth-estimate-for-short-rtts
...
return an infinite bandwidth if the RTT is zero
2020-07-01 13:54:45 +07:00
Marten Seemann
f65154b01e
Merge pull request #2628 from lucas-clemente/drop-go-1.13
...
drop support for Go 1.13
2020-07-01 13:53:56 +07:00
Marten Seemann
a20c5f8db0
return an infinite bandwidth if the RTT is zero
2020-06-28 14:55:47 +07:00
Marten Seemann
3e454ad2f7
remove superfluous parameters logged when not doing 0-RTT
2020-06-27 14:33:11 +07:00
Marten Seemann
012e62112d
drop support for Go 1.13
2020-06-25 15:44:50 +07:00
Marten Seemann
fc047d7904
Merge pull request #2623 from lucas-clemente/remove-superfluos-stream-method
...
remove superfluos handleResetStreamFrame method on the stream
2020-06-24 15:20:19 +07:00
Marten Seemann
b0b996e118
Merge pull request #2615 from lucas-clemente/bucket-pacer
...
implement a token-bucket pacing algorithm
2020-06-24 15:18:13 +07:00
Marten Seemann
1607acecc0
Merge pull request #2624 from lucas-clemente/concurrent-stream-write-and-cancelation
...
gracefully handle concurrent stream writes and cancellations
2020-06-24 15:03:00 +07:00
Marten Seemann
4ff3af3305
gracefully handle concurrent stream writes and cancellations
...
If the complete slice passed to Stream.Write() is sent out, and the
stream is canceled concurrently (either by calling Stream.CancelWrite()
or by receiving a STOP_SENDING frame), we don't need to return an error
for the Write() call.
2020-06-23 13:07:28 +07:00
Marten Seemann
3271847167
remove superfluos handleResetStreamFrame method on the stream
2020-06-22 16:51:10 +07:00
Marten Seemann
fda00fe1cd
use a slightly higher bandwidth for the pacer
2020-06-22 14:31:37 +07:00
Marten Seemann
fe622dd780
use a token bucket pacing algorithm
2020-06-22 14:31:37 +07:00
Marten Seemann
312b8d37f0
use a callback to pass the bandwidth to the pacer
2020-06-22 14:31:37 +07:00
Marten Seemann
467e553f2b
limit the pacing duration to the minimum pacing delay
2020-06-22 14:31:37 +07:00
Marten Seemann
4163c255e8
implement a basic token bucket pacing algoritm
2020-06-22 14:31:37 +07:00
Marten Seemann
3289d2ce38
Merge pull request #2613 from lucas-clemente/log-send-packet-last
...
log sent packets right before sending them out
2020-06-22 14:28:37 +07:00
Marten Seemann
4f3c824811
Merge pull request #2611 from lucas-clemente/remove-unused-packet-counter
...
remove unused packet counter in the receivedPacketTracker
2020-06-22 14:28:29 +07:00
Marten Seemann
5e1301d3ab
Merge pull request #2617 from lucas-clemente/proxy-reordering
...
rewrite the proxy to avoid packet reordering
2020-06-22 14:27:32 +07:00
Marten Seemann
e00b0210fa
Merge pull request #2610 from lucas-clemente/fix-flaky-token-test
...
fix flaky INVALID_TOKEN integration test
2020-06-22 14:26:11 +07:00
Marten Seemann
b7284a4e52
Merge pull request #2621 from l2dy/dialearly
...
make DialEarly return EarlySession
2020-06-22 12:30:26 +07:00
Zero King
85cd490e9b
make DialEarly return EarlySession
...
Fixes https://github.com/lucas-clemente/quic-go/issues/2619 .
2020-06-22 04:52:15 +00:00
Marten Seemann
0baf16ea4e
rewrite the proxy to avoid packet reordering
2020-06-20 15:46:06 +07:00
Marten Seemann
89c1045105
log sent packets right before sending them out
...
This means that the congestion stats logged will already include that packet.
2020-06-18 19:26:44 +07:00
Marten Seemann
a8ddba6a39
remove unused packet counter in the receivedPacketTracker
2020-06-18 11:28:43 +07:00
Marten Seemann
b928ad7e4f
fix flaky INVALID_TOKEN integration test
2020-06-18 09:55:24 +07:00
Marten Seemann
c956ca4447
Merge pull request #2608 from lucas-clemente/packet-handler-map-logging
...
add debug logging to the packet handler map
2020-06-17 16:52:30 +07:00
Marten Seemann
76d7e9f024
add debug logging to the packet handler map
2020-06-17 13:04:34 +07:00
Marten Seemann
10d0b478d0
Merge pull request #2605 from lucas-clemente/increase-min-pacing-delay
...
increase the minimum pacing delay to 1ms
2020-06-16 11:29:27 +07:00
Marten Seemann
543c1049dd
increase the minimum pacing delay to 1ms
2020-06-15 10:14:55 +07:00
Marten Seemann
5f9fc462ea
Merge pull request #2600 from lucas-clemente/update-alpn
...
update the ALPN for draft-29
2020-06-12 10:25:55 +07:00
Marten Seemann
5f37327f1d
update the ALPN for draft-29
2020-06-12 10:06:23 +07:00
Marten Seemann
cdf7e06ff1
Merge pull request #2587 from lucas-clemente/update-salts-for-draft-29
...
update initial salts and test vectors for draft-29
2020-06-11 18:50:22 +07:00
Marten Seemann
552b4a8db0
Merge pull request #2596 from lucas-clemente/connection-refused
...
rename the SERVER_BUSY error to CONNECTION_REFUSED
2020-06-11 18:17:38 +07:00
Marten Seemann
80e5061243
Merge pull request #2591 from lucas-clemente/reduce-flowcontrol-time-now-calls
...
reduce calls to time.Now() from the flow controller
2020-06-11 17:11:21 +07:00
Marten Seemann
4103e05b36
Merge pull request #2592 from lucas-clemente/remove-redundant-parenthesis
...
remove redundant parenthesis and type conversion in flow controller
2020-06-11 17:11:03 +07:00
Marten Seemann
87ed3f2ba9
Merge pull request #2588 from lucas-clemente/retry-rtt
...
use the receipt of a Retry packet to get a first RTT estimate
2020-06-11 17:10:06 +07:00
Marten Seemann
34ce5bb8b3
Merge pull request #2594 from lucas-clemente/fix-early-session-debug-message
...
fix debug message when returning an early session
2020-06-11 17:09:44 +07:00
Marten Seemann
2e9b92ab69
rename the SERVER_BUSY error to CONNECTION_REFUSED
2020-06-10 12:13:40 +07:00
Marten Seemann
63e1153d4a
fix debug message when returning an early session
2020-06-08 08:52:30 +07:00
Marten Seemann
cea61e364d
remove redundant parenthesis and type conversion in flow controller
2020-06-07 11:46:03 +07:00
Marten Seemann
66eeff040b
reduce calls to time.Now() from the flow controller
2020-06-07 10:46:24 +07:00
Marten Seemann
6299ef3ab1
use the receipt of a Retry packet to get a first RTT estimate
2020-06-05 16:29:23 +07:00
Marten Seemann
e193568342
update initial salts and test vectors for draft-29
2020-06-05 09:54:14 +07:00
Marten Seemann
05514ab375
Merge pull request #2584 from lucas-clemente/http-body-fixes
...
fix closing of the http.Request.Body
2020-06-04 16:05:13 +07:00
Marten Seemann
b9f26ac99d
Merge pull request #2576 from lucas-clemente/split-pto-calculation
...
split PTO calculation into a separate function
2020-06-03 16:11:56 +07:00
Marten Seemann
94971976cd
Merge pull request #2585 from lucas-clemente/chacha20-test-vector
...
add a unit test using the ChaCha20 test vector from the draft
2020-06-03 16:11:36 +07:00
Marten Seemann
ff5d0b89fc
Merge pull request #2583 from lucas-clemente/fix-frame-sorter-test-seed-generation
...
fix seed generation in frame sorter tests
2020-06-03 15:55:00 +07:00
Marten Seemann
28fd878778
add a unit test using the ChaCha20 test vector from the draft
2020-06-03 10:02:15 +07:00