Le secours par RNIS bout en bout
C’était, jusqu’à il y a peu, la méthode la plus courante. Elle présentait un bon « rapport qualité – prix ». Relativement peu onéreuse (du moins tant que le secours n’est pas activé), simple à implémenter et assez fiable. Elle est maintenant souvent remplacée par le secours ADSL (du moins en France), nous y reviendrons.
Remarque : Plus récemment encore on voit apparaître des solutions de secours 3G+ (UMTS) soit donc par voie hertzienne … Le Top, mais attention à la perte de débit en mode secours.
Le principe est simple :
* Le routeur de site est équipé d’une carte RNIS et il est connecté à un accès RNIS
* Lorsque le lien nominal est hors service, il active une connexion RNIS en remplacement
* Lorsque le lien nominal revient à l’état UP (par opposition à DOWN ! J’aime développer vos capacités linguistiques !), il coupe la connexion RNIS et renvoi le trafic sur le lien nominal
Il existe deux méthodes principales :
* Le secours RNIS de bout en bout où le routeur du site A va appeler directement par RNIS le routeur du site B. Ceci implique donc que le routeur du site B soit également équipé d’une carte RNIS ! C’est le sujet de ce chapitre.
* Le secours RNIS par NAS où le routeur du site A va appeler un équipement spécial du backbone. Celui-ci va « abouter » sa connexion RNIS au backbone et ainsi le site retrouve l’accès au réseau. Ce sera le sujet du chapitre suivant.
Petit rappel sur RNIS
On ne sait jamais ! Peut-être que vous ne connaissez pas RNIS ! Je m’en voudrais de vous laisser dans l’expectative !
RNIS = Réseau Numérique à Intégration de Service. En anglais on parle d’ISDN (Integrated Service Data Network). C’est un réseau développé dans les années 1990 amené à remplacer le réseau téléphonique analogique classique.
Dans la pratique il a complètement supplanté le RTC (Réseau Téléphonique Commuté) classique auprès des entreprises, mais n’a pas percé auprès des particuliers.
En dehors du fait qu’il offre une numérisation des communications depuis le site client (contrairement à l’analogique qui n’était « numérisé » qu’à l’arrivée au central télécom), il offre de très nombreux services.
Je n’ai pas l’intention de vous faire un cours sur RNIS, vous trouverez facilement sur le Web de quoi étancher votre soif si nécessaire. Ce qui nous importe ici c’est :
- sa structure en canaux B à 64 Kbps
- les typologies d’accès T0 et T2
Vous pouvez souscrire deux types d’accès RNIS :
- l'accès T0 propose deux canaux (circuits) de communication simultanés à un débit de 64 Kbps (appelés canaux B) et un canal de signalisation à 16 Kbps (appelé canal D). Si l’on cumule le débit des deux canaux B on peut donc obtenir une connexion à 128 Kbps au maximum sur un accès T0.
- l'accès T2 propose 30 canaux B à 64 Kbps et un canal D à 64 Kbps pour la signalisation. En cumulant le débit des 30 canaux B vous pouvez donc (en théorie) obtenir une connexion à 1920 Kbps.
N’oublions pas que ces accès relèvent du monde téléphonique ! Un accès possède donc un numéro (de téléphone) et il est nécessaire de numéroter pour entrer en communication avec un correspondant.
Vous pouvez associer des séquences de numéros à un même accès. Ainsi vous pourriez donner 5 numéros à un T0 (01.46.46.10.00 à 05 par exemple). On appelle cela une SDA (Sélection Directe à l’Arrivée). Cette SDA peut ainsi être répartie entre 5 postes sur le bus S (derrière la TNR : Terminal Numérique de Réseau).
Si vous souhaitez pouvoir émettre 6 communications simultanément, vous pouvez commander plusieurs T0 (ici il vous en faut 3, car 3*2 canaux B = 6 canaux !). Ces accès peuvent être montés en groupement d’accès et associés à une seule séquence SDA …
Enfin au-delà de 12 canaux (6 T0) il est préférable de commander un T2. Vous pouvez très bien commander un T2 mais n’y prendre que 15 canaux sur les 30. La facturation de l’opérateur s’opère au canal. A ce T2 vous pouvez bien sûr associer une séquence SDA (50 numéros par exemple). A noter qu’un T2 sera généralement connecté à un équipement capable de gérer un grand nombre de lignes. Dans le cas d’une utilisation pour le service téléphonique il sera connecté à un PABX (Private Branch Exchange). Dans le cas d’un réseau informatique il pourra être connecté à un NAS (Network Access Server) ou un routeur. Nous y reviendrons …
Pourquoi avoir plus de numéros que de canaux possibles ? Parce que tout le monde ne téléphone pas en même temps ! Vous pouvez très bien avoir 30 personnes dans votre entreprise (donc 30 numéros) mais ne jamais avoir plus de 10 communications en même temps !
Le schéma ci-après tente de synthétiser mes propos !
Le cas 1 : permet avec un accès de 2 canaux B (deux communications simultanées) d’adresser 5 postes téléphoniques grâce à la SDA de 5 numéros.
Le cas 2 : permet d’obtenir un débit de support maximum de 128 Kbps en cumulant les deux canaux B. Une séquence SDA est inutile puisqu’il s’agit de joindre uniquement un seul équipement (le routeur). A noter que le routeur est installé derrière la TNR et devra présenter une interface S0 pour se connecter au Bus RNIS. Chez Cisco vous utiliserez des cartes WIC-1B-S/T, WIC-2B-S/T, NM-4B-S/T ou NM-8B-S/T selon le nombre d’accès T0/S0 à connecter.
Le cas 3 : permet de connecter un groupement de T0 (ici 3) à un PABX. Ce PABX pourra desservir jusque 15 postes grâce à la séquence de SDA 15 numéros associée. Bien sûr il ne pourra y avoir au maximum que 6 communications simultanées.
Le cas 4 : présente le raccordement d’un PABX par un T2 offrant 30 canaux B. Il est associé à une séquence SDA de 100 numéros et peut donc servir 100 postes. Mais seulement 30 communications simultanées.
Le cas 5 : présente un routeur connecté à un T2 offrant 30 canaux B. Le débit maximum possible sera donc de 1920 Kbps en cumulant tous les canaux B. Cet accès est uniquement associé à un numéro (dit Tête de groupement) car il y a un seul équipement à adresser. Le routeur doit être équipé d’une interface T2. Chez Cisco vous utiliserez des interfaces NM-1A-E1 ou NM-1A-2E1 selon le nombre de T2 à raccorder.
Le cas 6 : permet de connecter un groupement de T0 (ici 3) à un routeur. Ce routeur disposera au maximum d’un débit de 384 Kbps égal à 6 fois 64 Kbps (6 canaux B). Cet accès est uniquement associé à un numéro (dit Tête de groupement) car il y a un seul équipement à adresser.
Vous en savez maintenant suffisamment pour passer à la suite …
Grands principes
Comme indiqué précédemment, cette méthode permet de secourir à la fois la liaison d’accès au réseau, le réseau lui-même et même la liaison d’accès au site de destination. Le routeur qui détecte l’indisponibilité du parcours active la connexion RNIS vers son destinataire.
Les paramètres important dans cette configuration sont :
- le débit du lien RNIS de secours
- le principe d’activation du secours
- le principe du retour à la situation nominale
Le débit du lien RNIS
Il va directement dépendre du nombre de canaux B associé à chaque accès. Dans notre exemple, si le site A dispose de 3 T0 (donc 6 canaux B) et que le site B dispose seulement d’un T0, le débit maximum ne saurait excéder 128 Kbps (2 * 64 Kbps). Ce débit est donc déterminer à la conception du réseau en fonction de votre estimation du niveau de service acceptable en mode secours.
En effet, vous n’êtes pas obligé de fournir en mode secours un débit identique au mode nominal. Par exemple, si vos deux raccordements réseaux permettent un échange à 2 Mbps entre les deux sites, vous pouvez très bien n’autoriser que 1 Mbps en secours (soit donc 15 canaux B). On appelle cela : la dégradation de service ! Vous avez donc des secours en mode dégradés et d’autres sans dégradation (au même débit que le débit nominal).
Ce choix de débit de secours va dépendre :
- de ce que peuvent supporter vos applications et vos utilisateurs (faites gaffe aux manifs !)
- de ce que le DSI est prêt à payer ! Forcément, un accès T2 (30 canaux B => 1920 Kbps) est plus cher qu’un T0 (2 canaux B => 128 Kbps) ! En plus les cartes routeurs et les chassis routeurs ne seront pas nécessairement les mêmes ! Un routeur supportant un T2 sera plus cher qu’un routeur supportant un T0 !
- de ce que la technique vous autorise … Par exemple, en France vous ne pouvez pas dépasser 1920 Kbps pour une seule connexion RNIS de bout en bout ! En effet, le réseau backbone RNIS n’a pas été conçu pour permettre des connexions « haut débit » d’un bout à l’autre du réseau. Il est prévu pour acheminer des connexions éparses (capillaires) réparties entre différents points du réseau. En standard vous ne pouvez pas dépasser un débit de 1 Mbps en connexion bout en bout dans le réseau ! Au-delà vous devez faire une demande spécifique à France Télécom afin qu’il vérifie la capacité du backbone à acheminer ce débit d’un point à un autre ! Ceci n’empêche pas, en standard, un site d’établir 5 communications simultanées à 384 Kbps (soit 5 * 6 canaux B => 1920 Kbps) mais avec 5 sites distants différents pas avec un seul site distant ! Donc si vos accès nominaux permettent un échange à 4 Mbps entre vos sites A et B, le secours RNIS vous limitera au mieux à un débit de secours de 1920 Kbps ! Vous aurez donc un secours dégradé à 50%. Cette limitation pourra vous amenez à choisir d’autres types de secours que nous verrons dans les chapitres suivants …
Bref ! Le choix du débit de secours est donc un délicat et délicieux compromis entre le supportable fonctionnel, le supportable financier et le possible technique ! Bon courage !
MultiLink PPP (dit MLPPP)
Dans mes propos précédents j’évoque constamment le cumul de canaux B pour obtenir un débit RNIS compris entre 128 Kbps (2 canaux B) et 1920 Kbps (30 canaux B). Malheureusement, ne comptez pas sur RNIS pour vous livrer un UNIQUE train binaire au débit correspondant ! Si vous établissez une communication à 128 Kbps entre deux sites, vous aurez 2 connexions à 64 Kbps et non pas 1 connexion à 128 Kbps !
Ce sera au routeur de mettre en œuvre une technique permettant de cumuler le débit de ces deux canaux … Comme il ne peut pas le faire au niveau 1 puisque celui-ci est livré par les TNR comme deux circuits distincts, il va le faire au niveau 2 !
Le protocole de niveau 2 PPP (Point to Point Protocol), permet d’implémenter une fonction dite de « MultiLink ». C'est-à-dire qu’il va gérer X connexions de niveau 2 comme une seule et même connexion ! Les paquets niveau 3 transmis seront placés chacun dans des trames associées indifféremment à n’importe quelle connexion de niveau 1 (canal B). Au final vous avez donc un débit de niveau 2 équivalent à X débit de niveau 1 (moins l’overhead des encapsulations bien sûr !).
La fragmentation et le séquencement de paquets, comme spécifié dans le RFC 1717 (rendu obsolète par le RFC 1990), scindent la charge de PPP et envoient des fragments sur des circuits parallèles. Dans ce cas précis, ce « faisceau » de tubes Multilink PPP fonctionne comme une seule liaison logique, améliorant le débit et réduisant la latence entre routeur homologues.
Je n’entrerai pas dans le détail du fonctionnement MultiLink (adressage du trunck, séquencement trames et trunck, reprise sur erreur, etc …), mais sachez que cette procédure est tout de même assez consommatrice en ressource et nécessite parfois d’augmenter les performances des équipements la mettant en œuvre …
L’activation du secours
Nous avons précédemment étudié le principe de détection d’indisponibilité du lien ou du réseau nous partons donc du principe que notre routeur de site A est informé de l’indisponibilité du parcours (local ou distant). Il peut donc engager la procédure de bascule sur le lien de secours (ici le lien RNIS). Il est ici important de se pencher sur quatres aspects :
- le type de secours (secours de lien « physique » ou secours par routage)
- la temporisation d’activation et filtrage ou sélection du trafic
- la notion de maître – esclave (ou call-back)
- la notion d’identification
Type de secours
Nous avons vu dans le chapitre « Détection d’indisponibilité » que le routeur du site A pouvait détecter trois types d’indisponibilités :
- l’indisponibilité de sa liaison nominale de raccordement
- l’indisponibilité du backbone de rattachement
- l’indisponibilité d’un site distant
Dans le premier cas, on ne fera généralement pas appel à un protocole de routage. Le routeur détectera localement la perte du niveau 2 (PPP ou HDLC) et informera sa table de routage que la destination est hors service.
Toutefois, nombre d’équipements (notamment chez Cisco) permettent de « lier » par programmation deux interfaces en définissant l’une d’elles comme secours de l’autre. Chez Cisco la commande utilisée est « backup interface type numéro ». Dans la programmation de l’interface nominale (LL par exemple) vous définissez ainsi l’interface de secours. Ce mode permet donc de basculer très rapidement et sans protocole de routage sur l’interface RNIS de secours. Nous sommes donc dans un mode que j’appelle « secours de lien physique ».
Si les capacités de programmation de votre routeur ne vous permettent pas d’implémenter un « secours physique », vous utiliserez le mode « secours par routage » pour suppléer à l’indisponibilité d’un lien de raccordement direct. En effet, l’indisponibilité du lien de raccordement entraînera nécessairement le passage « down » des routes associées dans la table de routage. Donc, si vous avez décrit une route de secours dans cette table, elle sera activée ...
Dans les cas d’indisponibilité du backbone ou du site distant nous avons vu qu’il nous fallait compter sur les updates d’un protocole de routage pour nous informer du problème (sauf pour les réseaux Frame Relay qui utilisent le protocole LMI). Le routeur du site A basculera donc sur le lien de secours sur commande de sa table de routage. Ceci implique que dans la table de routage il existe donc deux lignes de programmation pour une même destination. Dans l’exemple ci-dessous, sur le routeur A nous avons :
- la route nominale : 11.0.0.0 via 12.0.0.2 sur S1 => tout trafic externe à envoyer au routeur 12.0.0.1 point d’entrée du backbone IP.
- la route de secours : par exemple 11.0.0.0 via 14.0.0.2 sur BRI0 => tout trafic externe à envoyer au routeur 14.0.0.2 accessible via la liaison RNIS connectée à l’interface BRI0 (BRI = Basic Rate Interface)
Remarque : vous noterez que l’adresse réseau 14.0.0.0 est affecté à l’ensemble du réseau RNIS ici. Chaque routeur qui serait connecté à ce réseau aurait donc une adresse 14.x.x.x (ici A a l’adresse 14.0.0.1 et B l’adresse 14.0.0.2). En effet RNIS est un réseau physique comme pourrait l’être un réseau Frame Relay ou LL. Alors que sur le WAN IP, nous avons donné des adresses réseaux différentes pour chaque lien d’entrée, car nous sommes sur un réseau de niveau 3.
Vous êtes toutefois des personnes avisées ! Vous avez sans doute remarqué qu’il y avait un petit problème ! Pour une même destination deux routes sont décrites dans la table de routage … Laquelle le routeur choisira-t-il ? S’il choisi systématiquement la route RNIS, vous allez écoper d’une belle facture en fin de mois !
Il vous faudra donc implémenter une notion de coût ! Je vous renvoie à l’excellent cours « Routage IP Niv. 1 » pour vous rafraîchir la mémoire si nécessaire. Vous donnerez donc un coût supérieur à la route via RNIS de manière à être certain que la route nominale sera choisie en priorité si elle est disponible. Dans le schéma précédent vous voyez que la route nominale a un coût de 3 alors que la route RNIS a un coût de 5.
Dans les deux derniers cas nous sommes donc dans ce que j’appelle « un secours par routage ». A noter que ce mode est nettement moins réactif que le premier car il faut attendre les déclarations « down » des routes nominales ce qui selon les protocoles de routage peut prendre un certain temps. Rappelez-vous la notion de latence définie dans le toujours excellent cours « Routage Niv. 1 » !
Temporisation d’activation et filtrage de trafic
Ces deux notions ne semblent à priori pas avoir de rapport et pourtant c’est le bien le cas ! N’oublions pas que RNIS est un réseau à établissement de circuits de type téléphonique. Le coût de revient de ce réseau s’établit sur 3 paramètres :
- l’abonnement d’accès au réseau facturé forfaitairement en fonction du type d’accès et du nombre de canaux souscrits
- le coût de la communication en fonction de sa durée (en secondes généralement)
- le coût de la communication en fonction de sa distance (une communication internationale est plus chère qu’un communication locale !)
Si on active une communication RNIS dès que le routeur détecte une indisponibilité du parcours nominal et qu’on la coupe seulement au rétablissement de la liaison nominale, on peut être confronté à une belle facture de communication au final (va pas être content le DAF !).
On peut donc avoir une approche plus mesurée ! On pourrait déjà n’établir la communication que si le site doit émettre des données ! Après tout si la coupure a lieu la nuit alors que personne ne travaille sur ce site ce n’est peut-être pas utile de jeter l’argent par les fenêtres … En plus on les connaît ces opérateurs ! Pour les faire travailler la nuit sur le rétablissement du lien nominal ce n’est pas gagné ! Au final on va activer et payer une communication pendant plusieurs heures pour rien !
Mais « Emission de données » par le routeur, ne veut pas forcément dire « Données utiles » ! Par exemple, si RIP est implémenté sur votre routeur (parce qu’en mode nominal il échange des updates avec d’autres routeurs (voir le cours Routage Niv. 1). Votre routeur émet donc potentiellement des updates RIP sur toutes ses interfaces (donc l’interface RNIS également) toutes les 30 secondes ! Est-ce vraiment utile ? Ne serait-il pas judicieux de sélectionner uniquement le trafic en provenance du LAN (donc de machines « utilisateur ») pour justifier de l’activation du lien de secours ?
On peut aussi pousser le raisonnement plus loin … En mode nominal le routeur échange des données avec l’ensemble des sites du réseau peut-être qu’en mode secours on peut se contenter de n’établir la liaison de secours que lorsque du trafic doit être émis vers un seul site (site central par exemple) ou un nombre restreint de sites. Dans ce cas on peut ne sélectionner que le trafic à destination de certaines adresses IP destination.
En synthèse :
- on temporise l’activation de la connexion RNIS de secours jusqu’à ce que du trafic à émettre se présente
- on sélectionne (filtre) le type de trafic susceptible de générer la connexion RNIS
Tous les routeurs offrent des commandes/fonctions de sélection/filtrage de trafic et temporisation d’activation de connexion. Toutefois nous démontrerons par la suite que dans les faits il n’est pas si évident de pouvoir limiter la connexion sur ces critères.
Maître – esclave et Call-back
Cette considération n’est utile que dans un mode de secours « bout en bout » mettant en relation directement deux routeurs.
Nous avons démontré précédemment que les deux routeurs de notre réseau étaient chacun en mesure de détecter l’indisponibilité de leur parcours nominal. Dans ce cas, qui est responsable de l’activation du lien de secours ? Si les deux décident simultanément d’établir une communication de secours on sera confronté à un croisement des connexions (dans le meilleur des cas) ou (dans le pire des cas) à non établissement de communication car l’autre extrémité est occupé (en train de numéroter !).
Dans l’absolu il est donc nécessaire d’avoir un routeur responsable de l’établissement de la communication (le maître) tandis que l’autre ne fait que recevoir (l’esclave). Ceci permet également de définir quel site paiera les coûts de communication (après tout, le site isolé appartient peut-être à une société partenaire et non pas au titulaire du réseau central !). Dans la programmation d’un routeur on peut donc définir qui est maître ou esclave.
Toutefois ceci n’est pas totalement obligatoire car en RNIS les communications s’établissent par une signalisation préalable sur Canal D (alors que la connexion de Data est établie sur Canal B). Donc il est possible à deux routeurs (de la même marque ! Largement conseillé !) de s’accorder sur qui établira la communication en cas de conflit d’appel. Il est même possible à un routeur esclave de demander au routeur maître d’établir une communication car l’esclave a des données à lui émettre ou appelle ce mode le « Call-back » ! Vive le canal D !