Commit Graph

47 Commits

Author SHA1 Message Date
Marten Seemann
ceb5ef48c4 improve WindowUpdate thresholds
fixes #111
2016-05-18 18:19:18 +07:00
Marten Seemann
f147ebc9bb implement basic connection level flow control
fixes #39
2016-05-18 17:30:08 +07:00
Lucas Clemente
15e7fe6c73 don't block the server when too many packets are queued in a session
fixes #35
2016-05-17 16:52:55 +02:00
Lucas Clemente
fdfc7f5502 speed up packet number tests by reducing iterations 2016-05-17 11:57:45 +02:00
Lucas Clemente
bfaa4200df move all error things to new qerr package, replacing errorcodes 2016-05-17 10:38:34 +02:00
Lucas Clemente
dc2a14a5f7 add error code string representation to QuicError.Error 2016-05-17 00:31:18 +02:00
Lucas Clemente
69e302812d move ErrorCode type to errorcodes package 2016-05-17 00:25:51 +02:00
Lucas Clemente
fec9786939 error cosmetics 2016-05-17 00:12:04 +02:00
Lucas Clemente
dd13836aa9 rename NewQuicError to Error 2016-05-17 00:11:48 +02:00
Lucas Clemente
9cc4bb3ccf privatize publicHeader
ref #60
2016-05-15 15:44:14 +02:00
Marten Seemann
089582dd9f improve sending of WindowUpdate frames
fixes #96
2016-05-15 18:05:15 +07:00
Marten Seemann
a3ff4dd891 send WindowUpdate frames
fixes #19
2016-05-15 16:48:42 +07:00
Lucas Clemente
967a5c401c merge protocol.MinMax into utils.MinMax 2016-05-14 13:28:18 +02:00
Lucas Clemente
40acb8e9b5 minor protocol test fixes 2016-05-14 13:24:38 +02:00
Marten Seemann
878d6a7140 negotiate maximum number of streams per connection
fixes #20
2016-05-14 17:10:49 +07: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
0df44e46e5 shorten LargestObserved in ACK frames
fixes #82
2016-05-12 20:01:23 +07:00
Marten Seemann
076349554f move packet number calculations to protocol package 2016-05-12 18:18:15 +07: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
Lucas Clemente
7609246b45 re-add support for version 30
fixes #72
2016-05-10 11:05:52 +02:00
Lucas Clemente
14b16a429c add version number to Frame.Write 2016-05-09 19:50:15 +02: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
7adafb4c5f add protocol tests 2016-05-03 16:38:31 +02:00
Lucas Clemente
49a4920aae add some protocol constants for congestion 2016-05-03 15:14:48 +02:00
Lucas Clemente
daf4e4a867 remove support for version 30, since we don't implement FEC at all 2016-05-02 20:56:02 +02:00
Lucas Clemente
f16d30a20c implement another CubicSender test 2016-04-27 18:17:55 +02:00
Lucas Clemente
2b928ed116 add protocol.{Min,Max}ProtocolNumber 2016-04-27 18:09:19 +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
90cb792477 create a QuicError type 2016-04-19 15:54:18 +07:00
Marten Seemann
ec64be840e introduce an ErrorCode 2016-04-19 12:43:16 +07:00
Lucas Clemente
aa894a6df7 add some simple tests 2016-04-16 23:50:06 +02:00
Marten Seemann
66b52e915d introduce StreamID type 2016-04-16 23:54:57 +07:00
Lucas Clemente
a2ef4d2dc8 change supported version to slice, since the order matters for the SHLO 2016-04-16 00:27:03 +02:00
Lucas Clemente
30d5766598 improve version tests 2016-04-15 20:40:43 +02:00
Lucas Clemente
b6c9c9b6a4 introduce protocol/version.go and remove big endian functions 2016-04-15 18:46:39 +02: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