Source-address Dependent Routing
   HOME

TheInfoList



OR:

Source-specific routing, also called source-address dependent routing (SADR), is a
routing Routing is the process of selecting a path for traffic in a network or between or across multiple networks. Broadly, routing is performed in many types of networks, including circuit-switched networks, such as the public switched telephone netw ...
technique in which a routing decision is made by looking at the source address of a
packet Packet may refer to: * A small container or pouch ** Packet (container), a small single use container ** Cigarette packet ** Sugar packet * Network packet, a formatted unit of data carried by a packet-mode computer network * Packet radio, a form ...
in addition to its destination address. The main application of source-specific routing is to allow a cheap form of
multihoming Multihoming is the practice of connecting a host or a computer network 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 ...
without the need for provider-independent addresses or any cooperation from upstream ISPs.


The problem

In traditional ''next-hop routing'', a packet is routed according to its destination only, towards the closest router that announces a route that matches that destination. Consider a
multihomed Multihoming is the practice of connecting a host or a computer network 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 ...
end-user network connected to two ISPs, BT&T and PacketCast; such a network will typically have two ''edge routers'', each of which is connected to one ISP. Both edge routers announce a default route, meaning that they are willing to accept packets destined for the Internet. If a packet with a source in BT&T's network is routed through PacketCast's edge router, PacketCast will assume it is a spoofed packet, and drop it in accordance to BCP 38.


Multihoming with source-specific routing

With source-specific routing, each edge router announces a ''source-specific default route'': a route that applies to packets destined to the Internet but only if their source is in a given prefix. The effect is that each edge router only attracts packets that have a source address in that provider's prefix.


Desirable host changes

With source-specific routing, each host interface has multiple addresses, one per provider-dependent prefix. For outgoing traffic, host software must choose the right source address. Various techniques for doing that have been suggested, at the network layer, above the network layer (see Shim6), or by using multipath techniques at the higher layers (see
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 ...
and Multipath
Mosh Moshing (also known as slam dancing or simply slamming) is an extreme style of dance, dancing in which participants push or slam into each other, typically performed to "aggressive" live music such as heavy metal music, heavy metal and punk rock ...
).


Support in routing protocols

On a network with a single edge router, it is possible to implement source-specific routing by manual manipulation of routing tables. With multiple routers, explicit support for source-specific routing is required in the routing protocol. As of early 2016, there are two routing protocols that implement support for source-specific routing: * The Babel routing protocol has support for source-specific routing for both IPv4 and IPv6; this is implemented for IPv6 in ''babeld'' and in
BIRD Birds are a group of warm-blooded vertebrates constituting the class Aves (), characterised by feathers, toothless beaked jaws, the laying of hard-shelled eggs, a high metabolic rate, a four-chambered heart, and a strong yet lightweigh ...
(earlier versions of ''babeld'' supported source-specific routing for IPv4); * There exists an implementation of
IS-IS Intermediate System to Intermediate System (IS-IS, also written ISIS) is a routing protocol designed to move information efficiently within a computer network, a group of physically connected computers or similar devices. It accomplishes this b ...
with support for source-specific routing for IPv6 only. The IETF Homenet protocol suite requires support for source-specific routing in its routing protocol., Section 3.2.4


References

{{Reflist Routing Multihoming