Live data from Hacker News

Peer-to-peer file transfers in the browser

github.com

151–160 of 272 posts

Re: Peer-to-peer file transfers in the browser

#151
The thing that usually annoys me about these services is they tend to give you an intractably complex URL to share with the recipient. This poses a problem because every time I need such a P2P transfer, I’m communicating with someone over the phone and they need the file on a computer (which may not even be their own, so email is also cumbersome).

https://file.pizza does this better than most, as the URL consists of real words. But all the words are ingredients in English which comes back to being an issue again.

https://pairdrop.net is my go-to, since it allows creating temporary “rooms” with just five letters, which are easy to share over the phone.

Still, I continue to wait for the holy grail of a P2P service which would allow me to initiate a connection via CLI and get a simple URL to share with someone who could download the file from a web browser, saving me from having to babysit the browser tab. There are services which allow you to upload via CLI and download via web browser, but they host your file so you have to wait for the full upload to finish before sharing the link.

Re: Peer-to-peer file transfers in the browser

#152

Earlier quoted context omitted.

But you can punch holes even when both clients are behind NAT.

How so? With both users behind symmetrical NAT? TURN does not count as punching holes IMO.

Both clients send a packet to a server, server sends the remote IP to both parties, both parties try to send traffic to either’s remote IP. Unless their nat firewall is evil, this should work.

Re: Peer-to-peer file transfers in the browser

#154
post #12
post #8

It's so strange that this should have been a solved problem decades ago, but somehow a robust and secure non-commercial solution never gets off the ground. Speaking of which, how is the IPFS project doing these days?

It was solved a decade ago, BitTorrent protocol

This isn't always encrypted, right?

Re: Peer-to-peer file transfers in the browser

#155
post #94

Earlier quoted context omitted.

I think it's because of all the NAT, which makes any attempt cumbersome for a lot of people.

If only IPv6 had taken off...

If only they just made a new IPv4 with a longer address field, instead of something way more complicated that also changes pre-existing addresses.

Re: Peer-to-peer file transfers in the browser

#156
post #12

Earlier quoted context omitted.

It was solved a decade ago, BitTorrent protocol

I think people mean something seamless like AirDrop is on Apple devides, but some public standard that gets implemented on all platforms like iOS, Android, Windows, macOS and Linux, so all these platforms can just easily send files to each other simply and securely over WiFi.

Torrents can be seamless. I take it you haven't used a download manager that would just grab any file, treating torrents just like any other download, as seamless as HTTP downloads are?

It doesn't have to be a dedicated system where you manage how long you seed, port forward, and other technical requirements: torrents already work well when you just seed while downloading because the server can never get overloaded, pretty much no matter how viral something goes. So long as it keeps serving the tiny torrent file, a few blocks on occasion, and the few packets needed to set up a NAT punch between people (STUN/TURN server? I always forget what's what), people can get the file from each other and you don't have huge bandwidth costs or have the site go down once the included bandwidth is exhausted. There's a reason Facebook and Twitter use(d?) this for distributing server updates¹, and I don't think someone remotes onto every server to visit the pirate bay, which torrent technology has sadly become synonymous to and people don't realise it is a transfer protocol just like FTP, HTTP, and other TPs that I'm forgetting

> some public standard that gets implemented on all platforms

What this is based on doesn't matter. It can be http, it can also be torrents. It's not very useful if you're sending files from and to one person almost every time (perhaps at the end of a holiday with friends, more than one person would want everyone's photos, but still), I'm just objecting to torrents being misunderstood as the only thing most people used it for: downloading copyrighted material in dedicated (and often unwieldy) software :)

¹ https://torrentfreak.com/facebook-uses-bittorrent-and-they-l... Article also mentions that a university cut 20 of the 22 update-distributing servers, I didn't know of that example

Re: Peer-to-peer file transfers in the browser

#157
post #68
post #48

These are neat but... it's 2025, and there is still no first class standardized ways to move files over the Internet between PC/mobile/edge devices.

That's on purpose. Imagine being able to just send a file from an Android phone to an iPhone without a centralized service and an Internet connection (i.e. like we could in the time of feature phones and early smartphones via Bluetooth)... Please think of the shareholders and the lawful interceptors before you suggest something as subversive!

Honestly yeah, AirDrop is part of Apple's lock-in.

Re: Peer-to-peer file transfers in the browser

#158
post #151

The thing that usually annoys me about these services is they tend to give you an intractably complex URL to share with the recipient. This poses a problem because every time I need such a P2P transfer, I’m communicating with someone over the phone and they need the file on a computer (which may not even be their own, so email is also cumbersome). https://file.pizza does this better than most, as the URL consists of…

The file.pizza one doesn't look like it's peer-to-peer. You upload a file to their server, and then they provide a download URL you can share. Kind of the opposite of peer-to-peer. I would expect a "P2P" file transfer product to not require any intermediate storage besides the sharing user's and the recipients'.

Re: Peer-to-peer file transfers in the browser

#159

Earlier quoted context omitted.

How so? With both users behind symmetrical NAT? TURN does not count as punching holes IMO.

Both clients send a packet to a server, server sends the remote IP to both parties, both parties try to send traffic to either’s remote IP. Unless their nat firewall is evil, this should work.

That's no longer p2p, that's using a relay server like TURN

Re: Peer-to-peer file transfers in the browser

#160
post #151

The thing that usually annoys me about these services is they tend to give you an intractably complex URL to share with the recipient. This poses a problem because every time I need such a P2P transfer, I’m communicating with someone over the phone and they need the file on a computer (which may not even be their own, so email is also cumbersome). https://file.pizza does this better than most, as the URL consists of…

The file.pizza one doesn't look like it's peer-to-peer. You upload a file to their server, and then they provide a download URL you can share. Kind of the opposite of peer-to-peer. I would expect a "P2P" file transfer product to not require any intermediate storage besides the sharing user's and the recipients'.

It is peer-to-peer, via WebRTC. It says right there on the homepage, when you start a connection, and on the FAQ.
Post reply on HN