Opened 14 years ago

Last modified 8 years ago

#1691 new Enhancement

support super-seeding "Suggest Piece" (BEP #6)

Reported by: Waldorf Owned by: apetresc
Priority: Low Milestone: Sometime
Component: libtransmission Version: 1.42
Severity: Normal Keywords: bep
Cc: jch@…, apetresc@…

Description

The Fast Extensions BEP makes it clear that its "Suggest Piece" component is intended for to be a cleaner mechanism for super-seeding. The forum.bittorrent.org thread on Fast Extensions says much the same thing.

Supersedes ticket #132.

It is my impression that there is no need to specifically support vanilla clients (except disconnecting them, if we have enough FE capable peers), as they'll get "herd immunity" from the FE capable peers.

Change History (17)

comment:1 Changed 14 years ago by charles

  • Milestone changed from None Set to 1.60
  • Status changed from new to assigned
  • Version changed from 1.42+ to 1.42

comment:2 Changed 14 years ago by charles

  • Milestone changed from 1.60 to Sometime

comment:3 Changed 14 years ago by charles

  • Keywords bep added

comment:4 Changed 14 years ago by charles

  • Summary changed from support "Suggest Piece" from BEP 6 (for super-seeding) to support super-seeding "Suggest Piece" (BEP #6)

comment:5 Changed 14 years ago by jch

  • Cc jch@… added

I'm not so sure what this report is requesting exactly.

Is it downloader-side support for SUGGEST? If so, it appears to be already supported, albeit commented out. (I'm not quite sure this is the right approach -- shouldn't we simply track pieces suggested by each peer, and use the information in getPreferredPieces to prefer suggested pieces?)

Is it uploader support for SUGGEST? If so, then this requires implementing a super-seeding algorithm, which is something I'm not really a fan of.

--Juliusz

comment:6 Changed 13 years ago by tiennou

Devs, what's your stance on superseeding ? I mean, it's the third time I start from scratch reimplementing this mess, though I find it fun to do ;-).

comment:7 Changed 13 years ago by charles

In general I think the old-style superseeding should not be implemented. My understanding is that "suggest piece" was intended to be a protocol-level replacement to superseeding.

comment:8 Changed 13 years ago by apetresc

  • Cc apetresc@… added
  • Milestone changed from Sometime to 2.01
  • Owner changed from charles to apetresc
  • Status changed from assigned to new
  • Version changed from 1.42 to 2.01+

Discussed a bit with Charles who filled me in on what's involved. I'll try to take this; I'll hopefully have something to submit within the week.

comment:9 Changed 13 years ago by charles

  • Milestone changed from 2.01 to Sometime
  • Version changed from 2.01+ to 1.42

comment:10 Changed 13 years ago by Aesir92

Hi ! I've really been looking forward to seing the super-seeding mode implemented, but shouldn't it be like the utorrent one, the BEP 16 and not the BEP 6 ?

http://en.wikipedia.org/wiki/Super-seeding

comment:11 Changed 13 years ago by jch

No. Shadow-style superseeding, as described in BEP-6, is a hack. An elegant hack, granted, but a hack.

If superseeding is to be implemented (a big if -- it's complex, can have unintended consequences, and might not be needed in these times of fast seedboxes), then only FAST-style superseeding should be considered.

--jch

comment:12 Changed 13 years ago by charles

I agree with jch.

comment:13 Changed 13 years ago by jch

Typo above, of course. Shadow-style (not recommended) is BEP-16. FAST-style is BEP-6.

--jch

comment:14 Changed 13 years ago by jch

One further thought: *receiver*-side support for FAST-style superseeding should be implemented, i.e. if a peer is sending us a suggested piece, then we should request this particular piece from that peer if at all possible. I haven't checked, but I'm pretty sure we don't do that right now.

http://forums.degreez.net/viewtopic.php?p=28161#28161

--jch

comment:15 Changed 12 years ago by fijam

I don't think the argument for fast speedboxes is a good one. Majority of users is on asynchronous broadband, and with the steadily increasing size of files being exchanged over the network their situation is getting even worse.

I believe Transmission is the last remaining major bittorrent client that does not support any kind of upload-side super-seeding.

comment:16 Changed 12 years ago by jordan

  • Priority changed from Normal to Low

comment:17 Changed 8 years ago by POMATu

Hi,

I am living in Russia in big city. I love my ISP for 100% stability. But my ISP has 100GB montly traffic limit, then it limits speed. I can't change my ISP (no other ISP in my house) and I don't want because I like the service and it has 100% uptime (other ISPs nearby are really unstable).

I have 10TB HDD on my "seedbox" connected to TV. I use transmission there and I really love that I can connect to it remotely via desktop gui. I have external white IP address so I can support torrents with that 10TB files.

You know what is the most stupid thing? I have everything setup to seed 10TB of files, but I can't do that because of monthly limit. And I have to leave after I download file (I am a leecher).

With superseed always enable I will be able only to support weak torrents with not enough seeds. And strong torrents with many seeds won't need my help. But when they need my help - Transmission will support them automatically.

Please don't think that everybody have good ISPs now. And please implement super-seeding. Not because of me (I am a leecher, I don't care), but because of other people that need that 10TB of my data. And for idea of file-exchange freedom of course.

Maybe someday, you will download piece of data from my seedbox on a weak torrent...

Thanks

Note: See TracTickets for help on using tickets.