steeve / plugin.video.pulsar

Pulsar addon for XBMC/Kodi
http://forum.kodi.tv/showthread.php?tid=200957
Other
547 stars 351 forks source link

Offload seeding, local peers, and torrent file saving #104

Open AaronCompNetSys opened 9 years ago

AaronCompNetSys commented 9 years ago

I would like to be a better swarm citizen and continue to seed to a normal value after watching a streamed torrent.

Suggestion one: Keep the torrent file in a location set by options, simular to the actual data option. Boolean option to save file immediately or after playback stops. The user can configure their torrent client to pick up the torrent file, re-hashes the data left over from Pulsar and continues seeding to its intended amount.

Benefit of saving the torrent immediately: the local client can aid in the download process and grab pieces that are hard to find. Pulsar will need to be configured to play nice with on LAN peers, currently I was not able to get it to talk the same way XBMCtorrent does (waiting for handshake).

Suggestion two: background seeding that is automatic for less technical users, and keeping swarms healthier.

Here is an example of what I have been doing: Pulsar/XBMCtorrent is struggling to max the connection upload and download due to peer limit or other settings, overall a crappy swarm. Having the local LAN seed box running in parallel allows difficult pieces to get double the processing, but resulting bandwidth gets shared. I just tested a popular but low seed to peer swarm, and it was impossible for Pulsar to stream it alone, despite my connection being able to support enough upload to ensure return download of needed pieces. I quit Pulsar, started up both XBMCtorrent and Vuze (with local peer injection and sequential turned on) loaded the same magnet link, Vuze automatically pulling down locally what little Pulsar had cached on the previous run. Vuze found the trouble pieces and supplied back to XBMCtorrent, no hiccups in video playback.

steeve commented 9 years ago

That's a good idea.

However, Pulsar already has LSD (Local Service Discovery) and should pick up your local server normally. Unless the pieces it wants are not available, of course.

AaronCompNetSys commented 9 years ago

I was not able to get it to work at all, repeatedly forcing Vuze to try to connect to the pulsar process on any of its listening ports (65251,4433,7000 via Peer injector plugin). Always got "waiting for handshake". [Win7, XBMC 13.2, Pulsar 0.4.5] [Vuze 5.5, Ubunutu 10]

Same results with some old 2.x uTorrent client I had laying around.

XBMCtorrent works instantly, sucking down every piece available, and uploading every piece it has to either Vuze or uTorrent.

AaronCompNetSys commented 9 years ago

Tried new version, still getting "waiting for handshake" when attempting to connect to Pulsar from local client.