The advantage of web seeds over usual seeds are:
- they work even if there is the tracker isn't responding or no one peer downloaded the game yet,
- they work even if the client is in a very restricted network that only allows a given set of ports like http/https (and even proxied http), in fact local administrator network can even set up transparent http proxies to serve the web seeds locally,
- we can set them up before we release the game (by running tools like rsync or things like that) so they can be ready on first second of release,
- it just requires an http/https access with “partial content” delivery support (feature to resume a download), so even a cheap mutualized web hosting can work.
The disadvantage of web seeds are:
- they are hardcoded in the torrent file, so we have to know them before releasing the game, and we cannot add them afterward (unless we redo the torrent file and it would only affect new downloading people anyway). Also we better want them to be reliable because there is no point in hardcoding a web URL that would become inaccessible in a very near future (though the clients would just ignore it on failure).
Note: we can add to a torrent an url for a web seed that is not ready yet, the bittorrent software will just skip it until it's ready. It means that if the web seed url is stable, we can add it when making the release even if the file sync will be done after the release.
For someone as active and reachable as you are, doing a web seed looks doable and would be worth it. Especially if you have a VPS outside of Europe: we have 3 web seeds in Western Europe, 1 in North America and none elsewhere. I see no need to start paying for a VPS just to set this up, but if you already have one VPS, adding it to the web seeds would be a good idea.
Right now we have 4 web seeds:
cdn.unvanquished.net
(US), Ishq's server, It's the upstream. It's always ready before we release because the script to set up the default download links is meant to be called after the script setting the web seed up.
cdn.illwieckz.net
(France), mine. I think it using rsync manually before releasing. It was always ready at release time since 0.52 or 0.52 because as I was the one doing the releases so I was available to sync it. Me ticking the release process checkbox “make sure CDN servers mirrored” was about making sure at least one US and EU server was ready at release time, so Ishq's and mine.
unvcdn.viech.name
(Germany), Viech's one. As far as I know it already uses BitTorrent to sync by downloading the current.torrent
file, meaning it is automatically synced after the release. It looks like the delay is very low though, as on 0.53.2 release time it was ready very quickly.
webseed.unv.kangz.net
(France), Kangz's one. As far as I know It uses something like rsync to sync the files. The cron task may run once a day or something like that since it was ready hours after the 0.53.2 release. But it means that if we upload the file on upstream, one day before we release (set the default download link), this would be ready on release time.