Netzwerk

So einfach lassen sich „softly defined networks” realisieren

| Autor / Redakteur: Mike Santarini * / Margit Kuther

Mit dem Softly Defined Network packt SDNet dieses Problem an der Wurzel. Es ermöglicht den Netzwerk-Systementwicklern die schnelle Entwicklung von Line Cards, die von ihrer Struktur her die korrekte Funktionalität bieten. Insbesondere fokussiert SDNet auf die Automatisierung des hoch komplexen Aspekts beim Line-Card Design: die Entwicklung und Programmierung der Funktionen des Paketprozessor und des Traffic-Managers moderner Line Cards (Bild 3).

Statt des Einsatzes zweier getrennter diskreter ASSPs für diese Funktionen können die Netzwerk-Systementwickler nun die Paketverarbeitung, das Traffic Management und andere Funktionen der Line Card in einem einzigen All Programmable FPGA oder SoC von Xilinx zusammenfassen. Das stellt sicher, dass eine optimale Implementierung der Ziel-Applikationen entsteht. Zusätzlich zur Integration der Funktionalität vieler Einzelchips in einem All Programmable Baustein vereinfacht SDNet die Erstellung einer High-level Spezifikation für das Verhalten der Line Card. Auch werden damit automatisch die RTL-Blocks zur Implementierung in den Xilinx All Programmable Bausteinen, der Firmware und einer Testbench zur Evaluierung generiert.

„Mit SDNet spezifizieren die Systemarchitekten das Was - nicht das Wie ihrer Designs“, erklärt Possley. „Sie spezifizieren die exakten Dienste, die sie einrichten wollen, ohne Rücksicht darauf, wie diese im Silizium angelegt werden.”

Im SDNet-Designfluss definieren die Systemarchitekten somit die Line-Card-Funktionalität über eine funktionale High-Level Spezifikation (Bild 4). SDNet erlaubt ihnen die Beschreibung des geforderten Verhaltens unterschiedlicher Packet-Processing Engines – einschließlich solcher für Parsing, Editing, Search und Quality-of-Service (QoS). Die Architekten können die Engines hierarchisch als einfachere Sub-Engines beschreiben, die sie untereinander verbinden und als Paket-Datenflüsse arrangieren können. Diese Sub-Engines können auch vom Anwender bereitgestellte Engines enthalten.

Das SDNet-Environment spezifiziert keine Details der Implementierung. Das gibt den Anwendern die Freiheit zur Skalierung der Performance und der Ressourcen ihrer Designs, ohne die Details der der darunter liegenden Architektur zu durchdenken. Auch sind die SDNet-Spezifikationen nicht auf spezifische Netzwerkprotokolle begrenzt.

Weiterhin betont Possley die besondere Einfachheit von SDNet. Einige Kunden, mit denen Xilinx Beta-Tests durchgeführt hat, haben es als sehr intuitiv und einfach einsetzbar bezeichnet. „SDNet kürzt den Code-Umfang dramatisch und führt zu einer einfachen und intuitiven Spezifikation – um Größenordungen weniger aufwendig im Vergleich zum Microcode für einen Netzwerkprozessor.”

Nach der Definition der System-Engines und Datenflüsse in der SDNet-Spezifikation beaufschlagen die Entwickler den SDNet-Compiler mit den Anforderungen für Durchsatz und Latenz, sowie mit den Anforderungen an die Runtime-Programmierbarkeit. Diese bedingen die vom Compiler generierte optimierte Hardware-Architektur. Mit der Ausführung eines Befehls generiert der SDNet-Compiler dann automatisch die RTL-Daten für die von Design benötigten Hardware-Blocks. Der Compiler erzeugt außerdem die Firmware und eine Testbank zur Verifizierung und Evaluierung. Die SDNet Design-Umgebung umfasst auch die Integration der von Xilinx für Netzanwendungen optimierten SmartCORE-Bausteine, sowie die LogiCOREs für die Konnektivität, die Steuerung der externen Speicher und der eingebetteten Prozessoren.

Nach dem Kompilieren schließen die Netzwerkentwickler die Implementierung des Designs in der Vivado Design Suite mit Hilfe des IP-Integrator (IPI) Tools ab. Sie benutzen dabei zunächst die Vivado-Tools und IPI, mit der sie die Beschreibung der vom SDNet-Compiler generierten der RTL-Architektur in eine optimierte Xilinx FPGA-implementierung übersetzen. Dann integrieren sie alle zusätzlich gewünschten Line-Card-Funktionalitäten im FPGA, unter der Voraussetzung ausreichender Ressourcen auf dem ausgewählten Baustein. Damit entsteht im Prinzip eine All Programmable Line Card auf einem Chip.

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 42937119 / Embedded Systeme)