Weißbuch

Synthetischer Verkehrsgenerator Referenzentwurf

Übersicht

Synthetische Traffic-Generatoren ermöglichen Labortests von FPGA-Designs mit Netzwerk-Ports. Es gibt noch weitere Anwendungen, aber das neue Referenzdesign von BittWare konzentriert sich auf Labore und ermöglicht Regressionstests. BittWare hat dieses Design entwickelt, da wir uns darauf vorbereiten, unsere IP-Angebote auf 400 GbE umzustellen. Diese erste Version ist für 100 GbE ausgelegt, aber die Architektur ist darüber hinaus skalierbar. Wir haben diesen synthetischen Datenverkehrsgenerator erstellt, nachdem wir erfahren haben, für was 400-GbE-Geräte so früh im Lebenszyklus der 400-GbE-Technologie verkauft werden.

Unterstützte Hardware

Unsere erste Version des Synthetic Traffic Generator zielt auf die XUP-P3R- und 250-SoC-Karten von BittWare ab, die nur 100 GbE unterstützen. Wir haben dies entwickelt, während wir uns auf die Multi-Rate-Ethernet-Hardblocks von Achronix, Intel und Xilinx vorbereiten.

Synthetischer Verkehrsgenerator ist Teil des Referenzdesigns zur Datenerfassung

Wir bringen den Synthetic Traffic Generator als Teil unseres Data Capture-Architekturkonzepts heraus, beginnend mit Data Capture Release 2.0. Der Traffic Generator besitzt die Sendeseite des QSFP und Data Capture besitzt die Empfangsseite desselben QSFP. Dies ermöglicht es uns, den CMAC in den lokalen Loopback-Modus zu versetzen (oder ein Loopback-Kabel zu installieren), um den Traffic Generator zum Testen von Data Capture zu verwenden. Außerdem können wir einen normalen DAC oder ein optisches Kabel verwenden, um Datenverkehr an andere Geräte zu senden.

Blockdiagramm für das Data Capture-Referenzdesign.

Der FPGA-Bitstream enthält die hier dargestellte Pipeline

Funktionsweise

Der Synthetic Traffic Generator von BittWare erzeugt Ethernet-Pakete innerhalb des FPGAs und leitet sie in das angeschlossene Netzwerk ein.

Falls gewünscht, können Benutzer das separate PCIe Data Capture Reference Design von BittWare einsetzen, um diese Pakete zu empfangen. Dies setzt natürlich voraus, dass die Software den Traffic Generator für die Erzeugung von IP-Paketen konfiguriert.

Die Grundidee besteht darin, über lange Zeiträume hinweg Pakete unterschiedlicher Größe mit Leitungsgeschwindigkeit zu erstellen. Der Paketkopf ändert sich nicht. Sie können eine aufsteigende Paket-Seriennummer innerhalb der Nutzlast konfigurieren.

Sie können bis zu 32 dieser "Paketströme" verschachteln, was bedeutet, dass Sie bis zu 32 verschiedene Paketköpfe haben können. Wir benötigen diese Funktionalität, um Ziele zu testen, die empfangene Paketströme in mehrere "Warteschlangen" für die Verarbeitung durch mehrere Host-CPU-Kerne aufteilen.

Sie können Pakete mit zufälliger Größe konfigurieren, aber bei BittWare neigen wir stattdessen dazu, ein Design mit Leitungsgeschwindigkeit zu durchsuchen, indem wir mit einer endlosen Reihe von kleinen Paketen beginnen, um sicherzustellen, dass es keine Ausfälle gibt, dann ein Byte zur Nutzlast hinzufügen und weiter testen, bis wir die größte Nutzlast erreichen, die ein Zieldesign erlaubt.

Wir ermöglichen es den Benutzern auch, eine einzelne Instanz eines beliebigen Pakets in einen laufenden Stream einzufügen. Dies ist nützlich, um einen Fehler einzufügen und zu sehen, was passiert.

Paketströme müssen nicht mit Leitungsgeschwindigkeit starten, da wir eine längere Lücke zwischen den Paketen definieren können, wodurch die Paketrate reduziert wird. Bei den Nutzdaten kann es sich um Nullen, Zufallszahlen, ein sich wiederholendes 64-Byte-Muster oder eine aufsteigende Sequenz (z. B. 0123456789101112...) handeln.

Hardware

Dieser synthetische Verkehrsgenerator wurde auf einer BittWare XUP-P3R-Karte mit einem Xilinx VU9P-Chip, Speed Grade 2, erstellt und getestet. Der Verkehrsgenerator verwendet keinen externen Speicher. Das Design sollte auf jede BittWare-Karte mit einem Xilinx UltraScale+-Chip, der einen CMAC enthält, portiert werden können, wie wir durch die Portierung der Kombination von Data Capture und Traffic Generator auf das 250-SoC gezeigt haben.

Nutzung der Ressourcen

Diese Diagramme zeigen die FPGA-Ressourcennutzung für einen Release-Kandidaten 2.0.0 des Data Capture-Referenzdesigns (Februar 2021). Dies ist wahrscheinlich sehr nahe an der Version, die wir letztendlich veröffentlicht haben, wenn auch nicht genau.

Beachten Sie, dass diese Bitdatei beide Referenzdesigns Traffic Generator und Data Capture enthält.

Verwandte Projekte/Lösungen

Der Synthetic Traffic Generator enthält die gleiche DAC-Kabel-Funktionalität wie das einfachere Loopback-Beispiel von BittWare.

Ein anderes verwandtes Projekt, StreamSurge, erzeugt keinen Datenverkehr. Stattdessen sendet es Pakete aus einem lokalen Speicherpuffer. Diese Pakete kommen vom Host-Computer, was StreamSurge zu einem universelleren Werkzeug macht. StreamSurge hat zwei bemerkenswerte Einschränkungen. Erstens erfordert das speicherbasierte Design eine spezielle Hardware mit 400 GbE. Insbesondere ist eine Karte mit sowohl 400 GbE als auch HBM erforderlich. Zweitens erfordert die Erstellung der StreamSurge-Quelle die Lizenzierung eines DPDK-IP-Blocks eines Drittanbieters.

Für voll funktionsfähige Traffic-Generatoren werden wir voraussichtlich auf Siama PROVA-C Appliances umsteigen, da sie ein gutes Preis-Leistungs-Verhältnis bieten und BittWare-Hardware mit 100 GbE verwenden.

Fazit und Anforderung der App Note

Das Data Capture-Referenzdesign von BittWare umfasst die Verwendung dieses Synthetic Traffic Generator, derzeit für 100 Gb/s. Wir wollten seine Fähigkeiten teilen, einschließlich der Möglichkeit, proprietären Sensorverkehr zu erzeugen.

Um mehr zu erfahren, möchten wir Sie bitten, die App Note, die Dokumentation für den Traffic Generator, über das unten stehende Formular anzufordern.

 

Es gibt noch mehr zu lesen: Holen Sie sich die Synthetic Traffic Generator App Note

PDF anfordern Download

Was Sie auf dieser Seite sehen, ist die Einführung in den Synthetischen Traffic Generator von BittWare. Es gibt noch viel mehr Details in der vollständigen App Note! Füllen Sie das Formular aus, um Zugang zu einer PDF-Version der vollständigen App Note anzufordern.

Beispielseiten aus der App Note

"*" kennzeichnet Pflichtfelder

Name*
Bitte überprüfen Sie, ob diese E-Mail-Adresse aktiv ist, da die PDF-Datei über diese Adresse verschickt wird.
Adresse und Ort*