Sujet de Thèse
Titre :
Automatisation SDN sûre de réseaux à temps et fiabilité critiques
Dates :
2019/09/30 - 2022/09/30
Etudiant :
Description :
Les réseaux sont aujourd'hui gérés par des administrateurs sur la base d'informations de métrologie et de supervision pour réagir aux évolutions du trafic et aux défaillances des infrastructures de communication. Une tendance nouvelle consiste à automatiser cette gestion du réseau par le déploiement de contrôleurs de réseau, dynamiquement capables de détecter, voire d'anticiper l'occurrence de changements d'états du système réseau et de programmer sa reconfiguration (Software-Defined Networking (SDN) [5, 8]).
Dans le domaine des applications à temps et fiabilité critiques, le réseau est finalement le seul sous-système à ne pas encore être automatisé. Cela s'avère d'autant plus pénalisant dans le contexte de l'Usine du Futur et de l'Industrie 4.0 pour lesquelles les exigences de flexibilité, de réactivité, de sûreté de fonctionnement et de sécurité sont toujours plus fortes. Cette thèse concerne donc l'automatisation sûre de réseaux, vecteurs des communications d'applications fortement contraintes.
Comme le note [9], le contrôleur est un élément clé en SDN, potentiellement sujet à des attaques (par exemple, trafics malveillants conduisant à des attaques de Déni de Service [4]) et des pannes. Le processus de génération des règles peut ainsi être influencé et conduire à des incohérences de plans. Des liens et des équipements peuvent être congestionnés voire utilisés bien que défaillants. Même si des mécanismes internes (de détection d'intrusion, de prévention d'attaques, de détection de conflits de règles) peuvent renforcer la sécurité d'un contrôleur, il apparait dans la littérature (surveys [12, 6, 3]) des architectures à contrôleurs multiples (HyperVisor, Onix, ONOS, etc.) évitant ainsi le point de défaillance/invasion unique et assurant la continuité du plan de donnés.
L'emploi de multiples contrôleurs est traditionnellement abordé pour la gestion (passage à l'échelle, équilibrage de charges) de larges architectures par partitionnement/distribution en domaines d'administration limités ou encore pour l'amélioration de la robustesse et de la sécurité du contrôle d'un réseau. C'est dans ce dernier cas que nous nous plaçons, en abordant, la sécurité comme un problème d'indisponibilité [12] et de confiance en le contrôle, et en considérant donc conjointement fiabilité et sécurité.
Dans la plupart des travaux, on considère un cluster de contrôleurs (de systèmes et langages hétérogènes pour limiter l'impact des attaques) et on ajoute une interface de prise de décision (de type votation selon des statistiques de génération de règles factices minoritaires), un proxy entre l'interface sud et le(s) contrôleur(s) ou un agent broker calculant un indicateur de réputation pour chaque contrôleur. Toutefois, que ce soit en topologie linéaire ou hiérarchique, la coordination entre les contrôleurs passe par une synchronisation et des échanges/notifications entre les contrôleurs [2]. Cette interface (Est-Ouest) peut s'avérer non sécurisée (chiffrement nécessaire), nécessite un maintien actif de la connexion (messages keep-alive [1]), et ne bénéficie pas de protocoles standardisés reconnus [11]. Elle peut donc servir à véhiculer des informations malveillantes et conduire ainsi à des incohérences de règles entre contrôleurs. Nous proposons donc d'investiguer une réplication passive (sans synchronisation Est-Ouest que ce soit en mode polling ou producteur/consommateurs [6]) où lorsque le contrôleur principal entre dans un état défaillant/indisponible, le contrôleur de secours prend la main (primary-backup replication). Il s'agit d'une stratégie asymétrique avec définition de rôles entre les contrôleurs.
Pour détecter une situation anormale (panne ou attaque), nous proposons que le contrôleur de secours vérifie (en temps-réel - aucune confiance envers le contrôleur principal - et de manière asynchrone) les règles en vigueur, en capturant et en analysant le trafic sur le réseau. Nous nous focalisons dans un contexte Industrie du Futur, où le trafic critique est connu (tout du moins un ensemble d'informations - période, taille, séquence d'événements paire source/destination, exigences de Qualité de Service : débits, délais, taux de pertes). Le contrôle sera déclaré sain si et seulement si les caractéristiques de ce trafic sensible sont respectées. Il est admis que ces informations seront à priori connues du contrôleur de secours (interface Nord) ce qui lui permettra de prendre la main sur le contrôleur principal [11].
Nous proposons ici d'étendre le concept d'observabilité de réseau défini dans [10, 7]. Le premier point consiste à déterminer le placement optimal des agents de capture du trafic (en considérant à la fois les liens de contrôle et de transport). La solution devra minimiser le nombre d'agents et la charge induite sur le réseau, être robuste à des plans de contrôle issus de méthodes non déterministes, supporter un niveau de redondance, et minimiser les délais de transports vers le contrôleur de secours. Ce problème d'optimisation à contraintes multiples pourra être modélisé sous la forme de programmes linéaires (à variables réelles), de programmes linéaires en nombres entiers, ou de programmes linéaires mixte, et une heuristique sera proposée. Ensuite, il s'agira de déterminer à partir de la trace si les flux sont correctement servis par le contrôleur principal. Deux types de tests sont envisagés : de cohérence et temporel. D'une part, chaque événement associé à ces flux servira à alimenter un modèle à états (représentation de l'ordonnancement des paquets et de leur localisation), qui par flow model-checking, sera comparé avec les exigences de chaque flux (exprimé par exemple selon un tagged signal model) afin de vérifier qu'aucune situation non tolérée n'est atteinte. D'autre part, à partir du modèle préalablement élaboré et d'une reconstruction des plans de données et de contrôle (et in fine, des règles de commutation définies par le contrôleur principal), les propriétés temporelles (comme les délais de bout en bout) seront calculées selon des théories déterministes (calcul réseau ou approche par trajectoire) afin d'être comparées aux exigences (comme la fraîcheur). La comparaison devra tenir compte de l'écart entre la date perçue par le contrôleur de secours et la date réelle d'arrivée en un point du réseau, incertitude qui devra être analytiquement majorée lors de l'optimisation du placement des agents de capture.
Si les exigences ne sont pas satisfaites, le contrôleur de secours prendra la main (nous supposerons une connexion de type OpenFlow Master/Slave). Une solution de reconfiguration devra être proposée, notamment lorsque la stratégie de communication entre le contrôleur et les équipements est de type in-band [6], c'est-à-dire lorsqu'elle utilise les liens de transport des données (et non des liens dédiés). Le point important à étudier ici concerne la gestion du transitoire, à savoir comment garantir la cohérence des tables (et in fine l'ordre des messages et qu'aucun paquet ne sera perdu) alors que seul un sous-ensemble des équipements a migrer vers le nouveau contrôleur (un seul contrôleur ayant simultanément la main sur un équipement), et plus singulièrement en cas d'avalanche de paquets. Il s'agira donc de définir un ordre de migration des équipements garantissant la cohérence des plans. Plus généralement, la question du passage à l'échelle et la complexité des algorithmes retenus sera à évaluer.
Les études précédentes seront validées en pratique sur la plateforme ReLans (située au CRAN, et identifiée comme plateforme de recherche dans le projet Digitrust). Composée de 8 commutateurs Cisco IE3000 (supportant PTP Precision Time Protocol), et d'une centaine de ?-PC, elle vient d'être enrichie de 5 commutateurs IE4000 supportant les mécanismes TSN (Time Sensitive Network) et les protocoles SDN. Chacun des algorithmes et des protocoles de reconfiguration sera implanté et évalué sur cette plateforme, avec génération de défaillances et injection d'attaques.

[1] J. Benabbou, K. Elbaamrani, and N. Idboufker. Security in openflow-based sdn, opportunities and chal- lenges. Photonic Network Communications, Oct 2018.
[2] F. Benamrane, M. Ben mamoun, and R. Benaini. An east-west interface for distributed sdn control plane : Implementation and evaluation. Computers & Electrical Engineering, 57 :162 175, 2017.
[3] T. Hu, Z. Guo, P. Yi, T. Baker, and J. Lan. Multi-controller based software-defined networking : A survey. IEEE Access, 6 :15980 15996, 2018.
[4] R. Macedo, R. de Castro, A. Santos, Y. Ghamri-Doudane, and M. Nogueira. Self-organized sdn controller cluster conformations against ddos attacks effects. In 2016 IEEE Global Communications Conference (GLOBECOM), pages 1 6, Dec 2016.
[5] A. Maleki, M.M. Hossain, J.-P. Georges, E. Rondeau, and T. Divoux. An sdn perspective to mitigate the energy consumption of core networks GEANT2. In SEEDS 17, International Conference on Sustainable Ecological Engineering Design for Society, Leeds, Royaume-Uni, September 2017.
[6] Y.E. Oktian, S. Lee, H. Lee, and J. Lam. Distributed sdn controller system : A survey on design choice. Computer Networks, 121 :100 111, 2017.
[7] D. Petit, J.-P. Georges, T. Divoux, B. Regnier, and P. Miramont. Freshness analysis of functional sequences in launchers. In 4th IFAC Symposium on Telematics Application, Porto Alegre, Brésil, November 2016.
[8] D. Petit, J.-P. Georges, J.-P., T. Divoux, B. Regnier, and P. Miramont. A strategy to implement a soft- ware defined networking controller in a space launcher. In 3rd IFAC Conference on Embedded Systems, Computational Intelligence and Telematics in Control CESCIT 2018, Faro, Portugal, June 2018.
[9] C. Qi, J. Wu, G. Cheng, J. Ai, and S. Zhao. An aware-scheduling security architecture with priority-equal multi-controller for sdn. China Communications, 14(9) :144 154, Sept 2017.
[10] J. Robert, J.-P. Georges, J.-P., T. Divoux, P. Miramont, and B. Rmili. On the observability in switched Ethernet networks in the next generation of space launchers : Problem, challenges and recommendations. In SPACOMM 15, 7th International Conference on Advances in Satellite and Space Communications, pages 1318, Barcelone, Espagne, April 2015.
[11] F. Shang, Y. Li, Q. Fu, W. Wang, J. Feng, and L. He. Distributed controllers multi-granularity security communication mechanism for software-defined networking. Computers & Electrical Engineering, 66 :388 406, 2018.
[12] Y. Zhang, L. Cui, W. Wang, and Y. Zhang. A survey on software defined networking with multiple controllers. Journal of Network and Computer Applications, 103 :101 118, 2018.
Département(s) : 
Ingénierie des Systèmes Eco-Techniques