1.42: Sum of indiv speed-limited torrents exceeds global

Ask for help and report issues with the Mac OS X version of Transmission
Post Reply
xenedar
Posts: 43
Joined: Wed Oct 24, 2007 6:08 pm

1.42: Sum of indiv speed-limited torrents exceeds global

Post by xenedar »

Background: I'm on a 128kbps uplink. I usually find best performance when I limit any torrent client to a maximum of 8KB/sec.

While seeding 2 torrents in T, I noticed one was being "overwhelmed" by the other; one torrent was seeding almost always at 8KB/sec (3 peers connected), while the other was almost always at 0KB/sec (1 peer connected). My T Bandwidth prefs are configured for Limit total bandwidth: Upload rate: 8 KB/s.

What I did: I set the individual per-torrent settings to limit the upload rate to 5KB/s on both torrents.

What I expected: the two torrents would consume the 8KB/s global limit, but each would allow at least 3KB/s for the other. eg: if one is running at 5, the other would get 3. Each would go up and down, but each would consume no more than 60-ish% of my upload bandwidth, and leave a buffer for the other torrent. The 8KB/s limit would still hold as a "hard" limit.

What I got: my global limit is being ignored, and I'm getting upload speeds up to 10KB/s, although this seems to be causing some choking and it's wavering up and down.

What I thought of: I did think of setting them individually to 4KB/s, but this means that I will probably not regularly be fully utilizing my allocated upload bandwidth, as that would require both to be operating fully at a sustained 4.

Other things I tried: setting just one torrent to be speed-limited to 5KB/s. Same problem. It's 5 + whatever the second torrent is doing, usually around a total of 9KB/s.

I guess my question is, this is not what I expected to happen - Is this what T is supposed to do? (From memory, this seems different to the download limiter, in that if you set a global download limit of say 40KB/s, and limit 2 torrents individually to say 25KB/s, combined they still don't exceed the 40KB/s hard limit) And, if it is intended to work this way, is there a way to achieve the behaviour I'm after?
livings124
Transmission Developer
Posts: 3142
Joined: Fri Jan 13, 2006 8:08 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by livings124 »

Those limits override the global limit.

A limit of 8 kb/s is so low that one peer would most definitely be the single supplier of data. Transmission can't tell each peer "send at 2 kb/s," it takes what it gets. So once one peer supplies that much bandwidth, the other peers are basically told not to send data.
xenedar
Posts: 43
Joined: Wed Oct 24, 2007 6:08 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by xenedar »

livings124 wrote:Those limits override the global limit.

A limit of 8 kb/s is so low that one peer would most definitely be the single supplier of data. Transmission can't tell each peer "send at 2 kb/s," it takes what it gets. So once one peer supplies that much bandwidth, the other peers are basically told not to send data.
Sorry, I'm talking about seeding here (and on a 128kbps uplink, 8KB/s is about all I can do without flooding my link). I know I can't ask for a certain speed when I'm downloading, but since I am seeding, my client should be able to be in control here, and the people I'm uploading to "take what [they] gets".

So I take it T doesn't honor both limits at the same time - the global limit is not a "hard" limit.
livings124
Transmission Developer
Posts: 3142
Joined: Fri Jan 13, 2006 8:08 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by livings124 »

Transmission's global limit is ignored when the individual settings are set. And 8 kb/s is a really low limit, making even division difficult.
talu
Posts: 2
Joined: Thu Apr 02, 2009 2:56 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by talu »

Hi,

I have a nominally 768 kbit/s (96 kBytes/s) uplink, and want to use a _global_ 80 kBytes/s max uplink during nighttime and about 30 kBytes max. during day.

I prefer to seed "forever" (some rare old television shows and such), and I have manually limited some older invididual torrents (whose ratio has grown too large) to 5 kbit/s.
In earlier version (1.41 I think) the global daytime limit (30 kbytes/s) was enforced also on these individually rate-limited torrents.

Today I fetched the 1.51 version (and then also the latest svn trunk) and the global limit is no more enforced: the sum of invididual rate-limited torrents
exceeds the global limit and _saturates_ my upload bandwidth making things a bit sluggish. Here in this forum I finally found that the global limit was no more enforced:
Transmission's global limit is ignored when the individual settings are set. And 8 kb/s is a really low limit, making even division difficult.
PLEASE consider reverting to the older behaviour, i.e. that the global limits would be enforced also on the sum total of the individually rate-limited torrents.
Or would you suggest some QoS rate-limiting setup instead?

Thank you,
--Tapio
livings124
Transmission Developer
Posts: 3142
Joined: Fri Jan 13, 2006 8:08 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by livings124 »

If you're using the nightlies there's an option in the inspector for individual speed to be included in the global speed limit.
talu
Posts: 2
Joined: Thu Apr 02, 2009 2:56 pm

Re: 1.42: Sum of indiv speed-limited torrents exceeds global

Post by talu »

Thanks for the speedy response!!

EDIT:
Consider making this "Honor global limits" option the default, useful especially when people migrate to a newer version?
Heh, now that I started fixing the individual rate limits I notice that _only_ those that I had in the earlier Transmission version manually designated for the 5kB/s limit had
the "honor global limits" checkbox unchecked :-)

Btw. another nice option to have would be a user-settable rate-limit that takes effect when the seed ratio reaches a user-given limit.
Also, a way to classify torrents to "classes" where each class of torrents could have designated policies for their priorities and rates and what happens when they reach a seeding goal.

--tapio
Post Reply