Opened 14 years ago

Last modified 2 years ago

#1395 new feature-request

Same rank trackers should all be announced

Reported by: TooCh0za Owned by:
Priority: minor Milestone: 2.x
Component: Core Version: 1.3.1
Keywords: multi-tracker announce Cc:


If I understand correctly the multi-tracker feature, deluge stops running through the tracker list after the first successful announce.

Please enable deluge to announce on several different trackers at the same time, so that the trackers sharing the same rank are all announced.

This is necessary if sharing data on two private trackers with no DHT.

Change History (9)

comment:1 Changed 14 years ago by Thump

I don't think that this is for 1.3.2.

Deluge uses libtorrent-rasterbar-0.14 out of the box and this feature presents only in libtorrent-rasterbar-0.15.

Also, authors of Deluge against of this feature because it's breaking the standards, as µTorrent, however µTorrent is an official client for BitTorrent right now and this is strange.

Latest topic on forum about this feature is:

comment:2 Changed 13 years ago by Cas

  • Milestone changed from 1.3.2 to 1.4.0
  • Priority changed from major to minor
  • Type changed from defect to feature-request

comment:3 Changed 12 years ago by funnel

MPW seconded adding preferences for this because "often one tracker has no peers, and others do." Cas pointed out the session settings available in libtorrent 0.15 for multi tracker torrents:

  • announce_to_all_trackers
  • announce_to_all_tiers

"It may not be set as default in Deluge, but the option could be made available in preferences." Please remember to change the functionality of the Edit Trackers window (right-click on a torrent) to:

  • Recognize tiers when adding trackers
  • Edit tiers after adding trackers

uTorrent recognizes separate tiers by looking for an empty line between groups of trackers in the list the user provides. Transmission, it seems, automatically organizes trackers into tiers by parsing their URL's.

This might be better in a follow-up ticket, but it would be nice to see the amount of peers/seeds on each tracker so users can decide whether to remove those with 0 peers/seeds.

comment:4 Changed 12 years ago by Cas

There is already an edit tiers option in the edit trackers dialog.

comment:5 Changed 12 years ago by funnel

The Up/Down? buttons allow editing tiers (my mistake).

The Add button, however, places each tracker into its own tier regardless of empty lines or URL domains. I suppose if there is no intention to recognize tiers when adding, then that bullet is irrelevant. Although, that means users desiring optimal performance must organize tiers manually every time trackers are added, even if the trackers were already organized with empty lines. It's clunky, but you're right: it technically works already.

comment:6 Changed 10 years ago by Cas

  • Summary changed from Same rank trackers should all be announced to [lt.sess_set.announce_to_all_tiers] Same rank trackers should all be announced

You can use the lt config plugin to change this setting in meantime.

comment:7 Changed 8 years ago by thepace

in libtorrent-0.15 and later, you can set session_settings::announce_to_all_tiers to true.

This violates the multi-tracker specification but makes libtorrent behave like uTorrent in this regard.

infor from: by Arvid Norberg

I believe we should do what Arvid said since default behaviour is not what what user expect from using torrent with multiple trackers in it ( speed )

comment:8 Changed 7 years ago by Cas

  • Milestone changed from 2.0.x to 2.x

Milestone renamed

comment:9 Changed 2 years ago by Cas

  • Summary changed from [lt.sess_set.announce_to_all_tiers] Same rank trackers should all be announced to Same rank trackers should all be announced

There is a helpful implementation in PR 319 but I want to gain some clarity on this topic since the PR is attempting to enable announce_to_all_trackers which matches the description of announcing to all trackers within a tier.

However I do not think this is correct setting to use since tiers are meant to be load-balanced and runs the risk of client being banned if announcing to every tracker in a tier.

I think the sane approach is to use announce_to_all_tiers that mimics the existing uT spec.

Relevant reading

libtorrent documentation


    announce_to_all_trackers controls how multi tracker torrents are treated. If this is set to true, all trackers in the same tier are announced to in parallel. If all trackers in tier 0 fails, all trackers in tier 1 are announced as well. If it's set to false, the behavior is as defined by the multi tracker specification.

    announce_to_all_tiers also controls how multi tracker torrents are treated. When this is set to true, one tracker from each tier is announced to. This is the uTorrent behavior. To be compliant with the Multi-tracker specification, set it to false.

Transmission client discussion

BitTorrent spec discussion

Note: See TracTickets for help on using tickets.