Commit Graph

48 Commits

Author SHA1 Message Date
Lucas Clemente
0911f0aae4 slightly improve utils.Write* performance by using slices 2016-09-05 23:38:40 +02:00
Lucas Clemente
53ae201fd2 remove stream.ReadByte 2016-09-05 23:22:49 +02:00
Lucas Clemente
bc54c50b7e replace CachingReader with io.TeeReader 2016-09-05 23:21:17 +02:00
Lucas Clemente
6bb89d4902 remove entropy from packet packer 2016-09-01 20:26:32 +02:00
Lucas Clemente
126db938d0 fix some linter warnings 2016-08-23 12:24:33 +02:00
Lucas Clemente
edc24ea795 delete unused ringbuffer class 2016-08-02 12:35:22 +02:00
Marten Seemann
30449870e4 implement packet history to efficiently calculate ACK ranges
ref #190
2016-06-27 15:10:41 +07:00
Lucas Clemente
d5aced6e03 small linter & typo fixes 2016-06-06 09:37:17 +02:00
Lucas Clemente
6a46465092 reduce calls to Debugf when not debugging to reduce slice allocs
ref #129
2016-06-04 15:13:46 +02:00
Marten Seemann
9476ae499c implement a buffer for received StreamFrames
fixes #116, ref #115
2016-06-01 14:33:12 +07:00
Lucas Clemente
576253ba71 improve utils tests to 100% coverage 2016-05-28 08:12:04 +02:00
Lucas Clemente
d4a189b2d1 refactor timer calculation in sesssion to reduce syscalls 2016-05-24 17:42:47 +02:00
Lucas Clemente
55fe1390b3 remove some allocations
ref #129
2016-05-24 15:36:35 +02:00
Marten Seemann
398e2f3530 implement a basic ring buffer
ref #84, #116
2016-05-21 17:19:01 +07:00
Marten Seemann
283f75aa98 remove unused byte masks from WriteUint functions 2016-05-20 14:02:54 +07:00
Lucas Clemente
0a233a39b9 add utils.InfDuration constant 2016-05-18 22:43:32 +02:00
Lucas Clemente
b185ea04e1 add CloseRemote method to stream
ref #109
2016-05-18 13:33:36 +02:00
Marten Seemann
f147ebc9bb implement basic connection level flow control
fixes #39
2016-05-18 17:30:08 +07:00
Lucas Clemente
2864c97a70 remove outdated TODOs 2016-05-17 19:24:49 +02:00
Lucas Clemente
e8b2d9748a capitalize TODOs 2016-05-17 19:24:49 +02:00
Lucas Clemente
01edd2c395 sync logging properly 2016-05-14 14:28:54 +02:00
Lucas Clemente
9f63cdbd91 add stream.StreamID() 2016-05-14 13:35:43 +02:00
Lucas Clemente
967a5c401c merge protocol.MinMax into utils.MinMax 2016-05-14 13:28:18 +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
Lucas Clemente
9abda1c91f cleanup and improve tests of utils package 2016-05-13 14:55:42 +02:00
Marten Seemann
4c087c48e4 send shorter offsets in StreamFrames
fixes #75
2016-05-11 10:01:26 +07:00
Marten Seemann
9a99df48a6 send shorter StreamIDs
fixes #74
2016-05-11 01:00:28 +07:00
Lucas Clemente
09fb894fb2 add custom logger
fixes #45
2016-05-04 13:20:24 +02:00
Lucas Clemente
b6a2f72b29 implement more cubic sender tests 2016-04-28 12:03:55 +02:00
Lucas Clemente
85ca2a3245 add rtt stats 2016-04-27 17:20:55 +02:00
Lucas Clemente
df08f109e7 add support for reading and writing QUIC's ufloat16 2016-04-26 16:47:26 +02:00
Lucas Clemente
23a1e08e90 make stream private 2016-04-25 17:54:00 +02:00
Lucas Clemente
9a13c7eec6 add utils tests 2016-04-25 16:17:48 +02:00
Lucas Clemente
3feb288817 continue hybrid slow start implementation 2016-04-24 12:39:40 +02:00
Lucas Clemente
c72c9336b0 add cubic implementation ported from chrome 2016-04-23 17:22:27 +02:00
Marten Seemann
c455ae0a05 add support for NACK ranges when writing ACK frames 2016-04-20 11:57:09 +07:00
Lucas Clemente
c430fbd5d4 implement a caching reader needed for crypto streams 2016-04-18 10:59:54 +02:00
Marten Seemann
1097698c4b send entropy in packets, validate entropy in received ACKs 2016-04-17 14:21:36 +07:00
Marten Seemann
c69992cae4 parse RST_STREAM frames 2016-04-17 10:47:03 +07:00
Lucas Clemente
aa894a6df7 add some simple tests 2016-04-16 23:50:06 +02:00
Marten Seemann
3e59ede7a7 use channels to properly implement the Stream.Read function 2016-04-16 23:47:57 +07:00
Lucas Clemente
b6c9c9b6a4 introduce protocol/version.go and remove big endian functions 2016-04-15 18:46:39 +02:00
Marten Seemann
c0edd24a2e remove readNBytes func 2016-04-14 17:55:28 +07:00
Marten Seemann
5b78f1613c add function to read and write uint32 big endians, use it for the QuicVersion 2016-04-14 13:35:25 +07:00
Marten Seemann
4f39e0f14d add tests for utils 2016-04-14 11:30:22 +07:00
Lucas Clemente
df96797e9c fix an error reading n-byte integers 2016-04-11 14:41:21 +02:00
Lucas Clemente
4a44e4982e move utils.go to its own package so that it's available for aeads 2016-04-10 20:23:15 +02:00