Matt Joiner
|
54f43419e2
|
Fix fast extension message type constants
iota isn't worth the trouble
|
2018-02-05 18:00:47 +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
|
f57437201e
|
Send bitfield messages before other initial messages
|
2018-02-05 17:41:53 +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
|
898e878c69
|
Aggressively wake Readers
|
2018-02-04 22:47:01 +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
|
ec7b90db45
|
connections should not be added if the Torrent is closed
|
2018-02-04 13:00:08 +11:00 |
Matt Joiner
|
ea8659c951
|
Move initiateConn and openNewConns onto Torrent
|
2018-02-04 12:59:23 +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
|
085e676ef0
|
Generate default peerExtensionBytes using helpers
|
2018-02-03 13:36:17 +11:00 |
Matt Joiner
|
738a75bc1c
|
Prepare to support sending reject messages
|
2018-02-03 13:35:09 +11:00 |
Matt Joiner
|
9f2a7ec3e4
|
Fix peerExtensionBytes.SetBit
|
2018-02-03 13:29:48 +11:00 |
Matt Joiner
|
e67b85215c
|
Piece.everHashed is replaced by storageCompletionOk
|
2018-02-03 12:14:39 +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
|
ffe778392c
|
request can be made from Reject and Cancel messages too
|
2018-02-02 23:56:06 +11:00 |
Matt Joiner
|
89b17c4372
|
Try to print something useful for MessageType panics
|
2018-02-02 21:52:57 +11:00 |
Matt Joiner
|
b610107d8d
|
Break up peer_protocol into several files
|
2018-02-02 21:29:57 +11:00 |
Matt Joiner
|
6441e98f62
|
Implement go vet recommendations
|
2018-02-02 19:28:09 +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
|
45aff24188
|
TestClientTransferRateLimitedUpload: Export client status
|
2018-02-01 14:43:57 +11:00 |
Matt Joiner
|
1a7708b484
|
sortimports
|
2018-01-31 16:42:40 +11:00 |
Matt Joiner
|
eb448d132d
|
Update context imports
|
2018-01-31 16:42:26 +11:00 |
Matt Joiner
|
64c40a45b4
|
Fix panic in benchmark caused by new logging
|
2018-01-29 19:16:55 +11:00 |
Matt Joiner
|
ceaf5a2360
|
Add some sanity checks to priorities extracted from Torrent.pendingPieces
|
2018-01-29 18:22:21 +11:00 |
Matt Joiner
|
50c1cdb601
|
Some test tidying and improvements
|
2018-01-29 18:22:21 +11:00 |
Matt Joiner
|
77806c1f49
|
More development of the new logging interface
|
2018-01-29 18:22:21 +11:00 |
Matt Joiner
|
ef4c0f1413
|
Add Torrent.Stats.ConnectedSeeders
Fixes #231
|
2018-01-29 18:22:21 +11:00 |
Matt Joiner
|
9a6f88b0fd
|
Update README.md
Few small nitpicks.
|
2018-01-28 18:43:16 +11:00 |