qbittorrent / qBittorrent

qBittorrent BitTorrent client
https://www.qbittorrent.org
Other
28.33k stars 3.98k forks source link

Multiple Trackers for the same Torrent #10132

Open northstar1999 opened 5 years ago

northstar1999 commented 5 years ago

I would like Qbittorrent to be capable of loading the same torrent file with different trackers as if it was an entirely separate torrent.

Reason: I am a member of 2 different private torrent sites. Some of them have the same exact torrent and I want to share to both, of course. My current solution is having most of my torrents served from qBittorrent and the duplicate torrents for the lower volume private torrent tracker are loaded into Deluge. This is the only way I know how to serve the same torrent to 2 different private trackers without angering the admins and risking getting banned. ie: Tricking qBittorrent into thinking they're 2 different torrents might get me banned and I'm not going that route.

The Problem: The demand is higher than the supply and I use my internet connection to do other things. So I have to maintain a global upload speed. However, if there are 2 different torrent clients, I can only set the maximum upload speed for each one, and must divide my available bandwidth between them. One of them is very low volume for these torrents, so I have adopted a policy of max upload to Qbittorrent and the other on Deluge is free to upload as it is needed. However, sometimes a peer comes on and pulls the maximum, causing loss of needed upload capacity for my own use. Since Deluge is pulling at inconsistent rates while qBittorrent will use as much as I can give it, this has created a problem. if both were consistent, it wouldn't be a problem. So I need to be able to load both into qBittorrent and toss Deluge for full regulation of the bandwidth,

thalieht commented 5 years ago

Look up cross-seeding. Maybe there is a way but let me tell you now that it's not possible to do that with the same torrent hash because libtorrent and subsequently qBt identifies torrents by it. If a torrent has multiple trackers libt/qBt announces to all trackers the same, total amount it has seeded and obviously private trackers don't like that. See https://sourceforge.net/p/libtorrent/mailman/message/34078917/ for more info on the matter.

Vagmer commented 5 years ago

This is an ongoing issue, but there is still a much better solution (or partial solution, considering) for you right now. You need to recreate your .torrent file for each site/private tracker before you upload it to them, with a different Source string (see the bottom of qBT's Torrent Creator) for each. Then you'll be able to load all of them up at the same time. It doesn't matter what text you put in it, just make it unique for each. What matters is that this changes the .torrent's resulting infohash and then qBittorrent/libtorrent considers it different even from other torrents with exactly the same contents/file and folder structure. Some other people work around the issue by uploading torrents with the same files but with a different file or folder structure inside the torrent (for example, just rename a file for one torrent for one site, or put it inside a folder, etc) or even exclude/include an extra dummy file like a text file or an image file. Any one of these naturally changes the infohash as well, but due to the "source" field existing, as mentioned above, these are poorer solutions nowadays. I had once read that it is possible that the "source" field in uploaded torrents may not do anything with some sites, presumably because they recreate their own .torrent file from the one you upload and ignore the "source" you put in it, though I don't know of such cases myself.

Of course, this solution only works for your own created torrents and only the new ones from now on in which you do this. For the case of your past torrents and torrents by other torrent creators who crosspost their same .torrent with same infohash to multiple sites they and you are a part of, then you're still fucked, at least with qBT. This is an issue with the program, and I'd say a pretty basic one at that. Saying "that's just how it works because X" or that it's not possible to fix or to do otherwise is just lazy handwaving, as there's nothing programmatically impossible about handling this situation satisfactorily in a torrent client, especially considering that qbittorrent and libtorrent developments already intermingle.

By the way, just an idea that came to mind from reading your situation is that using a 3rd party software to limit bandwidth usage of your torrent clients could potentially allow more complex or flexible options, such as giving the 2 different client programs a total limit that is shared between them, and even more options.

northstar1999 commented 5 years ago

Yes, my problem is that this is an existing torrent someone else has created. I have thought about using something like NetLimiter. I'll play around with it and others to see if something can solve the problem for me. Hopefully, qBittorrent will eventually have a work-around. This is the best client I've ever seen, with few glitches (usually related to the speed limiting) that are tolerable over all other programs.