Jump to content

The obvious mistakes


TehWardy

Recommended Posts

I've seen it loads before, and even made a few of these mistakes a few times myself.

So here it is ...

How to get a good speed (assuming you have a decent torrent of course):

I took the time recently to sit and play with a torrent I knew would be well seeded, i used the ubuntu 12.10 torrents as they have hundreds of seeds (at the time i was testing about 400) and usually less than 200 peers.

If you touch nothing else and stick to the settings on Preferences > Bandwidth you can get uTorrent up to speed in no time (this does of course assume your router is correctly configured and your firewall isn't interfering).

So here's how it works ...

As stated many times before on this forum (contrary to youtube) high numbers dont always mean fast speeds, also bandwidth is subjective, no isp will always give you 100% of what you pay for, so i work on the basis of 80% on all workings out.

In my case I was looking at about 100mbps down and 10mpbs up.

general rule of thumb for smart torrenters is use only 80% of what you have for uploading so my upload speed had to be about 8mbps (rough figures are good start with).

I looked at this logically and thought, ok if I have 100 peers and im a typical torrenter I want as much from them as possible.

lets consider that the client will automatically favour a seed over a peer because:

1. no uploading

2. less bandwidth use

3. more time spent downloading

4. less overhead going only 1 way

Im seeing 10 to 1 ratios everywhere at the moment so i figured that must be a good place to start.

So, a decent torrent will see about 10 seed connections to 1 peer connection (as a rough guideline).

This means that based on 100 connections i'm looking at about 90 down only and 10 both ways.

From the 90 down only im gonna get whatever they choose to give me, whatever that is i then have to manage each of those connections and have a concurrency overhead because they are all happening at once.

For the other 10, i have the same download scenario plus some cost of send packets back, so i estimated that at double the cost in terms of overhead and concurrency (not quite right due to optimisations ect at the hardware and protocol levels)

so max speed per connection:

down = (100mbps / 100) - 10% = about 900kbps

up = (8mbps / 10) - 1% = about 80kbps

So where did the 10% come from?

Thinking about how common hardware works these days it's easy to see that actually over 100 connections a 10% drop in performance is not only normal but potentially a little optimistic in some cases.

now we scale that up because i figure, well its fibre and im using gigabit network connections internally, and im a torrenter and it should just work and every other excuse that torrenters come up with ...

down = (100mbps / 1000) - 100% = about 0kbps

up = (8mbps / 100) - 10% = about 8kbps

In reality this is seen by lots of connections with little or no transfer rate, simply put it means your hardware / software is "saturated" to the point that it can no longer effectively manage connections so many connections sit there idle waiting for a time slot.

So at this point your end saturated because you decided by settings to ddos yourself off the network, randomly peers / seeds start to drop you because they get no feedback, this results in rapidly changing peers / seeds again i've seen this a lot too, fast seeds aren't interested in clients that dont respond in a timely fashion they have better things to do than sit and wait for you.

So, my advice ...

Lesson 1: Global max connections should be less than 1000 ALWAYS !!!

Lesson 2: uploading + downloading carries a bigger overhead than just downloading

To give you guys an idea:

my settings are:

Connection speed: 120MBits down 12MBits up

upload max 800KBytes

download max unlimited

Global connections max 500

peers per torrent max 250

upload slots per torrent 35

From ubuntu I can max my line downloading whilst hardly uploading anything at all.

Over time i am gradually tweaking the numbers.

Less is more !!!

I have a spreadsheet containing the settings used and the average speed / download times and the amounts uploaded.

I retested the settings at least 3 times at different times of day to ensure I got a reasonably good result set.

I went from 5000 global max connections down to just 10

My point here ....

120Mbits is a huge pipe compared to most these days and I can't expect my line to perform well with large numbers of connections so why should you guys out there on your crappy "upto something shit by BT not infinity" expect any more?

My experience:

The biggest drain on bandwidth is huge numbers of connections, i get that p2p networks are all about getting a file from multiple endpoints but multiple doesn't have to mean crazy high numbers just more than 1.

TRY IT !!!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...