torrent/TODO

16 lines
1.3 KiB
Plaintext
Raw Normal View History

2014-09-14 17:37:57 +00:00
* Track upload and download data.
* Make use of sparse file regions in download data for faster hashing. This is available as whence 3 and 4 on some OS?
* When we're choked and interested, are we not interested if there's no longer anything that we want?
* dht: Randomize triedAddrs bloom filter to allow different Addr sets on each Announce.
* data/blob: Deleting incomplete data triggers io.ErrUnexpectedEOF that isn't recovered from.
2015-06-22 09:52:00 +00:00
* UL/DL rate-limiting.
2015-06-22 16:02:32 +00:00
* Handle Torrent being dropped before GotInfo.
2015-10-17 15:32:24 +00:00
* Track connection chunk contributions to successful and failed piece hashes. Only drop the worst performer on a bad hash. Maybe block its IP.
2015-11-11 16:24:41 +00:00
* Remove assumptions that the first piece requested will be the first that peers will send.
2015-12-06 15:39:00 +00:00
* Clean-up DHT transaction code, it's just nasty.
2016-01-31 07:35:08 +00:00
* Handle wanted pieces more efficiently, it's slow in in fillRequests, since the prioritization system was changed.
* Determine if we should accept connections, even if we just close them. http://stackoverflow.com/questions/35108571/can-i-leave-sockets-in-syn-recv-until-im-interested-in-accepting
* Implement BEP 40.
2016-02-07 07:49:35 +00:00
* Rewrite tracker package to be announce-centric, rather than client. Currently the clients are private and adapted onto by the Announce() func.
* Move tracker management code in the torrent package to its own file.