Contrôle d ’Accès et Hauts Débits Olivier Paul ENST de Bretagne http://www.rennes.enst-bretagne.fr/~paul/
0, 1/1 Plan 1- Introduction 2- Amélioration des performances du contrôle d ’accès réseau 2-1Problème théorique. 2-2 Amélioration des techniques de classification. 2-3 Distribution des mécanismes. 3- Conclusion.
Introduction Le contrôle d ’accès: Réseau 1, 1/6 Service qui assure une protection contre une utilisation non autorisée de ressources par une entité ou un groupe d ’entité (ISO). Réseau Client Serveur Firewall
1, 2/6 Comment ca marche ? Le Firewall se situe entre le réseau interne et le réseau externe.
1, 3/6 Comment ca marche ? Les paquets IP sont filtrés au niveau réseau/transport et au niveau application si une passerelle a été configurée.
1, 4/6 Comment ca marche ? Le paquet est envoyé sur le réseau interne.
Quels problèmes ? 1, 5/6 Filtre Classification Réassemblage Fragmentation Buffer Buffer Filtre Le processus de classification est un processus gourmand en ressources Performances faibles.
Quels problèmes ? 1, 6/6 Filtre Réassemblage Fragmentation Classification Buffer Buffer Filtre Le processus de classification est généralement ignorant de la QoS Perturbations importantes de la QoS
Algorithme linéaire 1, 6/6 Politique Si @S=A et @D=B et PS=C et PD=D alors autorise Si @S=A et @D=B et PS=C et PD=E alors interdit Si @S=A et @D=B alors autorise Si @S=A et @D=C alors interdit Flux A C C C INTERDIT CT : O(n.d), CS : O(n.d), insertion O(1).
Le problème de la classification de flux 2-1, 1/1 Le problème de la classification de flux Politique de n règles portant sur les d champs If Cond1 and Cond2 and Cond3 then action1 If Cond4 and Cond5 then action2 If Cond6 then action1 Classificateur Bornes théoriques : Complexité : O(log n), complexité spatiale : O(n d). Complexité spatiale: O(n), complexité : O(log d-1 n). Dest ports Source ports Dest Address Source Address Flags Proto flux composé de d champs Overmars, Van der Stappen [Journal of Algorithms 96]
Améliorations des techniques de classification 2-2, 1/9 Améliorations des techniques de classification Utilisation de mémoires caches. Définition de nouveaux algorithmes de classification: Permettant une parallèlisation des traitements. Utilisant la redondance des politiques de contrôle d ’accès.
Mémoires caches 2-2, 2/9 Classificateur Mémoire Cache Classificateur logiciel Miss Update (LRU) Hit Hit Flux @S,@D,PS,PD Classificateur
Mémoires Cache 2-2, 3/9 CAM (Content Addressable Memory) CAM Action (@S,@D,PS,PD) CAM Action Complexité temporelle O(1), Complexité spatiale O(n.d). 32 K entrées (64 bits), 16 ns (sibercore). SRAM (Static Random Access Memory) Fonction de hachage (@S,@D,PS,PD) pointeur SRAM Action Complexité temporelle O(1)/O(n), Complexité spatiale O(n.d). 32 Mbits, 10 ns (motorola).
Mémoires caches Vitesse de classification très importante 2-2, 4/9 Mémoires caches Vitesse de classification très importante 60 Mp/s. Taille faible Utilisation fréquente du classificateur logiciel. Sensible au dénis de service. Nombre de champ de recherche limité (CAM 255 bits, SRAM fonction de la FH).
Parallèlisation du processus de classification 2-2, 5/9 Parallèlisation du processus de classification Log(2n+1) +1 Recherche par arbre binaire Flux R0 R1 R2 010 110 011 001 000 101 111 2n + 1 tableaux de n champs X 110 111 & R1 Log(d) +1 Ex: Lakshman, Stiliadis [SIGCOMM98], CT : O(log(2n+1)), CS : O(d.n2)).
Parallélisation du processus de classification 2-2, 6/9 Parallélisation du processus de classification Solution générale Vitesse de classification constante. Ne dépend pas du type de traffic/de politique. Vitesse de classification moyenne (1 Mp/s). Solution hardware uniquement. Difficulté d ’implémentation lorsque d augmente.
Utilisation de la redondance de la politique de C.A. 2-2, 7/9 Utilisation de la redondance de la politique de C.A. If @S=A ET @D=B ET PS=C et PD=D 0 0 00 00 0 0 00 00 1 1 01 01 0 0 10 00 1 1 01 10 00 01 10 11 If @S=B ET @D=A ET PS=D et PD=C 0 00 1 01 0 10 1 11 1 1 01 01 If @S=A ET @D=B ET PS=F et PD=D 0 0 10 00 If @S=B ET @D=A ET PS=D et PD=F 1 1 01 10 Ex: Gupta, McKeown [SIGCOMM99]
Utilisation de la redondance de la politique de C.A. 2-2, 8/9 Utilisation de la redondance de la politique de C.A. A 10 00 A 1 C 00 C 01 F 10 F 10 B 1 B D 01 D 000 00 @S @D Etape 1 PS PD 01 101 010 10 10 R2 0000 00 00 111 11 10 01 0101 R 11 1 10 1000 Etape 3 0110 11 @ Etape 2 P paquet (A,B,F,D) Ex: Gupta, McKeown [SIGCOMM99], CT : O(1), CS : ?, Insertion 10s
Utilisation de la redondance de la politique de C.A. 2-2, 9/9 Utilisation de la redondance de la politique de C.A. Vitesse de classification importante 30 Mp/s (hardware), 1 Mp/s (software). Solution non générale Marche bien pour les politiques des auteurs. Evolution des politiques ? Temps de mise à jour (10 s).
Distribution du processus de classification 2-3, 1/5 Distribution du processus de classification Distribution interne à un équipement. Distribution sur plusieurs équipements du réseau. Distribution sur les équipements extrémité.
Distribution au sein d’un seul équipement 2-3, 2/5 Distribution au sein d’un seul équipement Firewall Port 0 Classificateur Classificateur Port 3 Classificateur Classificateur Port 4 Port 1 Port 2 Classificateur Classificateur Port 5 La capacité de classification est multipliée par le nombre de classificateurs
Distribution sur plusieurs équipements réseau 2-3, 3/5 Distribution sur plusieurs équipements réseau PC PC Pont Switch PC Switch Routeur PC PC Nesset, Hummen [NDS98], utiliser les capacités de C.A. des équipts réseaux.
Distribution sur les équipements extrémité 2-3, 4/5 Distribution sur les équipements extrémité PC PC Pont Switch PC Switch Routeur PC PC Ex: Bellovin [Login99], utiliser les capacités de C.A. des équipts extrémité.
Distribution du processus de classification 2-3, 5/5 Distribution du processus de classification Performance du service de C.A. Dépend du degré de distribution. Amélioration indépendante des algorithmes de classification. Autres améliorations (contrôle interne…) Gestion de la politique de C.A. Intégrité de la politique de C.A.
Et l ’ENSTB dans tout ca ? 3, 1/2 Architecture distribuée du C.A. Contrôle d ’accès par agents Distribution de politiques de C.A. Optimisation du processus de C.A. sur l ’ensemble du réseau. Définition d ’algorithmes de classification Projet CARAT (Contrôle d ’Accès et qualité de service dans les Réseaux ATm). Partenariat CNET, CELAR, ENSTB. Cartes IFT (CNET), solution générale, pas de parallélisation. Performances: 1 Mp/s, 53 octets, Insertion 1 ms.
3, 2/2 Conclusion Améliorations des performances de C.A. : Plusieurs voies pas forcément divergentes (combinaisons possibles). Comment juger un outil de contrôle d ’accès : Mp/s. Nombre de champs utilisables. Nombre de règles pouvant être analysées. Temps d ’insertion.