Multihoming
   HOME

TheInfoList



OR:

Multihoming is the practice of connecting a host or a
computer network A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are ...
to more than one network. This can be done in order to increase reliability or performance. A typical host or end-user network is connected to just one network. Connecting to multiple networks can increase reliability because if one connection fails, packets can still be routed through the remaining connection. Connecting to multiple networks can also improve performance because data can be transmitted and received through the multiple connections simultaneously multiplying
throughput Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel, such as Ethernet or packet radio, in a communication network. The data that these messages contain may be delivered ove ...
and, depending on the destination, it may be more efficient to route through one network or the other.


Variants

There are several different ways to perform multihoming.


Host multihoming

A single host may be connected to multiple networks. For example, a mobile phone might be simultaneously connected to a
WiFi Wi-Fi () is a family of wireless network protocols, based on the IEEE 802.11 family of standards, which are commonly used for local area networking of devices and Internet access, allowing nearby digital devices to exchange data by radio wa ...
network and a 3G network, and a desktop computer might be connected to both a home network and a
VPN A virtual private network (VPN) extends a private network across a public network and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network. The be ...
. A multihomed host usually is assigned multiple addresses, one per connected network.


Classical multihoming

In classical multihoming, a network is connected to multiple providers, and uses its own range of addresses (typically from a Provider Independent (PI) range). The network's edge routers communicate with the providers using a
dynamic routing Dynamic routing, also called adaptive routing, is a process where a router can forward data via a different route for a given destination based on the current conditions of the communication circuits within a system. The term is most commonly asso ...
protocol, typically
BGP Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems (AS) on the Internet. BGP is classified as a path-vector routing protocol, and it mak ...
, which announces the network's address range to all providers. If one of the links fails, the dynamic routing protocol recognizes the failure within seconds or minutes, and reconfigures its
routing table In computer networking, a routing table, or routing information base (RIB), is a data table stored in a router or a network host that lists the routes to particular network destinations, and in some cases, metrics (distances) associated with th ...
s to use the remaining links, transparently to the hosts. Classical multihoming is costly, since it requires the use of address space that is accepted by all providers, a public Autonomous System (AS) number, and a dynamic routing protocol. Since multihomed address space cannot be aggregated, it causes growth of the global routing table.


Multihoming with multiple addresses

In this approach, the network is connected to multiple providers, and assigned multiple address ranges, one for each provider. Hosts are assigned multiple addresses, one for each provider. Multihoming with multiple addresses is cheaper than classical multihoming, and can be used without any cooperation from the providers (e.g. in a home network) but requires additional technology in order to perform routing: * for incoming traffic, hosts must be associated with multiple A or AAAA DNS records so that they are reachable through all providers; * for outgoing traffic, a technique such as
source-specific routing Source-specific routing, also called source-address dependent routing (SADR), is a routing technique in which a routing decision is made by looking at the source address of a packet in addition to its destination address. The main application of so ...
must be used to route packets through the correct provider, and reasonable source address selection policies must be implemented by hosts.


Caveats

When multihoming is used to improve reliability, care must be taken to eliminate any
single point of failure A single point of failure (SPOF) is a part of a system that, if it fails, will stop the entire system from working. SPOFs are undesirable in any system with a goal of high availability or reliability, be it a business practice, software appl ...
(SPOF): * Upstream connectivity: A given network operations center must have multiple upstream links to ''independent'' providers. Furthermore, to lessen the possibility of simultaneous damage to all upstream links, the physical location of each of these upstream links should be physically diverse: far enough apart that a piece of machinery (such as a backhoe) won't accidentally sever all connections at the same time. * Routers: Routers and
switches In electrical engineering, a switch is an electrical component that can disconnect or connect the conducting path in an electrical circuit, interrupting the electric current or diverting it from one conductor to another. The most common type of ...
must be positioned such that no single piece of network hardware controls all network access to a given host. In particular, it is not uncommon to see multiple Internet uplinks all converge on a single edge router. In such a configuration, the loss of that single router disconnects the Internet uplink, despite the fact that multiple ISPs are otherwise in use. * Host connectivity: A "reliable" host must be connected to the network over multiple network interfaces, each connected to a separate router or switch. Alternatively, and preferably, the function of a given host could be duplicated across multiple computers, each of which is connected to a different router or switch. * Referencing entities: Not only must a host be accessible, but in many cases it must also be "referenced" to be useful. For most servers, this means in particular that the name resolution to that server be functional. For example, if the failure of a single element blocks users from properly resolving the DNS name of that server, then the server is effectively inaccessible, despite its otherwise connected state. By increasing the number of interfaces and links being used and making routing less deterministic, multihoming complicates network administration.


IPv4

Classical multihoming is the dominant technique for IPv4. This requires that a network have its own public IP address range and a public AS number. While multihoming with multiple addresses has been implemented for IPv4, it is not generally used, as host implementations do not deal well with multiple addresses per interface which requires the use of "virtual interfaces". It is also possible to implement multihoming for IPv4 using multiple NAT gateways.


IPv6

Both classical multihoming and multihoming with multiple addresses may be used in IPv6.


Classical multihoming

Provider Independent Address Space (PI) is available in IPv6. This technique has the advantage of working like IPv4, supporting traffic balancing across multiple providers, and maintaining existing TCP and UDP sessions through cut-overs. Critics say that the increased size of routing tables needed to handle multi-homing in this way will overwhelm current router hardware. Proponents say that new hardware will be able to handle the increase due to cheaper memory, which drops in price according to Moore's law. Proponents also say this is the only viable solution right now, and the
worse is better Worse is better (also called the New Jersey style) is a term conceived by Richard P. Gabriel in an essay of the same name to describe the dynamics of software acceptance. It refers to the argument that software quality does not necessarily increa ...
philosophy supports the idea that it is better to deploy an imperfect solution now than a perfect solution after it is too late. Because many ISPs filter out route announcements with small prefixes, this will generally require a large "ISP-sized" IP allocation, such as a /32, to ensure global reachability. Using such large prefixes is an inefficient use of IPv6's address space; there are only about 4 billion /32 prefixes. However, from a pragmatic perspective, allocating a /32 is equivalent in global address space cost to allocating a single IPv4 address, and this may be acceptable if, as seems to be likely for the foreseeable future, the number of multihomed sites can be numbered only in the millions, as opposed to the many billions of non-multihomed endpoints which are anticipated to comprise the vast majority of IPv6 endpoints. Some
regional Internet registries A regional Internet registry (RIR) is an organization that manages the allocation and registration of Internet number resources within a region of the world. Internet number resources include IP addresses and autonomous system (AS) numbers. ...
(RIR) such as RIPE have started to allocate /48 from a specific prefix for this purpose. RIPE allocates IPv6 provider-independent address spaces /48 or shorter from 2001:0678::/29.


Multihoming with multiple addresses

Multihoming with multiple addresses has been implemented for IPv6. For outgoing traffic, this requires support on the host, either protocol agnostic (
Multipath TCP Multipath TCP (MPTCP) is an ongoing effort of the Internet Engineering Task Force's (IETF) Multipath TCP working group, that aims at allowing a Transmission Control Protocol (TCP) connection to use multiple paths to maximize throughput and inc ...
,
SCTP The Stream Control Transmission Protocol (SCTP) is a computer networking communications protocol in the transport layer of the Internet protocol suite. Originally intended for Signaling System 7 (SS7) message transport in telecommunication, the p ...
,
QUIC QUIC (pronounced "quick") is a general-purpose transport layer network protocol initially designed by Jim Roskind at Google, implemented, and deployed in 2012, announced publicly in 2013 as experimentation broadened, and described at an IETF meet ...
, etc.) or specific to IPv6 (e.g. SHIM6).


Other solutions

* Automated renumbering. If one uplink goes down, all addresses in the network will be renumbered into a new /48 subnet. DNS and firewall records must be updated to redirect traffic to a different /48 subnet. This renumbering will break live TCP and UDP sessions. *
Locator/Identifier Separation Protocol Locator/ID Separation Protocol (LISP) () is a "map-and-encapsulate" protocol which is developed by the Internet Engineering Task Force LISP Working Group. The basic idea behind the separation is that the Internet architecture combines two functio ...
(LISP)


See also

*
Dual-homed Dual-homed or dual-homing can refer to either an Ethernet device that has more than one network interface, for redundancy purposes, or in firewall technology, one of the firewall architectures for implementing preventive security. An example of dua ...
*
Host Identity Protocol The Host Identity Protocol (HIP) is a host identification technology for use on Internet Protocol (IP) networks, such as the Internet. The Internet has two main name spaces, IP addresses and the Domain Name System. HIP separates the end-point ide ...
(HIP) *
Identifier/Locator Network Protocol The Identifier-Locator Network Protocol (ILNP) is a network protocol that divides the two functions of network addresses, namely the identification of network endpoints, and assisting routing, by separating topological information from node identity ...
(ILNP) * Load balancing *
Locator/Identifier Separation Protocol Locator/ID Separation Protocol (LISP) () is a "map-and-encapsulate" protocol which is developed by the Internet Engineering Task Force LISP Working Group. The basic idea behind the separation is that the Internet architecture combines two functio ...
(LISP) *
Media-independent handover Media Independent Handover (MIH) is a standard being developed by IEEE 802.21 to enable the handover of IP sessions from one layer 2 access technology to another, to achieve mobility of end user devices (MIH). Importance The importance of MIH der ...
or vertical handover in IEEE 802.21 *
Mobile IP Mobile IP (or MIP) is an Internet Engineering Task Force (IETF) standard communications protocol that is designed to allow mobile device users to move from one network to another while maintaining a permanent IP address. Mobile IP for IPv4 is des ...
*
Site Multihoming by IPv6 Intermediation The Site Multihoming by IPv6 Intermediation (SHIM6) protocol is an Internet Layer defined in RFC 5533. Architecture The SHIM6 architecture defines failure detection and locator pair exploration functions. The first is used to detect outages throug ...
(SHIM6) * Two-sided market


References


Further reading

* * * {{Authority control Internet architecture Routing