
Par Tristan Trenchand, Network Engineer
Dans un monde où le trafic Internet double presque tous les trois ans, la performance et la résilience ne sont plus de simples objectifs - ce sont des prérequis. Et c’est exactement ce rôle central qu’endossent les points d’échange Internet (IXP).
Chez France-IX, notre ambition est claire : garantir à nos clients une connectivité toujours plus fiable, fluide et transparente.
Lorsque nous avons introduit une plateforme telle que le Nokia 7750-SR, notre ambition était double :
Après avoir exploité pendant plusieurs années des LAN de peering émulés à l’aide de la technologie VPLS, nous avons engagé des travaux visant à introduire le Segment Routing (SR). Après plusieurs mois de tests et de validations, nous avons donc migré notre cœur de réseau vers cette technologie de forwarding.
Segment-Routing (SR) est une technologie de forwarding (d'acheminement de paquets IP), normalisée depuis plusieurs années par l'IETF (Internet Engineering Task Force). Basée sur le principe du Source Routing, elle permet à la source du trafic de définir le chemin qu’emprunteront les paquets, sans qu’aucun état ne soit stocké dans les routeurs intermédiaires.
Autrement dit : les informations de routage voyagent dans le paquet lui-même.
Bien qu'initialement développée (et encore majoritairement promue) par Cisco, cette technologie est largement présente et implémentée chez les fournisseurs d'équipements réseaux ainsi que dans diverses implémentations open-source : Cisco (IOS XE, IOS-XR, NX-OS) ; Juniper (JunOS) ; Nokia (SR-OS, SR Linux) ; Arista (EOS) ; FRRouting…
L'idée derrière Segment-Routing est de permettre un meilleur contrôle du chemin emprunté par un flux de données, tout en simplifiant l'ensemble des mécanismes utilisés par le réseau.
Avec SR, dans le périmètre d’un opérateur, c'est le routeur source qui définit le chemin que suivront les paquets. Une fois ce chemin défini, il sera encodé dans les en-têtes du paquet sous la forme de d'instructions de transfert (forwarding) qu'il appartiendra à chaque nœud du chemin d'exécuter.
C’est là la première force de Segment-Routing : aucun état n’est nécessaire au sein du réseau car toutes les informations relatives à l’acheminement des paquets sont contenues dans les paquets eux-mêmes.
Pour ceux à qui le terme « segment » rappellerait de mauvais souvenirs de géométrie, rassurez-vous, ce n’est pas ce dont il s’agit ici J.
On parle ici d’instructions de fowarding. Concrètement, il s’agit d'en-têtes (headers) supplémentaires qui seront lus et exécutés au fur et à mesure de la progression des paquets sur le réseau.
Dans la terminologie SR, chacune de ces instructions est appelée segment et est identifiée numériquement par un Segment ID (SID).
La puissance de Segment-Routing réside dans le fait que chaque "instruction" peut représenter en réalité plusieurs fonctions :
Ces segments peuvent être empilés - on parle alors de stack pour construire des chemins précis, adaptés aux besoins de trafic ou aux contraintes de politique réseau.
Segment-Routing existe aujourd’hui sous deux formes différentes :
Dans notre cas, le choix s’est fait naturellement : France-IX exploite déjà un backbone MPLS robuste ; SR-MPLS s’y intègre sans changement matériel majeur, tout en simplifiant la signalisation.
A l’inverse, SRv6 peut nécessiter des changements hardware et est donc moins adapté à des réseaux MPLS déjà existants.
Dans cet article, nous ne nous attarderons donc pas sur SRv6, mais sachez qu'une telle variante existe et que la majeure partie de ce qui suit sera aussi applicable à IPv6 (avec ses spécificités protocolaires, bien entendu).
Segment-Routing se positionne comme une évolution de MPLS et de son fonctionnement maintenant bien connus. Le MPLS fonctionne très bien… mais au prix d’une complexité et d’un volume d’état élevés. Avec MPLS, chaque routeur attribue dynamiquement des labels aux préfixes IP et les annonce à ses voisins, cela signifie concrètement des milliers de labels à maintenir sur des gros réseaux ! C’est là que SR-MPLS vient changer la donne.
La phrase précédente n’est pas une évidence ? Oui, vous avez le droit d’avoir envie d’un petit rappel J !
MPLS (ou Multi Protocol Label Switching) est une technologie de forwarding standardisée (RFC 3031) et est basée sur la commutation de labels. L'idée est de construire une table de commutation en utilisant des labels associés à chaque préfixe IP connu dans le réseau et d'acheminer les paquets selon cette table de commutation plutôt que selon son adresse IP précise. C'est un fonctionnement qui, à sa création, amenait beaucoup d'avantages, dont l’accélération du temps de traitement par les ASIC des routeurs des paquets IP et la capacité à transporter d'autres protocoles qu'IP.
Ces avantages sont toujours vrais aujourd'hui et ne sont pas différents avec Segment-Routing.
Pour fonctionner, MPLS avait besoin d'au moins deux protocoles : un protocole de routage et un protocole permettant d'annoncer des labels à utiliser. Car oui, toute la construction de la table de commutation est dynamique !
Parmi les protocoles capables d'annoncer des labels MPLS, le plus utilisé aujourd'hui est LDP.
Le fonctionnement est simple :
Imaginons une architecture réseau simple, avec deux routeurs PE (PE1 et PE2, Provider Edge, ou "routeurs d'entrée") et 3 routeurs de cœur (P1, P2, P3).

Concrètement, tout cela a fonctionné pendant de longues années et fonctionne encore très bien aujourd'hui. Mais, on peut faire mieux !
Vous vous demandez sûrement quel est l'intérêt d'avoir impliqué plusieurs protocoles. Vous avez également dû remarquer qu'utiliser des labels dynamiques (et donc imprévisibles), changeant à chaque saut n'est peut-être pas très intuitif, ni très économe en mémoire.
(Exemple : 100 routeurs dans un réseau allouant chacun 1 labels différents pour les 99 autres routeurs... 9900 labels à stocker.)
Et bien... vous avez raison, et d'autres l'ont remarqué aussi.
Ce sont précisément sur ces points qu'intervient Segment-Routing.
Maintenant que l'on comprend comment fonctionne MPLS, regardons plus en détails les changements qu'amène l'utilisation de Segment-Routing.
Un des principaux changements apportés par SR est la simplification protocolaire, supprimant la nécessité d'utiliser un protocole dédié à la distribution des labels : utilisons directement le protocole de routage ! Les deux protocoles de routage majoritairement utilisés (IS-IS & OSPF) supportent la distribution des labels utilisés par SR.
De plus, pour répondre à la problématique des labels dynamiques, la réponse est assez intuitive : fixons manuellement une valeur de label à chaque routeur, qu'il se chargera d'annoncer lui-même aux autres. Ainsi, un label = un routeur !
En illustration, je vous propose de reprendre la topologie précédente.
Plaçons-nous du point de vue du routeur de droite, PE2.
L'opérateur (= vous) configure manuellement sur l'équipement une valeur de label que l’on fixera arbitrairement à 16002. Cette étape devra être répétée sur l’ensemble des nœuds du réseau avec un label qui sera unique à chaque nœud (et que l’on notera SID-PE1, SID-P2… pour la suite de cet exemple).
PE2 se chargera de l'annoncer aux routeurs du réseau à l'aide de son protocole de routage et des extensions spéciales développées pour SR.
Note :
Sans trop rentrer dans les détails de fonctionnement d'un protocole IGP comme IS-IS ou OSPF, disons juste que ceux-ci fonctionnent par propagation des informations relatives à chaque routeur : un routeur va formaliser dans une structure spécifique l'ensemble des données le concernant et va l'envoyer à ses voisins, qui la relaieront à leurs voisins, et ainsi de suite.
De cette manière, on retrouve un chemin identique à celui de l'exemple précédent, mais avec un protocole en moins à configurer et beaucoup de labels en moins à stocker.

Parmi ces techniques avancées, les plus plébiscitées sont les fonctionnalités de Traffic Engineering (SR-TE), de Network Slicing (via l'utilisation de Flex-Algo) et de protection du trafic (TI-LFA) (encore des acronymes, super !).
Nous aborderons un peu plus en détails les fonctionnalités de protection de trafic dans la section suivante. Pour l'instant, je me contenterai de décrire brièvement par un exemple les fonctionnalités de Traffic Engineering. Quant au Network Slicing, je vous propose de réserver cela pour un prochain article.
Rappelez-vous, vous avez configuré sur PE2 un label statique d'une valeur unique et égale à 16002 mais vous avez fait aussi de même sur tous les autres routeurs (on pourra les noter SID-PE1, SID-P3... et ainsi de suite).
Reprenons la topologie précédente, légèrement modifiée :

Considérons que les liens en ORANGE ne seront jamais préférés par le protocole de routage (métriques plus élevées).
Si dans mes en-têtes je ne place que le label 16002, le trafic ira jusqu'à PE2. Maintenant, souvenez-vous également que ces labels SR-MPLS (appelées également SID, ou instructions de transfert...) peuvent être empilés.
Que se passe-t-il si juste avant le label 16002, je rajoute le label SID-P4 ? Le trafic passera par P4 avant de passer par PE2, et ce même si le protocole de routage n'est pas d'accord.
Si l'on considère cette technique à l'échelle d'un grand réseau, que l'on prend en compte les possibilités infinies de chemin (modulo les capacités techniques de chaque plateforme / ASIC) et que l'on note que cela ne demande quasiment aucune signalisation supplémentaire ni aucune réservation d'état sur les routeurs (grande amélioration de l'utilisation des ressources), on a une bonne compréhension de la puissance de Segment-Routing pour aiguiller le trafic.
Passons maintenant à l’autre fonctionnalité phare de Segment-Routing, son mécanisme de protection de trafic nommé TI-LFA, acronyme de Topology Independant Loop Free Alternate.
Je compte vous épargner les détails de l’algorithmique derrière TI-LFA mais il est important ici d’avoir quelques éléments sur les technologies dites « LFA ».
En cas de panne d’un lien ou d’un nœud, c’est par défaut le rôle du protocole de routage que de s’en apercevoir et de recalculer de nouvelles routes pour acheminer le trafic. C’est un processus qui, historiquement, pouvait prendre quelques secondes (ce qui est possiblement toujours le cas aujourd’hui sur de très gros réseaux). Cela aboutit à une interruption de service (même partielle) le temps que ce calcul soit effectué. Pas vraiment optimal, me direz-vous.
Avec les techniques LFA, on va retrouver deux principes majeurs.
Le premier est de précalculer un chemin alternatif en cas de panne du chemin nominal. Bien entendu, on va chercher à ce que ce chemin soit sans boucle (« Loop free ») de manière à protéger correctement le trafic.
Le second est d’installer ce chemin alternatif dans la FIB (Forwarding Information Base) des routeurs de manière à accélérer encore plus son adoption.
🧠 Pour nommer ces deux principes, on trouve souvent dans la littérature le terme d’approche « Make Before Break » - on prépare la solution avant la panne.
Il existe différentes versions des techniques « LFA », chacune conçue comme une amélioration de la précédente. TI-LFA est la dernière en date et le restera certainement.
Le grand avantage de TI-LFA sur ses deux grandes sœurs (IP LFA, Remote-LFA, dont elle reprend tout de même des éléments d’algorithmique) est sa capacité à ne pas dépendre de la topologie du réseau pour proposer des chemins alternatifs et donc de pouvoir proposer des solutions dans 100 % des cas de panne possibles.
Cette capacité lui vient directement de l’utilisation de Segment-Routing, avec lequel il est possible d’utiliser autant de chemins que l’on souhaite en empilant des en-têtes. Comme quoi, tout est lié☺️.

⏱️ A retenir :
Avec TI-LFA :
Ce mécanisme assure une protection indépendante de la topologie, en exploitant les capacités de Segment-Routing.
Vous vous en doutez sûrement, toutes les technologies présentées ici sont actuellement déployées chez France-IX !
Avec le récent déploiement de SR & TI-LFA sur notre infrastructure, c’est la qualité globale de nos services qui ont été améliorées.

Le déploiement de SR-MPLS et TI-LFA sur notre backbone s’est traduit par :
Ces évolutions s’inscrivent dans une démarche continue : moderniser nos fondations pour accueillir les services de demain – EVPN, interconnexion Cloud, ou encore automatisation avancée.
Segment-Routing n’est pas qu’une évolution technique ; c’est un changement de paradigme.
En simplifiant le contrôle du trafic tout en améliorant la visibilité et la résilience, il s’impose comme le socle des architectures de nouvelle génération.
Chez France-IX, nous avons fait le choix d’un backbone plus simple, plus lisible et plus agile - pour bâtir, ensemble, un Internet plus robuste et plus ouvert.
Stay tuned ! D’autres articles TechHub exploreront bientôt SR-TE, EVPN (Ethernet VPN) et tant d’autres, en détail. Faites-nous savoir ce sur quoi vous voudriez + d’infos !
Segment-Routing : https://www.segment-routing.net
Techniques de L’ingénieur : https://www.techniques-ingenieur.fr/base-documentaire/technologies-de-l-information-th9/routage-transport-et-diffusion-dans-les-reseaux-42289210/segment-routing-te7594/
RFC utiles :