Every now and then, when I’m connected to a torrent a peer will connect that has a reference to “Swarm Merging” in their name. What is swarm merging?

  • Lvxferre
    link
    fedilink
    English
    arrow-up
    49
    ·
    1 year ago

    It’s a way to share files across seeders/peers of different torrents, as long as the torrents contain at least one identical file. For example, let’s say that:

    • you’re downloading torrent1. It shares the files A and B. You got A already, but since the number of seeders dropped considerably, you’re having a really hard time downloading B.
    • there’s also torrent2, sharing files B and C. Fairly active, with lots of seeders.

    Without swarm merging, you’re stuck waiting for new seeders or peers from torrent1 that have the file B. With swarm merging, your torrent program will get the file B from people sharing torrent2 too.

    I recall this feature from Vuze; but apparently BiglyBT also uses it.

    • PirateForDaLolz@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      13
      ·
      1 year ago

      That’s awesome! I suppose it might also explain why this torrent has been sitting in my queue for several weeks and is now suddenly at 100% from this one seeder. Do you know if the process is automated? Or does the user have to do the work of finding the torrents with matching files themselves? It’s a bummer that qBittorrent apparently doesn’t support it.

      • Lvxferre
        link
        fedilink
        English
        arrow-up
        10
        ·
        1 year ago

        At least in BiglyBT, the process is automated. The match is based on exact file size; it’s a crappy technique* (as the odds of a false match are rather high) and the usage case is fairly small (two identical files across different torrents), so not too commonly used.

        *odds are that Vuze implemented it this way because requesting a hash would break the BitTorrent protocol, and prevent interoperability of multiple clients.

        • PirateForDaLolz@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          Well, I might have to try it for the torrent that I’m trying to download. Merging may not be effective for most cases, but in this case, this peer was the only one that managed to get a full copy of the torrent content. They disconnected before I could grab all of it though, so now I’m stuck at 50%. :(

    • dragonfly4933@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      13
      ·
      1 year ago

      BitTorrent v2 allows this also. In v1, torrents with multiple files are hashed continuously (cat) together without respect to file boundaries. A side effect of this that many people notice is that to grab a specific file may require downloading some of the files before or after the one you want.

      Under v2, each file is hashed separately, so this fixes the aforementioned problem and should allow sharing of files across torrent files.

      • bear_with_a_hammer@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        edit-2
        1 year ago

        You can extract, calculate and compare those hashes using this tool.

        In the next bug-fix release of libtorrent the tool will have ability to generate magnet links to download torrents without duplicate files, saving storage, bandwidth and most importantly time.

        Very useful for dumps, libraries, video/photo archives ;)