Guide du RDMA sur Ethernet Convergé - RoCE
Dans l'ère des données, les besoins d'un réseau plus rapide, plus efficace et plus évolutif n'ont jamais été aussi importants. Étant donné que les connexions Ethernet TCP/IP traditionnelles nécessitent un traitement et des copies supplémentaires des données, elles ne peuvent plus répondre aux besoins actuels du réseau. C'est dans ce contexte que le RDMA over Converged Ethernet (RoCE) fait son apparition. Pour comprendre le concept de RoCE, il convient d'abord de se pencher sur le RDMA.
Qu’est-ce que RDMA ?
L'accès direct à la mémoire à distance (RDMA - Remote Direct Memory Access) est une technologie qui permet un accès direct à la mémoire d'un hôte ou d'un serveur à la mémoire d'un autre hôte ou serveur sans impliquer le CPU. De cette façon, il libère les processeurs pour qu'ils puissent effectuer le travail pour lequel ils ont été conçus, comme l'exécution d'applications et le traitement de quantités massives de données. Les performances du réseau et de l'hôte, avec une latence plus faible, une charge de l'unité centrale plus faible et une bande passante plus large, peuvent alors être obtenues de manière rentable.
Figure 1 : Technologie RDMA
Qu'est-ce que le RoCE ?
En tant que type de RDMA, RoCE (RDMA over Converged Ethernet)est un protocole de réseau défini dans la norme InfiniBand Trade Association (IBTA), permettant le RDMA sur un réseau Ethernet convergent. Il peut être considéré comme l'application de la technologie RDMA dans les centres de données hyperconvergés, le cloud, le stockage et les environnements virtualisés. Il possède tous les avantages de la technologie RDMA et la familiarité d'Ethernet. Pour comprendre les différences entre RoCE et Infiniband, vous pouvez consulter l'article “RoCE vs Infiniband vs TCP/IP”.
Types de RoCE
Il existe deux versions de RDMA over Converged Ethernet : RoCE v1 et RoCE v2, qui dépendent de la carte ou de l'adaptateur réseau utilisé.
-
RoCE v1 : Le protocole RoCE v1 est un protocole de couche de liaison Ethernet permettant à deux hôtes du même domaine de diffusion Ethernet (VLAN) de communiquer. Il utilise l'Ethertype 0x8915, qui limite la longueur de la trame à 1500 octets pour une trame Ethernet standard et à 9000 octets pour une trame Ethernet jumbo.
-
RoCE v2 : Le protocole RoCE v2 surmonte la limitation de la version 1 qui était limitée à un seul domaine de diffusion (VLAN). En modifiant l'encapsulation des paquets pour inclure les en-têtes IP et UDP, RoCE v2 peut désormais être utilisé sur les couches 2 et 3. Cela permet le routage de couche 3, qui permet au RDMA de fonctionner sur des réseaux à sous-réseaux multiples pour une grande évolutivité. Par conséquent, RoCE v2 est également considéré comme Routable RoCE (RRoCE). Grâce à l'arrivée de RoCE v2, le multicast IP est désormais également possible.
Figure 2 : Format de paquet RoCE v1 et RoCE v2
Avantages de RoCE
Comme RDMA over Converged Ethernet a un accès direct aux données de la mémoire via l'interface réseau plutôt que par le noyau, il peut permettre une transmission à faible latence et à haute performance.
-
Faible implication du CPU : Accédez à la mémoire du commutateur ou du serveur distant sans consommer de cycles de CPU sur le serveur distant, ce qui permet d'utiliser pleinement la bande passante disponible et d'obtenir une meilleure évolutivité.
-
Zéro-copie : Envoie et reçoit des données vers et depuis des tampons distants.
-
Haute productivité : Comme la latence et le débit ont été améliorés par RoCE, les performances du réseau ont été considérablement améliorées.
-
Réduction des coûts : Avec RoCE, il n'est pas nécessaire d'acheter de nouveaux équipements ou de remplacer l'infrastructure Ethernet pour gérer la quantité massive de données, ce qui permet aux entreprises d'économiser considérablement leurs dépenses d'investissement.
Figure 3 : Avant vs Après RoCE
Comment Réaliser RoCE ?
En général, pour réaliser le RDMA sur l'Ethernet convergent pour un centre de données, vous pouvez installer une carte réseau ou des pilotes de cartes supportant RoCE. Toutes les cartes d'interface réseau Ethernet nécessitent des cartes d'interface réseau RoCE. Les pilotes RoCE sont disponibles sur Red Hat, Linux, Microsoft Windows et d'autres systèmes d'exploitation courants. RDMA sur Ethernet convergent est disponible de deux façons. Pour le commutateur réseau, vous pouvez choisir d'utiliser le commutateur avec un système d'exploitation prenant en charge le PFC (priority flow control). Comme pour un serveur ou un hôte en rack, vous devrez utiliser une carte d'adaptateur réseau, telle que ConnectX-3 pro et ConnectX-4 et plus.
Questions Fréquentes sur RoCE
Pour mieux comprendre, nous vous présentons ici une liste de questions fréquemment posées au sujet du RDMA sur Ethernet convergent.
1. Quels commutateurs ou cartes/adaptateurs réseau FS prennent en charge RoCE ?
Jusqu'à présent, les commutateurs de la série FS N avec Cumulus OS peuvent tous prendre en charge RoCE v1 et v2. Les clients doivent activer leur fonction PFC après avoir acheté un commutateur RDMA. Quant aux adaptateurs et cartes, le RoCE n'est pas encore accessible chez FS.
2. Les adaptateurs RoCE peuvent-ils communiquer avec d'autres types d'adaptateurs, comme iWARP ?
Les adaptateurs RoCE peuvent uniquement communiquer avec d'autres adaptateurs RDMA over converged Ethernet. Toute configuration qui tente de mélanger les types d'adaptateurs, par exemple des adaptateurs RoCE combinés à des adaptateurs iWARP, reviendra probablement à des connexions TCP/IP traditionnelles.
3. Quelle est la différence entre RoCE et iWARP ?
Comme le protocole de réseau RoCE, iWARP (Internet wide area RDMA protocol) prend également en charge la fonction RDMA avec une latence plus faible, mais ils présentent quelques différences.
D'une part, RoCE est la seule solution RDMA Ethernet standard de l'industrie, avec un écosystème multi-vendeurs fournissant des adaptateurs réseau et fonctionnant sur des commutateurs Ethernet standard de couche 2 et 3. D'autre part, iWARP n'a bénéficié que d'un soutien minimal.
On the other hand, iWARP uses a complex mix of layers, including DDP (Direct Data Placement), a tweak known as MPA (Marker PDU Aligned framing), and a separate RDMA protocol (RDMAP) to deliver RDMA services over TCP/IP. Avec une architecture aussi complexe, il sera difficile pour le protocole iWARP d'appliquer le RDMA aux cadres de transport logiciels existants. Après un tel compromis, le débit, la latence et l'utilisation du CPU pour iWARP seront atténués.
Figure 4 : Couches de réseau complexes de l'iWARP par rapport au modèle plus simple de RoCE
Conclusion
L'utilisation de RDMA dans les centres de données permet de décharger le mouvement des données et d'augmenter la disponibilité des ressources CPU pour les applications. Les entreprises qui utilisent RoCE peuvent bénéficier des capacités de RDMA sans modifier leur infrastructure réseau. En réduisant la latence du réseau Ethernet et en déchargeant le CPU, RoCE augmente les performances des applications de recherche, de stockage, de base de données, financières et à fort taux de transaction. En augmentant l'efficacité des processeurs et en améliorant les performances des applications, RoCE peut réduire le nombre de serveurs nécessaires, ce qui permet de réaliser des économies d'énergie et de réduire l'empreinte des centres de données basés sur Ethernet.