Matt Joiner
|
319e57d1c6
|
Rework conns to/and allow multiple DHT servers
This will help with #229, and IPv6 support.
|
2018-04-12 11:41:07 +10:00 |
Matt Joiner
|
646622b8f1
|
Move clamp and max, and add min to misc.go
|
2018-02-16 12:14:15 +11:00 |
Matt Joiner
|
066cdd520b
|
Add mse.CryptoMethod type
|
2018-02-16 10:36:29 +11:00 |
Matt Joiner
|
3f7eab00de
|
Change some connection flag strings to avoid collision
|
2018-02-15 16:04:42 +11:00 |
Matt Joiner
|
35b224ba36
|
Add extra pedantic checks to requesting to try and flush out @deranjer's panics
|
2018-02-15 15:21:51 +11:00 |
Matt Joiner
|
d69cfbc419
|
Track IPv6 peers received over PEX and simplify the adding code
|
2018-02-15 14:43:57 +11:00 |
Matt Joiner
|
7dec0a196d
|
Count errors returned from connection.mainReadLoop
|
2018-02-13 00:56:21 +11:00 |
Matt Joiner
|
70010ce691
|
Support IPv6 peers over PEX
|
2018-02-13 00:50:32 +11:00 |
Matt Joiner
|
57216bd299
|
Standardize on krpc types, and extend PEX message type for IPv6
|
2018-02-11 15:13:00 +11:00 |
Matt Joiner
|
5023dcaa3a
|
Fixes for non-pointer Bitmap corrupting state
|
2018-02-08 15:08:33 +11:00 |
Matt Joiner
|
15ed1bbd69
|
Remove uploadChunksPosted expvar
Use messageTypesPosted.Piece
|
2018-02-07 13:57:50 +11:00 |
Matt Joiner
|
05da46ddbb
|
Raise the nominal max requests for connections that download lots of useful chunks
Massive speed increases for some connections.
|
2018-02-05 18:49:55 +11:00 |
Matt Joiner
|
d5682e9cd0
|
Change a bunch of Stringer and status stuff
Cumulative interest time, download rate per connection, request low and high waters, peer extension bytes
|
2018-02-05 17:47:47 +11:00 |
Matt Joiner
|
93e8d9bfaa
|
Use stringer to generate peer_protocol.MessageType strings
|
2018-02-05 15:30:35 +11:00 |
Matt Joiner
|
20316e5af4
|
Support AllowedFast and enable fast extension
|
2018-02-05 00:18:38 +11:00 |
Matt Joiner
|
b2860bad21
|
Fix the connection completed string if peer sent HaveAll
|
2018-02-04 22:43:28 +11:00 |
Matt Joiner
|
2e36ad19d9
|
Finish mainReadLoop on Torrent closed
|
2018-02-04 19:14:46 +11:00 |
Matt Joiner
|
44e44637bf
|
TODOs and comments
|
2018-02-04 19:14:07 +11:00 |
Matt Joiner
|
e0c2265cb0
|
Support sending HaveAll
|
2018-02-04 19:10:25 +11:00 |
Matt Joiner
|
64d13d86a6
|
Tickle sleeping writers when closing connections
This prevents them sleeping for an indefinite period (although something seemed to wake them eventually).
|
2018-02-03 15:44:03 +11:00 |
Matt Joiner
|
e1ea10fa2d
|
Wasn't recording posted message stats
|
2018-02-03 15:29:06 +11:00 |
Matt Joiner
|
efecf88d3c
|
Use flip buffering for connection writing
|
2018-02-03 15:09:38 +11:00 |
Matt Joiner
|
86aabb081c
|
Share the post write buffer with the synchronous one in the connection writer
This should prevent messages posted while generating synchronous messages don't get out of order.
|
2018-02-03 14:40:03 +11:00 |
Matt Joiner
|
9b1a769bef
|
Move extended message handling into its own method
|
2018-02-03 14:06:10 +11:00 |
Matt Joiner
|
738a75bc1c
|
Prepare to support sending reject messages
|
2018-02-03 13:35:09 +11:00 |
Matt Joiner
|
f23d097502
|
Include closed connections in dirtiers
|
2018-02-03 12:08:16 +11:00 |
Matt Joiner
|
5fcb920f96
|
Use new logging in connection.go
|
2018-02-03 12:06:52 +11:00 |
Matt Joiner
|
9567aa901c
|
Add missing increments to some stats
|
2018-02-03 11:53:11 +11:00 |
Matt Joiner
|
5a4e8cd4c5
|
Rename and rearrange some conn stats
|
2018-02-03 00:41:13 +11:00 |
Matt Joiner
|
7a95714df2
|
Factor out connection.onReadRequest
|
2018-02-02 19:19:14 +11:00 |
Matt Joiner
|
fe991128ed
|
Rework connection stat reconciliation with Torrent and refactor doppleganger handling
|
2018-02-02 19:07:20 +11:00 |
Matt Joiner
|
b0c1f99509
|
Merge a bunch of stuff into ConnStats and refactor connection.upload
|
2018-02-02 19:04:56 +11:00 |
Matt Joiner
|
c9507786f2
|
Count requested chunk lengths
Have seen some very ridiculous lengths causing data read errors
|
2018-02-02 16:06:24 +11:00 |
Matt Joiner
|
8a43910e2d
|
connection.writer wasn't checking closed state
|
2018-02-02 13:36:18 +11:00 |
Matt Joiner
|
7b037cd024
|
Missed sendChunk invocation change
|
2018-02-02 13:34:35 +11:00 |
Matt Joiner
|
97ffe39561
|
Move sendChunk onto connection
|
2018-02-02 13:26:04 +11:00 |
Matt Joiner
|
186c5df3d3
|
When seeding, connections are not just useful when they're interested
Improves peer selection when seeding is enabled, we're still downloading.
|
2018-02-01 18:49:53 +11:00 |
Matt Joiner
|
2166bf1ec0
|
Some changes to status output
|
2018-02-01 18:45:58 +11:00 |
Matt Joiner
|
1e9f342a15
|
Merge piece and chunk iter inputs to nextRequestState
This will allow the iterator to filter chunks for request strategies.
|
2018-02-01 16:14:13 +11:00 |
Matt Joiner
|
3217c5012a
|
Code comments
|
2018-02-01 14:46:48 +11:00 |
Matt Joiner
|
9387e60999
|
Track concurrent requests across connections
In preparation for some more request strategy options
|
2018-02-01 14:46:03 +11:00 |
Matt Joiner
|
ef4c0f1413
|
Add Torrent.Stats.ConnectedSeeders
Fixes #231
|
2018-01-29 18:22:21 +11:00 |
Matt Joiner
|
52524925d2
|
Add separate piece priorities, and cache pending pieces
Should fix a bug where prioritizing files is not alone sufficient to trigger downloading.
|
2018-01-25 17:18:36 +11:00 |
Matt Joiner
|
4807d05018
|
Improve some comments
|
2018-01-25 17:02:52 +11:00 |
Matt Joiner
|
ed7e3f6ec0
|
Make Torrent.pendingPieces a priority bitmap in preparation for #220
|
2018-01-12 12:24:37 +11:00 |
Matt Joiner
|
8eb1a3effe
|
Screen negative pieces
Should fix #228.
|
2018-01-09 17:26:01 +11:00 |
Matt Joiner
|
ff6f28f87c
|
Fix a log format string
|
2018-01-07 19:24:00 +11:00 |
Matt Joiner
|
e13b0eccbf
|
Make peerID a public type
Wanted it applied to Client Status output
|
2018-01-06 15:50:45 +11:00 |
Matt Joiner
|
c44ee5fec4
|
Use peerID type more, and make its Stringer output nicer
|
2018-01-06 12:34:31 +11:00 |
Matt Joiner
|
8195e8df7b
|
Improve some doc comments
|
2017-12-29 12:16:05 +11:00 |