Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Sunday September 13 2020, @04:18PM   Printer-friendly
from the spice^W-torrent-must-flow dept.

Libtorrent Adds Support for BitTorrent v2, a Potential Game-Changer:

As developer of one of the leading BitTorrent libraries, Libtorrent, Arvid Norberg has been closely involved in the protocol's development. It's his code that makes a wide variety of torrent clients function properly. This includes uTorrent Web, Deluge, and qBittorrent.

[...] This week, Norberg announced the latest release of Libtorrent; version 2.0. This new version comes with many changes that eventually will make their way to torrent clients. The most crucial one is the implementation of the BitTorrent v2 protocol specification.

BitTorrent v2 is an improved version of the early BitTorrent standards and includes several technical changes.

[...] Tech-savvy readers can get the complete lowdown from the Libtorrent site but for the sake of simplicity, we will focus on how the changes will affect users.

[...] BitTorrent v2 changes the way torrents are 'compiled' and the newer version is not backward compatible.

[...] There is an option to create so-called "hybrid" torrents that can connect to both swarms.

[...] For now, it makes sense that publishers, including torrent sites, are best off using hybrid torrents.

[...] Finally, we should mention that it's not just the .torrent files that will change. The v2 and hybrid magnet links are different too.

Just how soon the v2 torrents will work depends on when clients update to the latest Libtorrent version. That can take days, but also more than a year. When large publishers and torrent sites will embrace the changes is uncertain as well, but eventually, it's the way forward for all.


Original Submission

This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
(1)
  • (Score: 4, Insightful) by HiThere on Sunday September 13 2020, @05:19PM (12 children)

    by HiThere (866) Subscriber Badge on Sunday September 13 2020, @05:19PM (#1050408) Journal

    It's nice that there's a way to have compatible torrents. Probably essential. But what are the advantages? Why should I want something to be version 2 rather than version 1?

    --
    Javascript is what you use to allow unknown third parties to run software you have no idea about on your computer.
    • (Score: 5, Informative) by RamiK on Sunday September 13 2020, @05:47PM (10 children)

      by RamiK (1813) on Sunday September 13 2020, @05:47PM (#1050416)

      1. SHA-256 instead of SHA-1 to avoid (malicious) piece collisions.
      2. smaller metadata footprint and downloaded data can be validated on a block level thanks to using merkle hash trees for pieces.
      3. per-file hash trees so you can download just a few files from big torrents without having to download pieces of other files that you don't need.
      4. directory structure instead of lists so huge torrents with lots of files and deep dir paths don't duplicate paths.
      5. new encoding restrictions to better avoid duplicate torrents.
      6. backwards compatibility in the form of hybrid torrents.

      ( https://blog.libtorrent.org/2020/09/bittorrent-v2/ [libtorrent.org] )

      --
      compiling...
      • (Score: 4, Interesting) by bart9h on Sunday September 13 2020, @06:13PM (1 child)

        by bart9h (767) on Sunday September 13 2020, @06:13PM (#1050420)

        Most of these are nice improvements, but are they *game-changers*?

        • (Score: 4, Informative) by requerdanos on Sunday September 13 2020, @08:45PM

          by requerdanos (5997) Subscriber Badge on Sunday September 13 2020, @08:45PM (#1050466) Journal

          I'd say the game-changiest bits would be the stronger file hash and the per-file hash trees, making it more difficult for malicious peers to poison torrents with fake data.

          From the Torrentfreak article [torrentfreak.com]:

          [v2 hash trees] allow torrent clients to quickly check if they are receiving the right file. This prevents pollution attacks that can be used by outsiders to slow down torrent transfers.

          With the v2 hash trees, corrupt data will be detected immediately and the peer responsible for it can be disconnected. Currently, there’s more complex heuristic involved in attributing corrupt data to a peer, which means a malicious peer can do slightly more damage before being disconnected

          *How much* the game is changed is open to interpretation, I suppose.

      • (Score: 2, Insightful) by Anonymous Coward on Sunday September 13 2020, @08:18PM (4 children)

        by Anonymous Coward on Sunday September 13 2020, @08:18PM (#1050457)

        #3 is a big deal, both for a partial seeder and for someone who only needs individual pieces.

        • (Score: 2) by PartTimeZombie on Sunday September 13 2020, @10:58PM (3 children)

          by PartTimeZombie (4827) on Sunday September 13 2020, @10:58PM (#1050515)

          My torrent client already allows me to do this, unless I have misunderstood.

          I can download 3 albums from a discography if I want (for example).

          • (Score: 2) by leon_the_cat on Monday September 14 2020, @01:20AM (2 children)

            by leon_the_cat (10052) on Monday September 14 2020, @01:20AM (#1050574) Journal

            I think what they mean is you don't have to download a tiny part of the previous and next file in list. So you will save downloading a very very tiny amount.

            • (Score: 2) by leon_the_cat on Monday September 14 2020, @01:23AM

              by leon_the_cat (10052) on Monday September 14 2020, @01:23AM (#1050575) Journal

              having said that it will at least mean these files won't show up on your hard drive.

            • (Score: 2, Interesting) by Anonymous Coward on Monday September 14 2020, @07:47AM

              by Anonymous Coward on Monday September 14 2020, @07:47AM (#1050662)

              More importantly, it means that you can share a file in any torrent that has that same file, without having some pointless text file that you never wanted anyway. This is one problem with the long-term availability of regular torrents today: if nobody is sharing that pointless text file then nobody can download or share the adjacent file(s) in the torrent. Even if someone in the swarm has the complete file they can't share the last piece so everyone gets stuck at 99% (or they have to create an entirely new .torrent which the other peers probably won't know about).

              Quoth the article:

              Identical files will always have the same hash and can more easily be moved from one torrent to another (when creating torrents) without having to re-hash anything. Files that are identical can also more easily be identified across different swarms, since their root hash only depends on the content of the file.

              If torrent clients could find peers sharing a particular file (or portion thereof) without requiring those peers to be using some specific .torrent file this could really help with keeping torrents useful long-term.

      • (Score: 2) by PinkyGigglebrain on Monday September 14 2020, @12:17AM

        by PinkyGigglebrain (4458) on Monday September 14 2020, @12:17AM (#1050551)

        Thank you for posting that info.

        --
        "Beware those who would deny you Knowledge, For in their hearts they dream themselves your Master."
      • (Score: 0) by Anonymous Coward on Monday September 14 2020, @04:30PM

        by Anonymous Coward on Monday September 14 2020, @04:30PM (#1050829)

        They also implied the ability to better share files/blocks between torrents.

      • (Score: 2) by corey on Monday September 14 2020, @11:34PM

        by corey (2202) on Monday September 14 2020, @11:34PM (#1051027)
        Thanks. The summary is really bad, it only says “it’s different”. Pretty much no actual useful info. Doesn’t sound like game changing, unless I don’t understand the game. Will the content owners be able to track people’s IP addresses? That’d be game changing.
    • (Score: 0) by Anonymous Coward on Sunday September 13 2020, @06:18PM

      by Anonymous Coward on Sunday September 13 2020, @06:18PM (#1050422)

      SHA-256 hashing to prevent future collision attacks

      Per file Merkle tree, allows update of published torrent. Also eases the download of the file from different torrents, due to unique file id.
      As a consequence, polluting with fake files becomes almost impossible.

  • (Score: 2) by fakefuck39 on Sunday September 13 2020, @08:35PM (14 children)

    by fakefuck39 (6620) on Sunday September 13 2020, @08:35PM (#1050463)

    So is the hybrid torrent so the new client and the old client can open the torrent? Why would anyone want to create a hybrid torrent? That's like saying the latest version of MsWord can't open the old format, and the old MsWord can't open the new one, so lets create a new format compatible with both. This is retarded, or maybe I'm retarded.

    The new torrent version should be able to open new files and old files. When most clients have switched to the new library, you change the .torrent files to the new format. What benefit does a hybrid format bring unless it's just forever used and we never go to a v2-only format?

    • (Score: 2, Informative) by Anonymous Coward on Sunday September 13 2020, @11:19PM (1 child)

      by Anonymous Coward on Sunday September 13 2020, @11:19PM (#1050521)

      The point is to keep the number of seeds high, since that's what most users (noobs) care about, and make it easier to adopt the new version.

      Eventually, hybrid torrents would be killed by torrent sites and clients if there is a reason to, like lots of SHA-1 collisions.

      • (Score: 2, Disagree) by fakefuck39 on Monday September 14 2020, @12:07AM

        by fakefuck39 (6620) on Monday September 14 2020, @12:07AM (#1050546)

        You can keep the number of seeds exactly as high by using v1 files until everyone has upgraded their client. So again, what is the point of a hybrid file?

    • (Score: 0) by Anonymous Coward on Sunday September 13 2020, @11:24PM (5 children)

      by Anonymous Coward on Sunday September 13 2020, @11:24PM (#1050525)

      The point of BitTorrent is that you have peers communicating directly with each other. If there were no hybrid torrents you would need two different torrents for v1 and v2 protocols, which would mean two completely separate swarms of peers.
      AIUI a hybrid torrent enables connecting both versions into one large swarm - so you're sharing with everyone, no matter which version of the protocol your client supports.

      So the idea is that once enough people are using clients which speak the v2 protocol, seeders will eventually stop creating hybrid torrents and go with v2 only.

      • (Score: 2) by fakefuck39 on Monday September 14 2020, @12:10AM (4 children)

        by fakefuck39 (6620) on Monday September 14 2020, @12:10AM (#1050548)

        a v2 client can support both v1 and v2 files. so what you're talking about is a v1 client not reading a v2 torrent. so why not just use v1 format till clients have been largely upgraded, then switch over to v2? so take your last sentence, and replace "hybrid" with "v1." you know, do what literally every file format has always done. new photoshop can open old files. if I want old photoshop to open new files, I save in old format.

        • (Score: 1, Insightful) by Anonymous Coward on Monday September 14 2020, @12:56AM (3 children)

          by Anonymous Coward on Monday September 14 2020, @12:56AM (#1050569)

          Testing and seeing immediate results of using v2 instead of waiting 2 years to eventually turn it on.

          Also having people start to see the advantages of using v2 means they are more likely to acquire software that supports v2. Absent that, people just keep on using whatever worked 5 years ago.

          • (Score: 2, Disagree) by fakefuck39 on Monday September 14 2020, @01:02AM (2 children)

            by fakefuck39 (6620) on Monday September 14 2020, @01:02AM (#1050572)

            wat.. people won't upgrade their auto-upgrading torrent client for 5 years because they don't see the advantages of v2? this what you're actually saying.

            • (Score: 2, Insightful) by Anonymous Coward on Monday September 14 2020, @03:56AM (1 child)

              by Anonymous Coward on Monday September 14 2020, @03:56AM (#1050622)

              More like the guy running the script that makes the torrent won't change it until something breaks.

              • (Score: 2) by fakefuck39 on Monday September 14 2020, @03:24PM

                by fakefuck39 (6620) on Monday September 14 2020, @03:24PM (#1050798)

                so he won't change it to v2, but he will change it to hybrid, and then change it a second time to v2-only? that's some awesome logic you got there.

    • (Score: 2, Insightful) by Anonymous Coward on Monday September 14 2020, @08:17AM (5 children)

      by Anonymous Coward on Monday September 14 2020, @08:17AM (#1050668)

      So is the hybrid torrent so the new client and the old client can open the torrent? Why would anyone want to create a hybrid torrent? That's like saying the latest version of MsWord can't open the old format, and the old MsWord can't open the new one, so lets create a new format compatible with both. This is retarded, or maybe I'm retarded.

      The new torrent version should be able to open new files and old files. When most clients have switched to the new library, you change the .torrent files to the new format. What benefit does a hybrid format bring unless it's just forever used and we never go to a v2-only format?

      The purpose is to help bootstrap the new network. A V1 torrent file won't enable you find peers on the V2 network because it lacks the necessary V2 root hashes.

      The problem is that it is very difficult to get anyone to use a new protocol if there is not a substantial number of people already using it. If there are not enough users everyone will just continue using the old protocol for as long at it is literally possible to do so (*cough*ipv6*cough).

      The idea is that when you load a hybrid torrent in the upgraded torrent client, your client will now join BOTH networks: the one that is currently actually useful (V1) and the new shiny one that is, for the time being, pointless (V2). The idea is that once enough clients are upgraded and enough people are sharing hybrid torrents, then the new network should naturally gain enough users to be useful on its own.

      • (Score: 2) by fakefuck39 on Monday September 14 2020, @03:22PM (4 children)

        by fakefuck39 (6620) on Monday September 14 2020, @03:22PM (#1050797)

        your ipv6 comparison is not apt. a torrent file is not a network. we don't have websites with different html files - one for 4 and one for 6. we have the same html file that can be accessed through a 4 connection and a 6 connection. your v2-enabled client can still load a v1 file using v1. network users in the case of torrent is a download per file. people upgrading their client to a v2 enabled client is not caused by the availability of v2 files - it's caused by people regularly updating software.

        • (Score: 0) by Anonymous Coward on Monday September 14 2020, @04:59PM (3 children)

          by Anonymous Coward on Monday September 14 2020, @04:59PM (#1050843)

          a torrent file is not a network ... network users in the case of torrent is a download per file. people upgrading their client to a v2 enabled client is not caused by the availability of v2 files - it's caused by people regularly updating software.

          You appear to be imagining a world where DHT and magnet links do not exist.

          • (Score: 2) by fakefuck39 on Tuesday September 15 2020, @11:22PM (2 children)

            by fakefuck39 (6620) on Tuesday September 15 2020, @11:22PM (#1051475)

            and you're imagining a world where you read the summary. magnet links have a v2 format too. whoever hosts the link would nee to convert it. once if they wait till most clients are v2, and twice if they do hybrid first - for the same exact result.

            dht has zero to do with torrent file format. you should look up what it is - i'm not here for teaching intro courses.

            retard.

            • (Score: 0) by Anonymous Coward on Thursday September 17 2020, @09:17PM (1 child)

              by Anonymous Coward on Thursday September 17 2020, @09:17PM (#1052393)

              and you're imagining a world where you read the summary. magnet links have a v2 format too. whoever hosts the link would nee to convert it. once if they wait till most clients are v2, and twice if they do hybrid first - for the same exact result.

              And where, pray tell, do you think the peers come from that will send you V2 info from V2 magnet links?

              Hint: they initially will be coming from hybrid torrent users.

              dht has zero to do with torrent file format

              DHT has everything to do with the purpose of hybrid torrents. Without these torrents, you will not find any peers using the V2 root hashes.

              i'm not here for teaching intro courses.

              That is good because you appear to not actually understand how this protocol works.

              retard.

              Name calling, great argument.

              • (Score: 2) by fakefuck39 on Thursday September 17 2020, @09:49PM

                by fakefuck39 (6620) on Thursday September 17 2020, @09:49PM (#1052402)

                DHT has nothing to do with torrent peers. the v2 torrent format, which is for downloading a torrent, has nothing to do with DHT. it's to find trackers, not torrents. You find dht trackers without having a single active or queued torrent.

                as far as your first paragraph - I don't even know what you're saying there. you have zero idea about how torrent works, which is why you are not making any sense. you didn't realize magnet links have to change to a v2 link, and are now spouting complete random nonsense to muddy up the discussion.

                retard.

(1)