Available Routing Construct (ARC)

Available Routing Construct (ARC)

Patrice Bellagamba (Cisco Systems, France) and Pascal Thubert (Cisco Systems, France)
DOI: 10.4018/978-1-4666-8371-6.ch013


Every computer network has been built in the last 30 years on the concept of routing tree to compute the path to be used to reach a given prefix or the border of a routing area. This chapter introduces the concept of Available Routing Construct (ARC), which is a two-end (or more) routing basic element that forms its own recovery domain. As it is dual ended, any failure in an ARC can be easily locally resolved by reversing the path toward the other end. A routing area can therefore be described in a graph of hierarchical ARCs. This new paradigm could be leveraged to improve the network resiliency and utilization for both unicast and multicast traffic.
Chapter Preview


The traditional routing model is based on a greedy approach that defines a cost metric and then ensures that a packet always progresses so as to monotonically decrease that metric. Link State IGPs (Interior Gateway Protocols) typically describe a routing area using trees as construct, but a tree offers only one solution for a next hop to a given destination. Several tricks are under work to compute multiple trees to allow fast re-routing and/or load repartition.

The “Available Routing Construct (ARC)” proposal introduces a totally disruptive approach where topology is described as a graph of local multi-ended entities called ARCs.

In a space that is dual to the physical domain of links and routers, ARCs form a Directed Acyclic Graph (DAG) so going from an ARC to the next is effectively greedy and ensures progress of the packet being forwarded. But in the physical domain, the operation of forwarding inside an ARC does not need to be greedy. It can be any form of loop-less walk that may explore the ARC structure and attempt to exit an ARC towards any other ARC that is downstream in the ARC domain. In other words, an ARC is a micro domain where any operation such as transmission failure recovery and load balancing can be attempted.

The ARC approach is adapted to any routing environment as it is offering natively in one compute micro-loop less Fast-ReRouting (FRR) / Spread load balancing / Bicasting for video traffic.

ARC proposes a split-in between the global path topology that defines the hierarchy of ARCs, and the local topology within an ARC where decision is taken locally to execute local repair or congestion control. In addition, an ARC is by concept dual-ended and offer a support for dual replication of key multicast traffic such as video, where two independent paths must be offered to the replica of the flow, in a concept called: BiCasting.

There are several possible algorithms to build the graph of ARCs, the one proposed in this chapter is a computation that derives from SPF (Shortest Path First); but most interesting benefits are obtained with a centralized approach that may be implemented using a Software-Defined Networking (SDN) controller, a Path Computation Element (PCE) or a Network Management Entity (NME), or with a hybrid approach.

ARC can be positioned in the boundary between SDN and classical distributed routing schemes. Some SDN/NME/PCE techniques will build an ARC set but then the ARC set can live on its own like classical routing and adapt to variations in the network like link-downs and various congestions, without a need for the (centralized) controller to perform continuous adjustments. ARC ambitions to be a factor of efficiency and simplification.

ARCs are particularly efficient in circular topology as of MPLS-TP (MPLS Transport Profile) where it solves, for instance, the hierarchical ring requirement.

By concept, ARC is working as a native SDN protocol where a controller computes the global topology but the data-plane is responsible for ensuring real time operations like convergence and repartition without involving the controller, which could be too slow.

ARC is an opportunity to leverage existing OSPF & IS-IS and be effective in the SDN arena. ARCs apply to operational networks that require ultra-high availability, as well as to networks that would rely on FRR (Fast Re-Route) and MPLS-TP techniques today.

It is also adapted in IoT (Internet of Things) to Low-power Lossy Networks (LLNs) where links constantly expose transient failures and where a retry through an alternate next hop is usually a preferable strategy.

To improve current IGPs, especially in the domain of the loop-less FRR, two tracks have been taken by IETF and Cisco/Juniper: One approach is Loop-Free Alternates (LFA) with an improvement denoted Remote-LFA (RLFA) while the other one is Maximally Redundant Trees (MRT). Both approaches are good and quite efficient, but they do not solve the inherent problem of IGPs, which is the single next hop choice to a given destination based on tree computation and establishment. These enhancements (LFA and MRT) require the computation of multiple disjoint trees to establish backup paths that are physically disjoint of the primary path. LFA by itself covers only a subset of the potential network topology, while its extension RLFA requires a tunnel technology like label path to extend the coverage. On its side, MRT computes a sub-optimum alternate path. Compared to these techniques, ARC works as well as with IP/MPLS, and always computes the next optimum SPF path as alternate.

Key Terms in this Chapter

ARC Set: A global topology composed of a graph of ARCs.

Micro-Loop: During a failure recovery, topology changes locally but not globally, most of recovery technics induce temporary but heavy loop for data. ARC is loopless by concept.

Multi-Failures Protection: Most of local repair technologies do not allow repairing multiple failures at the same time without data loop. Some advanced approaches allow considering Shared Risk Link Group (SRLG) where some form of multiple failures are considered when they are related to the same error source. With ARCs, multi-failures are supported either when occurring in different ARCs, or even in the same ARC.

Cursor: Point in the ARC determining data flow direction. East of the ARC the data is flowing the opposite of West side.

Available Routing Construct (ARC): A local construct that handles locally failure and load balancing

Software-Defined Networking (SDN): In the context of ARC, an approach where the topology is computed in an external controller and downloaded on every node. In ARC, this topology is diffused bottom to top to allow loopless installation.

Joint Operation and Automation of the Network (JOAN): Local messages to the ARC that allow to handle cursor dynamic placement and load balancing behavior

Fast ReRouting (FRR): A technic that happens locally in the routing area, allowing diverging traffic from a failure without waiting for a global recomputation of routing path.

Complete Chapter List

Search this Book: