Traditionnellement, dans un Datacentre, on a protégé les serveurs avec des boitiers de type firewall. On a d’abord protégé l’accès au datacentre, puis on a protégé les sous-réseaux en configurant comme passerelle par défaut de ces sous-réseaux le firewall. L’intérêt d’utiliser des boitiers spécialisés est qu’ils sont effectivement très performants de par leur expérience dans le domaine et souvent ils utilisent des fonctions matérielles spécifiquement développées pour gérer du trafic à haut voire très haut débit. L’inconvénient évident est que ces boitiers ne sont en général pas utilisés pour les échanges au sein d’un même sous-réseau. De ce fait, les VMs et containers d’un même sous-réseau, voir les serveurs en bare-metal ne voient pas leurs échanges « locaux » (au sein du même sous-réseau) sécurisés par le firewall.
Un autre problème de ces firewalls matériels est qu’ils deviennent des points de passage obliges pour tout le trafic, ce qui peut les faire devenir des points de congestion d’une part des lors que les trafics Est-Ouest augmentent dans le datacentre, et on sait que la tendance ces dernières années est justement une augmentation régulière de la proportion de trafic Est-Ouest. Qui dit passage obligé dit aussi point de faiblesse car un problème sur le firewall peut avoir du coup des conséquences sur une grosse partie voire la totalité des applications.
Pour réaliser cette sécurisation au sein d’un même sous-réseau, on a inventé la micro segmentation qui consiste à appliquer une politique de sécurité directement au niveau de la VM voire du container. Cette sécurisation se fait par logiciel directement au sein de l’hyperviseur. Cette sécurité présente aussi l’énorme avantage d’être distribuée, ce qui signifie que l’on a plus potentiellement les problèmes de performance et de disponibilité que l’on pouvait rencontrer avec les firewalls matériels. En revanche, ces traitements de filtrage des paquets sont réalisés par la CPU du serveur sur lequel l’hyperviseur est installé. Historiquement, la puissance des CPU augmentait massivement tous les ans. Cela n’était donc pas un problème de demander à la CPU en plus de gérer l’hyperviseur et les VM de gérer aussi toute la partie I/O et sécurisation de ces I/O. Depuis ces quelques dernières années, la puissance des CPU n’augmente plus aussi vite, voire plus du tout. Du coup, il est devenu essentiel de trouver des moyens de libérer cette CPU de certaines des fonctions qui lui étaient traditionnellement dévolues.
Pour la gestion des I/O et surtout le traitement réseau, visibilité et sécurité de ces I/O, l’industrie est en-train de faire évoluer les cartes réseaux en SmartNIC, aussi appelées DPU pour data processing unit. Ces cartes implémentent de la CPU et des ASIC/FPGA qui sont programmés pour faire du filtrage de flux, de la copie de flux, de la télémétrie réseau via IPFIX par exemple, de l’offload de certaines encapsulations, du chiffrement ….
Ces SmartNIC sont en fait la troisième vague de la sécurité réseau des I/O serveurs, combinant le meilleur des deux premières vagues, à savoir la performance du matériel avec la granularité du logiciel distribué dans chaque serveur.
En effet, les appliances matérielles apportent de la performance grâce à leur spécialisation, voire leur ASIC spécifique, mais ces plateformes sont à l’extérieur du serveur et ne peuvent donc pas tracer/bloquer tous les flux, en particulier ceux qui ne sortent pas du serveur virtualisé. Les solutions logicielles embarquées au sein des serveur apportent cette capacité à tracer et/ou bloquer des flux internes au serveur. Par ailleurs, de par leur côté distribué, c’est une solution dont la performance augmente avec chaque serveur, ce qui adresse aussi le problème que l’on pourrait rencontrer avec les solutions matérielles qui ont été mises en place pour un certain profil de trafic mais qui pourraient s’avérer comme des points de congestion si le trafic évolue à la hausse par exemple.
Certaines SmartNIC peuvent du coup éviter d’upgrader les firewall Est-Ouest, ou les sondes ou les boitiers de chiffrement, voire les solutions de chiffrement type MACSEC au niveau des commutateurs Ethernet, ou tout celà à la fois.
De plus, à propos du chiffrement, le fait de réaliser toutes ces operations en un seul point permet de faire du chiffrement sans rendre aveugles pour autant les outils de télémetrie et capture de paquets qui opèrent au niveau des commutateurs, là ou les paquets sont rendus illisibles par le chiffrement. Les SmartNIC permettent ainsi de voir le trafic et d’avoir des statistiques sur les paquets avant ou après le chiffrement. Voir les paquets avant le chiffrement peut être très utile pour des operations d’analyse pointue des trames. Et voir les paquets après le chiffrement peut servir à prouver qu’on effectue effectivement le chiffrement sur un certain type de flux, par exemple à des fins d’audit de sécurité. Cette solution de chiffrement par SmartNIC rend enfin le chiffrement possible dans le datacentre. En outre, on parle en general d’une plateforme de sécurité via la gestion centralisée SDN des cartes et des politiques implementées sur celles-ci.
En conclusion, les SmartNIC/DPU vont arriver sur le marché massivement dans les prochaines années car elles répondent à un besoin de fond qui est la liberation de ressources CPU sur les serveurs afin de pouvoir héberger sur une meme plateforme physique plus de VMs et plus de containers. Par ailleurs, elles adressent aussi un autre problème important actuel qui est l’accéleration des attaques informatiques. Les SmartNICs n’ont pas la prétention d’arreter les attaques mais elles apportent une sécurité renforcée grace notamment aux fonctions tres riches de visibilité de l’ensemble des flux du datacentre, de chiffrement, de firewalling et de micro-segmentation. Enfin, de par la distribution des ressources de télémetrie et de filtrage dans chaque serveur, elles permettent de repenser completement l’architecture dans le datacentre, en particulier l’utilisation d’appliances matérielles, grâce a la consolidation au sein de la carte de multiples fonctions généralement realisées par plusieurs solutions matérielles ou logicielles.