Von allen Technologien im Rechenzentrum entwickelt sich keine schneller weiter als die Netzwerkkonnektivität. Vor 20 Jahren galten 1GbE-Netzwerke als exotisch und die dafür erforderliche Infrastruktur (z. B. NICs, Switches und Kabel) war teuer und selten. Vor drei Jahren waren 10-GbE-Netzwerke Stand der Technik, mittlerweile sind 20-, 40- und sogar 100-GbE-Netzwerke in Rechenzentren zum Standard geworden. Das Netzwerk ist nicht nur breiter geworden, es ist auch komplexer geworden, da Elemente wie Virtualisierung, Software-Defined Networking (SDN), Overlay-Netzwerke und andere Technologien hinzugefügt wurden, die vor zehn Jahren noch nicht einmal vorstellbar waren, heute aber alltäglich sind belasten die Ressourcen der Rechenzentrumsserver.
Von allen Technologien im Rechenzentrum entwickelt sich keine schneller weiter als die Netzwerkkonnektivität. Vor 20 Jahren galten 1GbE-Netzwerke als exotisch und die dafür erforderliche Infrastruktur (z. B. NICs, Switches und Kabel) war teuer und selten. Vor drei Jahren waren 10-GbE-Netzwerke Stand der Technik, mittlerweile sind 20-, 40- und sogar 100-GbE-Netzwerke in Rechenzentren zum Standard geworden. Das Netzwerk ist nicht nur breiter geworden, es ist auch komplexer geworden, da Elemente wie Virtualisierung, Software-Defined Networking (SDN), Overlay-Netzwerke und andere Technologien hinzugefügt wurden, die vor zehn Jahren noch nicht einmal vorstellbar waren, heute aber alltäglich sind belasten die Ressourcen der Rechenzentrumsserver.
**Erfahren Sie mehr über SmartNICs und das Composable Data Center unter Xilinx-Anpassung***
Beim Umgang mit Netzwerken über 10 GbE kommt es zunehmend zu CPU-Engpässen auf Servern, da Netzwerkpakete zur Verarbeitung an die CPU weitergeleitet werden. Bei 25-GbE-Netzwerken wird ein messbarer Prozentsatz der CPU-Zeit für die Verarbeitung von Netzwerkpaketen aufgewendet. Um dieses Problem zu lösen, haben wir Techniken entwickelt, um einige Netzwerkfunktionen von der CPU auf den Netzwerkschnittstellencontroller (NIC) zu übertragen. Wir nennen die Geräte, die dieses Offloading bewältigen können SmartNICs.
In diesem Artikel erklären wir, was eine SmartNIC ist, welchen Wert sie für das Rechenzentrum hat und warum Sie damit beginnen sollten, sie zu untersuchen und in sie zu investieren. Abschließend werfen wir einen Blick auf eine besonders innovative SmartNIC, die Xilinx SN1000.
Was ist eine SmartNIC?
Die Auslagerung des Netzwerkbetriebs von der CPU auf eine Netzwerkkarte steht bei großen Cloud-Anbietern im Fokus, da sie stets auf Effizienz im Rechenzentrum drängen. Es gibt keine feste Regel, was erforderlich ist, um eine Netzwerkkarte zu kennzeichnen Intelligente; Sie sollten jedoch zumindest in der Lage sein, einige der Steuerebenenfunktionen virtueller Switches und einige der Funktionen der Netzwerkfunktionsvirtualisierung (NFV) zu bewältigen, wie z. B. Firewall, Erkennung und Verhinderung von Eindringlingen sowie Host-Inspektion und Verschlüsselung sowie Aufgaben auf Datenebene, wie z. B. Netzwerkqualität des Dienstes (QoS) und Flussberichterstellung und -überwachung.
Was treibt die Einführung von SmartNICs voran?
Öffentliche Clouds und Hyperscaler haben im letzten Jahrzehnt die Innovation im Rechenzentrum vorangetrieben und werden dies auch in absehbarer Zukunft tun. Die Technologie, die sie verwenden, gelangt schließlich in die Rechenzentren der Unternehmen, und das Gleiche gilt auch für SmartNICs. Im Nachhinein betrachtet bringen SmartNICs Netzwerkfunktionen einfach dorthin, wo sie eigentlich hätten sein sollen: zurück auf die Netzwerkkarte, anstatt CPU- und Motherboard-Bandbreite zu verschwenden.
Man kann sich leicht vorstellen, wie viel Netzwerkverkehr verworfen oder zurück ins Netzwerk geleitet wird, ohne dass dem System/der CPU, die damit umgehen müssen, ein Mehrwert entsteht – ganz einfach, weil NFVs und andere Funktionen eher über die CPU eines herkömmlichen Servers implementiert werden als auf NIC-Ebene. Jeder CPU-Zyklus, der von der CPU entlastet werden kann, entlastet diese und ermöglicht dem Server produktive Arbeit.
Um zu veranschaulichen, wie vorteilhaft eine SmartNIC sein kann, können wir etwas so Einfaches wie einen DDoS-Angriff (Distributed Denial of Service) nehmen. Obwohl ein DDoS in einem modernen Rechenzentrum selten vorkommt, würde ein SmartNIC-Deal mit einem DDoS es der CPU des Systems ermöglichen, ihre produktive Arbeit fortzusetzen, anstatt Pakete zu sortieren, zu klassifizieren und zu verwerfen. Ein moderneres Beispiel wäre eine SmartNIC, die sich mit der Kapselung von Netzwerkpaketen befasst, die von Overlay-Netzwerken und nicht von der System-CPU verwendet werden.
Warum Xilinx führend in der SmartNIC-Technologie ist
Bei allen neuen Technologien gibt es Unternehmen, die sich an der Spitze der Technologie positionieren. Diese Unternehmen sind in der Regel leidenschaftlich und technologieorientiert. Sie widmen ihre Energie dem Ziel, die unzähligen Hürden zu überwinden, die die Markteinführung der neuen Technologie verhindern würden. Xilinx ist ein solches Unternehmen.
Xilinx blickt auf eine lange Geschichte als Innovator bei neuen Technologien zurück. Sie haben beispielsweise das Field Programmable Gate Array (FPGA) erfunden und gelten als führend in dieser Technologie. Eine neue Technologie wie eine SmartNIC auf den Markt zu bringen, ist kein kostengünstiger Vorschlag, und mit einem Umsatz von über 3 Milliarden US-Dollar im Jahr 2020 verfügen sie über die finanziellen Mittel dafür. Aber es erfordert auch ernsthaftes technisches und Management-Know-how – auch hier verfügt Xilinx über beides.
Im April 2019 schloss Xilinx eine Vereinbarung zur Übernahme von Solarflare Communications, einem früheren Entwickler von Netzwerken mit extrem geringer Latenz und Anwendungsbeschleunigung und einem führenden Anbieter von SmartNIC-Technologie. Später in diesem Jahr stellte Xilinx eine 100G-SmartNIC mit einem Chip auf FPGA-Basis vor, die auf Solarflare- und Xilinx-Technologien basiert. Diese SmartNIC kombinierte Xilinx FPGA, System on a Chip (SoC) und Adaptive Compute Acceleration Platform (ACAP) mit der Technologie von Solarflare, um eine neue konvergierte SmartNIC-Lösung zu schaffen, die zum Xilinx SN1000 wurde.
Der Xilinx ALVEO SN1000
Die Xilinx SN1000 ist eine physische FHHL PCIe x16-NIC (Gen 4 x8 oder Gen 3 x16 elektrisch) mit zwei 100-GbE-Kupfer- oder optischen Ports. Es verfügt über einen 16-Kern-Cortex-A72-Prozessor und einen FPGA mit über einer Million Look-up-Tabellen (LUTs). Bei einer LUT handelt es sich im Grunde darum, wie ein FPGA seine Logik aufbaut. Je mehr LUTs ein FPGA hat, desto leistungsfähiger und flexibler ist er. Die Karte verfügt über insgesamt 12 GB DDR4-RAM, wobei 4 GB dem ARM-Prozessor und 8 GB dem FPGA gewidmet sind. Dieses Hardware-Schema führt dazu, dass der SN1000 4 Millionen zustandsbehaftete Verbindungen auslagern und 100 Millionen Pakete pro Sekunde (PPS) verarbeiten kann.
Zur Herstellung von SmartNICs können anwendungsspezifische integrierte Schaltkreise (ASICs), FPGAs und SoCs verwendet werden. ASICs können leistungsfähig sein; Ihre Flexibilität ist jedoch begrenzt und es ist schwierig, ihnen zusätzliche Funktionalität hinzuzufügen. Und obwohl SoCs äußerst flexibel sind, fehlt ihnen die Geschwindigkeit von ASICs und FPGAs.
Um in seinem SN1000 SmartNIC sowohl Flexibilität als auch Leistung zu bieten, verwendet Xilinx aufgrund seiner inhärenten Flexibilität einen leistungsstarken SoC für Funktionen auf der Steuerebene und kombiniert ihn aus Leistungsgründen mit einem FPGA für Funktionen auf der Datenebene. Der Hauptvorteil der Verwendung eines FPGA gegenüber einem ASIC besteht darin, dass ein FPGA neu programmiert werden kann, wenn neue Funktionen entwickelt und/oder benötigt werden, wohingegen es ein Jahr oder länger dauern kann, bis ein neuer ASIC im Einsatz ist.
Die Entwicklung von Code für ein FPGA ist keine triviale Angelegenheit, und Xilinx verfügt über einige hervorragende Tools, die Sie bei diesem Bedarf unterstützen. Mit dem Xilinx-Entwicklungs- und Programmiertoolset können Xilinx-Kunden ihre eigenen FPGA-Anwendungen in einer höheren Programmiersprache schreiben, mit der Softwareentwickler vertraut sind, und nicht mit dem Hardwarecode, der traditionell für die FPGA-Anwendungsentwicklung verwendet wird.
Xilinx hat auch eine entwickelt Anwendungsmarktplatz wo von Xilinx und Dritten entwickelte Lösungen erhältlich sind. Dieser Ansatz ermöglicht SN1000-Käufern eine schnellere Wertschöpfung (Time-to-Value, TTV), indem der Entwicklungszyklus umgangen wird. Der App Store bietet Lösungen für NFV, Netzwerksicherheit, Bildverarbeitung, maschinelles Lernen (ML) und andere Funktionen, die auf SmartNIC-Ebene ausgeführt werden können und sollten.
Xilinx-Anwendungen werden als Docker-Container verpackt. Sie können zur kostenlosen Nutzung getestet und dann direkt im Geschäft per Kreditkarte erworben werden.
Obwohl Xilinx SmartNICs ein Spitzenprodukt sind, heißt das nicht, dass sie der Zeit so weit voraus sind, dass sie die Einführung und Nutzung behindern. Im Gegenteil: Xilinx SmartNICs werden bereits für spezifische Anwendungsfälle in öffentlichen Clouds, Hyperscalern und modernen Rechenzentren eingesetzt. Einige Beispiele dafür, wofür sie verwendet werden, sind: VXLAN- und NVGRE-Tunnelkapselung, Open Virtual Switch (OVS), Intel DPDK und Virtio-net I/O.
Ein weiterer interessanter Anwendungsfall für SmartNICs besteht darin, dass sie zum Auslagern von Speicherfunktionen wie dem Ceph-Objektspeicher-Client verwendet werden und NVMe-oF immer beliebter wird. Darüber hinaus hat Xilinx für den Hochgeschwindigkeitshandel erklärt, dass sein SmartNIC eine Latenzzeit von Nanosekunden für den algorithmischen „Tick-to-Trade“-Handel erreichen kann.
Videoanalyse ist ein weiterer Bereich, in dem SmartNICs glänzen. Aufgrund des mit Videos verbundenen Datenvolumens ist es nicht praktikabel, diese an ein zentrales Repository zurückzuleiten. Als Lösung werden SmartNICs auf Edge-Geräten verwendet, um Videointerpretationsfunktionen wie Maskenerkennung, Personenzählung und -verfolgung sowie virtuelle Zäune zu übernehmen, da diese die KI-Inferenz erfordern, die FPGA schnell und effizient verarbeiten kann.
Warum Sie SmartNICs brauchen
Mit der Zunahme von Netzwerken mit hoher Bandbreite stellen wir immer höhere Anforderungen an die Server in unseren Rechenzentren. Wir kommen an einen Punkt, an dem Server aufgrund der Anzahl der Netzwerkpakete, die mit mehr Netzwerkbandbreite verarbeitet werden müssen, weniger Zyklen haben, um profitable Arbeit zu leisten. Einige Studien haben gezeigt, dass in herkömmlichen Rechenzentren mit Netzwerken mit hoher Bandbreite mehr als 20 % der CPU-Zyklen eines Servers für die Paketverarbeitung genutzt werden können. Bei einer 3-GHz-CPU hat ein Prozessor beispielsweise etwa 300 Zyklen Zeit, um ein 1500-B-Paket zu verarbeiten und mit der Leitungsgeschwindigkeit Schritt zu halten.
Damit CPUs die wertvolle Arbeit erledigen können, für die sie entwickelt wurden, müssen wir unnötige Funktionen auf andere Geräte verlagern, die näher an ihrer Quelle liegen. In diesem Fall ist ein SmartNIC das richtige Gerät für den Umgang mit Netzwerken.
Obwohl SmartNICs nicht nur in den Zuständigkeitsbereich von Xilinx fallen, stehen sie an der Spitze dieser aufstrebenden Technologie. Durch die Verwendung eines SoC in Kombination mit einem FPGA können sie die Benutzerfreundlichkeit und Flexibilität einer softwaredefinierten Lösung mit der Leistung einer hardwareimplementierten Lösung verbinden. Xilinx weiß, dass Anwendungen erforderlich sind, um SmartNICs auszunutzen, und hat daher eine Programmierumgebung geschaffen, die es Computerprogrammierern und nicht Hardware-Ingenieuren ermöglicht, die Anwendungen zu entwickeln, die auf ihren SmartNICs laufen. Für Benutzer, die ein schnelleres TTV-Angebot suchen, verfügt Xilinx über einen App Store, über den Anwendungen von Drittanbietern erworben werden können.
Damit ein modernes Rechenzentrum wettbewerbsfähig ist, muss es seine Server von möglichst vielen unnötigen Aufgaben befreien. Zu diesen Aufgaben gehören zustandsbehaftete Firewalls, Lastausgleich, IPsec, TLS, NVMe-over-TCP, Virtio.blk-Speicherzugriff, Datenkomprimierung oder eine Vielzahl anderer Funktionen, die mit einer SmartNIC besser verwaltet werden können.
Erfahren Sie mehr bei Xilinx Adapt
Xilinx-Anpassung ist eine digitale Veranstaltung am 24. und 25. März 2021, die sich mit der Relevanz von SmartNICs im Rechenzentrum sowie wichtigen Themen wie Cloud Computing, Computational Storage und dem Composable Data Center befasst. Der Eintritt ist frei, Wiederholungen werden im Anschluss zur Verfügung gestellt.
Beteiligen Sie sich an StorageReview
Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | Facebook | RSS Feed