User:The8472/Private trackers

From AzureusWiki

Jump to: navigation, search

Since disputes about the merits of private vs. public trackers often come up i have summed up a few arguments against private trackers


Contents

Fracturing of swarms

since private trackers are somewhat exclusive clubs their member numbers are limited this means that there is a landscape of many fractured swarms carrying the same content instead of (ideally) one big public swarm

Providing false sense of privacy

As private trackers are occasionally open to registration, invites are traded publicly or even for money and anti-piracy organizations certainly have employees capable of social engineering they should be able to infiltrate such private communities. One might argue this is more work than just joining public swarms but since some private communities specialize in early releases, collect donations or even offer improved services for money there is also an improved incentive to infiltrate them which may offset the higher effort required, this is especially true for the more popular (bigger) communities.

Flaws in ratio tracking

Most ratio tracking rules basically say "if you are below ratio A then you get booted or can't download new content", sometimes there are additions like "if you have a ratio greater then B you get additional perks". Both basically provide incentive to build up a surplus in uploaded bytes as a buffer for future downloads and/or to get those perks. It also leads to competition within the community who has the better ratio, a behavior often described as "e-penis comparison".

The ratio accounting strategies as they are in use today have 2 major problems:

Overseeding

Since there is incentive to squeeze out every byte of upload you can get, combined with certain dynamics in the lifetime of content on a tracker this generally means that people who have spare bandwidth do stick to any torrent they can seed instead of just those torrents that could use seeders, which in turn means that there often are many more seeds than peers on a torrent. This practically disables bittorrent's built-in leech-resistance since it only applies to peer-peer connections, not to seed-peer connections. This also makes it hard for the latecomer to upload a significant amount of data to the torrent since those peers that are still on the torrent are saturated by the seeds.

Which leads to the next problem

Losing in the 0-sum game

Bittorrent ratios - assuming clients only report the payload, not the overhead - are a zero-sum-game. Something someone uploads has to be downloaded by someone else, which means the global ratio is exactly 1.0. When people try to seed as much as they can beyond the 1.0 ratio for reasons explained above this automatically means other people have to stay below 1.0

An extreme example would be everyone except 2 persons playing exactly by the rules and uploading to 1.0, exception #1 is one who always uploads to 2.0, this means exception #2 will be forced to or can (depending on interpretation) leech and stay at a 0.0 ratio. This obviously does not happen in reality but it means that for everyone who exceeds his 1.0 ratio the remaining community will have to stay below 1.0 on average. If the amount of people trying to exceed their ratio is significant this can mean (in combination with the previous problem) that some people will be forced to fall below the minimum ratio rule of the community and thus will incur some penalty w/o being directly at fault.

In public swarms some people heavily seed torrents, either because they don't download much but still keep seeding or because they have a fast uplink which allows them to maintain a good ratio even while downloading and their seeding is just added bonus. Bittorrent only enforces ratios when it is necessary, i.e. between peer-peer connections which are predominant in swarms which lack seeds. If there is a surplus of seeds in the swarm then freeriding might be considered as unfriendly, but it does not hurt the system in general as fairness is still ensured to a certain extent when it's needed.

Solutions
  • Cap the ratio someone can achieve and discard any amount of upload until they fall below it again
  • Weight bytes uploaded/downloaded accounting by the seed to peer ratio of the swarm, this will encourage seeding on swarms in need, allow people to download from overseeded swarms without (huge) penalty, discourage leeching from swarms in need, discourage overseeding since it's less rewareded
  • apply the same penalties that apply to low ratios to ratios that are too high (this may seem counterintuitive but would force everyone to stay within a certain ratio window)
  • dynamically adjust the rules based on the global statistics... if 1 person overseeds to a 2.0 ratio someone else could have a free ride or the whole community can stay below 1.0 on average.

Ratios are not part of bittorrent design

Policing the users to ensure swarm health means that the administrators have to rely on clients properly reporting stats, an inherently unsafe assumption since there are no means to verify the stats. The tracker component of Bittorrent was never designed to be in control, it merely is a source of peers to connect to and kept a few (unreliable) statistics. There was no incentive to fake the reported stats since they weren't used for anything. The multitracker, DHT, PEX and lan peer location extensions implemented by several clients demonstrated quite well that trackers were mostly considered as a source of peers and a single point of failure.

Bittorrent does not implement peer authentication and thus clients always accept incoming connections from any peer who knows the infohash/ip/port combination, if tracker based control were a design element of bittorrent then incoming connections would have to be verified against the tracker or would include a time-restricted certificate issued by the tracker.

Enforced ratio tracking is an ugly hack to the protocol to ensure things that should be done on the peer-peer level instead: fairness.

Personal tools