Most active commenters
  • ajsnigrutin(3)

←back to thread

Yggdrasil Network

(yggdrasil-network.github.io)
322 points BSDobelix | 23 comments | | HN request time: 1.078s | source | bottom
1. hahajk ◴[] No.42156739[source]
Ok, so as I understand it, yggdrasil and cjdns are virtual P2P networks that offer the normal layer 3 routing services, but built on top of the existing internet. So they still require ISPs and internet backbones, etc.

Are there any projects attempting to build a worldwide P2P network that can replace the IP layer? Like a mesh network that can operate without verizon, cisco routers, etc? I know of some mesh network technologies aimed at small disconnected networks but nothing consumer-facing and supporting anything more than a few thousand nodes.

replies(13): >>42156790 #>>42156800 #>>42156810 #>>42156854 #>>42156878 #>>42156895 #>>42156926 #>>42156954 #>>42157096 #>>42157114 #>>42157167 #>>42157230 #>>42161379 #
2. u8080 ◴[] No.42156790[source]
There was cjdroute project with own OpenWRT-based Yggdrasil firmware for routers. But it seems failed to gain traction and died - https://habr.com/ru/companies/cjdns/articles/198428/ [in Russian]
3. dartos ◴[] No.42156800[source]
There’s meshtastic, but it’s not a full internet stack replacement iirc
replies(1): >>42158784 #
4. prussia ◴[] No.42156810[source]
reticulum.network perhaps? It certainly fits the "replace the IP layer" requirement, and I believe in theory it can be very large scale, though unsure how it would do in reality.
5. fragmede ◴[] No.42156854[source]
It's a very romantic notion, but there's a lot of resources (time/money/hardware/effort) that go into the existing IP layer that's totally invisible. Without a plan on how to supplant those resources, any replacement network will struggle.
replies(1): >>42156888 #
6. Communitivity ◴[] No.42156878[source]
There was the Locker project by Jeremie Miller (XMPP), but it failed to gain traction and I think he pivoted into a more small scale commercial effort with it IIRC. The telehash protocol of Locker was extremely interesting.
7. lambdaone ◴[] No.42156888[source]
I think the idea here is that somebody else runs an underlying IP layer, and this rides on top as an overlay network.

You could, of course, run a local wireless IP layer and use this to route, but peer-to-peer wireless has well-known scaling problems.

Still, it looks like a very interesting and reasonably well thoughout out idea.

8. bythreads ◴[] No.42156895[source]
6lowpan was also a pretty nice attempt at overcoming some of the deficiencies - i think that operated on both lvl 2 and 3
9. ajsnigrutin ◴[] No.42156926[source]
Why would you want to remove the IP layer?

Or are you thinking about IP layer, just not on the "internet", but on a separate network? If this, then how do you suggest connecting people together? Mesh becomes innefficient due to mesh routing at larger sizes and sooner or later you just reinvent "your own internet", but not worldwide, because you don't have the resources to actually connect the whole world together.

replies(1): >>42157411 #
10. YesThatTom2 ◴[] No.42156954[source]
IP was originally an overlay network on top of the telco network.

That has many benefits most importantly it makes adoption easy.

Now we run telco networks over IP for legacy apps. If this Yggdrasil stuff is successful, I presume eventually we’ll run IP over it for legacy systems.

11. rolph ◴[] No.42157096[source]
mesh over a starlink like system, but i think he would want a goodly sum for it.
12. progval ◴[] No.42157114[source]
That was the original goal of cjdns, which is why it automatically peers with other nodes reachable over Ethernet (no IP needed), including WiFi (see the first paragraph of https://github.com/cjdelisle/cjdns/blob/master/doc/Whitepape...). Unfortunately, its approach to routing turned out to not scale in practice. Yggdrasil uses a different routing algorithm so it might.
replies(1): >>42157324 #
13. bityard ◴[] No.42157167[source]
People have been dreaming of mesh networks forever. Unfortunately they scale very poorly (among other issues) and this is a fundamental limitation of their design. The Internet (ARPAnet) started out as a mesh network and the concept of trunks, backbones, and routing came about to solve those scaling issues.
replies(1): >>42163871 #
14. rapnie ◴[] No.42157230[source]
Maybe Irdest [0] mesh network.

> Irdest is a networking research project that explores different technologies and ideas on how to build more sustainable, user-controlled communication networks.

[0] https://irde.st/

15. neilalexander ◴[] No.42157324[source]
Yggdrasil was actually inspired in part by cjdns but the design is very different. We care deeply about scale and we want an Yggdrasil network to be able to grow organically without requiring a strict hierarchy, huge amounts of state etc. We’re still working on it of course but for now the public test network is somewhere around 5000-6000 nodes and continues to work pretty well as it grows.
16. hahajk ◴[] No.42157411[source]
In order to access the internet you are required to enter into a contract with a corporate entity. That's not because the internet is "theirs" (like Facebook's servers and systems are Meta's), but because the network layer was design with the assumption that companies would do the work of setting up ISPs, core routers, peering agreements, etc.

I'd like to see a P2P protocol that doesn't assume this but instead is designed to be completely decentralized, and anyone running the protocol can join. This protocol would provide addressing routing like our current IP protocol, and TCP/UDP etc can run on top of it. Would this be a separate "internet" or could it have gateways to the proper internet? Preferably the latter. There are obvious technical challenges with routing, addressing, mobility, all in a decentralized way but are they truly impossible?

replies(3): >>42157478 #>>42158081 #>>42158541 #
17. ajsnigrutin ◴[] No.42157478{3}[source]
It's not nearly like that, it's designed that you can build your own, separate networks, before the concept of internet providers even existed (and a few colleges and DoD were the only users). It is completely decentralized (with the exception of DNS, which can be decentralized easily, but isn't).

Setting up networks is easy and cheap. the expensive part is pulling cables and connecting people, that's why many countries have the local governments do that. If you live in an apartment building, you can easily create a separate network for all the apartments. If you want to connect to the next building, you'll need a lot more cables and someone to actually dig in the cable or erect the poles and use those to carry the cable... but who will pay for that? What if you want to connect to the next city over... who will pay for the cabling, digging etc? And of course, the paperwork? Underseas cable? Good luck with that.

It's not a protocol problem, it's a cost problem.

18. DanAtC ◴[] No.42158081{3}[source]
Yggdrasil can do this but you have to bring the physical layer.
19. toast0 ◴[] No.42158541{3}[source]
What you've described sounds a lot like running an AS with BGP. Yes, there's centralized allocation of ASNs and IP ranges. Otherwise, the whole thing is pretty decentralized, but you've got to figure out how to connect to peers and transit providers.

Many peers will connect without a real contract, especially if you're both present on a peering fabric, but transit usually needs a contract because transit isn't mutually beneficial.

For some sort of overlay/alternative network, reliable transit seems highly likely to have a cost too. Probably not a contracted cost while it's experimental; and maybe optimistically, much lower than today's costs for IP transit, but still there would be a cost. Actually, IP transit costs are much lower today than years ago, but last mile transport costs are more important to your bill and running wires requires skilled labor and specific capital equipment, so it remains expensive; bandwidth capacity of wiring increases over time, but you still need one connection per home for best service; although wireless seems poised to reduce costs for good enough service in favorable conditions.

replies(1): >>42164487 #
20. prurigro ◴[] No.42158784[source]
It can do tcp/ip, but it's extremely slow. Like 5+ seconds for a character to appear over ssh with a direct connection.
21. stackghost ◴[] No.42161379[source]
Before cjdns a group of us started "project meshnet", inspired by Athens[0], to essentially replace or supplant the Internet. At the time it was an idealistic/anarchic response to the Pirate Bay ruling back in 2009-2010. IIRC cjdns came a bit later and subsumed most of the group.

Who knew that a bunch of disgruntled hackers and software pirates building a shittier version of the Internet wouldn't last?

[0] https://en.m.wikipedia.org/wiki/Athens_Wireless_Metropolitan...

22. alexvoda ◴[] No.42163871[source]
What are the reasons that make mesh networks scale poorly?
23. ajsnigrutin ◴[] No.42164487{4}[source]
> What you've described sounds a lot like running an AS with BGP. Yes, there's centralized allocation of ASNs and IP ranges. Otherwise, the whole thing is pretty decentralized, but you've got to figure out how to connect to peers and transit providers.

And even this is a thing of papers and agreements, not a protocol issue.

Anyone can set any AS number and claim any IP range they want, the protocol doesn't care. If you're setting up "your own internet", you can make a new list of ASNs ad distribute IP ranges however you wish. But yeah.. transit (="cables") is expensive.