Traitement proportionnel à l’énergie
Le traitement proportionnel a été introduit dans (André et Hölzle (2007)). Il peut être appliqué à un système dans son ensemble, aux protocoles réseau, ainsi qu’aux dispositifs et souscomposants individuels d‘un dispositif tel que le processeur, la mémoire, les ports des cartes réseau, etc. Pour illustrer ce principe, la figure 1.2 représente différents profils de consommation d’énergie (ou coût) qu’un dispositif peut présenter en fonction de son niveau d’utilisation en termes de débit de transfert des données, nombre d’opérations à réaliser, quantité de données à stocker, etc. Ces différents profils offrent différentes possibilités d’optimisation. Les dispositifs agnostiques à l‘énergie consommée, dont la consommation d’énergie est constante, indépendamment de leur utilisation, représentent le pire des cas : ces dispositifs sont soit allumés et consomment une quantité maximale d’énergie, soit désactivés et consomment peu ou pas d’énergie du tout. Il existe un autre type de profil de consommation énergique appelé profil proportionnel pour ce type de profil l’énergie consommée est totalement proportionnelle au niveau d’utilisation (Bianzino et al. (2012)). Entre ces deux profils extrêmes, il existe un nombre fini de profils intermédiaires qui essaient de se rapprocher le plus possible du profil idéal. Les techniques nommées Dynamic Voltage and Frequency Scaling (Mark et al. (1994)) et Adaptive Link Rate (Bilal et al. (2013)) ou l’adaptation de débit des liaisons sont des exemples typiques de traitement proportionnel. La première réduit l’état d’énergie du CPU en fonction de la charge du système, tandis que la deuxième applique un concept similaire aux interfaces réseau en réduisant leur débit de transmission des données et donc leur consommation, en fonction de la charge de trafic de la liaison.
Virtualisation des ressources
La virtualisation représente une excellent outil pour répondre à la problématique de l’efficacité énergétique. Elle regroupe un ensemble de mécanismes permettant à plusieurs services d’opérer sur la même plateforme matérielle, optimisant ainsi l’utilisation du matériel. La virtualisation peut être appliquée à différentes sortes de ressources, y compris les liaisons d’interconnexion du réseau, les dispositifs de stockage, les ressources logicielles, etc. Comme ce mémoire cadre avec le projet V-WAN (VirtualWide Area Network) de l’équipementier de télécommunications Ciena (Ciena, 2014), nous nous somme interessés à la virtualisation et au monitoring des réseaux virtuels. Un exemple de virtualisation est la virtualisation des commutateurs dans les réseaux d’interconnexion des centres de données. Dans ce cas, elle représente la réutilisation d’une seule ressource physique par plusieurs autres commutateurs, dits virtuels ; ou bien, la consolidation de plusieurs de ces ressources physiques pour obtenir un commutateur virtuel plus puissant avec plus de fonctionnalités (Zhao et al. (2017)). Un autre exemple typique de virtualisation consiste à faire fonctionner simultanément plusieurs systèmes d’exploitation (par exemple Linux, Windows, Mac…) qui partagent les ressources d’une seule machine physique. Cela engendre à la fois la réduction des coûts liés au matériel, l’amélioration de l’efficacité énergétique et enfin la réduction de l’empreinte carbone des centres de données d’une manière plus générale. Dans ce contexte, la virtualisation par le passé a déjà été déployée à grande échelle avec succès : par exemple, le Service postal américain a virtualisé 791 de ses 895 serveurs physiques (Richard (2008)).
Adaptation dynamique à la charge de trafic Jusqu’à présent, la plupart des efforts dans le cadre du Green networking ont été consacré à cette stratégie. Les principales techniques qui implémentent cette stratégie suivent en général le paradigme du traitement proportionnel et la consolidation des ressources. Ces techniques sont conçues pour réduire la consommation énergétique en réponse à une faible utilisation ou un faible volume de trafic. Elles peuvent agir localement sur un lien ou globalement sur tout le réseau en même temps dépendamment de la couche du réseau, la dimension du réseau concerné ainsi que de l’existence ou l’inexistence d’interactions entre les éléments du réseau. Cette stratégie peut agir sur différents composants de l’infrastructure réseau tels que les routeurs, les commutateurs, les liens qui transportent les données, etc. La techniques nommée Adaptive Link Rate (ALR) est utilisée dans le cas où l’objectif est de réduire la consommation des liaisons. D’autre part, pour les autres composants de l’infrastructure réseau la technique Dynamic voltage and frequency scaling (DVFS) est utilisée. La technique DVFS consiste à réduire la fréquence du processeur et donc à réduire la consommation énergétique car la fréquence a un impact quadratique sur l’énergie.
Ces actions sur le processeur consiste à utiliser différents couples voltage-fréquence variant selon les processeurs (appelés P-State pour performance state). Des mesures empiriques ont montré que la consommation d’énergie sur une liaison Ethernet est largement indépendante de son utilisation (Joseph et al. (2008b), Helmut et al. (2009), Priya et al. (2009)). En pratique, même pendant les intervalles de temps où aucune trame n’est transmise, les liaisons sont utilisées pour envoyer continuellement le trafic de contrôle afin de préserver la synchronisation. Par conséquent, la consommation d’énergie d’un lien dépend largement de la vitesse de transfert négociée plutôt que la charge de trafic courante sur la liaison. Un certain nombre de travaux ont donc proposé d’adapter le débit des liaisons en utilisant la technique ALR. Cette technique agit soit (i) en mettant les liens dans un mode inactif/veille pendant la période de non-transmission, cette technique est connue sous le terme Link Sleep ou (ii) en réduisant le débit des liaisons pendant la période de faible transmission comme illustrée dans la figure 1.3. Dans les deux cas, le débit des liaisons est adapté pour correspondre à la charge de trafic réel des liaisons, cette reconfiguration locale des débits permet de rendre la consommation d’énergie pseudo proportionnelle à l’utilisation des liens (Priya et al. (2010)). Un sommaire des différents mécanismes et politiques de la technique ALR est illustré dans la figure 1.4.
Link Sleep (LS) Les travaux tels que (Maruti et Singh (2003), Maruti et al. (2004), Helmut et al. (2007)), considèrent deux états de fonctionnement : un mode inactif, et un mode entièrement fonctionnel (ou actif). La difficulté dans ce cas consiste à trouver le compromis entre la réactivité du système et l’économie d’énergie. Dans (Maruti et Singh (2003)) qui est considéré comme étant l’un des travaux pionniers ayant utilisé cette technique, les auteurs ont laissé les noeuds réseau décider du statut actif ou inactif de leurs interfaces, en mesurant le temps entre les arrivées des paquets. Il faut noter qu’une vérification est faite pour vérifier si cet intervalle est suffisamment long pour justifier une économie d’énergie entre deux trames consécutives. Comme l’efficacité d’une telle stratégie est directement liée à la distribution temporelle de l’arrivée des paquets, les auteurs ont commencé par analyser une trace du trafic afin de déterminer si une telle approche serait efficace ou non dans la pratique. Mis à part les résultats, ce premier travail soulève un certain nombre de questions, abordées ultérieurement par des chercheurs. Tout d’abord, différents états sont proposés pour une interface. L’interface peut-être dans un état d’inactivité complète et : (i) rejette les paquets qui arrivent au cours de cette période (Van Heddeghem et al. (2016)), (ii) basculer au mode actif pour chaque réception de paquet (iii) utilise un tampon pour stocker les paquets reçus au cours des intervalles d’inactivité, et les traiter dans la période active, ou sinon (iv) utiliser un port tiers qui prend en charge la réception des paquets à la place d’un groupe de ports inactifs (Bolla et al. (2016)). Cependant, même cet état partiellement inactif a un prix en matière d’énergie. Premièrement, tout état inactif dans lequel les paquets peuvent être détectés a besoin d’un peu d’électronique, et consomme donc une petite quantité d’énergie. Par conséquent, revenir au mode actif à chaque arrivée de paquet réduit la latence et la perte de paquets, mais d’un autre côté ceci réduit également l’économie d’énergie.
Link Rate Switching (LRS) Outre le choix entre deux modes extrêmes, mode inactif et mode actif, la plupart des technologies actuelles proposent plusieurs états intermédiaires à travers l’utilisation de plusieurs vitesses de transmission (débits)(Bilal et al. (2013), Bolla et al. (2016)). À chaque débit correspond un niveau différent de consommation énergétique. La technique Ethernet à l’heure actuelle par exemple, définit plusieurs vitesses de transmission (de 10 Mb/s à 10 Gb /s), cette limite est appelée à augmenter avec l’augmentation de la capacité des liens Ethernet. Dans (Chamara et al. (2008)), les auteurs montrent qu’il existe une différence non négligeable dans l’énergie consommée entre les différents niveaux de vitesses de transmissions établies. Par exemple, pour une carte réseau (NIC) reliée à un PC une augmentation des débits de transfert des données de 10 Mb/s à 1 Gb/s résulte par une augmentation de l’énergie consommée à 3 W, ce qui représente environ 5 % de la consommation globale de la carte réseau (NIC). Les auteurs ont aussi proposé un allégement des politiques de contrôle des débits, pour se baser uniquement sur l’état actuel du système, ou sur une analyse historique. D’un autre point de vue, la sélection des vitesses de transmission appropriées parmi un ensemble limité de possibilités peut être traduite en un problème d’optimisation de flux multicommodités dont l’objectif est de minimiser la consommation globale d’énergie du réseau tout en respectant les contraintes établies telles que la capacité des liens. Ce problème est connu pour être NP-difficile (Bianzino et al. (2012)).
0.1 INTRODUCTION |