this post was submitted on 19 Jun 2024
306 points (85.4% liked)

Programmer Humor

19176 readers
892 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 

Today in our newest take on "older technology is better": why NAT rules!

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 12 points 3 months ago* (last edited 3 months ago) (11 children)

IPv6 = second system effect. It's way too complicated for what was needed and this complexity hinders its adoption. We don't need 100 ip addresses for every atom on the earth's surface and we never will.

They should have just added an octet to IPv4 and be done with it.

[–] orangeboats 24 points 3 months ago* (last edited 3 months ago) (7 children)

Every time there's a "just add an extra octet" argument, I feel some people are completely clueless about how hardware works.

Most hardware comes with 32-bit or 64-bit registers. (Recall that IPv6 came out just a year before the Nintendo 64.) By adding only an extra octet, thus having 40 bits for addressing, you are wasting 24 bits of a 64-bit register. Or wasting 24 bits of a 32-bit register pair. Either way, this is inefficient.

And there's also the fact that the modern internet is actually reaching the upper limits of a hypothetical 64-bit IPv5: https://lemmy.world/comment/10727792. Do we want to spend yet another two decades just to transition to a newer protocol?

[–] [email protected] 0 points 3 months ago* (last edited 3 months ago) (4 children)

you are wasting 24 bits of a 64-bit register

You're not "wasting" them if you just don't need the extra bits, Are you wasting a 32-bit integer if your program only ever counts up to 1000000?

Even so when you do start to need them, you can gradually make the other bits available in the form of more octets. Like you can just define it as a.b.c.d.e = 0.a.b.c.d.e = 0.0.a.b.c.d.e = 0.0.0.a.b.c.d.e

Recall that IPv6 came out just a year before the Nintendo 64

If you're worried about wasting registers it makes even less sense to switch from a 32-bit addressing space to a 128-bit one in one go.

Anyway, your explanation is a perfect example of "second system effect" at work. You get all caught up in the mistakes of the first system, in casu the lack of addressing bits, and then you go all out to correct those mistakes for your second system, giving it all the bits humanity could ever need before the heat death of the universe, while ignoring the real world implications of your choices. And now you are surprised that nobody wants to use your 128-bit abomination.

[–] [email protected] 1 points 2 months ago

Hm, didn't the GP already address (pun unintended!) the 128-bit part?

He/she said the internet is reaching upper limits of 64 bits apparently and gave a value of 61 bits in the linked comment.

load more comments (3 replies)
load more comments (5 replies)
load more comments (8 replies)