Simple Science

La science de pointe expliquée simplement

# Informatique# Systèmes d'exploitation

Nouvelle approche du système d'exploitation pour des centres de données rapides

Un nouveau design de système d'exploitation améliore la vitesse et la sécurité des centres de données modernes.

― 7 min lire


Réseaux OS pour lesRéseaux OS pour lescentres de donnéesperformance et la sécurité.Une nouvelle architecture améliore la
Table des matières

Les centres de données évoluent. Ils doivent traiter plus de données plus rapidement et avec moins de délais. La demande de réponses rapides des applications a poussé la conception des réseaux des systèmes d'exploitation (OS) à un nouveau niveau. Cet article va discuter d'une nouvelle approche pour les systèmes d'exploitation dans les centres de données qui vise à répondre à ces besoins tout en maintenant la sécurité et l'efficacité.

Le besoin de vitesse

Alors que les applications exigent un plus grand débit et moins de délais, les méthodes de réseau traditionnelles dans les systèmes d'exploitation deviennent souvent un goulet d'étranglement. Les systèmes actuels peuvent avoir du mal à suivre la vitesse des centres de données modernes, où plusieurs applications fonctionnent simultanément et nécessitent des connexions rapides et fiables.

Solutions de réseau actuelles

Pour faire face à ces défis, certains chercheurs ont suggéré de contourner complètement le noyau de l'OS ou d'exécuter les fonctions réseau en tant que services en espace utilisateur. Les deux méthodes ont leurs avantages et inconvénients. Le contournement du noyau aide à la vitesse en réduisant les frais généraux, tandis que les services en espace utilisateur offrent une meilleure isolation et sécurité.

La nouvelle approche

Cet article introduit un nouveau design de système qui mélange les forces du contournement du noyau et des piles de réseaux à l'intérieur du noyau. Le système utilise des threads de niveau utilisateur qui peuvent partager des ressources avec les applications tout en minimisant le besoin de changements de contexte coûteux typiquement observés dans les opérations du noyau. Cette innovation aide à atteindre à la fois une haute performance et une forte sécurité.

Caractéristiques clés du nouveau design

  1. Threads de niveau utilisateur : Le système proposé exécute la pile d'entrée/sortie (I/O) de l'OS dans des threads de niveau utilisateur. Cela signifie que ces threads peuvent opérer en étroite collaboration avec les threads des applications, réduisant le nombre de changements de contexte coûteux.

  2. Protection de la mémoire : Pour se protéger contre les menaces potentielles, le système utilise les Memory Protection Keys (MPK) d'Intel. Cette fonctionnalité isole la pile I/O du code d'application non fiable, garantissant que les applications nuisibles ne peuvent pas interférer avec les opérations de la pile I/O.

  3. Planification légère : Le système inclut un mécanisme de planification léger qui permet un changement rapide de tâches pour maintenir un traitement fluide. C'est essentiel pour répondre à des exigences de latence strictes.

Défis modernes dans les centres de données

Les applications des centres de données d'aujourd'hui font face à des demandes sans précédent. Elles exigent souvent que les demandes réseau soient traitées rapidement et de manière prévisible. Les opérateurs essaient également d'exécuter de nombreux services sur une seule machine pour maximiser l'utilisation des ressources.

L'importance de l'isolement de performance

Avec tant de services coexistants, il est crucial de garantir qu'un service n'impacte pas négativement un autre. Par exemple, un retard dans une application ne doit pas provoquer des retards dans d'autres. Cela souligne le besoin d'un fort isolement de performance.

Efficacité des ressources

Une utilisation efficace des ressources est vitale pour la rentabilité. Les systèmes doivent maximiser l'utilisation des CPU, de la mémoire et de la bande passante réseau pour s'assurer que toutes les ressources disponibles sont utilisées efficacement.

Limites des solutions existantes

De nombreux systèmes existants ont des limitations. Les approches de contournement du noyau peuvent améliorer la vitesse mais manquent souvent de mesures de sécurité appropriées. D'un autre côté, les services centralisés améliorent la sécurité mais peuvent entraîner des problèmes de performance lorsque plusieurs applications doivent partager des ressources.

Le dilemme

Les solutions de réseau existantes ne fournissent pas un équilibre idéal entre vitesse, sécurité et efficacité des ressources. Les systèmes centralisés entraînent souvent une mauvaise performance lorsque plusieurs applications luttent pour des ressources, tandis que les systèmes décentralisés ont du mal à maintenir la sécurité.

La nouvelle architecture de plan de données

Pour relever ces défis, le système proposé, appelé "Protected Data Plane OS", vise à fournir des performances élevées tout en assurant la sécurité et une utilisation efficace des ressources. Cette approche décentralisée permet un meilleur isolement de performance et une utilisation des ressources.

Comment ça marche

L'architecture fonctionne en générant des instances du plan de données pour chaque application. Cela permet de partager efficacement les ressources tout en garantissant que chaque application fonctionne dans son environnement sécurisé.

Gestion de la mémoire et des ressources

Le système attribue des pages de mémoire pour le plan de données et utilise des clés de protection pour garantir que chaque application ne peut accéder qu'à sa propre mémoire. Cela ajoute une couche de sécurité significative.

Atteindre une haute performance

Pour maintenir la performance, le système implémente des pratiques de planification efficaces et minimise les frais généraux généralement associés aux changements de contexte. Il utilise des minuteurs matériels pour garantir l'exécution en temps utile des tâches sans retards significatifs.

Politiques de planification

La politique de planification est conçue pour donner la priorité aux tâches des applications tout en permettant à la pile I/O de traiter les demandes en temps voulu. Cette approche vise à équilibrer le travail entre les ressources efficacement.

Évaluation des performances du système

Tests de performance

Pour comprendre comment le système performe, il a été testé contre diverses charges de travail. Les résultats montrent que la nouvelle architecture peut atteindre de meilleures performances par rapport aux méthodes traditionnelles, surtout dans des scénarios avec des besoins d'application variés.

Gestion de différentes charges de travail

Le système a été évalué en utilisant plusieurs types de distribution des services pour simuler des scénarios du monde réel. Il a montré une forte performance dans des charges de travail uniformes et déséquilibrées, gérant efficacement l'exécution des tâches sans sacrifier la vitesse.

Efficacité des ressources en action

Lorsqu'il est exécuté avec différentes configurations, la nouvelle architecture a démontré une gestion supérieure des ressources. Elle permet une allocation dynamique des ressources CPU, minimisant le temps d'inactivité et maximisant le débit.

Isolement de performance par rapport à d'autres systèmes

Dans des scénarios où des applications critiques en termes de latence et à fort débit coexistent, le nouveau système montre une efficacité notable. Contrairement aux systèmes centralisés où les applications interfèrent les unes avec les autres, l'architecture proposée maintient des performances même en cas de forte charge.

Application dans le monde réel

Pour valider l'efficacité du système, un magasin clé-valeur populaire nommé memcached a été utilisé pour les tests. La nouvelle architecture a surpassé les systèmes traditionnels en termes de débit à travers divers scénarios de charge de travail, prouvant son efficacité dans une application pratique.

Conclusion

Cette nouvelle approche du réseautage des systèmes d'exploitation se concentre sur l'équilibre entre performance, sécurité et efficacité des ressources. En mettant en œuvre des threads de niveau utilisateur, une protection de la mémoire et une planification légère, le Protected Data Plane OS se présente comme une solution convaincante pour les exigences modernes des centres de données. À mesure que les demandes continuent de croître, des systèmes comme celui-ci seront cruciaux pour fournir la vitesse et la sécurité dont les applications ont besoin pour prospérer.

Source originale

Titre: Protected Data Plane OS Using Memory Protection Keys and Lightweight Activation

Résumé: Increasing data center network speed coupled with application requirements for high throughput and low latencies have raised the efficiency bar for network stacks. To reduce substantial kernel overhead in network processing, recent proposals bypass the kernel or implement the stack as user space OS service -- both with performance isolation, security, and resource efficiency trade-offs. We present Tardis, a new network stack architecture that combines the performance and resource efficiency benefits of kernel-bypass and the security and performance enforcement of in-kernel stacks. Tardis runs the OS I/O stack in user-level threads that share both address spaces and kernel threads with applications, avoiding almost all kernel context switch and cross-core communication overheads. To provide sufficient protection, Tardis leverages x86 protection keys (MPK) extension to isolate the I/O stack from application code. And to enforce timely scheduling of network processing and fine-grained performance isolation, Tardis implements lightweight scheduler activations with preemption timers.

Auteurs: Yihan Yang, Zhuobin Huang, Antoine Kaufmann, Jialin Li

Dernière mise à jour: 2023-02-28 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2302.14417

Source PDF: https://arxiv.org/pdf/2302.14417

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires