Commit Graph

1134 Commits

Author SHA1 Message Date
Marten Seemann
dbaacd49bd add a logging event for dropping 1-RTT keys 2020-09-09 23:53:47 +07:00
Marten Seemann
9e1d65f4c9 Merge pull request #2764 from lucas-clemente/fix-local-key-update-logging
fix logging of locally initiated key updates
2020-09-09 23:52:52 +07:00
Marten Seemann
a44c4f517f Merge pull request #2747 from lucas-clemente/simplify-sent-packet-history
refactor RTT measurements to simplify the sentPacketHistory
2020-09-09 23:50:26 +07:00
Marten Seemann
ade2882ef4 fix logging of locally initiated key updates 2020-09-09 23:22:10 +07:00
Marten Seemann
d89a446243 Merge pull request #2752 from lucas-clemente/fix-0rtt-packets-dropping
fix dropping of 0-RTT packets
2020-09-09 23:20:03 +07:00
Marten Seemann
e0824e3163 move the logging mock implementations to a separate package 2020-09-09 15:15:49 +07:00
Marten Seemann
ad40c9cc83 fix dropping of 0-RTT packets 2020-09-07 16:00:16 +07:00
Marten Seemann
dc3d5618fc use a uint8 for the EncryptionLevel 2020-09-07 14:36:18 +07:00
Marten Seemann
c7af1dc045 refactor RTT measurements to simplify the sentPacketHistory 2020-09-06 14:16:11 +07:00
Marten Seemann
97b0b6d5c7 use GitHub Actions to run unit tests, disable AppVeyor 2020-08-28 20:14:44 +07:00
Marten Seemann
556bf18dbf inject a random source into the token protector 2020-08-23 17:06:17 +07:00
Marten Seemann
166d91ae0f fix typo in error message in sent packet handler 2020-08-21 13:31:02 +07:00
Marten Seemann
2c43716ee0 Merge pull request #2725 from lucas-clemente/fix-max-ack-delay-overflow
fix overflow of the max_ack_delay when parsing transport parameters
2020-08-20 22:50:38 +07:00
Marten Seemann
d476067f65 fix overflow of the max_ack_delay when parsing transport parameters 2020-08-20 13:49:33 +07:00
Marten Seemann
154f434be8 regenerate the testdata certificate with SAN instead of CommonName
As required by Go 1.15.
2020-08-20 13:48:48 +07:00
Marten Seemann
125318d9c9 add support for Go 1.15 2020-08-20 13:33:33 +07:00
Marten Seemann
977dbc828c move all dependencies on qtls to a separate package 2020-08-18 14:26:23 +07:00
Marten Seemann
524da2213c remove redundant qtls-related type conversions 2020-08-18 14:22:24 +07:00
Marten Seemann
2593b1af81 add fuzzing for transport parameters 2020-08-18 11:54:28 +07:00
Marten Seemann
03a1db641f Merge pull request #2689 from lucas-clemente/dont-arm-app-data-pto-before-handshake-confirmed
only arm the application data PTO timer after the handshake is confirmed
2020-07-29 07:58:29 +07:00
Marten Seemann
6068883fa4 Merge pull request #2691 from lucas-clemente/fix-congestion-state-tracing
fix tracing of congestion state updates
2020-07-29 07:58:09 +07:00
Marten Seemann
6b7f204676 simplify the maybeQueueAck method in the receivedPacketTracker 2020-07-28 10:03:06 +07:00
Marten Seemann
260356140f remove ACK decimation
The benefits of this are unclear when using Reno / Cubic.
2020-07-28 10:03:05 +07:00
Marten Seemann
c7127594c8 fix tracing of congestion state updates 2020-07-28 08:56:21 +07:00
Marten Seemann
8db76ab9c2 only arm the application data PTO timer after the handshake is confirmed 2020-07-27 16:40:21 +07:00
Marten Seemann
0b7efe10d1 trace congestion state changes 2020-07-23 11:53:59 +07:00
Marten Seemann
741dc28d74 move the RTTStats to the utils package
The RTTStats are used by the logging package. In order to instrument the
congestion package, the RTTStats can't be part of that package any more
(to avoid an import loop).
2020-07-23 11:53:08 +07:00
Marten Seemann
ce16603a24 use untyped constants for RTT calculations 2020-07-23 11:52:37 +07:00
Marten Seemann
6328acffd7 remove the N connection simulation from the Reno code 2020-07-23 08:43:32 +07:00
Marten Seemann
2db579fdc8 remove the SSLR (slow start large reduction) experiment
We apparently copied that code over from Chromium's Cubic
implementation, but we certainly don't need it.
2020-07-22 22:30:03 +07:00
Marten Seemann
bc8b37cd14 Merge pull request #2683 from lucas-clemente/remove-reno-congestion-stats
remove unused connectionStats counters from the Reno implementation
2020-07-22 22:16:00 +07:00
Marten Seemann
74e32d6762 remove unused connectionStats counters from the Reno implementation 2020-07-22 14:35:58 +07:00
Marten Seemann
e79e45e3a2 privatize some methods in the congestion controller package 2020-07-22 13:42:18 +07:00
Marten Seemann
0c551c893c trace packets that are sent outside of a connection 2020-07-16 08:20:36 +07:00
Marten Seemann
dc245ca6a3 trace dropped packets in the server 2020-07-15 20:33:58 +07:00
Marten Seemann
ee24d3899e simplify the Tracer interface by combining the TracerFor... methods 2020-07-11 13:22:52 +07:00
Marten Seemann
a1bb39d6ab introduce a protocol.StatelessResetToken 2020-07-10 19:55:20 +07:00
Marten Seemann
0ef1b2f92e pass around the stateless reset token directly, not pointers to it
Benchmarks show that it's actually faster to make a copy of this 16 byte
array than passing around a pointer to it.
2020-07-10 19:44:57 +07:00
Marten Seemann
f93708aca8 introduce a logging.CloseReason to log the reason a session was closed
This also allows us to get rid of the ReceivedStatelessReset() method.
2020-07-10 19:23:32 +07:00
Marten Seemann
7d6ce4ea45 rename the logging.CloseReason to TimeoutReason 2020-07-10 19:17:21 +07:00
Marten Seemann
993d71fd56 move the SupportedVersions slice out of the wire.Header 2020-07-09 12:05:33 +07:00
Marten Seemann
743ba962aa reset the PTO count before setting the timer when dropping a PN space 2020-07-08 11:51:56 +07:00
Marten Seemann
ed120f670c add logging aliases for frames, create a logging.STREAM and CRYPTO frame 2020-07-06 09:21:32 +07:00
Marten Seemann
838dd6e81a rename StreamFrame.FinBit to Fin 2020-07-02 16:41:43 +07:00
Marten Seemann
865332015c rename ResetStreamFrame.ByteOffset to FinalSize 2020-07-02 16:41:43 +07:00
Marten Seemann
cc340b2887 rename StreamDataBlockedFrame.DataLimit to MaximumStreamData 2020-07-02 16:41:43 +07:00
Marten Seemann
fa07078d81 rename DataBlockedFrame.DataLimit to MaximumData 2020-07-02 16:41:43 +07:00
Marten Seemann
5466de6565 rename MaxStreamDataFrame.ByteOffset to MaximumStreamData 2020-07-02 16:41:43 +07:00
Marten Seemann
f4519cfd32 rename MaxDataFrame.ByteOffset to MaximumData 2020-07-02 16:41:43 +07:00
Marten Seemann
ac606222e0 replace the GetLogWriter quic.Config option by a Tracer interface 2020-07-01 16:57:03 +07:00