Segment Routing Single Link Failure Congestion Optimization
Vitor Pereira
1
, Miguel Rocha
2
and Pedro Sousa
1
1
Centro Algoritmi, Department of Informatics, University of Minho, Portugal
2
Centre of Biological Engineering, Department of Informatics, University of Minho, Portugal
Keywords:
Segment Routing, Link Failure, Evolutionary Computation, Software Defined Networking, Routing and Flow
Control.
Abstract:
Segment routing is an implementation of the source routing paradigm built over an Interior Gateway Proto-
col. It allows improving Traffic Engineering in IP/MPLS networks by decomposing forwarding paths in lists
of smaller paths called segments. The flexibility introduced by segment routing enables new responsive and
dynamic methods to react to network fault events, such as link failures. Typical responses to single link fail-
ures only aim to reestablish loop-free connectivity between affected routers and do not account for impacts
in network congestion. As Interior Gateway Protocols recompute shortest-paths after a link failure, SR paths
and links utilization are affected by the fault augmenting the overall network congestion. This paper addresses
this problem comparing post-convergence network congestion values obtained with industry and new proposal
Evolutionary Computation based recovery path computation methods for segment routing. Furthermore, by
comparing and analyzing each method’s advantages and disadvantages, we show that a multiplane optimiza-
tion procedure stands out with best results.
1 INTRODUCTION
Segment routing (SR) (Filsfils et al., 2013) is
a Software-Defined Networking (SDN) (Feamster
et al., 2013) enabled technology proposed by the In-
ternet Engineering Task Force (IETF) in 2013. By
decomposing forwarding paths into segments, SR en-
ables new methods capable of optimizing network
performance and improving Traffic Engineering (TE).
The ability to steer packets through a defined list of
nodes provides the agility and flexibility required for
enhanced tasks. With SR, network environments be-
come more responsive to topological events, such as
link failures, while enabling a broader range of re-
sponse options.
SR is built over already existing Interior Gate-
way Protocols (IGP), such as Open Shortest Path
First (OSPF) (Moy, 1997) and Intermediate System
to Intermediate System (IS-IS) (Gredler and Goralski,
2005). From the two main primary types of segments,
adjacency and node segments, the lasts are IGP de-
pendent and uniquely identified by an ID, a Segment
ID (SID). A Node SID pinpoints an address prefix
calculated by the IGP, a destination that should be
reached using an IGP shortest-path. An Adjacency
SID, on the other hand, represents a local interface to
a specific adjacent IGP node.
Any path can be represented by a combination of
Node SIDs and Adjacency SIDs. SR takes ad-
vantage of multiple IGP features, for example, it sup-
ports Equal Cost Multi-Path (ECMP) (Hopps, 2000)
by design. Paths identified by node segments are IGP
shortest-paths, and intrinsically include all the ECMP
paths to the destination node, which contributes to a
tremendous gain in network performance and scala-
bility. Another essential IGP feature on which SR
relies is the automatic rerouting of connections after
a link failure. Upon a link failure, the IGP protocol
recomputes all shortest-paths, and segments are au-
tomatically repaired without any additional interven-
tion.
The time required to detect a link failure, propa-
gate the fault and recompute the shortest-paths can be
excessively long and, therefore, recovery paths should
preferably be pre-computed and installed in the data
plane. Fast reroute (FRR) with loop-free alternates
(LFA) (Atlas and Zinin, 2008) follows this strategy
and provides sub-50msec loss of connectivity to IGPs.
However, LFA does not offer a complete network cov-
erage and is topology dependent. With SR, those lim-
itations ceased to exist. Topology-Independent LFA
(TI-LFA) (Bashandy et al., 2018) provides local pro-
76
Pereira, V., Rocha, M. and Sousa, P.
Segment Routing Single Link Failure Congestion Optimization.
DOI: 10.5220/0006856200760083
In Proceedings of the 15th International Joint Conference on e-Business and Telecommunications (ICETE 2018) - Volume 1: DCNET, ICE-B, OPTICS, SIGMAP and WINSYS, pages 76-83
ISBN: 978-989-758-319-3
Copyright © 2018 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
tection for IGP SIDs in any topology. Backup paths
can be pre-computed on a per IGP SID basis along
the post-convergence path from the Points of Local
Repair (PLR) to all possible destinations. In the vast
majority of cases, a single segment is enough to en-
code the post-convergence path in a loop-free manner.
But, even though TI-LFA solves the loss of connec-
tivity problem, it is insufficient to ensure congestion
avoidance in the SR domain after the IGP has con-
verged.
The present work addresses the SR link failure
pos-convergence congestion problem. We start by
analyzing post-convergence congestion levels of net-
works that use TI-LFA and compare them with dis-
tinct possible approaches which resort to Evolution-
ary Computation (EC) algorithms. Network’s con-
figuration on a normal state, that is, before a sin-
gle link failure, are optimized for congestion and use
the Single Adjacency Label Path Segment Routing
(SALP-SR) (Pereira et al., 2017) optimization model.
All proposed approaches extend SALP-SR, but some
may also be applied to any SR model. The remain-
ing of the article follows with a brief presentation
of the SALP-SR optimization method, the definition
of possible approaches to the addressed problem, the
presentation of results and their analysis and, finally,
some conclusions.
2 SALP-SR
Single Adjacency Label Path (SALP-SR) was pro-
posed by the authors as a technique to optimize
congestion for best-effort traffic in Segment Routing
(Pereira et al., 2017). As stated by its name, this
method uses at the most a single adjacency segment
in the configuration of each SR path and traffic always
moves towards its destination. As a consequence,
each path is defined using three or fewer segments
with the following alternatives of configuration for-
mats:
1-Segment: The SR path configuration only has a
single Node SID, the SID of the destination node
t. SR paths with such configuration forward traf-
fic across edge-to-edge IGP shortest-paths. The
majority of SR paths are 1-segment SR paths.
2-Segments: A SR path configuration comprises
a Node SID and an Adjacency SID, with two pos-
sible formats: [(s, u);t] and [u;(u, t)]. In the first,
an adjacency segment forwards traffic to an adja-
cent node u, and from there on, traffic is driven
across shortest-path. In the second case, traffic
follows an IGP shortest-path to a destination ad-
jacent node and, lastly, an adjacent segment to the
destination.
3-Segments: A SR path configuration comprises
two Node SIDs and an Adjacency SID formatted
as [u; (u, v);t], where (u, v) is the adjacency seg-
ment.
The optimization model assumes that all network
nodes are SR capable and that a Path Computation
Element (PCE) or SDN controller gathers topological
information and traffic necessities required by the op-
timization algorithm. Figure 1 displays a conceptual
representation of SALP-SR. Evolutionary Algorithms
use information provided by the PCE to deliver solu-
tions which aim to minimize the network congestion.
An SR simulator evaluates each solution and deter-
mines how well it fits the addressed problem.
An optimized solution includes three components:
1) a link weights configuration for the link-state IGP
operation, 2) SR label paths and 3) traffic splitting ra-
tios for provider edges (PE) operations. SALP-SR
configurations are preemptively computed consider-
ing foreseeable conditions and stored in a database
accessible by the PCE/SDN controller, so they can
be installed in the network when ever required. We
next describe the SALP-SR mathematical optimiza-
tion model.
The routing optimization model uses undirected
graphs G(N, A) to represent network topologies,
where N is a set of nodes and A a set of arcs. For
a given traffic demand matrix and a routing configu-
ration, the congestion level of a network is evaluated
using the normalized sum of link cost Φ proposed in
(Fortz and Thorup, 2000). For every topology link a,
this convex function associates a congestion value Φ
a
to the link utilization ratio u(a). This work uses the Φ
function both as primary comparison metric and also
as primary optimization objective. The first objective
of SALP-SR is to find a configuration W, a set of in-
teger values, which minimizes the normalized sum of
all links’ congestion, Φ
a
, i.e, minΦ =
aA
Φ
a
(u(a)).
Other additional optimization objectives can also be
considered such as the network maximum link utiliza-
tion (MLU) or even delay restrictions.
A solution W is nothing more than a set of IGP’s
integer link weights w
u,v
, u, v N, but from which
the optimization algorithm also derives the other ad-
ditional settings, SR paths and load balancing ratios
between parallel paths.
To compute SR paths, and later load balancing
ratios, the optimization algorithm forwards packets
from a flow with source s and destination t by apply-
ing a penalization on longer paths. Traffic at a node
u, in a path from s to t, is forwarded to a next-hop
v with a probability that decreases exponentially with
Segment Routing Single Link Failure Congestion Optimization
77
PCE/SDN Controller
Topology and
Traffic information
SR Configuration
IGP weights
Splitting Ratios
PE2
R4
PE1
R1
R2
R3
PE2
Destination
Prefix
SR Path Ratio
PE2
PE2
4/5
1/5
R3 R3-R2 PE2
PE1 SR Recovery Paths
Failure
R1-PE2
R1-PE2
SR
simulator
EA
Optimization
engine
Solution
Traffic Matrices
Topology
R1
Destination
Prefix
SR Path Ratio
PE2
1
PE1 SR Paths
PE2
new proposed module
Figure 1: SALP-SR and Recovery Paths Optimization Conceptual Architecture.
the extra length of the path to t, h
t
u,v
. This compu-
tation is depicted in Equations 1 and 2, proposed in
(Xu et al., 2007), where d
t
u
is the shortest path dis-
tance from u to the destination t. The portion of traf-
fic at u with destination t to be routed to next-hop v is
computed by the proportion function Equation 3. This
traffic splitting method enables the optimization algo-
rithm not only to take advantage of IGP’s Equal Cost
Multi-Path (ECMP) but also to use non-shortest-path
links to forward traffic while ensuring that packets are
always routed towards the destination.
SR paths are obtained based on the previous for-
mulation and according to the three available config-
uration formats:
3-Segments: For each non-shortest-path link
(u, v) in a path from s to t, identified in the de-
scribed procedure, the algorithm produces a hop-
by-hop path such that paths from s to u and from
v to t are shortest-paths. Non-shortest-path links
(u, v) become adjacency segments, while remain-
ing path portions are converted to node segments
([u;(u, v);t]).
2-Segments: When u or v coincide with source
or destination nodes, s and t respectively, the
path becomes a 2-segment SR path ([(s, u);t] or
[u;(u, t)]).
1-Segment: A shortest-path between s and t is
converted into a 1-segment SR path, [t].
Following the definition of the SR paths, the algo-
rithm assigns to each parallel SR path a portion of the
traffic necessities from s to t. The fractions of traf-
fic F to be assigned to each parallel path are obtained
by applying Equations 4 and 5. The fraction of traffic
assigned to a path from a source s to a destination t
that contains an adjacency segment (u, v) is the prod-
uct of the fraction of traffic assigned to (u, v) at node
u, P
h
t
u,v
, with the fraction of traffic from s which
arrives at u using shortest-paths. This formulation is
depicted in Equation 4 where P
s,u
represents the set
of all shortest paths from s to u, and A
s,t
is the set of
all adjacency segments on SR paths from s to t. The
optimization model assumes that individual flows are
relatively small and that a hashing-based traffic split-
ting scheme ensures that packets from the same flow
are routed along the same SR path.
h
t
u,v
= d
t
v
+ w
u,v
d
t
u
(1)
Γ
h
t
u,v
=
(
e
h
t
u,v
p
, if d
t
v
< d
t
u
0, otherwise
(2)
P
h
t
u,v
=
Γ
h
t
u,v
(u,i)A
Γ
h
t
u,i
, (3)
F (s, t, u, v) =
P
h
t
u,v
, u = s
P
h
t
u,v
pP
s,u
(i, j)p
P
h
t
i, j
!
, u 6= s
(4)
F (s, t) = 1
(u,v)A
s,t
F (s, t, u, v) (5)
SALP-SR has an important feature that allows dy-
namic traffic load balancing corrections between par-
allel edge-to-edge paths. The exponential parameter
p in Equation 2 affects the splitting of traffic between
outgoing links. By default, all values are set to 1 and
are only modified if circumstances impose alterations
on traffic load balancing between parallel paths. Fig-
ure 2 presents an illustrative example of how differ-
ent p-node values affect traffic splitting locally at a
node u. For a given set of weights (Figure 2a) and
considering a p-node value of 1 at node u, the pro-
cedure described in the previous section splits traffic
for destination t as depicted in Figure 2b. To respond
DCNET 2018 - International Conference on Data Communication Networking
78
t
u
v
1
v
2
v
3
10
1
9
10
2
2
(a)
t
u
v
1
v
2
v
3
42%
42%
16 %
p = 1
(b)
t
u
v
1
v
2
v
3
34%
34%
32 %
p = 10
(c)
Figure 2: p-node values example.
to some event, for example, to prevent congestion af-
ter the imposition of new traffic necessities, a network
administrator may need to readjust the load balancing
at u such that traffic becomes (almost) evenly divided
between the outgoing links. To achieve such result, it
is sufficient to adjust to 10 the p-node value at node u,
as shown in Figure 2c, while preserving the remaining
functional configurations. The present work explores
this feature to improve the distribution of traffic and
thereby reduce the network congestion after a single
link failure event.
3 LINK FAILURE
OPTIMIZATION APPROACHES
The traditional response to a link failure is to provide
a set of recovery paths to reestablish point-to-point
connectivity. However, this can be insufficient. It is
also essential to take into consideration IGP shortest-
path recomputation and how it affects the network
congestion level. IGP shortest-paths recomputation
has an impact on node segments and, consequently,
on traffic distribution over the available resources af-
ter a link failure. A simple approach, which provides
recovery paths from the Point of Local Repair (PLR)
on, may not be sufficient to warrant adequate overall
network congestion levels. Other options might need
to be considered which include 1) the definition of
where SR segment ID stack should preferably be up-
dated, at the PLR or network ingress nodes; 2) which
portion of the recovery path should be updated, to the
destination or only to the next segment not affected
by the failure.
These questions define three end-to-end possibili-
ties: PLR to the destination (TI-LFA), PLR to the next
segment or edge-to-edge SR recovery paths (Figure
3). It might also be conceivable to implement cor-
rections on traffic load balancing to improve traffic
distribution, or even alter the SID stack of SR paths
that were not affected by the failure. In this con-
text, we devised distinct approaches to analyze sin-
gle link failure impacts of in SR network’s congestion
and simultaneously evaluate their responses. None of
the proposals consider SR path with service chaining,
and only paths that steer traffic from source to des-
tination are considered. All approaches aim to min-
imize the network post-convergence congestion after
a single failure. Solutions for approaches that require
longer computation time are preemptively computed,
and stored in a PCE database as shown in Figure 1.
B
u v
1 2
3 4
Node-SID u
Adj-SID u-v
Adj-SID u-2
Node-SID C
Node-SID C
Node-SID v
1
1
1
1
2
1
10
10
2
1
Initial SR Path Edge-to-Edge
PLR-to-Dst PLR-to-Next Seg.
A
C
Node-SID C
Node-SID u
Node-SID C
2
Node-SID u
Figure 3: SR recovery paths: Edge-to-Edge, PLR to desti-
nation, PLR to next segment.
3.1 Approach 1 - Simple Link
Protection
This approach is the most straightforward response to
a single link failure. Before any link failure, the net-
work is configured with an optimized SALP-SR con-
figuration for congestion avoidance. Upon the fail-
ure of link (u, v), traffic that previously traversed the
failed link is rerouted. SR paths that did not use the
failing link remain unchanged as are traffic splitting
ratios between parallel paths.
Within this approach we consider two possibili-
ties to reroute traffic that initially traversed the (u, v)
link: a) Edge-to-Edge rerouting and b) Point of Local
Repair rerouting.
1.a) Edge-to-Edge Rerouting: All SR paths that in-
cluded the failing link (u,v) are reconfigured with
a single Node Segment [node(t)], where t is the
provider’s edge destination. In practice, all traffic
is rerouted according to the new computed shortest
paths. This approach has the disadvantage of not be-
ing responsive enough. It can only be implemented
after the fault is announced to all routers and the IGP
has converged, as edge routers need to become aware
Segment Routing Single Link Failure Congestion Optimization
79
of the fault. On the other hand, it does not require
any centralized control, and only edge nodes need to
recompute SR paths.
1.b) Point of Local Repair Rerouting: To enable an
under 50 msec response to a single link failure, IETF
proposed a Topology Independent Loop-Free Alter-
nate (TI-LFA) (Bashandy et al., 2018). The main
idea of TI-LFA is to provide loop-free recovery paths,
between the PLR and provider’s edge destinations,
which remain unchanged before and after the IGP
convergence.
In practice, and considering SALP-SR configu-
rations, SR paths defined by a single Node SID are
kept unchanged as they are automatically repaired by
the IGP after its convergence. SR paths which ex-
plicitly use the (u, v) link are repaired at u. For ex-
ample, packets reaching u with a segment list [node-
SID u, adj-SID u-v, node-SID t] would leave u with
a segment list matching [RP,node-SID t], where RP
is a routing path to the Q node, a node segment to a
PQ node or a direct neighbor of node u (Bashandy
et al., 2018). The repair path configures the post-
convergence shortest-path from the PLR to the desti-
nation. In Figure 3 this case corresponds to the header
list [adj-SID u-2, node-SID C]. The adjacent segment
(adj-SID u-2) would not be included in the segment
header as node 2 is a neighbor of the PLR, and is only
included to ease comprehension.
3.2 Approach 2 - Link Protection with
SALP-SR Paths Recomputation
As stated before, a SALP-SR configuration encom-
passes an IGP link weights configuration, edge-to-
edge SR path definitions and load balancing splitting
ratios between parallel paths. All configurations are
derived from a set of integers, the IGP link weights,
and a set of real values assigned to each node (p-node
values). When a topology change is announced to
all network nodes (or a PCE), such as a link failure,
a previously computed new configuration can be in-
stalled and deployed in a short amount of time. Ap-
proach 2 takes advantage of this SALP-SR feature.
Upon the failure o link (u,v), and considering that
link weights configuration remains unchanged, two
recomputations are performed which exclude the fail-
ing link: IGP shortest-paths and edge-to-edge SALP-
SR paths. This is equivalent to applying the optimiza-
tion process described in Section 2 with the link fail-
ure topology alteration. A disadvantage of this pro-
cedure is that a small percentage of SR paths not af-
fected by the fault may need to be altered to reduce
congestion. Furthermore, the fault needs to propagate
before this recovery procedure can be applied. Addi-
tionally to IGP and SALP-SR recomputations, by ad-
justing p-node values, new traffic splitting ratios be-
tween parallel SR paths may be installed, which leads
to the following two cases:
2.a) Default P-node Values: All p-node values are
kept unchanged with the default value of 1.
2.b) Optimized P-node Values: When the installed
configuration becomes inadequate, due to traffic
changes or link failures, different p-node values con-
figurations alter traffic load balancing between par-
allel SR paths and may improve network operational
conditions. Hence, this approach in addition to steps 1
and 2, also optimizes the p-node values configuration.
The p-node values can be preemptively optimized for
each link failure and stored in a database to be later
applied if necessary.
All recovery paths are edge-to-edge SR paths that
can be preemptively computed and stored (Figure 1).
3.3 Approach 3 - Multi-objective
Optimization
Although similar to the previous, this approach con-
siders two objectives instead of a single objective for
the initial SALP-SR optimized configuration. Pre-
vious research by the authors in congestion multi-
objective optimization for link-state routing proto-
cols demonstrated promising results for the single
link failure congestion problem (Pereira et al., 2015).
However, and contrary to the aims of the present
work, link weights were only optimized for conges-
tion avoidance after the failure of a single or a reduced
set of specific links. Approach 3 aims to improve net-
works performance by minimizing both congestion
values simultaneously, before and after the failure of
any single link.
In this approach, the initial network optimization
is performed considering simultaneously: First Ob-
jective - minimize the congestion of the network on
a fully functional state, Φ; and Second Objective -
minimize the maximum congestion after a single link
failure. The formulation of this second objective is
Min
Max
Φ
(n1,a)

, where (n 1, a) denotes the
failure of each individual link a.
This scenario contemplates the recomputation of
only SR paths configurations (3.a), as well as the ad-
ditional installation of optimized traffic splitting ra-
tios (3.b). It is expected that, by adding the second
optimization objective, the congestion levels of the
network, after a link failure, improve when compared
with the previous scenario.
DCNET 2018 - International Conference on Data Communication Networking
80
3.4 Approach 4 - Multiplane Recovery
Path Optimization
One of the attributes of SALP-SR is that traffic always
moves towards the destination when the distance is
the shortest-path lengths. Although this characteristic
is a positive SALP-SR property, it nonetheless nar-
rows the number of possible recovery path solutions.
This approach forsakes this restriction, i.e., recovery
paths may include segments which locally drive traf-
fic away from the destination. This goal is achieved
using additional network planes during the optimiza-
tion process, where each plane uses a different SR
configuration. A conceptual representation of this ap-
proach is presented in Figure 4.
v
u
v
Plane 1
u
Plane 0
Plane 2
A
A
A
B
C
C
B
Node-SID B
Node-SID A
(a) Traffic necessities identification
u
v
Plane 1
Plane 0
Plane 2
A
A
A
B
C
C
B
Node-SID B
Adj-SID C-2
Node-SID A
Node-SID A
Node-SID 4
Adj-SID 4-v
Node-SID B
1 2
1
2
3
4
4
u
v
x
(b) Recovery paths computation
Figure 4: Multiplane recovery path optimization.
The computation of recovery paths for the fail-
ure of each link (u, v) is divided into two main
steps. First, the optimization procedure identities traf-
fic which, before failure, travels over (u, v). From
this analysis, the algorithm produces two traffic de-
mand matrices, one for each of the failing link en-
try ports, that represent traffic necessities which need
to be rerouted after the link failure, Figure 4a. New
hop-by-hop paths are then optimized in two separate
planes (plane 1 and 2), one for each traffic matrix,
and such that the overall network congestion is min-
imized. Finally, hop-by-hop paths are translated into
SR paths for the installed SR configuration (plane 0),
Figure 4b. Planes 1 and 2 only compute unique re-
covery paths between each source/destination pair to
ensure a functional mapping of paths’ translation and
also of SR paths into recovery paths.
Multi-objective optimizations (approach 3) use
NSGA-II (Non-dominated Sorting Genetic Algorithm
II) (Deb et al., 2002) as optimization engine. The au-
thors experimentally showed in (Pereira et al., 2015)
that NSGA-II has good behavior in IGP link weights
multi-objective optimization problems. The remain-
ing optimizations are performed using a Single Ob-
jective Evolutionary Algorithm (SOEA).
4 EXPERIMENTS AND RESULTS
4.1 Experiments Setup
The evaluation of each approach was performed using
a publicly available network optimization framework,
NetOPT, developed by the authors. We considered a
set of distinct synthetic network topologies, summa-
rized in Table 1, varying in size (30 and 50 nodes) and
minimum in/out node degree (2,3 and 4). Traffic de-
mand matrices were randomly generated such that 1)
requirements between two nodes are inversely propor-
tional to their Euclidean distance, and 2) the expected
average link utilization is one-third of their capacity.
Traffic matrices, for topologies with the same num-
ber of nodes but with more directed links, are conse-
quently more demanding.
Table 1: Network Topologies used in the experiments.
Topology Type Nodes Links Min. degree
Rand30
2
Synthetic 30 110 2
Rand30
3
Synthetic 30 190 3
Rand30
4
Synthetic 30 220 4
Rand50
2
Synthetic 50 194 2
Rand50
4
Synthetic 50 380 4
Solutions take integers values from the range [1;
20] for link weights, while p-node values are real
numbers in the range [0.01; 10]. The optimization ob-
jectives are the minimization of the normalized sum
of links’ congestion cost Φ. It is of notice that when
this normalized cost equals 1, all loads are below 1/3
of the link capacity, and when all arcs are exactly full
the congestion value is 10 2/3.
4.2 Results
Results presented in Table 2 are average post-
convergence congestion values from 10 runs of each
experiment. They are divided into two main groups,
before (normal state) and after a single link failure.
In the last, organized by ”Approach”, values are the
mean of network congestion after the failure of each
link, one at a time. Optimized congestion values for
networks in their normal state, that is, fully functional,
Segment Routing Single Link Failure Congestion Optimization
81
are operational benchmarks with which the remaining
values contrast.
The minimum node in/out-degree of a network
topology significantly influences the quality of recov-
ery paths. Topologies with higher minimum node de-
gree have more edge-to-edge recovery paths available
after a single link failure. In this context, it is un-
derstandable that topologies with a higher minimum
node in/out-degree present globally better results.
Simple Link Protection
Results comparison for the first group of link fail-
ure experiments, simple link protections (Approach
1), evidence no significant differences in the conges-
tion values between edge-to-edge (1.a) and point of
local repair rerouting (1.b). They both globally dis-
play values below (but near) the operational thresh-
old of the network (10 2/3). These approaches, 1.a
and 1.b, only provide recovery shortest-paths for the
affected traffic. In particular, the TI-LFA simula-
tions (1.b), although capable of shortening connec-
tivity lost to under 50 msec, show high congestion
values. The TI-LFA path recovery strategy does not
account for impacts on congestion resulting from IGP
post-convergence shortest-path changes. PLR recov-
ery paths may also present additional issues. After
the IGP convergence, the PLR might no longer be on
the path to the destination. The IGP shortest-path re-
computation would repair the SR path. Another issue
may also arise if the PLR is explicitly defined in the
SR path. Due to network design, traffic may need to
be routed back to already traversed nodes.
Link Protection with SALP-SR Paths
Recomputation
Approaches 2.a and 2.b enhance the simple edge-to-
edge recovery approach (1.a) by taking advantage of
SALP-SR functionalities, and as expected, enabling
network congestion to diminish. It is important to
reemphasize that none of the approaches 2.a and 2.b
alters IGP weights. In 2.a, only SR paths are reconfig-
ured by the SALP-SR algorithm, reflecting the newly
computed IGP shortest-paths. If additionally load bal-
ancing ratios are adjusted (2.b), network congestion
values drop to half, on average, of those observed with
a simple rerouting (approach 1).
Multi-objective Optimization
Results for this approach show that, after a SALP-SR
paths recomputation (3.a vs. 2.a), networks perform
slightly better with multi-objective than with single
objective optimizations. Nonetheless, these differ-
ences fade with the adjustment of load balancing ra-
tios (3.b vs. 2.b). A multi-objective optimization
establishes a compromise between the optimization
goals, a trade-off, by relaxing configuration fitness on
both objectives. However, an increase in SR config-
urations flexibility, with a penalization on fully func-
tional network congestion, is insufficient to improve
on all results obtained with single objective optimiza-
tion. Additional measures need to be installed to im-
prove the already obtained results. Approach 4, mul-
tiplane recovery path optimization, gives the improve-
ment that is needed.
Multiplane Recovery Path Optimization
Multiplane recovery path optimization adds to SALP-
SR the ability to have more flexible SR paths. Al-
though recovery SR paths may not always locally for-
ward traffic towards the destination, they permit a re-
duction in post-failure congestion significantly. Re-
sults show that in most experiments this approach fa-
cilitates post-failure congestion values almost equiv-
alent to those observed in fully functional networks.
The higher minimum network’s node in/out degree,
the lower are post-convergence congestion values.
Moreover, this approach only requires edge nodes
to re-configure SR paths affected by the link failure.
SR recovery paths are pre-emptively computed and
stored in a PCE/SDN controller or locally at each
router. Therefore, replacement paths can be imme-
diately installed after the fault propagation. If traf-
fic necessities, which are used to compute recovery
paths, change significantly and undermine the quality
of the recovery SR paths, a PCE can quickly compute
new load balancing ratios between parallel paths and
improve the overall network congestion.
5 CONCLUSIONS
Single link failures have two main impacts on net-
work’s operations, they undermine connectivity and
impact the overall network congestion negatively.
Segment Routing, a recent routing technology, en-
ables the deployment of more complete and effective
response to the problem of preserving network’s post-
failure congestion levels. We derive two main conclu-
sions from the possible approaches to this problem ex-
plored in this work. First, although TI-LFA is an ex-
cellent solution to reestablish networks connectivity
in a brief amount of time, it is insufficient to provide
functional levels of congestion after a link failure.
Multiplane preemptive path recovery computation, on
DCNET 2018 - International Conference on Data Communication Networking
82
Table 2: Average congestion before and after single link failure.
Topology
Normal State Single Link Failure State
SALP-SR Simple Reroute SAPL-SR SO SAPL-SR MO Multiplane
SO MO 1.a 1.b 2.a 2.b 3.a 3.b 4
Rand30
2
1.40 1.42 10.40 10.45 8.49 6.09 8.19 6.26 5.06
Rand30
3
1.69 1.76 4.07 4.09 3.74 2.41 2.87 1.88 1.74
Rand30
4
1.96 2.35 9.05 9.11 6.75 3.46 5.14 3.47 2.16
Rand50
2
1.79 2.07 9.41 9.53 8.17 6.10 7.01 5.98 4.86
Rand50
4
3.74 4.91 9.48 9.57 8.98 5.31 9.14 5.87 3.73
the other hand, delivers good post-convergence con-
gestion levels but requires more time to be deployed.
Although we defend that changes on SR paths should,
when possible, be implemented at edge nodes instead
of at points of local repair, a combination of both
approaches presents itself as a good compromise to
achieve both goals, and shorten reaction time and low
network congestion.
After a link failure, connectivity can be reestab-
lished using TI-LFA, and as soon as the IGP con-
verges, optimized SR paths can be installed at edge
nodes, achieving this way both desired goals. Re-
covery paths are preemptively computed, considering
foreseeable traffic necessities, and can be stored lo-
cally at edge router or centrally by a PCE. By provid-
ing a better distribution of traffic among available re-
sources, resilience to traffic variations also increases.
Nonetheless, changes in traffic necessities may also
be addressed by correcting traffic load balancing be-
tween parallel paths, using the p-node values opti-
mization feature. This last can be implemented in
less than a 100 seconds in topologies with less than
50 nodes. The NetOpt framework is available at
http://darwin.di.uminho.pt/netopt.
ACKNOWLEDGMENTS
This work has been supported by COMPETE: POCI-
01-0145-FEDER-007043 and FCT Fundac¸
˜
ao para
a Ci
ˆ
encia e Tecnologia within the Project Scope:
UID/CEC/00319/2013.
REFERENCES
Atlas, A. and Zinin, A. (2008). Basic Specification for IP
Fast Reroute: Loop-Free Alternates. RFC 5286.
Bashandy, A., Filsfils, C., Decraene, B., Litkowski, S.,
and Francois, P. (2018). Topology Independent Fast
Reroute using Segment Routing. Internet-Draft draft-
bashandy-rtgwg-segment-routing-ti-lfa-02. Work in
Progress.
Deb, K., Pratap, A., Agarwal, S., and Meyarivan, T. (2002).
A fast and elitist multiobjective genetic algorithm:
Nsga-ii. IEEE Transactions on Evolutionary Compu-
tation, 6(2):182–197.
Feamster, N., Rexford, J., and Zegura, E. (2013). The road
to sdn. Queue, 11(12):20:20–20:40.
Filsfils, C., Previdi, S., Bashandy, A., Decraene, B.,
Litkowski, S., Horneffer, M., Milojevic, I., Shakir, R.,
Ytti, S., Henderickx, W., Tantsura, J., and Crabbe,
E. (2013). Segment Routing Architecture. Internet-
Draft draft-filsfils-rtgwg-segment-routing-01, Internet
Engineering Task Force. Work in Progress.
Fortz, B. and Thorup, M. (2000). Internet traffic engineer-
ing by optimizing ospf weights. In INFOCOM, pages
519–528. IEEE.
Gredler, H. and Goralski, W. (2005). The Complete IS-IS
Routing Protocol. Springer.
Hopps, C. (2000). Analysis of an Equal-Cost Multi-Path
Algorithm. RFC 2992 (Informational).
Moy, J. (1997). OSPF Version 2. RFC 2178 (Draft Stan-
dard). Obsoleted by RFC 2328.
Pereira, V., Rocha, M., and Sousa, P. (2017). Optimiz-
ing segment routing using evolutionary computation.
In FNC/MobiSPC, volume 110 of Procedia Computer
Science, pages 312–319. Elsevier.
Pereira, V., Sousa, P., Cortez, P., Rio, M., and Rocha, M.
(2015). Comparison of single and multi-objective evo-
lutionary algorithms for robust link-state routing. In
EMO, volume 9019 of Lecture Notes in Computer Sci-
ence, pages 573–587. Springer.
Xu, D., Chiang, M., and Rexford, J. (2007). Deft: Dis-
tributed exponentially-weighted flow splitting. In
IEEE INFOCOM 2007 - 26th IEEE International
Conference on Computer Communications, pages 71–
79.
Segment Routing Single Link Failure Congestion Optimization
83