Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
©2017ArmLimited
September25,2017LinaroConnectSFO17
ContainerizedVNFswithDataPlane
AcceleraDonOnArmplaEorm
BinLu,StaffSoIwareEngineerJianboLiu,StaffSoIwareEngineer
©2017ArmLimited2
Agenda
• Background• ContainerizedVNFsonArm
• ContainernetworkingacceleraDonwithDPDK• Whatwehavedone
• Nextsteps
©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
©2017ArmLimited4
ContainerizedVNFsonArm-withDataPlaneAccelera=on
©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
©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
©2017ArmLimited7
L2FWDwithDPDKinContainer
L2FORWARDING
Container
Flannel/Calico
10GbE Port2Port1
DPDK
TrafficIn TrafficOut
VFIO
TrafficGenerator
©2017ArmLimited8
L2FWDPerformance
• Hardware• ARMv864-bit,2.4Ghz
– 2coresdedicated
– 1GHugepagesize
• Intel2-port82599ES10Gbe
• IXIAtrafficgenerator
• SoIware• LinaroERP17.08(Debianbased)
– Kernel4.12
• DPDK17.08
©2017ArmLimited9
EnhanceKubernetesCNIwithDataPlaneAccelera=on
• WithSRIOV-CNI,eachVFandPF
canbetreatedasaseparateNIC
• AIeraddingSRIOVCNIpatchusingDPDK,K8scanassignVFIO/UIOdeviceintoaspecificcontainer
K8sPOD
©2017ArmLimited10
WhatWeHaveDone• EnabledDPDKincontaineronARM64plaEorm
• EnhancedSRIOV-CNIwithDPDKacceleraDon• PerformancetestwithDPDKforcontainernetworking
• EnabledK8sasVIMonARM64plaEorm
©2017ArmLimited11
NextSteps
• EnableVPP-DPDKforOPNFVonArm
• EnableVPP-ODPforOPNFVonArm
• PerformancetuningofDPDKincontaineronArm
• EnablenewfeaturesofhighperformancecontainernetworkinginK8sonArm• ResourceallocaDonforDPDKinK8s:cpuset,NUMA,cache…
©2017ArmLimited12