DPDK – What It Means for Network Operators

DPDK – What It Means for Network Operators

DPDK – What it means for Network Operators Allan Houston Email: [email protected] What is DPDK? The Data Plane Development Kit (DPDK) is a set of data plane libraries and network interface controller drivers for fast packet processing. Originally developed by Intel , released under an open source BSD licence. DPDK gives hardware like speeds on software based appliances Brief History of Time PowerB and TILE-Gx added. DPDK.org RHEL, open source CentOS, Moved to Embryonic community Ubuntu Linux Development established support Foundation 2010 2013 2014 2015 2015 2017 Initial release First multi- ARM Support by Intel vendor CPU Hardware and NIC and Software support. accelerators Packaged in added Fedora & FreeBSD Silicon vs DPDK - Performance •Nexus •QFX5200- •7170-32C •ESXi 9316D-GX 32C •Throughput: VMXNET 32 •Throughput: •Throughput: 6.4 Tbps DPDK vCPU 6.4 Tbps 12.8 Tbps •Size: 1U •Throughput: •Size: 1U •Size: 1U ~40 Gbps Cisco Nexus Cisco Juniper QFX Juniper •Size: 2U Arista 7000 Series 7000 Arista Silicon vs DPDK Silicon DPDK • Very long R&D cycle • No requirement for • Slow uptake in kernel updates features • Two major releases • Once cast can’t be per year changed • Last month: 133 • R&D cost carried by authors pushed 842 the end user commits • 141,066 lines of code changed Projects and Products using DPDK 2010 2013 2014 2015 2015 2017 ARM uCPE – A New Hope Oct 26, 2015 – Patch 00/11 • DPDK adds armv8 architecture support ARM uCPE – A New Hope August 27, 2018 – VMWorld 2018 • VMware demonstrates ESXi on 64-bit ARM • Four logical processors, two network interfaces • VMware ESXi 6.8.2 build 16864140. ARM uCPE – A New Hope Raspberry Pi3 B+ Rockchip ROC- ODROID-XU4 • 1.4GHz 64-bit quad- RK3399-PC • Octa-core ARMv8 core ARMv8 CPU • Six-Core 64-Bit CPU • 1 GB RAM ARMv8 • 2 GB RAM • 802.11n Wireless • 4 GB RAM • GigabitEthernet LAN LAN • GigabitEthernet LAN • Price: $59 • 10/100Mbps Lan • PoE Support Speed • Price: $99 • Price: $40 ARM uCPE – A New Hope Example: FRR + VPP vRouter https://github.com/three6five-kzn/dpdk FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, and RIP. The VPP platform provides out-of-the-box production quality switch/router functionality. It is the open source version of Cisco's Vector Packet Processing (VPP) technology: a high performance, packet-processing stack that can run on commodity CPUs. Example: FRR + VPP vRouter https://github.com/three6five-kzn/dpdk Example: FRR + VPP vRouter https://github.com/three6five-kzn/dpdk FRR receiving a full routing table: frr-dpdk# show ip bgp summ IPv4 Unicast Summary: BGP router identifier 2.2.2.2, local AS number 65535 vrf-id 0 BGP table version 685423 RIB entries 1004563, using 153 MiB of memory Peers 1, using 21 KiB of memory Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 10.0.10.100 4 65512 7629300 12676 0 0 255519 00:21:08 549508 Total number of neighbors 1 frr-dpdk# Example: FRR + VPP vRouter VMWare ESXi OVF Exports http://dpdk.ahouston.net Considerations Move from dedicated hardware to shared server infrastructure • Split operational responsibility • Hardware resource management Considerations • Routing and Switching • Linux / FreeBSD systems • Python • {REST API} • Docker Network Engineer Full Stack Engineer Full Stack Engineer • Routing • Linux / FreeBSD • YANG • Switching • {REST API} • JSON • MPLS • Python • XML • QoS • Docker • Kubernetes • Ansible / SALT Thank you!.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    17 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us