SmartNIC Programming Models

Size: px
Start display at page:

Download "SmartNIC Programming Models"

Transcription

1 SmartNIC Programming Models Johann Tönsing Open-NFP

2 Agenda SmartNIC hardware Pre-programmed vs. custom (C and/or P4) firmware Programming models / offload models Switching on NIC, with SR-IOV / Virtio data delivery SmartNIC performance + TCO Silicon and datapath software architectures Example code 207 Open-NFP 2

3 Agilio CX SmartNIC Hardware Optimized for standard server-based cloud data centers Low Profile Half Length PCIe form factor, power < 25W Based on Netronome s NFP-4xxx silicon (72 C programmable cores, 8 threads each) 2GB DRAM for lookup tables / state tables (millions of entries) Data plane fully implemented in software 2x 0GbE 2x 25GbE x 40GbE 2x 40GbE Also available: Agilio LX 2x40G / x00g with dual PCIe interfaces, 20 cores, 8GB DRAM 207 Open-NFP 3

4 SmartNIC Firmware: Pre-programmed or Custom SmartNIC with dynamically downloadable firmware 207 Open-NFP 4

5 SmartNIC Firmware: Pre-programmed or Custom OpenStack ONOS ODL Linux BSD vrouter OVS ebpf D P D K OVS / vrouter / ebpf+xdp datapath on host can be accelerated by SmartNIC Firmware / drivers supplied by Netronome SmartNIC with dynamically downloadable firmware 207 Open-NFP 4

6 SmartNIC Firmware: Pre-programmed or Custom OpenStack ONOS ODL Linux BSD vrouter OVS ebpf D P D K OVS / vrouter / ebpf+xdp datapath on host can be accelerated by SmartNIC Firmware / drivers supplied by Netronome SmartNIC with dynamically downloadable firmware Run-Time Firmware can be developed in P4 and/or C Compiler Debugger Custom dataplane app.p4 app.c Editor 207 Open-NFP 4

7 SmartNIC Firmware: Pre-programmed or Custom OpenStack ONOS ODL Linux BSD vrouter OVS ebpf D P D K OVS / vrouter / ebpf+xdp datapath on host can be accelerated by SmartNIC Firmware / drivers supplied by Netronome SmartNIC with dynamically downloadable firmware Run-Time Firmware can be developed in P4 and/or C Compiler Debugger Custom dataplane app.p4 Editor app.c Hybrid - sandbox / plugin concept Example: C plugin embedded in P4 207 Open-NFP 4

8 SmartNIC Firmware: Pre-programmed or Custom OpenStack ONOS ODL Linux BSD vrouter OVS ebpf D P D K OVS / vrouter / ebpf+xdp datapath on host can be accelerated by SmartNIC Firmware / drivers supplied by Netronome SmartNIC with dynamically downloadable firmware Run-Time Firmware can be developed in P4 and/or C Compiler Debugger Custom dataplane 207 Open-NFP app.p4 app.c Editor Integrated Development Environment Edit - Compile - Debug (HW, simulator) Hybrid - sandbox / plugin concept Example: C plugin embedded in P4 4

9 Programming Models 207 Open-NFP 5

10 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode Kernel Data Path 207 Open-NFP 5

11 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode Kernel Data Path offload NIC w. NFP Match Data Path Act 207 Open-NFP 5

12 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode Kernel Data Path offload NIC w. NFP Match Data Path Act 207 Open-NFP 5

13 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode VM / App Kernel Data Path offload NIC w. NFP Match Data Path Act 207 Open-NFP 5

14 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode VM / App Kernel Data Path NIC w. NFP offload fallback Match Data Path Act 207 Open-NFP 5

15 Programming Models Offload / Acceleration (transparent - drop in replacement) User Mode VM / App Kernel Data Path NIC w. NFP offload fallback Match Data Path Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels Conntrack (Firewall) ebpf / XDP Open-NFP 5

16 Programming Models Offload / Acceleration (transparent - drop in replacement) Calling APIs Compatible / Open Sourced vs. Vendor Extension User Mode VM / App User Mode App API Kernel Data Path Kernel Data Path NIC w. NFP offload fallback NIC w. NFP Match Data Path Act Match Data Path Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels Conntrack (Firewall) ebpf / XDP Open-NFP 5

17 Programming Models Offload / Acceleration (transparent - drop in replacement) Calling APIs Compatible / Open Sourced vs. Vendor Extension User Mode VM / App User Mode App API Kernel Data Path Kernel Data Path NIC w. NFP offload fallback NIC w. NFP Match Data Path Act Match Data Path Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels Conntrack (Firewall) ebpf / XDP... t DPDK Poll Mode Driver ebpf / XDP APIs Flow APIs - Match / Act / Tunnel Load Balancing APIs Crypto APIs Open-NFP 5

18 Programming Models Offload / Acceleration (transparent - drop in replacement) Calling APIs Compatible / Open Sourced vs. Vendor Extension User Mode Kernel VM / App Data Path User Mode Kernel App API Data Path New OPNFV! NIC w. NFP offload fallback NIC w. NFP Data Path Data Path Match Act Match Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels t DPDK Poll Mode Driver ebpf / XDP APIs Flow APIs - Match / Act / Tunnel Conntrack (Firewall) ebpf / XDP... Load Balancing APIs Crypto APIs Open-NFP 5

19 Programming Models Offload / Acceleration (transparent - drop in replacement) Calling APIs Compatible / Open Sourced vs. Vendor Extension Flexible Datapath Abstraction OpenFlow 2.x, P4, PIF, ebpf... User Mode Kernel VM / App Data Path User Mode Kernel App API Data Path New OPNFV! User Mode Kernel App API Data Path offload fallback NIC w. NFP NIC w. NFP NIC w. NFP Data Path Data Path Data Path Parse Match Match State Match Act Match Act Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels Conntrack (Firewall) ebpf / XDP... t DPDK Poll Mode Driver ebpf / XDP APIs Flow APIs - Match / Act / Tunnel Load Balancing APIs Crypto APIs... t Protocol agnostic flexible parsing Arbitrary arrangement of matching tables Matching without tables State storage / retrieval Complex actions Event handling 207 Open-NFP 5

20 Programming Models Offload / Acceleration (transparent - drop in replacement) Calling APIs Compatible / Open Sourced vs. Vendor Extension Flexible Datapath Abstraction OpenFlow 2.x, P4, PIF, ebpf... Hybrid: Datapath Extensions in / NFP In C, P4 / PIF,... User Mode Kernel VM / App Data Path User Mode Kernel App API Data Path New OPNFV! User Mode Kernel App API Data Path User Mode Kernel App API Data Path offload fallback NIC w. NFP NIC w. NFP NIC w. NFP NIC w. NFP Data Path Data Path Data Path Parse Match Match State Data Path App Match Act Match Act Act Match Act t OVS/OpenFlow Match, Action, Tunnels Contrail vrouter Match, Action, Tunnels Conntrack (Firewall) ebpf / XDP... t DPDK Poll Mode Driver ebpf / XDP APIs Flow APIs - Match / Act / Tunnel Load Balancing APIs Crypto APIs... t Protocol agnostic flexible parsing Arbitrary arrangement of matching tables Matching without tables State storage / retrieval Complex actions Event handling t Custom tunnel Custom action Custom matching Open-NFP 5

21 Traditional Model: SR-IOV x86 Userspace (Nova, Neutron) SR-IOV Configuration Configuration from cloud management system SR-IOV PCIe Traditional NIC OVS Kernel DP Match/Act SR-IOV Traffic Director 207 Open-NFP 6

22 Traditional Model: SR-IOV x86 Userspace (Nova, Neutron) SR-IOV Configuration 2 Configuration from cloud management system SR-IOV 2 Hardware configuration PCIe Traditional NIC OVS Kernel DP Match/Act SR-IOV Traffic Director 207 Open-NFP 6

23 Traditional Model: SR-IOV x86 Userspace (Nova, Neutron) SR-IOV Configuration 2 Configuration from cloud management system SR-IOV 2 Hardware configuration PCIe Traditional NIC OVS Kernel DP Match/Act SR-IOV Traffic Director 207 Open-NFP 6

24 Traditional Model: SR-IOV x86 Userspace (Nova, Neutron) SR-IOV Configuration 2 Configuration from cloud management system SR-IOV 2 Hardware configuration PCIe Low expressiveness (MAC/VLAN based traffic directing) High performance Poor manageability (no VM migration) Traditional NIC OVS Kernel DP Match/Act SR-IOV Traffic Director 207 Open-NFP 6

25 Traditional Model: Host Runs Datapath (Nova, Neutron) x86 Userspace Datapath P4, Open vswitch, vrouter Control Agent CLI or equivalent x86 Kernel Matching Execute Action Host - guest channel virtio or other Configuration via network protocol or CLI PCIe Traditional NIC OVS Kernel DP Match/Act 207 Open-NFP 7

26 Traditional Model: Host Runs Datapath (Nova, Neutron) or equivalent x86 Userspace x86 Kernel Datapath P4, Open vswitch, vrouter Matching 2 Control Agent CLI Execute Action Host - guest channel virtio or other Configuration via network protocol or CLI PCIe 2 Userspace agent populates table entries Traditional NIC OVS Kernel DP Match/Act 207 Open-NFP 7

27 Traditional Model: Host Runs Datapath (Nova, Neutron) or equivalent x86 Userspace x86 Kernel Datapath P4, Open vswitch, vrouter Matching 2 Control Agent CLI Execute Action Host - guest channel virtio or other Configuration via network protocol or CLI PCIe 2 Userspace agent populates table entries Traditional NIC OVS Kernel DP Match/Act 207 Open-NFP 7

28 Traditional Model: Host Runs Datapath (Nova, Neutron) or equivalent x86 Userspace x86 Kernel Datapath P4, Open vswitch, vrouter Matching 2 Control Agent CLI Execute Action Host - guest channel virtio or other Configuration via network protocol or CLI PCIe 2 Userspace agent populates table entries Traditional NIC High expressiveness (software) Consumes many cores and/or exhibits low performance OVS Kernel DP Match/Act 207 Open-NFP 7

29 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs PCIe Agilio SmartNIC OVS Kernel DP Match/Act 207 Open-NFP 8

30 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs PCIe Agilio SmartNIC Open vswitch Datapath OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP 8

31 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs Agilio SmartNIC Miss PCIe Open vswitch Datapath OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP 8

32 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs Agilio SmartNIC Miss PCIe Open vswitch Datapath OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP 8

33 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache Agilio SmartNIC Miss PCIe Open vswitch Datapath OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP 8

34 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats Agilio SmartNIC 3 Miss PCIe Open vswitch Datapath OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP 8

35 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats Agilio SmartNIC 3 Miss PCIe Open vswitch Datapath 4 Flow tracking: per-microflow state learning Self Learning Exact Match Flow Tracker Miss OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 4 Hit 207 Open-NFP 8

36 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Conn track FTP SIP Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats Agilio SmartNIC 3 Miss PCIe Open vswitch Datapath 4 Flow tracking: per-microflow state learning Self Learning Exact Match Flow Tracker Miss OVS Kernel DP Match/Act Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 4 Hit 207 Open-NFP 8

37 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Conn track FTP SIP Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats Agilio SmartNIC 3 Miss PCIe Open vswitch Datapath 4 Flow tracking: per-microflow state learning Self Learning Exact Match Flow Tracker Miss OVS Kernel DP Match/Act Conn track Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 4 Hit 207 Open-NFP 8

38 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Conn track FTP SIP Execute Action SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats Agilio SmartNIC 3 Miss 5 PCIe Open vswitch Datapath 4 Flow tracking: per-microflow state learning 5 Offload connection tracking: synchronize state Self Learning Exact Match Flow Tracker Miss OVS Kernel DP Match/Act Conn track Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 4 Hit 207 Open-NFP 8

39 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel DP Ext. Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Conn track FTP SIP Execute Action 6 SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats 4 Flow tracking: per-microflow state learning 5 Offload connection tracking: synchronize state Agilio SmartNIC Self Learning Exact Match Flow Tracker 3 Miss Miss OVS Kernel DP Match/Act 5 Conn track Open vswitch Datapath Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) PCIe 6 Datapath Extension or Plugin P4 / C in Sandbox 6 Datapath extension software 4 Hit 207 Open-NFP 8

40 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel DP Ext. Configuration via controller, CLI, or Callable API OVS Kernel DP Match/Act Conn track FTP SIP Execute Action 6 SR-IOV / virtio VFs SR-IOV VFs 2 OVS userspace agent populates kernel cache 3 Offload datapath: copy match tables, sync stats 4 Flow tracking: per-microflow state learning 5 Offload connection tracking: synchronize state Agilio SmartNIC Self Learning Exact Match Flow Tracker 3 Miss Miss OVS Kernel DP Match/Act 5 Conn track Open vswitch Datapath Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) PCIe 6 Datapath Extension or Plugin P4 / C in Sandbox 6 Datapath extension software 4 Hit 207 Open-NFP 8

41 Offload Model: Agilio OVS Acceleration x86 Userspace (Nova, Neutron) Open vswitch Subsystem OVS CLI Callable API OVS Agent OpenFlow 2 Miss x86 Kernel DP Ext. Best of all worlds Configuration via controller, CLI, or Callable API - Performance of SR-IOV OVS Kernel DP Match/Act Conn track FTP SIP Execute Action 6 SR-IOV / virtio VFs SR-IOV VFs - Flexibility of Virtio (VM migration) 2 OVS userspace agent populates kernel cache - Performance and core saving of switching on SmartNIC 3 Offload datapath: copy match tables, sync stats 4 Flow tracking: per-microflow state learning 5 Offload connection tracking: synchronize state Agilio SmartNIC Self Learning Exact Match Flow Tracker 3 Miss Miss OVS Kernel DP Match/Act 5 Conn track Open vswitch Datapath Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) PCIe 6 Datapath Extension or Plugin P4 / C in Sandbox 6 Datapath extension software 4 Hit 207 Open-NFP 8

42 Example: Throughput vs. Number of Rules Millions of Packets per Second Wildcard Rules 000 Wildcard Rules 0000 Wildcard Rules Wildcard Rules L2/L3 Forwarding to 8 VMs with 64K Flows 2 Cores 2 Cores 5X Throughput Improvement + 90% Savings Core 5 OVS in Kernel Space OVS in User Space on DPDK OVS Offloaded to Agilio CX 207 Open-NFP 9

43 Example: Throughput vs. Number of Rules Millions of Packets per Second Wildcard Rules 000 Wildcard Rules 0000 Wildcard Rules Wildcard Rules L2/L3 Forwarding to 8 VMs with 64K Flows 2 Cores 2 Cores 5X Throughput Improvement + 90% Savings Core 5 OVS in Kernel Space OVS in User Space on DPDK OVS Offloaded to Agilio CX 207 Open-NFP 9

44 Tested Scenario: Server Core Allocation Unaccelerated OVS (Kernel / User Mode) Agilio OVS OVS 207 Open-NFP 0

45 Tested Scenario: Server Core Allocation Unaccelerated OVS (Kernel / User Mode) Agilio OVS OVS Typical result: replace 3-6 racks with rack! 207 Open-NFP 0

46 Tested Scenario: Server Core Allocation Unaccelerated OVS (Kernel / User Mode) Agilio OVS OVS Benefits for your use case: Typical result: replace 3-6 racks with rack! 207 Open-NFP 0

47 P4 Datapath on SmartNIC (Nova, Neutron) x86 Server P4 Control CLI P4 Control Agent or successor SR-IOV / virtio VFs SR-IOV VFs PCIe Agilio SmartNIC P4 Matching 207 Open-NFP

48 P4 Datapath on SmartNIC (Nova, Neutron) x86 Server P4 Control CLI P4 Control Agent or successor Configuration via control protocol or CLI SR-IOV / virtio VFs SR-IOV VFs PCIe Agilio SmartNIC P4 Matching 207 Open-NFP

49 P4 Datapath on SmartNIC (Nova, Neutron) x86 Server P4 Control CLI P4 Control Agent or successor Configuration via control protocol or CLI SR-IOV / virtio VFs SR-IOV VFs PCIe Agilio SmartNIC P4 Datapath P4 Matching Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP

50 P4 Datapath on SmartNIC (Nova, Neutron) x86 Server P4 Control CLI P4 Control Agent or successor Configuration via control protocol or CLI 2 SR-IOV / virtio VFs SR-IOV VFs 2 Agent populates tables in SmartNIC datapath PCIe Agilio SmartNIC P4 Datapath P4 Matching Execute Action (e.g. Entunnel, Deliver to VM, Send to Port) 207 Open-NFP

51 Traditional vs. SmartNIC Accelerated Networking Forwarding / Virtual Switching Technology SR-IOV Intelligent Datapath P4 / vrouter / Open vswitch 207 Open-NFP 2

52 Traditional vs. SmartNIC Accelerated Networking Forwarding / Virtual Switching Technology SR-IOV Intelligent Datapath P4 / vrouter / Open vswitch Traditional Approach (Unaccelerated) Limited expressiveness to direct traffic to VMs (no support for general match/action rules, tunnel termination, stateful firewalling) High throughput No VM migration support (difficult to manage) High expressiveness - match/action, tunnels, stateless/stateful firewalling etc. Limited throughput High utilization (e.g. 50% of cores) 207 Open-NFP 2

53 Traditional vs. SmartNIC Accelerated Networking Forwarding / Virtual Switching Technology SR-IOV Intelligent Datapath P4 / vrouter / Open vswitch Traditional Approach (Unaccelerated) Limited expressiveness to direct traffic to VMs (no support for general match/action rules, tunnel termination, stateful firewalling) High throughput No VM migration support (difficult to manage) High expressiveness - match/action, tunnels, stateless/stateful firewalling etc. Limited throughput High utilization (e.g. 50% of cores) Fully Programmable SmartNIC Accelerated Approach High expressiveness - match/action, tunnels, stateless/stateful firewalling etc. and SR-IOV based data delivery to VMs High throughput Virtio supporting VM migration (facilitating cloud optimization and upgrading) Higher throughput (~5x higher) Lower utilization (~0x lower) 207 Open-NFP 2

54 Flow Processor Silicon Architecture Network Flow Processor 4xxx (used on Agilio-CX SmartNICs) Highly parallel multithreaded architecture (8 threads / core) for high throughput Purpose built Flow Processing Cores (72) maximize flexibility H/W accelerators further maximize efficiency (throughput/watt) Fully software defined feature set - examples: PCIe Gen3 x8 Network and PCIe SR-IOV / virtio RX/TX with stateless offloads Flexible tunneling support (e.g. VXLAN, GRE, VLAN, MPLS, NSH) Flexible Match/Action processing - many packet fields / protocols Highly scalable and fine grained security policies External DDR3 accommodates millions of flows / rules Up to 8GB DRAM Convenient programmability using P4 and C Ethernet 0G, 40G, 207 Open-NFP 3

55 Flow Processor Silicon Architecture Network Flow Processor 4xxx (used on Agilio-CX SmartNICs) Highly parallel multithreaded architecture (8 threads / core) for high throughput Purpose built Flow Processing Cores (72) maximize flexibility H/W accelerators further maximize efficiency (throughput/watt) Fully software defined feature set - examples: PCIe Gen3 x8 Network and PCIe SR-IOV / virtio RX/TX with stateless offloads Flexible tunneling support (e.g. VXLAN, GRE, VLAN, MPLS, NSH) Flexible Match/Action processing - many packet fields / protocols Highly scalable and fine grained security policies External DDR3 accommodates millions of flows / rules Up to 8GB DRAM Convenient programmability using P4 and C Ethernet 0G, 40G, 207 Open-NFP 3

56 Flow Processor Silicon Architecture Network Flow Processor 4xxx (used on Agilio-CX SmartNICs) Highly parallel multithreaded architecture (8 threads / core) for high throughput Purpose built Flow Processing Cores (72) maximize flexibility H/W accelerators further maximize efficiency (throughput/watt) Fully software defined feature set - examples: PCIe Gen3 x8 Network and PCIe SR-IOV / virtio RX/TX with stateless offloads Flexible tunneling support (e.g. VXLAN, GRE, VLAN, MPLS, NSH) Flexible Match/Action processing - many packet fields / protocols Highly scalable and fine grained security policies External DDR3 accommodates millions of flows / rules Up to 8GB DRAM Convenient programmability using P4 and C Ethernet 0G, 40G, 207 Open-NFP 3

57 SmartNIC Datapath Worker Software Architecture Load balancer distributes each packet to next available thread for optimum throughput Hardware assisted reordering ensures packet order is maintained Flow tracker statefully learns / tracks millions of sessions Matching performed using DRAM-backed tables - capacity millions of entries Actions efficiently performed in on-chip memory = Ring / Work Queue (multi producer / consumer) net or PCIE Load Balance Parse Flow Tracker Learn microflows Match Act Cache action P4 Datapath Run to completion Re- order net or PCIE Pool of worker threads on flow processing cores 207 Open-NFP 4

58 SmartNIC Datapath Worker Software Architecture Load balancer distributes each packet to next available thread for optimum throughput Hardware assisted reordering ensures packet order is maintained Flow tracker statefully learns / tracks millions of sessions Matching performed using DRAM-backed tables - capacity millions of entries Actions efficiently performed in on-chip memory = Ring / Work Queue (multi producer / consumer) net or PCIE Load Balance Parse Flow Tracker Learn microflows Match Act Cache action P4 Datapath Run to completion C Plugin Re- order net or PCIE Pool of worker threads on flow processing cores 207 Open-NFP 4

59 SmartNIC Datapath Worker Software Architecture Load balancer distributes each packet to next available thread for optimum throughput Hardware assisted reordering ensures packet order is maintained Flow tracker statefully learns / tracks millions of sessions Matching performed using DRAM-backed tables - capacity millions of entries Actions efficiently performed in on-chip memory = Ring / Work Queue (multi producer / consumer) net or PCIE Load Balance Parse Flow Tracker Learn microflows Match Act Cache action C XX P4 Datapath Run to completion C Plugin Re- order net or PCIE Pool of worker threads on flow processing cores 207 Open-NFP 4

60 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) = Ring / Work Queue (multi producer / consumer) net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

61 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) Coprocessor microengines = Ring / Work Queue (multi producer / consumer) C Code net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

62 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) Coprocessor microengines = Ring / Work Queue (multi producer / consumer) C Code net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

63 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) Coprocessor microengines = Ring / Work Queue (multi producer / consumer) C Code net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

64 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) = Ring / Work Queue (multi producer / consumer) Coprocessor microengines C Code Coprocessor microengines C Code net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

65 Datapath Distributed over Microengines Worker uses ring to forward packets to other microengine(s) Coprocessor microengines Coprocessor microengines = Ring / Work Queue (multi producer / consumer) C Code C Code Crypto Crypto net or PCIE Load Balance Parse C / P4 Datapath Run to completion Flow Tracker Learn microflows Cache action Match Act Re- order net or PCIE Pool of worker threads on microengines 207 Open-NFP 5

66 Example: P4 main implementing a simple NIC header_type eth_hdr { fields { dst : 48; src : 48; etype : 6; } } header eth_hdr eth; parser start { return eth_parse; } parser eth_parse { extract(eth); return ingress; } action drop_act() { drop(); } action fwd_act(port) { modify_field(standard_metadata.egress_spec, port); } table in_tbl { reads { standard_metadata.ingress_port : exact; } actions { fwd_act; drop_act; } } control ingress { apply(in_tbl); } 207 Open-NFP 6

67 Example: C Code 207 Open-NFP 7

68 Example of Fully Customized Datapath (P4 / C) Control App Populate tables, display statistics P4 / C Development Environment Edit - Debug Server (x86 - Linux) Run-Time Interface Agent VNF Kernel Mode (C) netdev 2 VNF User Mode (C) DPDK Concepts: P4 and C running on SmartNIC implements datapath - e.g. defines protocols, match / action behavior Datapath steers traffic to VNFs running on x86 server and on SmartNIC Agilio SmartNIC Match Protocol RT I/F Helper Other Security µvnf (C) Timestamp µvnf Latency Stats µvnf (C) Timestamp µvnf Latency Stats µvnf (C) PCIe TCP Meter P4 Datapath with C Run to completion 207 Open-NFP 8

69 Next Steps Use Agilio SmartNICs with existing dataplanes Use Agilio OVS (with / without Conntrack) Use Agilio Contrail vrouter Use Agilio ebpf/xdp Program Agilio SmartNICs (following sessions - SDK, P4, OVS, ebpf/xdp) Program using P4, C, ebpf/xdp Participate in open source and standards evolution: openstack.org, openvswitch.org, opencontrail.org, p4.org, iovisor.org, open-nfp.org, opennetworking.org, opensourcesdn.org, opnfv.org, linuxfoundation.org Examples: VNF offload API (@ OPNFV + other bodies) Increase flexibility, improve performance, free up server resources! 207 Open-NFP 9

70 Thank You! More information: open-nfp.org 207 Open-NFP 20

SmartNIC Programming Models

SmartNIC Programming Models SmartNIC Programming Models Johann Tönsing 206--09 206 Open-NFP Agenda SmartNIC hardware Pre-programmed vs. custom (C and/or P4) firmware Programming models / offload models Switching on NIC, with SR-IOV

More information

Comparing Open vswitch (OpenFlow) and P4 Dataplanes for Agilio SmartNICs

Comparing Open vswitch (OpenFlow) and P4 Dataplanes for Agilio SmartNICs Comparing Open vswitch (OpenFlow) and P4 Dataplanes for Agilio SmartNICs Johann Tönsing May 24, 206 206 NETRONOME Agenda Contributions of OpenFlow, Open vswitch and P4 OpenFlow features missing in P4,

More information

Host Dataplane Acceleration: SmartNIC Deployment Models

Host Dataplane Acceleration: SmartNIC Deployment Models Host Dataplane Acceleration: SmartNIC Deployment Models Simon Horman 20 August 2018 2018 NETRONOME SYSTEMS, INC. Agenda Introduction Hardware and Software Switching SDN Programmability Host Datapath Acceleration

More information

Programming Netronome Agilio SmartNICs

Programming Netronome Agilio SmartNICs WHITE PAPER Programming Netronome Agilio SmartNICs NFP-4000 AND NFP-6000 FAMILY: SUPPORTED PROGRAMMING MODELS THE AGILIO SMARTNICS DELIVER HIGH- PERFORMANCE SERVER- BASED NETWORKING APPLICATIONS SUCH AS

More information

SmartNIC Data Plane Acceleration & Reconfiguration. Nic Viljoen, Senior Software Engineer, Netronome

SmartNIC Data Plane Acceleration & Reconfiguration. Nic Viljoen, Senior Software Engineer, Netronome SmartNIC Data Plane Acceleration & Reconfiguration Nic Viljoen, Senior Software Engineer, Netronome Need for Accelerators Validated by Mega-Scale Operators Large R&D budgets, deep acceleration software

More information

Agilio OVS Software Architecture

Agilio OVS Software Architecture WHITE PAPER Agilio OVS Software Architecture FOR SERVER-BASED NETWORKING THERE IS CONSTANT PRESSURE TO IMPROVE SERVER- BASED NETWORKING PERFORMANCE DUE TO THE INCREASED USE OF SERVER AND NETWORK VIRTUALIZATION

More information

OVS Acceleration using Network Flow Processors

OVS Acceleration using Network Flow Processors Acceleration using Network Processors Johann Tönsing 2014-11-18 1 Agenda Background: on Network Processors Network device types => features required => acceleration concerns Acceleration Options (or )

More information

Agilio CX 2x40GbE with OVS-TC

Agilio CX 2x40GbE with OVS-TC PERFORMANCE REPORT Agilio CX 2x4GbE with OVS-TC OVS-TC WITH AN AGILIO CX SMARTNIC CAN IMPROVE A SIMPLE L2 FORWARDING USE CASE AT LEAST 2X. WHEN SCALED TO REAL LIFE USE CASES WITH COMPLEX RULES TUNNELING

More information

Introduction to a NIC Wire App in P4

Introduction to a NIC Wire App in P4 Introduction to a NIC Wire App in P4 This lab introduces the concepts of P4 by implementing a rudimentary Network Interface Card (NIC). This is achieved by creating a program to match traffic entering

More information

Accelerating Contrail vrouter

Accelerating Contrail vrouter WHITE PAPER Accelerating Contrail vrouter WHEN DEPLOYED WITH THE JUNIPER NETWORKS CONTRAIL CLOUD NETWORKING PLATFORM, THE NETRONOME AGILIO VROUTER SOLUTION DELIVERS ACCELERATED PERFORMANCE THAT ENABLES

More information

Accelerating vrouter Contrail

Accelerating vrouter Contrail WHITE PAPER Accelerating vrouter Contrail A VIRTUAL ROUTER (VROUTER) IS A SOFTWARE ONLY IMPLEMENTATION OF LAYER 3 INTERNET PROTOCOL (IP) ROUTING. ROUTING FUNCTIONS THAT ARE TRADITIONALLY DELIVERED AS DEDICATED

More information

OpenStack Networking: Where to Next?

OpenStack Networking: Where to Next? WHITE PAPER OpenStack Networking: Where to Next? WHAT IS STRIKING IS THE PERVASIVE USE OF OPEN VSWITCH (OVS), AND AMONG NEUTRON FEATURES, THE STRONG INTEREST IN SOFTWARE- BASED NETWORKING ON THE SERVER,

More information

Bringing Software Innovation Velocity to Networking Hardware

Bringing Software Innovation Velocity to Networking Hardware Bringing Software Innovation Velocity to Networking Hardware 1 2 Netronome invented the flexible network flow processor and hardware-accelerated server-based networking. Netronome unites the speed and

More information

Netronome NFP: Theory of Operation

Netronome NFP: Theory of Operation WHITE PAPER Netronome NFP: Theory of Operation TO ACHIEVE PERFORMANCE GOALS, A MULTI-CORE PROCESSOR NEEDS AN EFFICIENT DATA MOVEMENT ARCHITECTURE. CONTENTS 1. INTRODUCTION...1 2. ARCHITECTURE OVERVIEW...2

More information

Open-NFP Summer Webinar Series: Session 4: P4, EBPF And Linux TC Offload

Open-NFP Summer Webinar Series: Session 4: P4, EBPF And Linux TC Offload Open-NFP Summer Webinar Series: Session 4: P4, EBPF And Linux TC Offload Dinan Gunawardena & Jakub Kicinski - Netronome August 24, 2016 1 Open-NFP www.open-nfp.org Support and grow reusable research in

More information

Programming NFP with P4 and C

Programming NFP with P4 and C WHITE PAPER Programming NFP with P4 and C THE NFP FAMILY OF FLOW PROCESSORS ARE SOPHISTICATED PROCESSORS SPECIALIZED TOWARDS HIGH-PERFORMANCE FLOW PROCESSING. CONTENTS INTRODUCTION...1 PROGRAMMING THE

More information

Enabling Efficient and Scalable Zero-Trust Security

Enabling Efficient and Scalable Zero-Trust Security WHITE PAPER Enabling Efficient and Scalable Zero-Trust Security FOR CLOUD DATA CENTERS WITH AGILIO SMARTNICS THE NEED FOR ZERO-TRUST SECURITY The rapid evolution of cloud-based data centers to support

More information

OpenContrail, Real Speed: Offloading vrouter

OpenContrail, Real Speed: Offloading vrouter OpenContrail, Real Speed: Offloading vrouter Chris Telfer, Distinguished Engineer, Netronome Ted Drapas, Sr Director Software Engineering, Netronome 1 Agenda Introduction to OpenContrail & OpenContrail

More information

Virtual Switch Acceleration with OVS-TC

Virtual Switch Acceleration with OVS-TC WHITE PAPER Virtual Switch Acceleration with OVS-TC HARDWARE ACCELERATED OVS-TC PROVIDES BETTER CPU EFFICIENCY, LOWER COMPLEXITY, ENHANCED SCALABILITY AND INCREASED NETWORK PERFORMANCE COMPARED TO KERNEL-

More information

P4-based VNF and Micro-VNF chaining for servers with SmartNICs

P4-based VNF and Micro-VNF chaining for servers with SmartNICs P4-based VNF and Micro-VNF chaining for servers with SmartNICs David George david.george@netronome.com 1 Session Agenda Introduction Design overview A look under the hood P4, SandboxC and rules Run-through

More information

A Brief Guide to Virtual Switching Franck Baudin (Red Hat) Billy O Mahony (Intel)

A Brief Guide to Virtual Switching Franck Baudin (Red Hat) Billy O Mahony (Intel) A Brief Guide to Virtual Switching Franck Baudin (Red Hat) Billy O Mahony (Intel) vswitching: Different Use Cases Enterprise Data Center Manageability Console Telco Network Infrastructure Larger Packet

More information

Netronome 25GbE SmartNICs with Open vswitch Hardware Offload Drive Unmatched Cloud and Data Center Infrastructure Performance

Netronome 25GbE SmartNICs with Open vswitch Hardware Offload Drive Unmatched Cloud and Data Center Infrastructure Performance WHITE PAPER Netronome 25GbE SmartNICs with Open vswitch Hardware Offload Drive Unmatched Cloud and NETRONOME AGILIO CX 25GBE SMARTNICS SIGNIFICANTLY OUTPERFORM MELLANOX CONNECTX-5 25GBE NICS UNDER HIGH-STRESS

More information

Design, Verification and Emulation of an Island-Based Network Flow Processor

Design, Verification and Emulation of an Island-Based Network Flow Processor Design, Verification and Emulation of an Island-Based Network Flow Processor Ron Swartzentruber CDN Live April 5, 2016 1 2016 NETRONOME SYSTEMS, INC. Problem Statements 1) Design a large-scale 200Gbps

More information

Bringing the Power of ebpf to Open vswitch. Linux Plumber 2018 William Tu, Joe Stringer, Yifeng Sun, Yi-Hung Wei VMware Inc. and Cilium.

Bringing the Power of ebpf to Open vswitch. Linux Plumber 2018 William Tu, Joe Stringer, Yifeng Sun, Yi-Hung Wei VMware Inc. and Cilium. Bringing the Power of ebpf to Open vswitch Linux Plumber 2018 William Tu, Joe Stringer, Yifeng Sun, Yi-Hung Wei VMware Inc. and Cilium.io 1 Outline Introduction and Motivation OVS-eBPF Project OVS-AF_XDP

More information

INSTALLATION RUNBOOK FOR Netronome Agilio OvS. MOS Version: 8.0 OpenStack Version:

INSTALLATION RUNBOOK FOR Netronome Agilio OvS. MOS Version: 8.0 OpenStack Version: INSTALLATION RUNBOOK FOR Netronome Agilio OvS Product Name: Agilio OvS Driver Version: 2.2-r4603 MOS Version: 8.0 OpenStack Version: Liberty Product Type: Network Offload Driver 1. Introduction 1.1 Target

More information

ODL SFC with OVS-DPDK, HW accelerated dataplane and VPP

ODL SFC with OVS-DPDK, HW accelerated dataplane and VPP ODL SFC with OVS-DPDK, HW accelerated dataplane and VPP Prasad Gorja, Senior Principal Engineer, NXP Harish Kumar Ambati, Lead Engineer, NXP Srikanth Lingala, Lead Engineer, NXP Agenda SFC Introduction

More information

Next Gen Virtual Switch. CloudNetEngine Founder & CTO Jun Xiao

Next Gen Virtual Switch. CloudNetEngine Founder & CTO Jun Xiao Next Gen Virtual Switch CloudNetEngine Founder & CTO Jun Xiao Agenda Thoughts on next generation virtual switch Technical deep dive on CloudNetEngine virtual switch Q & A 2 Major vswitches categorized

More information

Measuring a 25 Gb/s and 40 Gb/s data plane

Measuring a 25 Gb/s and 40 Gb/s data plane Measuring a 25 Gb/s and 40 Gb/s data plane Christo Kleu Pervaze Akhtar 1 Contents Preliminaries Equipment Traffic generators Test topologies Host and VM configuration NUMA Architecture CPU allocation BIOS

More information

Enabling DPDK Accelerated OVS in ODL and Accelerating SFC

Enabling DPDK Accelerated OVS in ODL and Accelerating SFC Enabling DPDK Accelerated OVS in ODL and Accelerating SFC Sharad Mishra, Intel Corporation Eric Multanen, Intel Corporation Danny Zhou, Intel Corporation Rajeev Koodli Legal Disclaimer General Disclaimer:

More information

P4 Introduction. Jaco Joubert SIGCOMM NETRONOME SYSTEMS, INC.

P4 Introduction. Jaco Joubert SIGCOMM NETRONOME SYSTEMS, INC. P4 Introduction Jaco Joubert SIGCOMM 2018 2018 NETRONOME SYSTEMS, INC. Agenda Introduction Learning Goals Agilio SmartNIC Process to Develop Code P4/C Examples P4 INT P4/C Stateful Firewall SmartNIC P4

More information

ONOS-based Data Plane Acceleration Support for 5G. Dec 4, SKTelecom

ONOS-based Data Plane Acceleration Support for 5G. Dec 4, SKTelecom ONOS-based Data Plane Acceleration Support for 5G Dec 4, 2018 SKTelecom 0 A Brief Introduction to 5G Network 5G Core Service-based Architecture CP UP Key Functions - UE Authentication - UE Mobility Mgmt.

More information

Accelerate Service Function Chaining Vertical Solution with DPDK

Accelerate Service Function Chaining Vertical Solution with DPDK Accelerate Service Function Chaining Vertical Solution with Danny Zhou (danny.zhou@intel.com) SDN/NFV Software Architect Network Platform Group, Intel Cooperation Agenda Overview: and Open vswitch (OVS)

More information

DPDK Summit 2016 OpenContrail vrouter / DPDK Architecture. Raja Sivaramakrishnan, Distinguished Engineer Aniket Daptari, Sr.

DPDK Summit 2016 OpenContrail vrouter / DPDK Architecture. Raja Sivaramakrishnan, Distinguished Engineer Aniket Daptari, Sr. DPDK Summit 2016 OpenContrail vrouter / DPDK Architecture Raja Sivaramakrishnan, Distinguished Engineer Aniket Daptari, Sr. Product Manager CONTRAIL (MULTI-VENDOR) ARCHITECTURE ORCHESTRATOR Interoperates

More information

New Approach to OVS Datapath Performance. Founder of CloudNetEngine Jun Xiao

New Approach to OVS Datapath Performance. Founder of CloudNetEngine Jun Xiao New Approach to OVS Datapath Performance Founder of CloudNetEngine Jun Xiao Agenda VM virtual network datapath evolvement Technical deep dive on a new OVS datapath Performance comparisons Q & A 2 VM virtual

More information

Using SR-IOV offloads with Open-vSwitch and similar applications

Using SR-IOV offloads with Open-vSwitch and similar applications Using SR-IOV offloads with Open-vSwitch and similar applications Rony Efraim, Or Gerlitz Netdev conferences 1.2 Oct 2016 Agenda Solution building blocks Use the software datapath (kernel) as a slow path

More information

Accelerating Telco NFV Deployments with DPDK and SmartNICs

Accelerating Telco NFV Deployments with DPDK and SmartNICs x Accelerating Telco NFV Deployments with and SmartNICs Kalimani Venkatesan G, Aricent Kalimani.Venkatesan@aricent.com Barak Perlman, Ethernity Networks Barak@Ethernitynet.com Summit North America 2018

More information

vswitch Acceleration with Hardware Offloading CHEN ZHIHUI JUNE 2018

vswitch Acceleration with Hardware Offloading CHEN ZHIHUI JUNE 2018 x vswitch Acceleration with Hardware Offloading CHEN ZHIHUI JUNE 2018 Current Network Solution for Virtualization Control Plane Control Plane virtio virtio user space PF VF2 user space TAP1 SW Datapath

More information

Fast packet processing in the cloud. Dániel Géhberger Ericsson Research

Fast packet processing in the cloud. Dániel Géhberger Ericsson Research Fast packet processing in the cloud Dániel Géhberger Ericsson Research Outline Motivation Service chains Hardware related topics, acceleration Virtualization basics Software performance and acceleration

More information

Achieve Low Latency NFV with Openstack*

Achieve Low Latency NFV with Openstack* Achieve Low Latency NFV with Openstack* Yunhong Jiang Yunhong.Jiang@intel.com *Other names and brands may be claimed as the property of others. Agenda NFV and network latency Why network latency on NFV

More information

Accelerating VM networking through XDP. Jason Wang Red Hat

Accelerating VM networking through XDP. Jason Wang Red Hat Accelerating VM networking through XDP Jason Wang Red Hat Agenda Kernel VS userspace Introduction to XDP XDP for VM Use cases Benchmark and TODO Q&A Kernel Networking datapath TAP A driver to transmit

More information

BPF Hardware Offload Deep Dive

BPF Hardware Offload Deep Dive BPF Hardware Offload Deep Dive Jakub Kicinski 2018 NETRONOME SYSTEMS, INC. BPF Sandbox As a goal of BPF IR JITing of BPF IR to most RISC cores should be very easy BPF VM provides a simple and well understood

More information

Dataplane Networking journey in Containers

Dataplane Networking journey in Containers Dataplane Networking journey in Gary Loughnane gary.loughnane@intel.com Kuralamudhan Ramakrishnan kuralamudhan.ramakrishnan@intel.com DPDK Summit Userspace - Dublin- 2017 Discussion topics Container Deployment

More information

Accelerating 4G Network Performance

Accelerating 4G Network Performance WHITE PAPER Accelerating 4G Network Performance OFFLOADING VIRTUALIZED EPC TRAFFIC ON AN OVS-ENABLED NETRONOME SMARTNIC NETRONOME AGILIO SMARTNICS PROVIDE A 5X INCREASE IN vepc BANDWIDTH ON THE SAME NUMBER

More information

The Challenges of XDP Hardware Offload

The Challenges of XDP Hardware Offload FOSDEM 18 Brussels, 2018-02-03 The Challenges of XDP Hardware Offload Quentin Monnet @qeole ebpf and XDP Q. Monnet XDP Hardware Offload 2/29 ebpf, extended Berkeley Packet

More information

PVPP: A Programmable Vector Packet Processor. Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim

PVPP: A Programmable Vector Packet Processor. Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim PVPP: A Programmable Vector Packet Processor Sean Choi, Xiang Long, Muhammad Shahbaz, Skip Booth, Andy Keep, John Marshall, Changhoon Kim Fixed Set of Protocols Fixed-Function Switch Chip TCP IPv4 IPv6

More information

Corporate Update. OpenVswitch hardware offload over DPDK. DPDK summit 2017

Corporate Update. OpenVswitch hardware offload over DPDK. DPDK summit 2017 Corporate Update OpenVswitch hardware offload over DPDK DPDK summit 2017 Agenda ASAP2-Flex for vswitch/vrouter acceleration HW classification offload concept OVS-DPDK using HW classification offload RFC

More information

Programmable NICs. Lecture 14, Computer Networks (198:552)

Programmable NICs. Lecture 14, Computer Networks (198:552) Programmable NICs Lecture 14, Computer Networks (198:552) Network Interface Cards (NICs) The physical interface between a machine and the wire Life of a transmitted packet Userspace application NIC Transport

More information

Data Path acceleration techniques in a NFV world

Data Path acceleration techniques in a NFV world Data Path acceleration techniques in a NFV world Mohanraj Venkatachalam, Purnendu Ghosh Abstract NFV is a revolutionary approach offering greater flexibility and scalability in the deployment of virtual

More information

Building a Platform Optimized for the Network Edge

Building a Platform Optimized for the Network Edge Building a Platform Optimized for the Network Edge MPLS + SDN + NFV WORLD 2018 Nicolas Bouthors, Enea Innovation Agenda Software Virtualization - Key Requirements Leveraging DPDK Multi-Function VNFs at

More information

OpenStack and OVN What s New with OVS 2.7 OpenStack Summit -- Boston 2017

OpenStack and OVN What s New with OVS 2.7 OpenStack Summit -- Boston 2017 OpenStack and OVN What s New with OVS 2.7 OpenStack Summit -- Boston 2017 Russell Bryant (@russellbryant) Justin Pettit (@Justin_D_Pettit) Ben Pfaff (@Ben_Pfaff) Virtual Networking Overview Provides a

More information

Survey of ETSI NFV standardization documents BY ABHISHEK GUPTA FRIDAY GROUP MEETING FEBRUARY 26, 2016

Survey of ETSI NFV standardization documents BY ABHISHEK GUPTA FRIDAY GROUP MEETING FEBRUARY 26, 2016 Survey of ETSI NFV standardization documents BY ABHISHEK GUPTA FRIDAY GROUP MEETING FEBRUARY 26, 2016 VNFaaS (Virtual Network Function as a Service) In our present work, we consider the VNFaaS use-case

More information

Hardened Security in the Cloud Bob Doud, Sr. Director Marketing March, 2018

Hardened Security in the Cloud Bob Doud, Sr. Director Marketing March, 2018 Hardened Security in the Cloud Bob Doud, Sr. Director Marketing March, 2018 1 Cloud Computing is Growing at an Astounding Rate Many compelling reasons for business to move to the cloud Cost, uptime, easy-expansion,

More information

All product specifications are subject to change without notice.

All product specifications are subject to change without notice. MSI N3000 series is cost-benefit rackmount network security. Basing on Intel Xeon E3-1200 v3/v4/v5 series CPU and Xeon D-1500 series SoC which is to help enterprise to be flexibly applied to various network

More information

SmartNICs: Giving Rise To Smarter Offload at The Edge and In The Data Center

SmartNICs: Giving Rise To Smarter Offload at The Edge and In The Data Center SmartNICs: Giving Rise To Smarter Offload at The Edge and In The Data Center Jeff Defilippi Senior Product Manager Arm #Arm Tech Symposia The Cloud to Edge Infrastructure Foundation for a World of 1T Intelligent

More information

New trends in IT. Network Functions Virtualization (NFV) & Software Defined-WAN

New trends in IT. Network Functions Virtualization (NFV) & Software Defined-WAN New trends in IT Network Functions Virtualization (NFV) & Software Defined-WAN 2017 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks

More information

Centec V350 Product Introduction. Centec Networks (Suzhou) Co. Ltd R

Centec V350 Product Introduction. Centec Networks (Suzhou) Co. Ltd R Centec V350 Product Introduction Centec Networks (Suzhou) Co. Ltd R1.6 2016-03 V350 Win the SDN Idol@ONS V350 win the SDN Idol@ONS award in ONS 2013 2016 Centec Networks (Suzhou) Co., Ltd. All rights reserved.

More information

Network Function Virtualization Using Data Plane Developer s Kit

Network Function Virtualization Using Data Plane Developer s Kit Network Function Virtualization Using Enabling 25GbE to 100GbE Virtual Network Functions with Cavium FastLinQ Intelligent Ethernet Adapters DPDK addresses key scalability issues of NFV workloads Cavium

More information

Building NFV Solutions with OpenStack and Cisco ACI

Building NFV Solutions with OpenStack and Cisco ACI Building NFV Solutions with OpenStack and Cisco ACI Domenico Dastoli @domdastoli INSBU Technical Marketing Engineer Iftikhar Rathore - INSBU Technical Marketing Engineer Agenda Brief Introduction to Cisco

More information

QorIQ Intelligent Network Interface Card (inic) Solution SDK v1.0 Update

QorIQ Intelligent Network Interface Card (inic) Solution SDK v1.0 Update QorIQ Intelligent Network Interface Card (inic) Solution SDK v1.0 Update APF-NET-T0658 Gary Chu A U G. 2 0 1 4 TM External Use The New Virtualized Network Cloud Cloud gaining momentum as the service platform

More information

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li Be Fast, Cheap and in Control with SwitchKV Xiaozhou Li Goal: fast and cost-efficient key-value store Store, retrieve, manage key-value objects Get(key)/Put(key,value)/Delete(key) Target: cluster-level

More information

QuickSpecs. HP Z 10GbE Dual Port Module. Models

QuickSpecs. HP Z 10GbE Dual Port Module. Models Overview Models Part Number: 1Ql49AA Introduction The is a 10GBASE-T adapter utilizing the Intel X722 MAC and X557-AT2 PHY pairing to deliver full line-rate performance, utilizing CAT 6A UTP cabling (or

More information

Weiterentwicklung von OpenStack Netzen 25G/50G/100G, FW-Integration, umfassende Einbindung. Alexei Agueev, Systems Engineer

Weiterentwicklung von OpenStack Netzen 25G/50G/100G, FW-Integration, umfassende Einbindung. Alexei Agueev, Systems Engineer Weiterentwicklung von OpenStack Netzen 25G/50G/100G, FW-Integration, umfassende Einbindung Alexei Agueev, Systems Engineer ETHERNET MIGRATION 10G/40G à 25G/50G/100G Interface Parallelism Parallelism increases

More information

Open vswitch in Neutron

Open vswitch in Neutron Open vswitch in Neutron Performance Challenges and Hardware Offload Date: Hong Kong, 6th Nov. 2013 Authors: Yongsheng Gong gongysh@unitedstack.com Bo Liang liang.bo@99cloud.net 1 197 Deployments Hyper-V

More information

Accelerate Cloud Native with FD.io

Accelerate Cloud Native with FD.io Accelerate Cloud Native with FDio Naoyuki Mori, Ping Yu, Kinsella Ray, Hongjun Ni Intel Agenda FDio*: Cloud native acceleration framework Acceleration of Envoy with FDio* TCP and QAT Acceleration of Load

More information

ebpf Offload to Hardware cls_bpf and XDP

ebpf Offload to Hardware cls_bpf and XDP ebpf Offload to Hardware cls_bpf and Nic Viljoen, DXDD (Based on Netdev 1.2 talk) November 10th 2016 1 What is ebpf? A universal in-kernel virtual machine 10 64-bit registers 512 byte stack Infinite size

More information

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX x DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX Rony Efraim Introduction to DC w/ overlay network Modern data center (DC) use overly network like Virtual Extensible LAN (VXLAN) and GENEVE

More information

DPDK Summit China 2017

DPDK Summit China 2017 Summit China 2017 Embedded Network Architecture Optimization Based on Lin Hao T1 Networks Agenda Our History What is an embedded network device Challenge to us Requirements for device today Our solution

More information

Cloud Networking (VITMMA02) Network Virtualization: Overlay Networks OpenStack Neutron Networking

Cloud Networking (VITMMA02) Network Virtualization: Overlay Networks OpenStack Neutron Networking Cloud Networking (VITMMA02) Network Virtualization: Overlay Networks OpenStack Neutron Networking Markosz Maliosz PhD Department of Telecommunications and Media Informatics Faculty of Electrical Engineering

More information

Bringing the Power of ebpf to Open vswitch

Bringing the Power of ebpf to Open vswitch Bringing the Power of ebpf to Open vswitch William Tu 1 Joe Stringer 2 Yifeng Sun 1 Yi-Hung Wei 1 u9012063@gmail.com joe@cilium.io pkusunyifeng@gmail.com yihung.wei@gmail.com 1 VMware Inc. 2 Cilium.io

More information

Networking at the Speed of Light

Networking at the Speed of Light Networking at the Speed of Light Dror Goldenberg VP Software Architecture MaRS Workshop April 2017 Cloud The Software Defined Data Center Resource virtualization Efficient services VM, Containers uservices

More information

The Missing Piece of Virtualization. I/O Virtualization on 10 Gb Ethernet For Virtualized Data Centers

The Missing Piece of Virtualization. I/O Virtualization on 10 Gb Ethernet For Virtualized Data Centers The Missing Piece of Virtualization I/O Virtualization on 10 Gb Ethernet For Virtualized Data Centers Agenda 10 GbE Adapters Built for Virtualization I/O Throughput: Virtual & Non-Virtual Servers Case

More information

DEPLOYING NFV: BEST PRACTICES

DEPLOYING NFV: BEST PRACTICES DEPLOYING NFV: BEST PRACTICES Rimma Iontel Senior Cloud Architect, Cloud Practice riontel@redhat.com Julio Villarreal Pelegrino Principal Architect, Cloud Practice julio@redhat.com INTRODUCTION TO NFV

More information

Kubernetes networking in the telco space

Kubernetes networking in the telco space Kubernetes networking in the telco space LFN Developer Forum Gergely Csatari (using the materials of Robert Springer, and Peter Megyesi with the help of Levente Kale, Laszo Janosi and Gergo Huszty) 26-03-2018

More information

OPNFV Data Plane Performance Testing Projects Critical for NFV Business Case

OPNFV Data Plane Performance Testing Projects Critical for NFV Business Case OPNFV Data Plane Performance Testing Projects Critical for NFV Business Case OVERVIEW: Network functions virtualization (NFV) is critical for 5G and related initiatives Network service performance is tightly

More information

Course Review. Hui Lu

Course Review. Hui Lu Course Review Hui Lu Syllabus Cloud computing Server virtualization Network virtualization Storage virtualization Cloud operating system Object storage Syllabus Server Virtualization Network Virtualization

More information

DPDK Roadmap. Tim O Driscoll & Chris Wright Open Networking Summit 2017

DPDK Roadmap. Tim O Driscoll & Chris Wright Open Networking Summit 2017 DPDK Roadmap Tim O Driscoll & Chris Wright Open Networking Summit 2017 Agenda Overview: What is DPDK? What problems does it solve? Open source community and transition to Linux Foundation: Why is this

More information

ENG. WORKSHOP: PRES. Linux Networking Greatness (part II). Roopa Prabhu/Director Engineering Linux Software/Cumulus Networks.

ENG. WORKSHOP: PRES. Linux Networking Greatness (part II). Roopa Prabhu/Director Engineering Linux Software/Cumulus Networks. ENG. WORKSHOP: PRES. Linux Networking Greatness (part II). Roopa Prabhu/Director Engineering Linux Software/Cumulus Networks. 3 4 Disaggregation Native Linux networking (= server/host networking) Linux

More information

Virtual switching technologies and Linux bridge

Virtual switching technologies and Linux bridge Virtual switching technologies and Linux bridge Toshiaki Makita NTT Open Source Software Center Today's topics Virtual switching technologies in Linux Software switches (bridges) in Linux Switching technologies

More information

Vhost dataplane in Qemu. Jason Wang Red Hat

Vhost dataplane in Qemu. Jason Wang Red Hat Vhost dataplane in Qemu Jason Wang Red Hat Agenda History & Evolution of vhost Issues Vhost dataplane TODO Userspace Qemu networking Qemu Guest mainloop in IOThread virtio VCPU VCPU tap fd vcpu fd vcpu

More information

Introduction to Neutron. Network as a Service

Introduction to Neutron. Network as a Service Introduction to Neutron Network as a Service Assaf Muller, Associate Software Engineer, Cloud Networking, Red Hat assafmuller.wordpress.com, amuller@redhat.com, amuller on Freenode (#openstack) The Why

More information

An Intelligent NIC Design Xin Song

An Intelligent NIC Design Xin Song 2nd International Conference on Advances in Mechanical Engineering and Industrial Informatics (AMEII 2016) An Intelligent NIC Design Xin Song School of Electronic and Information Engineering Tianjin Vocational

More information

DPDK Summit China 2017

DPDK Summit China 2017 DPDK Summit China 2017 2 Practice of Network Monitoring and Security Technologies in Cloud Data Center Kai, Wang YunShan Networks Data center is evolving to be cloud based and software defined The monitoring

More information

QuickSpecs. Overview. HPE Ethernet 10Gb 2-port 535 Adapter. HPE Ethernet 10Gb 2-port 535 Adapter. 1. Product description. 2.

QuickSpecs. Overview. HPE Ethernet 10Gb 2-port 535 Adapter. HPE Ethernet 10Gb 2-port 535 Adapter. 1. Product description. 2. Overview 1. Product description 2. Product features 1. Product description HPE Ethernet 10Gb 2-port 535FLR-T adapter 1 HPE Ethernet 10Gb 2-port 535T adapter The HPE Ethernet 10GBase-T 2-port 535 adapters

More information

FastReact. In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes

FastReact. In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes FastReact In-Network Control and Caching for Industrial Control Networks using Programmable Data Planes Authors: Jonathan Vestin Andreas Kassler Johan

More information

Intel Open Network Platform. Recep Ozdag Intel Networking Division May 8, 2013

Intel Open Network Platform. Recep Ozdag Intel Networking Division May 8, 2013 Intel Open Network Platform Recep Ozdag Intel Networking Division May 8, 2013 Agenda Traditional Networking vs. SDN Intel Open Network Platform (ONP) Introduction SDN Use Cases Future of ONP Traditional

More information

Agenda How DPDK can be used for your Application DPDK Ecosystem boosting your Development Meet the Community Challenges

Agenda How DPDK can be used for your Application DPDK Ecosystem boosting your Development Meet the Community Challenges SPEED MATTERS. All rights reserved. All brand names, trademarks and copyright information cited in this presentation shall remain the property of its registered owners. Agenda How DPDK can be used for

More information

VFd: an SR-IOV Hypervisor using DPDK. Alex Zelezniak DPDK Summit Userspace - Dublin- 2017

VFd: an SR-IOV Hypervisor using DPDK. Alex Zelezniak DPDK Summit Userspace - Dublin- 2017 VFd: an SR-IOV Hypervisor using DPDK Alex Zelezniak DPDK Summit Userspace - Dublin- 2017 Current state Despite many improvements software overlays have fundamental inefficiencies for packet processing

More information

Supporting Fine-Grained Network Functions through Intel DPDK

Supporting Fine-Grained Network Functions through Intel DPDK Supporting Fine-Grained Network Functions through Intel DPDK Ivano Cerrato, Mauro Annarumma, Fulvio Risso - Politecnico di Torino, Italy EWSDN 2014, September 1st 2014 This project is co-funded by the

More information

End to End SLA for Enterprise Multi-Tenant Applications

End to End SLA for Enterprise Multi-Tenant Applications End to End SLA for Enterprise Multi-Tenant Applications Girish Moodalbail, Principal Engineer, Oracle Inc. Venugopal Iyer, Principal Engineer, Oracle Inc. The following is intended to outline our general

More information

Getting Real Performance from a Virtualized CCAP

Getting Real Performance from a Virtualized CCAP Getting Real Performance from a Virtualized CCAP A Technical Paper prepared for SCTE/ISBE by Mark Szczesniak Software Architect Casa Systems, Inc. 100 Old River Road Andover, MA, 01810 978-688-6706 mark.szczesniak@casa-systems.com

More information

Storage Protocol Offload for Virtualized Environments Session 301-F

Storage Protocol Offload for Virtualized Environments Session 301-F Storage Protocol Offload for Virtualized Environments Session 301-F Dennis Martin, President August 2016 1 Agenda About Demartek Offloads I/O Virtualization Concepts RDMA Concepts Overlay Networks and

More information

Programmable Server Adapters: Key Ingredients for Success

Programmable Server Adapters: Key Ingredients for Success WHITE PAPER Programmable Server Adapters: Key Ingredients for Success IN THIS PAPER, WE DIS- CUSS ARCHITECTURE AND PRODUCT REQUIREMENTS RELATED TO PROGRAM- MABLE SERVER ADAPTERS FORHOST-BASED SDN, AS WELL

More information

Arista 7170 series: Q&A

Arista 7170 series: Q&A Arista 7170 series: Q&A Product Overview What are the 7170 series? The Arista 7170 Series are purpose built multifunctional programmable 100GbE systems built for the highest performance environments and

More information

Design and Implementation of Virtual TAP for Software-Defined Networks

Design and Implementation of Virtual TAP for Software-Defined Networks Design and Implementation of Virtual TAP for Software-Defined Networks - Master Thesis Defense - Seyeon Jeong Supervisor: Prof. James Won-Ki Hong Dept. of CSE, DPNM Lab., POSTECH, Korea jsy0906@postech.ac.kr

More information

ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters

ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters ANIC Host CPU Offload Features Overview An Overview of Features and Functions Available with ANIC Adapters ANIC Adapters Accolade s ANIC line of FPGA-based adapters/nics help accelerate security and networking

More information

Gluon Project with EVPN Solution

Gluon Project with EVPN Solution Gluon Project with EVPN Solution Lu Kai lukai1@huawei.com Introduction Gluon (A Model-Driven, Extensible Framework for NFV Networking Services) Gluon Aims q Support mul*ple infra and vendors simultaneously

More information

Software-Defined Networking (SDN) Overview

Software-Defined Networking (SDN) Overview Reti di Telecomunicazione a.y. 2015-2016 Software-Defined Networking (SDN) Overview Ing. Luca Davoli Ph.D. Student Network Security (NetSec) Laboratory davoli@ce.unipr.it Luca Davoli davoli@ce.unipr.it

More information

Network Services Benchmarking: Accelerating the Virtualization of the Network

Network Services Benchmarking: Accelerating the Virtualization of the Network white paper Communications Data Center Solutions Network Services Benchmarking: Accelerating the Virtualization of the Network Network Services Benchmarking (NSB), part of the OPNFV* Yardstick project,

More information

NFV ACCELERATION INTRODUCTION. Presenter Ning Zong

NFV ACCELERATION INTRODUCTION. Presenter Ning Zong NFV ACCELERATION INTRODUCTION Presenter Ning Zong (zongning@huawei.com) 1 Some History - Why Acceleration is Beneficial to NFV PoC#21 - Network Intensive and Compute Intensive Hardware Acceleration ETSI

More information

Simplify Container Networking With ican. Huawei Cloud Network Lab

Simplify Container Networking With ican. Huawei Cloud Network Lab Simplify Container Networking With ican Huawei Cloud Network Lab Container Network Defined By Application 2 What we face today Automation Deployment and Orchestration: Automate deploy resource for application

More information