---

Linux Gets Improved IPv6 Multihoming Support

[ Thanks to Olivier Bonaventure
for this link. ]

The Internet architecture was designed in the 1970s as
a small internetwork to serve the needs of researchers. For the
last 30 years, the Internet continued to grow and we are now
getting close to hitting the limits of the 32 bits IPv4 addressing
space. During the last decade, the Internet Engineering Task Force has been
designing IPv6 as a replacement for IPv4. Most of the initial
benefits of IPv6 (security, QoS, autoconfiguration, …) have been
ported to IPv4 and IPv6 deployment has been limited.

However, thanks to the huge IPv6 addressing space, it is
possible to design protocols and mechanisms that are more scalable
and more powerful than with IPv4. A typical example is the
multihoming problem. This problem occurs when a site is attached to
several Internet Service providers. With IPv4, the classical
solution is for the site to obtain one IPv4 prefix and advertise it
by using BGP. This solution works and
traffic engineering
is possible, but unfortunately, it
contributes to a significant growth of the BGP routing tables in
the global Internet. With IPv6, many
different solutions
have been discussed within the IETF.
Eventually, the IETF decided to focus on a host-based technique.
Basically, when a site is attached to n providers, each of its
hosts will receive n different IPv6 addresses. This reduces the
size of the BGP routing tables by avoiding to advertise the IPv6
prefixes used by the stub domains and provide many
additional benefits in terms of path diversity or performance
.
However, this requires the implementation of new protocols and
mechanisms to coordinate the utilization of the different IPv6
addresses by each host, avoid security problems and efficiently
detect failures.

Now that the shim6 standardization is being finalized by the
IETF, it is time to validate this approach experimentally in the
IPv6 Internet. Sebastien
Barré
has developed the first publicly available
implementation of the shim6 IPv6 host-based multihoming on the
Linux kernel:

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis