Live data from Hacker News

Iroh 1.0

iroh.computer

331–340 of 488 posts

Re: Iroh 1.0

#331

Earlier quoted context omitted.

Their use of addressing by keys instead of by IPs seems to be the main differentiator. Also the support for custom transports (BLE, LoRa, Tor) which appears to be in progress and not yet fully implemented. I love Tailscale, it's deployed on all my devices. But I might check this out for the transports part in particular.

Tailscale uses MagicDNS which allows one to auto-generate a semi-memorable private hostname as well. I'm in the networking industry so I'm not seeing anything truly groundbreaking or that isn't offered elsewhere.

It isn't meant to be groundbreaking. It is meant to be a rock solid building block that you can put into your application.

That being said, I think our use of QUIC multipath is pretty novel. If you use tailscale or a VPN, your connection (TCP or QUIC or whatever) won't immediately notice when the underlying transport changes (e.g. relay to direct or vice versa). So there will be some delays as the congestion controller learns about the underlying transport.

With the latest iroh using QUIC multipath, each path gets its own congestion controller, so switches of the underlying transport are more smooth.

Also, multipath allows us to treat custom transports as just additional paths.

Re: Iroh 1.0

#332

Surprising you don't support golang

We did have golang bindings in the past, but had to pause all bindings because keeping them up to date was not viable. Now that we have a stable API, we will revisit this.

If there is enough serious demand we could publish go bindings. Iroh is a rust library that is very easy and efficient to embed into golang binaries.

Re: Iroh 1.0

#333

Earlier quoted context omitted.

Your phone and laptop don't have stable IPs, let alone DNS entries pointing to them.

but dynamic DNS is a thing. I've had setups for it since god knows how long, though admittedly not on my phone.

DynDNS does not work for devices behind a NAT unless you manually set up port forwarding.

Iroh gives you the connectivity of DynDNS without any manual configuration.

Re: Iroh 1.0

#334

If you're new to Iroh, my mental model is roughly "Tailscale at the application layer instead of the network layer". If your question is, "why not just use Tailscale?", look at it from an app developer's perspective. If you want to release an app and have instances of your app be able to easily connect to each other, you could theoretically embeded Tailscale functionality into your app, but then the users of your app…

Ok, stupid question, but what applications is something like tailscale/iroh used for? I've never worked with this type of tech so curious where it is valuable.

With tailscale, you can establish a private LAN over the internet. Iroh embeds this directly into the app itself.

Re: Iroh 1.0

#335

If you're new to Iroh, my mental model is roughly "Tailscale at the application layer instead of the network layer". If your question is, "why not just use Tailscale?", look at it from an app developer's perspective. If you want to release an app and have instances of your app be able to easily connect to each other, you could theoretically embeded Tailscale functionality into your app, but then the users of your app…

I think it's more similar to the idea of IPFS than Tailscale. It's excellent for example for decentralized networks where there is missing trust; file sharing, bittorrent, blockchain networks etc, where you don't want to manage the complexity of dropping IP addresses at the application layer. I initially found it for parture.org for example.

Re: Iroh 1.0

#336
post #205

Earlier quoted context omitted.

There is nothing unfree about iroh. All core crates are published with the standard MIT and Apache2 licenses.

Oh gotcha - the 'pricing' page initially gave me the impression that routing was closed/paid. But I guess it's just hosted deployment?

Yes, exactly.

Our commercial offering provides more insight into your iroh deployment as well as a hosted relay network. At the enterprise tier you can also get priority access to our engineering team.

Obviously we want to make people aware of these services. But we also have projects that use iroh at large scale without using iroh services.

Re: Iroh 1.0

#337

Earlier quoted context omitted.

> We have also so far resisted the temptation to write a DHT, opting instead to use the biggest existing DHT, bittorrent mainline, for our p2p address lookup needs. Many traditional P2P networks come with their own implementation of a DHT for discovery. Bravo, because they always get it wrong. DHTs used for decentralized DNS-like naming purposes have truly unique scaling requirements; you have to use a connectionless…

I might be crazy, but I got a side project to write a DHT using iroh. The key is to use QUIC 0-rtt connections to keep the connection overhead minimal. But at this point it is just a toy project to push the limits of what is possible with iroh and 0-rtt. It is not used in prod and won't be any time soon :-) https://www.iroh.computer/blog/lets-write-a-dht-1

Even 0-RTT connections still allocate connection state. IPFS learned this the hard way.

The mental model you need is the attacks that cause the Linux kernel to send SYN cookies. Learn how that attack works and you'll understand why you can't have connection state here (and neither does the Linux kernel during a SYN flood).

https://en.wikipedia.org/wiki/SYN_flood

https://en.wikipedia.org/wiki/SYN_cookies

It's much worse for DNS-like services, which is why after all these years DNS still uses UDP. Imagine if the root zone servers had to allocate connection state!

But it all depends on what you're using the DHT for. If you've decided "let's write a DHT that won't be used for naming or DNS-like purposes" then you'll probably get away with it.

Re: Iroh 1.0

#338
Correct me if I'm wrong but assuming there is only Alice and Bob in the network, each with their key-as-address, and they are both behind a CGNAT, Iroh will still need a third party to host the relay?

Re: Iroh 1.0

#339
post #196

Earlier quoted context omitted.

Classic... want to cast to the chromecast but I'm on the wifi

This might be the ~next~ best example, and the one that Iroh should lead with in all of their marketing materials and videos! They really need to dumb this down to make it accessible if it's going to spread.

The chromecast should be running iroh, no?
Post reply on HN