Abstract
While programmable NICs allow for better scalability to handle growing network workloads, providing an expressive yet simple abstraction to program stateful network functions in hardware remains a research challenge. We address the problem with FlowBlaze, an open abstraction for building stateful packet processing functions in hardware. The abstraction is based on Extended Finite State Machines and introduces the explicit definition of flow state, allowing Flow-Blaze to leverage flow-level parallelism. FlowBlaze is expressive, supporting a wide range of complex network functions, and easy to use, hiding low-level hardware implementation issues from the programmer. Our implementation of FlowBlaze on a NetFPGA SmartNIC achieves very low latency (in the order of a few microseconds), consumes relatively little power, can hold per-flow state for hundreds of thousands of flows, and yields speeds of 40 Gb/s, allowing for even higher speeds on newer FPGA models. Both hardware and software implementations of FlowBlaze are publicly available.
Original language | English |
---|---|
Title of host publication | Proceedings of the 16th USENIX Conference on Networked Systems Design and Implementation |
Place of Publication | USA |
Publisher | USENIX Association |
Pages | 531–547 |
Number of pages | 17 |
ISBN (Print) | 9781931971492 |
Publication status | Published - 26 Feb 2019 |
Event | 16th USENIX Conference on Networked Systems Design and Implementation - Boston, United States Duration: 26 Feb 2019 → 28 Feb 2019 Conference number: 16 https://www.usenix.org/conference/nsdi19 |
Conference
Conference | 16th USENIX Conference on Networked Systems Design and Implementation |
---|---|
Abbreviated title | NSDI 2019 |
Country/Territory | United States |
City | Boston |
Period | 26/02/19 → 28/02/19 |
Internet address |