Different guest than above (waiting for account email) but I had a similar thought however, it went much broader. I was thinking of something more along the lines of an account based system. A server somewhere(or maybe even the tracker itself!) keeping track of how much you have ever uploaded and downloaded. Before you slaughter me about the expense of such a mammoth undertaking I refer you to:
http://folding.extremeoverclocking.com . Start clicking on things in the left hand column and you will see how deep this site truly is, it tracks many statistics for 508,000 users! This site is entirely run by a small group (it appears maybe even one person) that tracks an insane amount of data. Anyone not familiar with Folding at Home here's a brief rundown. It is a distributive computing program that sends out work units. You finish a WU and you get points for it. Stanford lists the points on their webpage and this guy created a script that takes those lists and puts them in his own database. All of this is funded by a few well placed ads and paypal donations. Anyway, onto how this thing would work.
It would work something like this. Create an account somewhere that has four statistics associated with it; Total Uploaded to others, Total Downloaded to others, Total Share ratio (calculated by this server by Total Up/Total Down), and weighted total share ratio (which depends both on the total share ratio and the amount that you've sent/received, I dont know exactly what the formula would look like, but someone else can come up with that). When you close a BT client (hopefully all the others would catch on and implement similar code) your client reports back to the server with how much you sent and how much you recieved in that download. This would be an enormous database, however as above it is do-able.
The reason Total Share ratio is calculated by the server (as opposed to having the client report the download's share ratio) is so that people with low upload limits that have the download prematurely ended resulting in a poor ratio sent to the server are not penalized. It provides these people with the ability to improve their total share ratio by seeding for a long time before closing the download. Also, it accounts for people who reopen the download for the sole purpose of seeding, if it were implemented the other way the server would not understand how to interpret infinitely high share ratios. The reason for a weighted share ratio is so that people dont create an account download a pitifully small torrent and then send it out 50 times, thereby getting insanely high ratios without really sending too much data. This is important because a single instance of someone with a share ratio of 50 is not indicative of what kind of sharer he is.
Trackers can then use this data to establish a heirarchy, people with higher weighted total share rates get preference and better upload speeds. This also establishes a "black list" for people who consistantly are bad sharers. Individual trackers can refer to the black list and ban IPs that are known bad sharers. This is by no means fool-proof, you'll have to accont for people creating multiple accounts and the use of proxies, but I'm sure someone else can think up some good solutions for that. However I think that even those things aren't quite so bad. Yes, multiple accounts will negate negative penalties, however, you cannot get the benefits that a good seeder gets as you are using new accounts (which do not have any benefits).
When I started this, it was a short post, its not so short anymore. I doubt that anyone will ever start this kind of thing, but I believe that it is truly the best way to go. Good sharers are equally rewarded and bad sharers are equally punished (in theory). I have next to no programming/database experience so dont look at me to start it, however if someone with the required skills would like to throw ideas back and forth with me then I'm all for it. E-mail me at
seksi.rev@gmail.com.