HN user

iioowwee

4 karma
Posts0
Comments4
View on HN
No posts found.

The rest of your post would be more useful with some specifics.

I translate this as: "I don't know how to make a solution. Please tell me how." Which is often followed by "It won't work."

As for VM's, it's true what you say. But at some point if you are connecting to a global network (internet), there is a physical machine that has to connect. And that machine needs an address which cannot be "faked up". Indeed, you some sort of authority to make sure people are not using the same addresses.

Nodes need a way to find each other. Routing tables are simple enough and they work. I will leave that alone.

But people have come up with all sorts of complicated schemes to try to allow nodes to find each other in a decentralized way, namely DHT type stuff and progeny of DHT type thinking.

But who says you have to mess with (replace) the existing infrastructure? Maybe you can just build on top of it. Maybe the exiting infrastructure is a bootstrap. The buzzword is overlay. Old hat, right? Well, almost nothing is truly new. And still, the overlay approaches people know about are often mindlessly complicated. We can do better. Some have done better.

NAT doesn't try to replace the existing framework. It just deals with it.

It isn't pretty, but this is how we are all connecting, in spite of all the IPv4 policy nonsense. NAT solved a problem. (And created a new one, arguably.) Whatever. It works.

There are easy ways for nodes, with crusty old IPv4 addresses, to get through their crusty old NATs and get open UDP ports to communicate with each other. They are not new. And they work. Gamers have been using stuff like this for decades. But there's a lot more utility to being directly connected than just playing games. Enter Skype.

Once that's done, once we're connected directly, we can forget about overblown global routing tables, brittle BGP, DHT and IPv6 dreaming. We can use plain ole Ethernet, we can keep our own small arp and IP routing tables, we can use private address space (or whatever numbers we want - it's our private network) and MAC's. We can run our own DNS. We can keep things simple and secure. Because we can have small private networks. We can manage them ourselves.

The global network was means to an end: finding each other and conecting directly. It was a bootstrap. If it runs on crusty ole IPv4 and depends on NAT and swollen routing tables, so be it. That's not my network. It is just a means to an end.

Personally I never understood the lure of connecting to a "swarm" via some DHT. And this is the thinking that has pervaded peer-to-peer. The concept of connecting to strangers, something like Chatroulette, is not really interesting from my perspective. But a lot of technically capable people think that sort of thing is worth their time.

I want to connect to my friends and family, not random strangers. I want to use the internet for all the things it's been cracked up to be for so long: a replacement for postal mail, telephone, video conferencing, etc. And I do not think I am alone in this view.

It's not a new idea what I'm getting at: breaking things into smaller pieces to manage them. What is the internet after all but a conglomeration of ASN's -- smaller networks.

"BOOTP for the global internet." A way to find each other. And then a way to connect. Opensupernodes. The rest, what you do after connecting, is up to you. That's _your_ network, not Facebook's, Google's, Microsoft/Skype's or anyone else's.

Cooperation, interoperability, (at least ostensible) simplicity. People's comfort with working and playing in small groups. These are the important points in my mind.

Wasn't the original Apple "filesystem", circa II, a flat one? That is, a list.

Not only is it easier to work with, as the article suggests, but, obviously, it's faster!

I use globbing on a daily basis over other later approaches, e.g. regex. But it works best with a relatively flat filesystem. Too deep, and it's off.

The simplest approach possible.

But before we can fix filesystems, maybe we need to teach people how to name files in ways to make their life simpler. Long filenames and ones with spaces and punctuation inevitably become a huge PITA. Yet we think of these as "must-have" conveniences.

I used to believe that too. But over time I've realized this slows things down immensely and introduces lots of unneeded complexity. Speed and simplicity is more important.

If you can get by with only a "list of files", you are better off.

They already are. Part of the IPv6 address is derived from your MAC.

Despite not owning the network for which they are being allocated, IPv4 is a "paying job" to some people. And sometimes an ego boost too, i.e., people who get their kicks from creating "IP address policy". Needless to say this easy "work." Hello ARIN.

It's a lot like ICANN.

On CircleID someone recently pointed out that IPv6 will make this sort of "job" meaningless. There is so much IPv6 address space that playing favorites and charging hefty fees is unjustifiable.

Back to your point about MAC's: This is also why the "we're out of IP addresses" meme seems silly. Because we don't see the IEEE complaining they are "running out of MAC's". And IPv6 addresses use MAC's.

The thing to keep in mind is that just because something, e.g. a better addressing scheme, or true network-level peer-to-peer networking, is not "widely adopted" does not mean it isn't available, _right now_. It may have been available for years. There were people at universities still teaching the use of punch cards even after a well-known computer professional in Canada was already programming using a terminal display. And there were other Canadians sending emails before DARPA.

Do not assume that the crowd is always wise. And be wary of the "hype".

80/20 rules - another great internet meme - mean than we can have 80% of the people being stupid. And the 20% have to suffer.

When the "new" naming, "new" addressing and "new" peer-to-peer solutions are offered up the next time, keep an open mind. Try not to be so quick to dismiss any sort of change to the "status quo". Evaluate the approach carefully. It might have merit, and maybe it's not immediately obvious.

Many times (in fact almost all the time), the solutions are not new. We're just waiting for people to finally catch on and realize there is "a better way". We're waiting for people to "try something 'new'".