UX in network apps: how not to fail
UX in network apps: how not to fail
Header Background Image

Case study

Using ONOS SDN controller with P4-programmable smartNICs to offload VNFs

Low-level programming
Hardware integration
Solution PoC

Business background

Clients icon

Client type

A data center provider
Goals Icon

Business goal

Increase network performance in a data center by offloading Virtual Network Functions (VNFs) to smartNIC

Our approach

  • Provide a team of network and software engineers with expertise in SDN and software development (as well as low-level hardware programming)
  • Create a solution architecture
  • Develop a PoC to offload an example VNF (firewall) to the smartNIC
  • Set up and test the PoC
  • Reuse the PoC for other virtual network functions (load balancer, NAT, etc.)

Business benefits

  • Increased performance: offloading VNFs to the smartNIC optimized overall network performance in DC by reducing the delays.
  • Increased flexibility: using a programmable smartNIC made it possible to quickly change the configuration on it to adjust to the dynamic and evolving distribution of workloads throughout the entire datacenter.
  • Compatibility assured: integrating a smartNIC with the existing SDN controller allows for operational simplicity and consistency with the overall intra-DC networking policies.

Technical highlights

  • Used a Netronome Agilio smartNIC offering P4 support.
  • Developed an example firewall implementation in P4 for the smartNIC.
  • Selected ONOS, an open-source SDN controller with P4Runtime support to control the smartNIC.
  • Developed a dedicated smartNIC proxy software that converts P4Runtime protocol to the Thrift protocol to control the smartNIC data plane.
  • Developed a custom control plane application in ONOS.
  • Set up a demo of the solution.

Technology stack

[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]

Need support with your specific case?