Monday, 28 February 2011

IPv6/IPv4 backwards compatibility

I was almost stumped by one question when doing a talk at Reading Uni. Having explained IPv6 and answered a lot of questions, someone asked "So IPv6 is not backward compatible with IPv4 then?"

The reason I was stumped is that you have to have a pretty clear idea what you mean by "backwards compatible" to answer that.

Now, I would say that it means that "when you upgrade to the new thing you don't lost the ability to use the old thing"... To me that makes IPv6 "backwards compatible".

But he went on to make the analogy with a "blu-ray player, which can play DVDs, so backwards compatible" and complained that an "IPv6 only machine cannot access IPv4"...

The answer is simple. A blu-ray play has two lasers (or more) in it, one plays Blu-ray and one plays DVDs. I.e. it is a "dual stack" disk player. This is the same as having a machine that is dual stack with IPv4 (as before) and now IPv6 as well. It can automatically access IPv4 or IPv6 addresses on the Internet just as the Blu-ray player can automatically play BD or DVD disks. That's backwards compatible.

Making an "IPv6 only" machine is like taking out the DVD laser from a blu-ray player and making a "blue-ray only" disc player. Yes, that would be non backwards compatible, so, duh, don't do that!

I think that makes for a good analogy...


  1. ...just like a DVD player can play CDs ;-) (actually, that's more like "yes, it's backward compatible, you don't have to upgrade your network card!")

  2. Well, yes, we discussed those as well...

  3. One of the reason I hate analogies as you start speaking in terms of the analogy instead of the problem :(