Random ramblings

All | General | Motorbikes | Networking | Odds & Sods | Soapbox | Solaris
Main | Next day (Dec 23, 2004) »
20041223 Thursday December 23, 2004

The IPv6 multihoming conundrum

The recent discussion on nanog shows that the IPv6 multihoming problem is an intractable as ever.

The problem is of course that operators want to have nice, clean routing tables and the clean slate of IPv6 provides a perfect opportunity to try achieve this. However, it has been achieved by restricting IP assignment to, essentially, ISPs, without providing any answer to what organisations who wish to multihome or be provider independent (in terms of addressing) should do. Further, without multihoming, the chances of there being any real customer demand for IPv6 are 0, and the operators are waiting for customer demand before expending resources on seriously deploying IPv6 infrastructure. In short, without an answer to this problem, IPv6 is but a curiosity.

IPv6, though far from perfect, does have the huge advantage of almost unlimited address space, providing 2^64 of routable address space. While IPv4 is not yet running short, it's running short enough that NAT has become widely prevalent (with even ISPs using RFC1918 space for customer assignment) which is slowly destroying the internet as a dumb network of smart hosts and regressing it back to the smarts-in-the-centre style network of the POTS. We could allocate each human on earth their own /48 (ie 2^16 bits worth of 64bit wide subnets) for many many generations[1] before ever having to worry about having to recycling such assignments. We could allocate each square metre on earth a /64 using IPv6, and still have 65535/65536 of the address space left to assign in other ways. And we can even afford to "waste" a few of these 65536 slots as part of the learning curve on how to best deal with assigning such massive amounts of address space.

The sticking point though is how to route such a multitude of prefixes efficiently. With the current IPv4 system, every assigned prefix has global scope. To extend this to IPv6, at least an IPv6 with assignment policies that make best use of the massive address space, would be inefficient. The operators are not keen on having their routers filled with 2^48 routes. The general answer of course is obvious, to limit the number of global scope routes that are needed. To do this will require one or more levels of indirection somewhere. But for every proposal (and there arent that many places where it could be done), there are always objections, nearly always on the basis of the inefficiency of the indirection.

In the meantime, while everyone waits for the magic bullet to the IPv6 multihoming problem which will never come, moves are afoot to introduce psuedo-random site local to IPv6, in essence RF1918, and hence dooming IPv6 to the same NAT hell if multihoming is not solved and these assignments were used instead (if IPv6 ever became popular). The sad thing about this RFC it specifies that there may be a free allocation service for the global-portion of this address, that would centally assign pseudo-random identifiers . Which begs the question, if these identifiers can be globally coordinated, why must they be site-local? The answer being that no-one wants to solve the "how to route such prefixes" problem.

The POTS telco's in several countries once faced the same problem with respect to number portability. They had similarly oohed, ahed and generally kicked their feet claiming it'd be too difficult to do efficiently, until eventually regulators became sick of it, and statutory pressure forced them to implement a solution. Hence today, in many cases in the POTS and GSM world, end-users are happily using provider-assigned, but provider-independent numbers, such that they can easily change providers without having to worry about changing their number at least. And whatever extra inefficiencies this imposes in the switching of POTS/GSM calls, its more or less worth it due to the lower barriers to competition it brings to the market. Sadly though, there is no IPv6 regulator to decree there will be a deadline to the endless procrastination.

In conclusion, for IPv6 to have any real future, it needs to solve the multihoming problem. There are several ways to solve it, all of which involve additional inefficiency. There is no magical way to solve the problem that will make everyone happy. The least worst solution(s) simply need to be chosen and developed.

1. How many hundreds or thousands of generations, or simply time, would have to pass given current population growth on earth, to reach the 281474 Billion cumulative human count to exhaust this address space is left as a question for the reader to answer ;)

( Dec 23 2004, 02:15:54 PM GMT ) Permalink

Calendar

RSS Feeds

Search

Links

Navigation

Referers