MrB Posted January 5, 2008 Report Share Posted January 5, 2008 I haven't seen this suggested anywhere, but I think it would be incredibly useful to the community at large. Let me set up the scenario:The one-and-only seeder of a torrent drops out. Note: this is not necessarily the original seeder of the torrent; he may just be the only one left. Everyone else only has, say, 90% of the pieces, and before too long everyone is stuck at 90% (except for any newcomers).This has happened to me many times, and it's happening again now. The one-and-only seeder will come on for maybe an hour, and then drop out. The thing is, there's only about 20MB left in the torrent that a couple of dozen peers are waiting to receive. That should have been plenty of time, if only the seeder gave out that particular 20MB.Hence my suggestion, "Sole Seeder" mode. In such a case, when the seeder comes back online, and he's using a hypothetical future version with this mode implemented, uTorrent would automatically realize that he's the only seeder, switch over to this mode, and give out the remaining pieces only, without repetition, until they're all given out. It would then revert to the normal seeding mode.This would allow everyone in such a case to get a full copy as quickly as possible. Note that it wouldn't specifically wait for another seeder, just until all of the pieces were given out to enough peers that they could get the remainder from each other and become seeders without any more help from the sole seeder, in case he disappears again.I'm anticipating a couple of questions:"Isn't this the same as Initial Seeding mode?" Not quite. In Initial Seeding mode, uTorrent would give out ALL of the pieces, regardless of whether or not they were already represented by the connected peers. The basic concept is similar, though, and this could probably be implemented using the same code for Initial Seeding; you'd just have to put in something to consider the pieces that are already out there as no longer eligible, as if they had already been transmitted in Initial Seeding mode. Also, Initial Seeding mode isn't automatic, and the person seeding the torrent may not think to turn this on, especially if he wasn't actually the initial seeder."But won't the clients just be requesting the new pieces from the seeder anyway?" Yes, but the seeder would be giving out a lot of repeat pieces. With this mode, there wouldn't be that redundancy. It would also be using its bandwidth to give out pieces to newcomers that the other peers could have given to them; this would eliminate that as well. The idea is to get all of the remaining pieces out as quickly as possible."Couldn't you just do XYZ and end up with the same thing?" Maybe, but the user would have to realize that this is the case and take action accordingly. He might not be monitoring the state of the torrents. This mode would kick in automatically, and return to regular seeding mode once it had sent out all of the missing pieces.Take that sole seeder that came on for a torrent I'm downloading this morning. He was on for about an hour, and there was about 20MB left. From the looks of things, he only uploaded a couple of megabytes. I'm SURE he sent out more data than this, but it was the same pieces in the unfinished area as well as pieces sent out to newcomers that the rest of us could have sent to them anyway.You could upload 20MB in an hour at a rate of about 5kB/s. With this mode in his software, he could have easily finished the torrent before he went down again--even if he were seeding other torrents (perhaps Sole Seeder mode could automatically increase the torrent's priority until all the pieces are sent?)--and the rest of us would have a happy, healthy torrent with dozens of seeders.As a wise man once said, "What do you think, sirs?" Link to comment Share on other sites More sharing options...
This topic is now archived and is closed to further replies.