Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Fast Data and
Packet Processing:
Virtual, but for Reals
Anne McCormick
Technical Leader
Metacloud Engineering, Cisco
OpenS...
To achieve fast data and packet
processing on a virtualized
platform…
© 2017 Cisco and/or its affiliates. All rights reser...
VPP Overview
© 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 3
VPP – What is it?
• Open source, optimized packet-processing stack
• Provides virtual switching/routing
• Supports cloud, ...
VPP – What does it do?
• Packets placed in Huge Pages memory
• Packet vectors are then passed around in user
space (zero c...
VPP – What is the status?
• Networking-vpp is currently on release 17.04
• L3 support
• VxLAN GPE overlay
• Role-base acce...
VPP – What is the status (cont’d)?
• VPP will be included in popular distributions in the near future
• Partners adding su...
VPP on Metacloud
© 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 8
VPP on Metacloud
• Takes advantage of L2 fast packet processing
• Uses N9K and ASR for switching/routing decisions
• Use c...
VPP on Metacloud
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 10
NIC
DPDK
VPP Stack
networ...
VPP on Metacloud
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 11
NIC
DPDK
VPP Stack
networ...
VPP on Metacloud: Getting to Production Quality
• Backport to Liberty
• Cleanup VPP constructs if VM deleted/migrated
• Tu...
VPP on Metacloud: Current Limitations
• Remote security group id support (coming in 17.07)
• Live migration issues (VMs st...
VPP on Metacloud: Performance
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 14
0
2
4
6
8
10...
Visit Cisco in Booth A4
See how our cloud solutions provide
what you need to meet your goals.
Join the conversation @Cisco...
Fast Data and Packet Processing: Virtual, but for Reals
Upcoming SlideShare
Loading in …5
×

Fast Data and Packet Processing: Virtual, but for Reals

877 views

Published on

The Fast Data (or fd.io) project is part of the Linux Foundation, and is dedicated to making open source
network services faster, more extensible and interoperable. Vector Packet Processing (VPP) is an fd.io
subproject utilizing DPDK to optimize packet processing. The VPP code base is still maturing, so when
VPP support became a requirement, it was time to take it to the next level – production-ready.

This talk will discuss the effort that it took to productize a still-maturing new technology, taking it from
the side streets to main street. We’ll start out with an overview of VPP, use cases, and then dive in to
specific problems that were encountered, and how they were tackled.

Published in: Technology
  • Be the first to comment

Fast Data and Packet Processing: Virtual, but for Reals

  1. 1. Fast Data and Packet Processing: Virtual, but for Reals Anne McCormick Technical Leader Metacloud Engineering, Cisco OpenStack Summit Boston, May 2017
  2. 2. To achieve fast data and packet processing on a virtualized platform… © 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 2 Vector Packet Processing (VPP)
  3. 3. VPP Overview © 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 3
  4. 4. VPP – What is it? • Open source, optimized packet-processing stack • Provides virtual switching/routing • Supports cloud, NFV and SDN deployments • Can run on commodity CPUs • Developed by Cisco, donated to Linux Foundation Fast Data I/O project (FD.io) • FD.io includes several projects based on the Data Plane Development Kit (DPDK) • Cisco still active contributor to VPP © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 4
  5. 5. VPP – What does it do? • Packets placed in Huge Pages memory • Packet vectors are then passed around in user space (zero copy) • VPP optimizes packet processing (inbound and outbound) by processing a vector of packets together, rather than one by one • Reduces context switching, cache misses • Processing is modular, easily extensible • 2 existing stacks • networking-vpp (OpenStack integration) • OPNFV – Open Platform for NFV (OpenDaylight) © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 5 NIC DPDK VPP Stack VPP Plugins Linux Host User Space App App Kernel Hugepages NIC
  6. 6. VPP – What is the status? • Networking-vpp is currently on release 17.04 • L3 support • VxLAN GPE overlay • Role-base access control • Graceful restart • Next release is 17.07 • Security improvements (support for remote group id) • Better L3 HA (multiple routers, VRRP) © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 6
  7. 7. VPP – What is the status (cont’d)? • VPP will be included in popular distributions in the near future • Partners adding support for new stacks • VPP is now available on Metacloud deployments © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 7
  8. 8. VPP on Metacloud © 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 8
  9. 9. VPP on Metacloud • Takes advantage of L2 fast packet processing • Uses N9K and ASR for switching/routing decisions • Use cases for VPP on Metacloud • NFV deployments • High-performance VPN • Multicast (media) workloads © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 9
  10. 10. VPP on Metacloud © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 10 NIC DPDK VPP Stack networking-vpp Compute Host VM VM NIC kvm kvm NIC OVS VPP Agent nova- compute NIC DPDK VPP Stack networking-vpp Controller NIC dhcp agent NIC OVS neutron- server etcd Tenant VLAN Service VLAN Admin VLAN bond bond
  11. 11. VPP on Metacloud © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 11 NIC DPDK VPP Stack networking-vpp Controller NICNIC etcd Tenant VLAN Service VLAN Admin VLAN bond bond NIC DPDK VPP Stack networking-vpp Controller NICNIC etcd NIC DPDK VPP Stack networking-vpp Controller NICNIC etcd NIC DPDK VPP Stack networking-vpp VMVM NIC kvmkvm NIC VPP Agent Compute Host NIC DPDK VPP Stack networking-vpp VMVM NIC kvmkvm NIC VPP Agent Compute Host NIC DPDK VPP Stack networking-vpp VMVM NIC kvmkvm NIC VPP Agent Compute HostCisco ASR N9K Switch
  12. 12. VPP on Metacloud: Getting to Production Quality • Backport to Liberty • Cleanup VPP constructs if VM deleted/migrated • Tune number of hugepages to allow multiple VMs • Security groups • High availability support • Process monitoring on controllers • systemd for etcd servers • Pacemaker for VPP agent, dnsmasq • Make VPP aware of all etcd nodes in cluster • IPv6 subnet support • Large coredump file size – unmanageable • Upgrade to qemu 2.6 (VM restart issue) © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 12
  13. 13. VPP on Metacloud: Current Limitations • Remote security group id support (coming in 17.07) • Live migration issues (VMs stuck) • Scalability © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 13
  14. 14. VPP on Metacloud: Performance © 2017 Cisco and/or its affiliates. All rights reserved. Cisco confidential. 14 0 2 4 6 8 10 12 1k (simple) 1M (simple) 1M (complex) OVS VPP Throughput(Mpps) # of Flows, Complexity Comparison of OVS2.6 and VPP 17.01 Source: RedHat, February 2017
  15. 15. Visit Cisco in Booth A4 See how our cloud solutions provide what you need to meet your goals. Join the conversation @CiscoCloud © 2017 Cisco and/or its affiliates. All rights reserved. Cicso confidential. 15

×