Warum FPGAs für Netzwerktests?
Es gibt bereits Softwarelösungen für Netzwerkprotokolltests bei jeder Bandbreite und für Lasttests bis zu 10 GbE. Aber bei 25G und mehr können selbst die neuesten Multi-Core Intel Xeon-CPUs nicht mithalten - sie benötigen eine spezielle Netzwerkbeschleunigungshardware.
Da GPUs für die Paketverarbeitung nicht geeignet sind, beschränkt sich die Auswahl auf NIC-ASIC- oder FPGA-Lösungen. Der Vorteil von ASIC-basierten Geräten ist, dass sie 25-100 Gbit/s mit vielen Funktionen für umfangreiche Tests bieten. Allerdings sind dedizierte 100G-Appliances recht teuer - sie können ein Vielfaches einer einzelnen FPGA-Karte kosten.
Darüber hinaus kann eine FPGA-basierte Lösung mit genau den Funktionen entwickelt werden, die für die Bedürfnisse des Benutzers erforderlich sind, und das zu wesentlich geringeren Kosten.
Die Motivation von BittWare für die Entwicklung von StreamSurge
Bei BittWare haben wir intern zwei verschiedene Anwendungsfälle für 100G-Netzwerklasttests:
- Kontinuierliche Integrationstestläufe über Nacht für die Produktentwicklung
- Fertigungstest in der Fabrikhalle
In beiden Fällen sind mehrere 100G-Tester erforderlich, die gleichzeitig laufen. Es gibt zwar ASIC-Tester für diese Tests, aber wir müssten mehrere davon zu sehr hohen Kosten pro Einheit kaufen (fünfmal oder mehr als der Preis einer XUP-P3R-Karte).
Unsere Lösung bestand darin, die für unsere Tests benötigten Funktionen einzugrenzen, und mit SmartNIC Shell als Ausgangspunkt haben wir StreamSurge entwickelt.