12
© 2017 Arm Limited September 25, 2017 Linaro Connect SFO17 Containerized VNFs with Data Plane AcceleraDon On Arm plaEorm Bin Lu, Staff SoIware Engineer Jianbo Liu, Staff SoIware Engineer

Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited

September25,2017LinaroConnectSFO17

ContainerizedVNFswithDataPlane

AcceleraDonOnArmplaEorm

BinLu,StaffSoIwareEngineerJianboLiu,StaffSoIwareEngineer

Page 2: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited2

Agenda

•  Background•  ContainerizedVNFsonArm

•  ContainernetworkingacceleraDonwithDPDK•  Whatwehavedone

•  Nextsteps

Page 3: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited3

Background

1.  InfrastructureLayer•  UseARM64Server

2.  DataPlaneLayer•  EnableDPDKforContainer

3.  ComputeVirtualizaDonLayer•  EnableDockerContainer

4.  NetworkVirtualizaDonLayer•  EnhanceKubernetesSRIOV-CNIforDPDKdeployment

5.  VirtualizaDonInfrastructureManagerlayer•  UseKubernetesinsteadofOpenStack

Source:h^ps://www.opnfv.org/soIware

Page 4: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited4

ContainerizedVNFsonArm-withDataPlaneAccelera=on

Page 5: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited5

ContainerNetworking•  Currentstatus

•  Linuxbridge,vethpair,Networknamespace,iptables…

•  DockernaDvenetworkdrivers

–  Host,bridge,overlayandMACVLAN

•  OthercontainernetworksoluDons

–  flannel,calico,conDv…

•  ButmaynotbegoodenoughforNFV•  ComplicatedlogiccostsmoreCPUcycles

•  Lowthroughputandhighlatencyforsomeusecases

•  Handlingnetworkingoutsidekernelismorepopular

docker0bridgeKernel

NS1

Docker

VNF

NS2

Docker

VNF

Page 6: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited6

•  DataPlaneDevelopmentKit(DPDK)•  Librariesandpoll-modedriversforfastpacketprocessing

•  Kernelbypassing,coreaffinity,hugepages,locklesssynchronizaDon,polling,NUMAawareness…

•  MulD-archsupport–x86,ARM64andPPC

•  NICpassthroughandSR-IOVVFpassthrough•  DeviceassignmentbyVFIO/UIO

•  Highthroughput,lowlatency

•  VirDo-userincontainer•  VirDo-userasDPDKvirtualdevice

•  ReuseexisDngvhost-userbackend

ContainerNetworkingAccelera=onwithDPDK

Containers

VFIO/UIO

Docker

VNF

Docker

VNF

Virtualswitch(VPP-DPDK)

Kernel

Containers

vir=o-usr

Docker

VNF

Docker

VNF

PFVF VF

Page 7: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited7

L2FWDwithDPDKinContainer

L2FORWARDING

Container

Flannel/Calico

10GbE Port2Port1

DPDK

TrafficIn TrafficOut

VFIO

TrafficGenerator

Page 8: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited8

L2FWDPerformance

•  Hardware•  ARMv864-bit,2.4Ghz

–  2coresdedicated

–  1GHugepagesize

•  Intel2-port82599ES10Gbe

•  IXIAtrafficgenerator

•  SoIware•  LinaroERP17.08(Debianbased)

–  Kernel4.12

•  DPDK17.08

Page 9: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited9

EnhanceKubernetesCNIwithDataPlaneAccelera=on

•  WithSRIOV-CNI,eachVFandPF

canbetreatedasaseparateNIC

•  AIeraddingSRIOVCNIpatchusingDPDK,K8scanassignVFIO/UIOdeviceintoaspecificcontainer

K8sPOD

Page 10: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited10

WhatWeHaveDone•  EnabledDPDKincontaineronARM64plaEorm

•  EnhancedSRIOV-CNIwithDPDKacceleraDon•  PerformancetestwithDPDKforcontainernetworking

•  EnabledK8sasVIMonARM64plaEorm

Page 11: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited11

NextSteps

•  EnableVPP-DPDKforOPNFVonArm

•  EnableVPP-ODPforOPNFVonArm

•  PerformancetuningofDPDKincontaineronArm

•  EnablenewfeaturesofhighperformancecontainernetworkinginK8sonArm•  ResourceallocaDonforDPDKinK8s:cpuset,NUMA,cache…

Page 12: Containerized VNFs with Data Plane Acceleraon On …connect.linaro.org.s3.amazonaws.com › sfo17 › Presentations...• Data Plane Development Kit (DPDK) • Libraries and poll-mode

©2017ArmLimited12