Commit graph

35 commits

Author SHA1 Message Date
Marten Seemann
f1ada87dcf make the protocol package internal 2017-08-30 00:19:44 +07:00
Lucas Clemente
eeb2d8d821 Mock FlowControlManager using gomock 2017-06-08 16:06:31 +02:00
Lucas Clemente
e2a0d9f77c Remove several unused fields and symbols
Detected with `unused -exports=true ./...`
2017-04-05 21:46:33 +01:00
Lucas Clemente
1c5380c49b Implement loss recovery from the current WG draft
Fixes #498 and will hopefully go a long way towards fixing the many
flaky tests.
2017-04-02 10:29:09 +02:00
Marten Seemann
1f01904270
read packets with the maximum packet size
fixes #467
2017-03-06 13:02:46 +07:00
Marten Seemann
2131e8fa6d
don’t send more than 3 CHLOs
makes sure that the server allows the client to make progress in the handshake
2017-01-14 18:52:20 +07:00
Lucas Clemente
9b2127018d add exponential backoff to RTO calculation
fixes #112
2016-09-09 00:26:18 +02:00
Lucas Clemente
634a0eb78c add new timeout consts
ref #320
2016-09-08 13:28:44 +02:00
Lucas Clemente
126db938d0 fix some linter warnings 2016-08-23 12:24:33 +02:00
Marten Seemann
ab1db83134 pack QUIC 34 packets with the correct maximum size
fixes #187
2016-06-23 18:23:34 +07:00
Marten Seemann
4df007dc99 reduce MaxPacketSize to the value used by Chromium
ref #94, #117
2016-06-01 17:19:32 +07:00
Marten Seemann
9476ae499c implement a buffer for received StreamFrames
fixes #116, ref #115
2016-06-01 14:33:12 +07:00
Lucas Clemente
f86875f746 reject small CHLOs to prevent amplification attacks
fixes #1
2016-05-19 16:20:22 +02:00
Lucas Clemente
753f219638 implement RTO computation in sentPacketHandler
ref #56
2016-05-18 20:50:22 +02:00
Lucas Clemente
fec9786939 error cosmetics 2016-05-17 00:12:04 +02:00
Marten Seemann
16bd559d9a negotiate idle connection state lifetime
work towards #20
2016-05-14 16:48:19 +07:00
Marten Seemann
43621c9c25 keep separate flow control windows for sending and receiving in ConnectionParametersManager
work towards #19, #20, #39
2016-05-14 15:29:15 +07:00
Marten Seemann
ea22fa6346 split protocol constants into protocol and server parameters 2016-05-14 15:15:52 +07:00
Marten Seemann
ba799cef01 delay transmission of small packets to wait for new data
fixes #9, fixes #61
2016-05-13 17:06:30 +07:00
Lucas Clemente
c7126137d1 queue undecryptable packets for later decryption & possibly send PRST
fixes #38, fixes #69, fixes #73
2016-05-12 16:46:18 +02:00
Marten Seemann
33c0f3a5df set LeastUnackedDelta length in StopWaitingFrame
fixes #79
2016-05-12 13:05:42 +07:00
Marten Seemann
e345270e84 use ByteCount type for Frame, Packet and PublicHeader lengths 2016-05-10 23:40:22 +07:00
Marten Seemann
174095d5aa make use of shorter PublicHeaders when packing a packet
fixes #67
2016-05-10 23:17:04 +07:00
Marten Seemann
e8ba73f275 introduce PacketNumberLen type 2016-05-09 17:31:12 +07:00
Lucas Clemente
d178a02ad8 change congestion to use protocol.ByteCount
fixes #52
2016-05-05 01:41:34 +02:00
Lucas Clemente
321370e2f3 introduce protocol.ByteCount 2016-05-05 01:41:26 +02:00
Lucas Clemente
49a4920aae add some protocol constants for congestion 2016-05-03 15:14:48 +02:00
Lucas Clemente
f16d30a20c implement another CubicSender test 2016-04-27 18:17:55 +02:00
Lucas Clemente
c641e24e8c add cubic_sender plus initial test 2016-04-27 15:11:56 +02:00
Lucas Clemente
76d4b7a931 implement prr sender 2016-04-24 13:27:01 +02:00
Lucas Clemente
3b2d0efea5 simplify session by moving packet packing to separate class 2016-04-21 13:48:41 +02:00
Marten Seemann
ec64be840e introduce an ErrorCode 2016-04-19 12:43:16 +07:00
Marten Seemann
66b52e915d introduce StreamID type 2016-04-16 23:54:57 +07:00
Lucas Clemente
04921c29af introduce ConnectionID type 2016-04-14 19:39:49 +02:00
Lucas Clemente
3d767401d0 introduce PacketNumber type & protocol package 2016-04-14 10:29:21 +02:00