Recent zijn er veel aankondigingen geweest rondom een nieuwe trend in Cloud computing, ‘SMART Network Interface Cards’ (ofwel SMARTNIC’s). Een interessante ontwikkeling waar ik even in ben gedoken de afgelopen periode. Dit artikel geeft wat meer uitlegt over het hoe en waarom, wie de grote spelers zijn en wat we hiervan in de toekomst mogen verwachten!

Het ontstaan van SMART Network Interface Cards

De ontwikkeling van de SMARTNIC is begonnen rond 2013 als interne ontwikkeling van Amazon AWS voor de eigen datacenters. Deze ontwikkeling is vervolgens versneld door de acquisitie van Annapurna Labs in 2015 door AWS. Door de enorme en unieke schaal van hun datacenters liepen ze tegen een aantal problemen aan rondom het beheer van servers. Dit heeft geleid tot een SMARTNIC concept, genaamd AWS Nitro. In 2018 heeft AWS hier meer bekendheid aan gegeven onder andere vanwege de aankondiging dat AWS on-premises datacenter hardware ging verkopen en om het verschil duidelijk te maken tussen AWS en andere Cloud providers.

Een andere ontwikkeling in de netwerk industrie zijn de steeds sneller wordende network interface cards tot snelheden van 2x 25Gbps, 2x 40Gbps en zelfs 2x 100Gbps. Om ook maar iets van services te bieden (encryptie, vxlan etc.) op hardware niveau werden extra CPU’S op de NIC geplaatst. Met deze extra CPU’s werden NICs steeds meer ‘een punt om nog meer services op te ontwikkelen.

Ook interessant is dat ruim een jaar geleden Pensando als ‘startup’ uit stealth modus gekomen, als onafhankelijke bouwer van SMARTNIC’s voor o.a. HPE servers. Pensando zegt begonnen te zijn in 2017 en is op dit moment moeilijk nog een startup te noemen met ruim 300 miljoen aan investeringen en 300+ medewerkers. Een grote investeerder is o.a. de voormalige CEO van Cisco: John Chambers. Nagenoeg het gehele management team van Pensado is afkomstig van Cisco, ze waren daar onder andere verantwoordelijk voor de product lijnen zoals Cisco Unified Compute System, Nexus 9000, Catalyst, MDS en een aantal andere grote hardware lijnen die vandaag de dag vele miljarden opleveren voor Cisco. Saillant detail is dat HPE deze keer een grote investeerder is in Pensando en dat tevens de CTO van HPE in de board van Pensando zit.

Slim benutten van de hardware

Wat AWS al lang geleden goed heeft gezien is dat ongeveer 20 tot 30% van de server capaciteit wordt gebruikt voor activiteiten als virtualisatie-, beheer-, security-services zoals load-balancing en andere ‘niet klant’ gerelateerde workloads. Voor een klein aantal servers is dit niet zo’n probleem, maar als je 20% kwijt bent van vele duizenden servers en miljarden investeringen wordt het wel relevant! Daarnaast is er een sterke opkomst van ARM gebaseerde CPU’s, vooral gedreven vanuit de performance per Watt, dus het besparen van energie. Ongeveer 20% van de kosten van het runnen van een groot datacenter is energie verbruik. En laten de CPU’s op de SMARTNIC’s nu juist ARM gebaseerd zijn.

Bare metal support

Om echt de transitie naar Cloud te maken moet een Cloud provider ook ‘bare metal’ support kunnen aanbieden. Sommige workloads werken nou eenmaal niet op een hypervisor. Daarnaast is met de opkomst van (virtuele) containers het soms de vraag of het voordelen biedt om een hypervisor als ‘onder laag’ te installeren, zeker als dit mogelijk impact heeft op de  performance, kosten en beheer. Maar hoe beheer je effectief een groot aantal bare-metal servers waar je de klant direct toegang geeft tot de hardware? Daar waar je als Cloud provider moeilijk of geen toegang hebt tot de software laag om de hardware zelf te beheren! Je komt al snel bij oplossingen die we kennen van blade-servers; zoals losse hardware management modules. Wat nu als je deze functionaliteit kan bieden vanaf je SMARTNIC en op een uniforme manier waarmee je ook je ‘hypervisor’ gebaseerde servers beheerd?

Storage support

Maar denk ook  nog even aan storage! Cloud providers gebruiken primair server-side storage, dus SSD’s in de servers zelf waarbij de data veelal wordt opgeslagen op meerdere servers voor redundantie. Dit wordt geregeld door de hypervisor (software laag) op de server, zoals bijvoorbeeld VMware vSAN. Met een SMARTNIC kan dit nu ook geregeld worden voor bare metal, immers een SMARTNIC heeft direct toegang tot de PCI bus van de server en dus tot een NVMe storage controller. Hiermee kan je een configuratie maken dat de server zelf denkt dat er lokaal een SSD inzit terwijl deze vanaf een andere server middels de SMARTNIC geleverd wordt. Zie het als een soort van bare metal vSAN met alle voordelen van redundantie en dynamisch resizen.

Performance en security

AWS geeft ook aan dat ze met AWS Nitro een meer voorspelbare performance hebben. Als het netwerk- en storage verkeer en tevens een aantal beheer functies uit de hypervisor en software laag worden gehaald en in direct hardware kan plaats vinden is de delay en jitter minder. Jitter is de variatie van de delay. Dit kan een aantal tijd kritische applicaties kan helpen.

Ook de security kan beter worden geregeld doordat de combinatie van een ‘externe security chip’ op de SMARTNIC en software. We kennen dit bijvoorbeeld ook van recente Mac’s die een dedicated T2 security chip hebben. Daarnaast is er een fysieke scheiding tussen het management punt (de SMARTNIC) en de server zelf.

Edge Computing

We kennen de term Edge Computing vooral uit het mobiele domein (5G). Hiermee wordt bedoeld dat workloads en intelligentie dichter bij de gebruiker acteren i.p.v. in een centraal datacenter. Dit is nuttig voor zeer tijd-kritische workloads. We kennen het bijvoorbeeld ook in het IoT domein, waarbij er direct lokaal beslissingen worden genomen en er geen afhankelijkheid is met het netwerk.

In de context van SMARTNIC’s wordt deze term soms een beetje ‘misbruikt’. Het idee is dat de server het ‘end-point’ (de edge) is in het datacenter en dat je alle control – dus bijvoorbeeld alles wat te maken heeft met networking (zoals firewall, segmentatie, encryptie, netwerk visibility) – op het end-point beheerd. Hiermee kan je al op hardware niveau een ‘zero trust’ model maken. Dit werkt zowel voor bare-metal als virtual servers.

Middels een centrale controller wordt het hele concept van de SMARTNIC’S geconfigureerd, en daarmee ook de zero-trust security. Je bent hierdoor minder afhankelijk van het netwerk zelf, dat moet primair zo snel mogelijk zijn.

De grote spelers

Dit zijn vooral VMware, Pensando en NVIDEA, is mijn inschatting op dit moment.

VMware wil graag het ‘datacenter operating system’ zijn voor de hybride Cloud gebaseerd op VMware Cloud Foundation. SMARTNIC’s bieden voor VMware op termijn een aantal voordelen: allereerst de mogelijkheid om ook bare-metal te kunnen ondersteunen en op een manier dat bijvoorbeeld VMware NSX native kan worden gesupporterd. Natuurlijk gecentraliseerd op basis van de VMware management tools. Daarnaast bieden SMARTNIC’s de mogelijkheid om zaken te versnellen, door te off-loaden van de CPU, daardoor wordt de overhead van VMware potentieel kleiner.

VMware was al bezig om ESX naar ARM processoren te porten, wat nu erg goed van pas komt, en heeft tijdens VMworld 2020 het project ‘Monterey’ aangekondigd waarbij ze samen werken met o.a. Pensando en NVIDIA. Het idee op de korte termijn is dat er een ESXi versie draait op de SMARTNIC maar ook nog steeds één op de server zelf. Over tijd kunnen dan bepaalde processen van de server zelf naar de SMARTNIC overgaan, zoals NSX of vSAN. Op die manier hebben ze een heldere roadmap om SMARTNIC’s te kunnen adopteren, ze zijn daarmee geen aanbieder van SMARTNIC’S maar wel een belangrijke partner.

De eerste oplossing van Pensando is de Distributed Services Card (DSC). Deze wordt gepositioneerd als een veel snellere versie van AWS Nitro en is beschikbaar voor iedereen in elke server met PCI express. Pensando biedt ook een eigen controller aan om de potentiele vele duizenden DSC’s te kunnen beheren. Veel van de features hebben de focus op netwerk services. Dat is niet verwonderlijk gezien de management posities binnen het bedrijf.

De visie van NVIDIA is erop gericht dat de server architectuur niet meer draait rondom de CPU, maar om de data. Niet verwonderlijk als je ziet dat bij data intensieve processen zoals Machine Learning de GPU en het netwerk meer belast worden dan de CPU.  Het afronden van de acquisitie van Mellanox (van 7 miljard) begin 2020, past in deze strategie. NVIDIA is hiermee in één klap dan ook een belangrijke speler geworden in SMARTNIC’s. Met de Bluefield Data Processing Unit biedt NVIDIA NIC’s aan met 2x 100Gbps snelheden en vooral networking en services zoals firewall, encryptie en Deep Packet Inspection. Ook de voorgenomen acquisitie van ARM (40 miljard) past in de strategie om de dominantie van de CPU’s van Intel en AMD minder belangrijk te maken in de toekomst.

Recent hebben VMware en NVIDIA aangekondigd samen te werken m.b.t. Project ‘Monterey’, aangezien ze  op meerdere terreinen raakvlakken hebben verwacht ik hier veel van.

De toekomstige ontwikkelingen

De ontwikkelingen van SMARTNIC’s staan pas aan het begin. De meest logische eerste klanten zijn de tier-2 en tier-3 Cloud providers en de grotere Enterprise klanten, die dezelfde voordelen willen in hun Cloud als de grote hyper-scalers zoals AWS.

Op de langere termijn kunnen SMARTNIC’s een fundamentele veranderingen veroorzaken in elke server architectuur en ‘HARDWARE-as-a-SERVICE’ mogelijk maken. Als elk hardware onderdeel van een server kan worden aangeboden aan een andere server – dus een server denkt lokaal bijvoorbeeld een SSD of GPU te hebben maar deze wordt geleverd door een andere server – dan maakt dit ook mogelijk dat je een pool van servers hebt die bijvoorbeeld vol zitten met alleen maar GPU’s welke ‘on demand’ worden geleverd aan servers die dat nodig hebben. Iets wat we kennen van HPE met de ‘Composable Infrastructure’, maar dan van elke server leverancier en elke server form-factor.

Tot slot

De SMARTNIC-technologie kan zich nog in meerdere richtingen verder ontwikkelen, we blijven daarom de ontwikkelingen ook nauwgezet volgen!

Erik Lenten, CTO voor Axians