Scaling NFV - Are containers the answer?
Azhar Sayeed - asayeed@redhat.com Doug Smith - dosmith@redhat.com
Scaling NFV - Are containers the answer? Azhar Sayeed - - - PowerPoint PPT Presentation
Scaling NFV - Are containers the answer? Azhar Sayeed - asayeed@redhat.com Doug Smith - dosmith@redhat.com Acknowledgements This is a result of mul7ple efforts in Red Hat on Containers and Container Networking. We would like thank everyone who
Azhar Sayeed - asayeed@redhat.com Doug Smith - dosmith@redhat.com
2
This is a result of mul7ple efforts in Red Hat on Containers and Container Networking. We would like thank everyone who helped us put this POC, demo and presenta7on together. A big thank you to
being pa7ent with us and for building a prototype that is really powerful
and the work he was doing with Doug Smith to build a POC
3
Bare metal Virtualized Apps in - VMs Virtualized Apps in Containers Applica7ons and Network Func7ons Containers in VMs and VMs in Containers?
5
vCPE - Residen7al vCPE/SDWAN vEPC/vIMS/ VoLTE vGiLAN Mobile Wireline Consumer Business
6
Enterprise vCPE Virtualized Central Office OR Data Center Internet Residen7al vCPE Enterprise vCPE
NFVO SDN Controller VNFM(s) VIM
Residen7al NID Security & Firewall Quality of Service (QoS) Traffic Shaping Device Management
Security & Firewall Parental Control Quota Management Home Automa7on
CPE virtualiza-on is not just about cost reduc-on but providing new services to customers at the pace of innova-on and Scale
require no NAT ○ DHCP based address assignment
○ NIC bonding ○ NUMA affinity - container scheduling ○ Huge Page Support ○ CPU pinning or par77oning ○ Jumbo frames support
Generic NFV Workload Requirements
A Mul7-dimensional problem for Telcos
8
It is not just about scale but also the speed of scale
Example: vCPE For Residen7al Services
9
<0.5Gbps per subscriber
etc
Containers: Sonware packaging concept that include an applica7on and all its run7me dependencies
Hardware Hardware Host OS Host OS Hypervisor Docker Engine OS OS App1 App2 App2 App1 VM Stack Container Stack
Virtual Machine
VMs
Containers
kernel stack
Libs Libs
12
HW HOST OS HYPERVISOR
Guest OS Guest OS
Libs & Run7me Libs & Run7me
App App
HW HOST OS Libs & Run7me
App App
HW HOST OS HYPERVISOR
Guest OS Guest OS
Libs & Run7me Libs & Run7me
App App App App
VM Containers Containers in VM (Tenant Isola7on) VMs
HW HOST OS
Hypervisor
Guest OS
Libs & Run7me
App App App App
Containers & VMs
Libs & Run7me
13
the network func7ons themselves are virtualized
Applicability
IPv6 etc - many VNFs require no NAT
○ NIC bonding ○ NUMA affinity - scheduling ○ Huge Page Support ○ CPU pinning or par77oning
With Containers - How do they fare?
○ High session count or control traffic ○ Low data forwarding ○ Latency and availability sensi7ve for network convergence ○ Examples - signaling, subscriber policy, control protocols
○ Require large memory alloca7on ○ Large footprint applica7ons (CPU, memory, I/O) ○ High forwarding rate requirements ○ High volume of traffic ○ Examples - PGW, ePDG, DPI etc
Telco provided defini7on Candidates for Containeriza7on
○ Simple IGP and BGP Configura7on ○ Stock images - Vyos distribu7on ○ Memory needed to run the VM with basic alloca7ons - 387MB
○ Same configura7on ○ Stock Container image ○ Run using Docker ○ Per container - 34MB
○ Core processing for DPDK ○ 6-12 cores for VNFs like vEPC, BNG ○ 16-32GB of memory
NFV Example Notes: Smaller configs result in smaller containers - Only 1 BGP session and an IGP results in 28MB per container 6-10X density
NFV = Line Rate Performance Requirement
○ Today operates largest of DCs with millions of containers ○ Enterprise IT and OTT
○ Common to find 100 Nodes and 3000 Pods for VNF deployments
○ Constraints on Kubernetes/Openshin ○ What about OAM management, Traceability, Performance, conformance, audit trail
Scale of Orchestra7on
Kubernetes based OrchestraDon Docker Container Format
Atomic Host Networking Telemetry Security Automa7on Clustering Storage
Managing containers in Openstack Environments
22
HFC/GPON
Service Func7on Chain
Demarca7on point Cloud Boundary
VxLAN
L2 NID
AAA
Configura7on Policy
Applica7on or Content Cache Parental Control Quota Management Firewall & NATing CPE ⲙVNF VxLAN or IPSec Central Office or DC
How does SFC work with containers?
vOLT
23
○ Op7onal SDN for management ○ Physical NICs and SR-IOV interfaces ○ Storage networks, legacy servers
○ Public/administrator-defined container IP addresses ○ Overlapping IP networks & mul7-tenancy
○ Reduced number of interfaces between wire and applica7on
○ Pin containerized func7ons to specific CPUs and NUMA nodes
○ Enable new distributed applica7on architectures
vCPE Server
SFC
NIC NIC NIC Customer Metro/GPON
NID Demarc Point GPON Operator Datacenter
VF Container VF Container Management
VF Container
PoC demonstrates a containerized mul7-VF vCPE on a customer premises, using a vRouter and vFirewall connected via simple Service Func7on Chain, directly connected to both the customer network and the provider network.
Addi7onal NIC Addi7onal NIC
To next hop in SFC on the same node
Management SDN
NIC or SR-IOV
veth SFC endpoint SDN endpoint
Administrator defined IP address Administrator defined IP address OpDonal SDN provided IP address and micro- services
Virtual FuncDon (vRouter, vFirewall, etc)
Addi7onal NIC
DPDK (op7onal) Kernel Networking
Features:
28
Host A - OpenStack
192.168.2.100
quagga_a
ID: 2.2.2.2 192.168.2.101 192.168.3.100 192.168.4.100 192.168.3.101 192.168.4.101
centos_a
ID:1.1.1.1
centos_b
ID: 4.4.4.4
quagga_b
ID: 3.3.3.3
in1 in2 mid1
mid2
Host B - OpenShin on AWS
vxlan vxlan
Legend
Host / Guest Docker Container Network path Network Interface
WAN
OSPF StaDc StaDc
30
31
veth/vxlan veth/vxlan
○ Higher security risk - poten7ally larger aKack surface when compared to VMs ○ Kernel op7miza7ons become cri7cal for forwarding performance - no offload techniques ○ Inter-container communica7on uses IPC instead of Ethernet/IP => Advantage and a disadvantage
○ Namespaces and cgroups
service - Newer OAM architectures needed to define services for mul7ple containers versus replica7ng for each containers
○ IoT, vCPE Residen7al etc ○ Millions of sessions map to thousands of servers
○ Smaller footprint - when compared to VM on OSP
○ Kuryr provides a networking model with Openstack
○ POC and Code available for tes7ng - Goal to commit upstream as part of Kubernetes SDN enhancements
○ Dynamic Service Chains, NUMA Affinity etc
INSERT DESIGNATOR, IF NEEDED 35
Containers are the biggest hype today - In the latest Heavy Reading Survey (October 2016), 68.4% of the responders said they will use containers for NFV. While containers provide high scale, low latency and a low startup 7me, however, no one really understands the complete impact of containers on how it changes the virtualiza7on model for NFV and what impact it has on the networking and orchestra7on model for NFV. Containers are well designed for scale out applica7ons but for containers to work with NFV we need the ability to assign public IP addresses to
In this presenta7on, we will discuss the NFV architecture with containers in detail. In par7cular we will discuss topics like Kuryr (Containers and Openstack), Container networking, Container instan7a7on with Openstack, Scale, Performance (Latency and Throughput) and data path accelera7on for containers. What can I expect to learn?