52
submitted 4 months ago by moreeni@lemm.ee to c/linux@lemmy.ml

Just had this idea pop up in my mind. Instead of relying on volunteers mirroring package repositories all around the world, why not utilise BitTorrent protocol to move at the very least some some load unto the users and thus increase download speeds as well as decrease latency?

top 50 comments
sorted by: hot top controversial new old
[-] atzanteol@sh.itjust.works 50 points 4 months ago

BitTorrent would likely increase latency, not lower it. The bit torrent protocol is very inefficient for small files and large numbers of files (https://wiki.debian.org/DebTorrent - see "Problems").

But I think your question is more "why not use p2p to download files" for which I think the answer is likely "because they don't need to." It would add complication and overhead to maintain. An FTP/HTTP server is pretty simple to setup / maintain and the tools already exist to maintain them. You can use round-robin DNS to gain some redundancy and a bit of load spread without much effort either.

[-] Omega_Jimes@lemmy.ca 7 points 4 months ago

Bittorrent is nice for getting isos, but it would pul my hair out if I tried to download patches with it.

[-] delirious_owl@discuss.online 44 points 4 months ago

What are you talking about? All that torrent traffic that my ISP sees is definitely Linux ISOs.

Just doing my part

[-] moreeni@lemm.ee 10 points 4 months ago

Whatever I'm talking about is not Linux ISOs.

[-] walden@sub.wetshaving.social 6 points 4 months ago
[-] moreeni@lemm.ee 6 points 4 months ago

They were joking about whole other thing. My topic has nothing to do with distro ISOs, I was talking about packages

load more comments (7 replies)
[-] FuCensorship@lemmy.today 3 points 4 months ago
[-] Rogue@feddit.uk 41 points 4 months ago

I suspect if this was enabled by default there would be uproar from people annoyed the distro was stealing their bandwidth, and if it were opt-in then very few people would do it.

Windows Update uses peer to peer to distribute updates. It's one of the first things I always disabled.

[-] GravitySpoiled@lemmy.ml 25 points 4 months ago* (last edited 4 months ago)

One reason is privacy and hence security. If you share a package, you also share the information that your system contains the oudtated package "xy" which has a backdoor and can be accessed by a hacker.

I'm not sure if that is a valid argument with atomic image distros since you share the whole image. And the tracker could just disable the old image as soon as the new image arrives.

[-] treadful@lemmy.zip 6 points 4 months ago

It no more says that than hosting an HTTP mirror currently does.

[-] Lemmchen@feddit.de 4 points 4 months ago

But as a third party you can not know which clients are using this outdated http mirror. On BitTorrent you can see every participating peers and some of them are probably enduser machines (depending on the actual implementation of OP's suggestion).

load more comments (1 replies)
[-] Dirk@lemmy.ml 25 points 4 months ago* (last edited 4 months ago)

Most common/relevant/larger distros do that at least for the install/live ISO.

[-] lemmyvore@feddit.nl 29 points 4 months ago

OP is taking about packages and updates using peer to peer, not just the install media. AFAIK no distro does that.

[-] gnuhaut@lemmy.ml 19 points 4 months ago

Because HTTP is simpler, faster, easier, more reliable.

The motivation for a a lot of p2p is to make it harder to shut down, but there is no danger of that for Linux distros. The other would be to save money, but Debian/Arch/etc. get more than enough bandwidth/server donations, so they're not paying for that anyway.

[-] driving_crooner 8 points 4 months ago

p2p is also cheaper, bandwidth-wise, but packages are usually not that big to justify it.

[-] wildbus8979@sh.itjust.works 14 points 4 months ago
[-] makeasnek@lemmy.ml 13 points 4 months ago* (last edited 4 months ago)

There is an apt variant that can do this, but nobody uses it. BitTorrent isn't great for lots of small files overhead wise.

IPFS is better for this than torrents. The question is always "how much should the client seed before they stop seeding and how longs should they attempt to seed before they give up". I agree something like this should exist, I have no problem quickly re-donating any bandwidth I use.

[-] sorrybookbroke@sh.itjust.works 13 points 4 months ago

That's actually a really interesting idea. Windows even does something, or at a point did something, similar with system updates.

Peer to peer packages would have some privacy, and potential security issues of course but I like the thought

[-] delirious_owl@discuss.online 3 points 4 months ago

Good lord, and windows doesn't have a way to verify their ISOs are authentic. Do they sign this p2p payload in any way? Seems like a great opportunity to spread a worm

[-] sntx@lemm.ee 11 points 4 months ago

Nix has an open issue on integrating IPFS support.

There's also an old tutorial.

[-] fruitycoder@sh.itjust.works 2 points 4 months ago

Guix supports now. As does nerdctl of oci things

[-] arxdat@lemmy.ml 10 points 4 months ago

Metallica ruined it. They made it seem as though torrenting was evil because their content was being downloaded. Poor babies.

[-] ElderWendigo@sh.itjust.works 10 points 4 months ago

Lars ruined Napster. BitTorrent came around some time later after Limewire, Soulseek, and DirectConnect. Lars might have had something to say about Bit Torrent, but by that point no one was listening.

Besides, back then, we really were using BitTorrent mostly for Linux ISOs. At the time it was more reliable than http. It really sucked having to download an entire ISO again because it failed the checksum. BitTorrent alleviated that.

[-] Sims@lemmy.ml 8 points 4 months ago

Over time I've seen several groups tinker with p2p protocols for packages. Latest using gnunet/ipfs for Guix packages. But I've never seen a working/integrated system. Weird..

[-] andrade@infosec.pub 5 points 4 months ago

Some distros do this already.

Alternative downloads

There are several other ways to get Ubuntu including torrents, which can potentially mean a quicker download, our network installer for older systems and special configurations and links to our regional mirrors for our older (and newer) releases.

BitTorrent is a peer-to-peer download network that sometimes enables higher download speeds and more reliable downloads of large files. You need a BitTorrent client on your computer to enable this download method.

https://ubuntu.com/download/alternative-downloads

[-] cobra89@beehaw.org 12 points 4 months ago

They're talking about packages you install, not the ISOs.

[-] andrade@infosec.pub 3 points 4 months ago
[-] ReveredOxygen@sh.itjust.works 4 points 4 months ago

That's not packages, that's images. People download images relatively infrequently, but with rolling release distros, people download hundreds of packages on a regular basis

[-] boredsquirrel@slrpnk.net 3 points 4 months ago

Reminds me of the Talk about distributing firmware.

Bittorrent is poorly pretty suspicious which may be used as an argument. But I dont see the reason really.

[-] biribiri11@lemmy.ml 3 points 4 months ago* (last edited 4 months ago)

Another thing not mentioned yet is maintenance overhead. These distros operate around the clock, all over the world, with talent from the likes of RH and co. There are far fewer people (who run your mirrors) who know how to maintain a torrent tracker (or similar), and on top of that, I haven’t really seen any good BitTorrent caching methods. Support would need to be added to your package manager of choice.

It also comes down to most client having asymmetric bandwidth, and that most users do not have every package installed and therefore can only distribute a very small amount of the total distro. Those users probably don’t want to be constantly uploading, either. I also can’t imagine torrents are too fun to work with when it comes to distributing constantly changing package manager metadata, too.

[-] utopiah@lemmy.ml 3 points 4 months ago* (last edited 4 months ago)

FWIW the "opposite", namely Webseed, exists http://bittorrent.org/beps/bep_0019.html so... maybe some already do but it's not even noticed because Wedseed of mirrors handle the load?

[-] recarsion@discuss.tchncs.de 2 points 4 months ago

To add to everything else mentioned, many places (schools, workplaces) don't allow any usage of BitTorrent, even legal. A guy at my uni got yelled at for torrenting a Linux iso. Not to mention depending on where you live your ISP might be interested in that activity unless you're using a vpn.

[-] possiblylinux127@lemmy.zip 2 points 4 months ago* (last edited 4 months ago)

That what Debian does with ISOs. However, no one uses it.

If anything IPFS might be good for packages as the IPFS program could he embedded into the package manager.

[-] Goun@lemmy.ml 6 points 4 months ago

We do use it! I download several Linux ISOs from bittorrent every week!

[-] 0x0@programming.dev 4 points 4 months ago

That what Debian does with ISOs. However, no one uses it.

Source?

I use torrents/magnets for ISOs whenever i can.

[-] oldfart@lemm.ee 4 points 4 months ago* (last edited 4 months ago)

I use bittorrent for isos and the files usually have hundreds of seeds. They are used.

Same for Armbian.

[-] bloodfart@lemmy.ml 2 points 4 months ago

Literally get isos faster from torrents than from the mirrors lol.

[-] ducking_donuts@lemm.ee 2 points 4 months ago
[-] moreeni@lemm.ee 9 points 4 months ago

Doesn't Arch rely on mirrors to distribute packages?

[-] ducking_donuts@lemm.ee 5 points 4 months ago

You’re right - I misunderstood the question and thought you meant the distribution images

[-] gandalf_der_12te@lemmy.blahaj.zone 2 points 4 months ago

I support this proposal.

load more comments
view more: next ›
this post was submitted on 10 Jun 2024
52 points (84.2% liked)

Linux

47964 readers
1033 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS