this post was submitted on 01 Mar 2024
32 points (100.0% liked)

Technology

37747 readers
359 users here now

A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.

Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.

Subcommunities on Beehaw:


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

So I was thinking about what if we could make a network that the only thing you needed to connect to it is to directly connect ( through wires or directed wireless antennas ) to at least 1 computer that takes part in it, with no centralized node of any kind. For that we would need a whole new protocol and address system. THIS IS JUST A THING IN MY MIND TO TALK ABOUT. I AM NOT ADVANCED IN THIS DOMAIN.

At first I thought at making groups of 256 nodes so that every node inside of that group knows every other node. A node will know nodes's group address that until now are just 2 hexadecimal digits like "D8" and the location address. A location address means what path to take to connect to any node, a location address for 98 would be "connect to 63, ask 63 to redirect message to A9, ask A9 to redirect message to CF, ask CF to redirect message to 98". Messages between a groups nodes would be all encrypted and all steps of the location address would be encrypted for each node in part.

Now every node in a group can send encrypted messages to anyone else in that group.

Now lets say that another node wants to connect to that network, but the group is already 256 nodes: That node will create another group. The first node of a group picks a random 2 digit hexadecimal address for that group. A node knows at least 1 computer's location address from every group. Untill now addresses are like "D8.01" D8 is a computer's address in a group and 01 is that group's address. 256 groups will create a kilogroup, each node knows at least 1 computer's location address from every kilogroup. Untill now addresses are like "D8.01.8F" , 8F being the kilogroup's address.

This thing can scale ever more, creating megagroups, gigagroups etc...

If I wanna connect to D8.01.8F then I first connect to a node that I know is in the 8F kilogroup, that node will connect to a node it knows in the 01 group, and that node knows D8 directly so it will connect to him and give him message, this kinda works like a DHT, wich me sending the message to the closer node I know to the destination node

Now this is very very far from perfect or usable, what happens if 2 networks grow independent and when they connect they have the same addresses? What if someone wants to sabotage this with a fake node? The location is also not very private.

Can this get better or even usable? Do you have any ideas or just want to discuss this?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 8 points 9 months ago

Like other people have said, this is very similar to how the Internet already works. All you need to do to connect to the Internet is connect to a single router that's a part of it, at least in theory. The Internet is already decentralized on the backend, it's just that only big players get to be a part of it for the most part.

A fundamental problem with your decentralization idea is that on a mesh network, you become reliant on your upstream(s) for your connection. You think Comcast is annoying, or your connection is slow? Imagine trying to troubleshoot your Internet connection and having to go deal with your neighbor instead, but he's at work so you have to wait for him, but oh he's too tired so he'll help you tomorrow...

Not to mention that this severely limits speeds. No longer can your connection go from your house, to the street, to the backbone, and then straight to Google's servers, now it has to go bounce around between a number of potentially unreliable consumer connections, run by non-professionals.

In a system like this, inevitably local organizations or companies will pop up to take the burden off individuals, which would provide massive QoL improvements, and we'd end up with ISPs again.

That said, there's a lot of people doing hobby network stuff out there. I know some hackerspaces have their own local hobbynets, that then connect to each other over the open Internet using VPN tunnels. This solves some of the reliability problem, plus it's just a hobby thing so it isn't a problem that it's slow and kinda bad. Then there are even individuals who get their own routers (or VPSes) and plop them in datacenters to participate in the internet alongside big companies and ISPs. Neither of these require new protocols, everything can be done with TCP/IP and BGP. (Plus a splash of VPN protocols here and there.)