🧵I’ve been pretty quiet on the #p2p stuff lately. We’ve been heads down. Here’s why.

Buffering packets into the network is great for data that can be eventually consistent.

But with things like video, audio, actually any kind of real-time, you want to stream directly to the other peer. But that doesn’t always work because there is a pretty common case where two peers have incompatible NAT types and they can’t connect directly!

We solved this with peer-proxies.

When peers join, a peer that is introducing them can see that they have incompatible nat types and can elect a peer (NOT A SERVER, A PEER) to be a proxy. Peers have a streaming bandwidth limiter similar to the packet limiter.

@heapwolf It's cool how all the p2p protocols are coming to similar feature sets. Hyperswarm and libp2p (and I think there was a BitTorrent spec at one point?) do pretty much the same thing. Also dates back to ICE stuff that got developed for VoIP systems back in the day.

Might be cool to think about using TURN as the protocol for relaying instead of inventing another one. :x

@mauve you misunderstand, it’s not the same at all

@mauve these protocols all user servers, we don’t require any servers.

Follow

@heapwolf Oh! Yeah, I didn't mean to use a TURN server on the internet. I was thinking more about having the peers use the TURN protocol for the relaying and have the introducing peer introduce the two others to the TURN protocol on a peer that will act as a relay.

· · Web · 1 · 0 · 0

@mauve have you read the RFC for TURN? I’m not taking on that massive debt for such little value.

Sign in to participate in the conversation
Mauvestodon

Escape ship from centralized social media run by Mauve.