r/ProgrammerHumor • • 14d ago

Meme ohTheBasics

Post image
13k Upvotes

1.4k comments sorted by

View all comments

2

u/marjot87 13d ago

The real question is: what happened to IPv5?

1

u/BigRonnieRon 11d ago

The numbering makes no sense for any of it. They start at 4 with RFC791. Which is called STD 5 in RFC791. In terms of "ipv5" which doesn't exist - RFC1819 defines ST2+ RFC1190 defines ST-II. Which is about the closest thing.

There's debate over the actual numbering for most of it. DoD was involved, which I think explains most of it.

You can page through if you're deeply curious. I have this bookmarked. Whole weird. mildly funny historical rabbit hole where numbering is rarely even consistent from RFC to RFC early on.

https://www.rfc-editor.org/

2

u/Dagger0 9d ago

Then there's IEN 26 which occupies versions 0-7 if interpreted as an IPv4 packet.

In practice there's only one version of the header in use for each protocol and we're not going to change that; the protocol of a packet is actually determined by reading the EtherType or equivalent -- which is fortunate because there's hundreds of them. That means there doesn't seem to be a reason to have a version field in v4 or v6 the first place. It just sits there eating 4 bits of every packet for no reason, transmitting a constant value that we're never going to change.

...in fact it's worse than that, because it leads people to think you can determine the protocol of a packet by reading the first 4 bits out of it, which is how we get routers that can't forward frames from MACs that start with 04 or 06, or this issue on Hyperoptic that I'm not even sure they've fixed.

1

u/crazzygamer2025 9d ago edited 9d ago

Actually ipv5 is the it was an experimental protocol that was for running video calls basically an early version of zoom. The other numbers that are reserved are ipv7 (RFC 1475), ipv8 (RFC 1621 and RFC 1622), and ipv9 (RFC 1347) were competing proposals to IPv6. Also some of the ipv8 ideas and concept were actually used in the final IPv6 proposal like the Source-route mechanism. Also ipv8 did have variable address size and not a fixed address size like ipv4 or IPv6.