Zaprezentowany zostanie obecny status rozwiązań NFV. Ich historyczne znaczenie w przeszłości, zmiany na rynku, które doprowadziły do ponownego odkrycia tej technologii. Pokazane zostana możliwe scieżki rozwoju rozwiązań NFV i co w chwili obecnej stanowi blokadę do szerszego wdrożenia tych technologii. Zaprezentowane zostaną przykłady implementacji technolgoii NFV z wykorzystaniem rozwiązań Juniper vSRX vMX oraz produktów z rodziny NFX
3. VNF - definicja
• VNF = NFV (prawie)
• V – virtual
• N – network
• F – function
• Czyli niech to co robił
wyspecjalizowany sprzęt będzie
teraz zadaniem maszyny wirtualnej
• PNF
5. Na początku były serwery
• Pierwsze realizacje sieci IP zbudowane były na połączeniach
modemowych pomiędzy serwerami
• Łatwa implementacja wymaganych funkcjonalności
• Stos TCP/IP i tak jest wymagany na urządzeniach podłączonych do
sieci Internet
• Szybkość łączy WAN – modemy analogowe lub krotność linii
cyfrowych 64kbit – magistrale w serwerach były wystarczająco
szybkie do ich obsługi
7. Szybciej, szybciej, szybciej
• Coraz większa szybkość dostępnych łącz
• Wymóg obsługi coraz większej ilości kierunków (czyli więcej
interfejsów)
• I coś się musiało zatkać – magistrala obsługi urządzeń I/O lub
procesor
8. Trochę teorii o magistralach
• Szerokość, szybkość taktowania
• 16bitów x 8MHz = 128Mb/s
• Czy jest współdzielona – bus lub switch
• Half czy full duplex
• Aby magistrala była użyteczna powinna obsługiwać przynajmniej dwa
interfejsy danego typu lub możliwość obsługi wielu niezależnych
magistral danego typu.
10. Przykłady
Typ Szero
kość
Taktowa
nie
Szybkość
Mb
Full/
Half
Bus/
Switch
Co można podłączyć
PCI 32bit 33MHz 1 056 H B 5 x Fast Ethernet
PCI 32bit 33MHz 1 056 H B 0.5 x Gigabit Ethernet
PCI 64bit 66MHz 4 224 H B 2 x Gigabit Ethernet
PCI 64bit 66MHz 4 224 H B 0.4 x 10Giga Ethernet
PCI-X 64bit 133MHz 8 512 H B 4 x Gigabit Ethernet
PCI-X 64bit 533MHz 34 112 H B 1.7 x 10Giga Ethernet
PCI-X 64bit 533MHz 34 112 H B 0.4 x 40GE Ethernet
11. Przykłady
Typ Linie Wersja Szybkość
Mb
Full/
Half
Bus/
Switch
Co można podłączyć
PCI-E 1 1.0 2 000 F S 2 x Gigabit Ethernet
PCI-E 4 1.0 8 000 F S 0.8 x 10Giga Ethernet
PCI-E 16 1.0 32 000 F S 3 x 10GigaEthernet
PCI-E 1 3.0 7 872 F S 0.8 x 10Giga Ethernet
PCI-E 4 3.0 31 488 F S 3 x 10GigaEthernet
PCI-E 16 3.0 125 952 F S 1.2 x 100Giga Ethernet
PCI-E 16 4.0 251 904 F S 2 x 100Giga Ethernet
12. Trochę teorii o procesorach
• Ile cykli procesora przypada na jeden pakiet
• Więcej rdzeni:
• synchronizacja stanu
• szeregowy podział zadań pomiędzy rdzenie
• deterministyczny rozdział pakietów pomiędzy rdzenie
13. Przykłady – pakiet 64B Fast Ethernet (148 810 PPS)
Częstotliwość MHz IPC Ilość operacji na jeden pakiet
20 1 134
200 2 2 687
2000 3 40 319
4000 3 80 639
14. Przykłady – pakiet 64B Gigabit (1 488 095 PPS)
Częstotliwość MHz IPC Ilość operacji na jeden pakiet
20 1 13
200 2 268
2000 3 4 032
4000 3 8 064
15. Przykłady – pakiet 64B 10Gigabit (14 880 952 PPS)
Częstotliwość MHz IPC Ilość operacji na jeden pakiet
20 1 1
200 2 26
2000 3 403
4000 3 806
16. Przykład z roku 1998 – pierwszy ruter Junipera
• Najszybszy procesor – Intel Pentium II Xeon 450MHz
• 600 Instrukcji na pakiet 64B na interfejsie Gigabit Ethernet
• Najszybsza magistrala PCI 66MHz 64bit – 2xGigabit Ethernet
• Four way server – cztery procesory i dwie niezależne magistrale
• Maksymalnie 4 porty Gigabit Ethernet
• M40 – 24 interfejsy Gigabit Ethernet
17. Przykład z roku 2003 – Juniper T640
• Najszybszy procesor – Intel Pentium 4 3GHz
• 400 Instrukcji na pakiet 64B na interfejsie 10 Gigabit Ethernet
• Najszybsza magistrala PCI-E 1.0 – dostępne 3 porty 8 linii każdy
• 3 porty 10Gigabit Ethernet
• Four way server – cztery procesory i dwie niezależne magistrale
• Maksymalnie 6 portów 10 Gigabit Ethernet
• T640 – 32 interfejsy 10 Gigabit Ethernet
18. Dodatkowe ograniczenia
• Ilość miejsca na karty I/O w serwerach
• Dostępność oprogramowania realizującego funkcje sieciowe
• Dostępność różnego rodzaju interfejsów jako kart do serwerów była
ograniczona – kiedyś był nie tylko Ethernet
• ATM 622 i szybszy
• Packet over Sonet
• Karty szeregowe szybsze niż 2Mb
• Specjalizowane układy realizujące najczęściej wykorzystywane
funkcjonalności – TCAM
19. Hardware – Software - biznes
Raport z 2013 roku o zarobkach
programistów
• 1 – Juniper
• 2 – Google
• 3 – Twitter
• 4 – Facebook
• 5 – Apple
• 7 – Brocade
• 18 – Cisco
• 19 – Yahoo
• 20 – Intel
• Producenci sprzętu sieciowego to w rzeczywistosci firmy
przeznaczające najwięcej pieniędzy na oprogramowanie.
Dedykowany sprzęt do uruchamiania tego oprogramowania
praktycznie eliminuje użycie bez wykupionej licencji
20. Przyczyny biznesowe
• Łatwiej wyróżnić produkt przy kombinacji sprzęt i oprogramowanie
• Wieksza różnorodność produktów – dopasowywanie rozwiązania do
różnych grup odbiorców
• Łatwiejsze i tańsze zapewnienie obsługi po sprzedaży gdy kontroluje
się całość rozwiązania.
21. Low End
• Wielu mniejszych ISP
• Sieci w akademikach
• Rutery na Linuxie czy FreBSD/OpenBSD doskonale spełniały swoją
rolę
• Microtik
26. Wirtualizuj co się da
• Sieć i tak opierała się najdłużej
• Wirtualizacja połączeń:
• Sieć nakładkowa – overlay
• Budowanie tuneli – vRouert (Contrail)
• Filtrowanie ruchu na poziomie hosta – Contrail, NSX
• Wymagania są zbyt różnorodne aby wszystko dało się zrobić na
poziomie hosta
27. Szybciej lepiej taniej - Faster, Better, Cheaper (FBC)
• Wszystkie większe (wydajniejsze) rozwiązania sieciowe
sprzedawane są w modelu: najpierw sprzedaj potem produkuj
• Czas dostawy liczony w miesiącach
• Scale-UP
• Większy wydatek na początku – w najlepszym przypadku duża obudowa
zajmująca więcej miejsca w szafie
• Scale-OUT
• Czas dostawy, czas instalacji
• Scale-DOWN
• To się w ogóle nie za bardzo da zrobić
28. Idealne Datacenter
• Procesory i pamięć RAM
• Pamięć masowa
• Coś do połączenia – IP Fabric
• Warstwa Zerowa
• Szafy, zasilanie, chłodzenie, ochrona, połączenia
• I nic więcej
29. Idealne Datacenter – tu nie ma miejsca na
• Firewalle
• Ale chcemy mieć bezpieczeństwo na tym samym poziomie
• Czyli niech będą ale w postaci usługi na serwerze
• Czyli vFirewall
• Zaawansowany routing
• Ale czasami usługa wymaga skomplikowanej topologi połączeń
• Czyli niech będą ale w postaci usługi na serwerze
• Czyli vRouter
• Szyfrowanie
• Ale chcemy mieć możliwość bezpiecznego podłączenia klienta przez Internet
• Czyli niech będą ale w postaci usługi na serwerze
• Czyli vRouter lub vFirewall
31. VNF – co zostaje, co się zmienia
• Control plane
• Zostaje to i tak prawie zawsze robiły
procesory ogólnego przeznaczenia
• Zarządzanie
• Niech będzie podobne – może uda
się nie robić wszędzie rewolucji
• Jednak są pewne wymagania,
których wcześniej nie było –
szablony uruchomieniowe dla
maszyn wirtualnych
• Data plane
• Tutaj musi być rewolucja
32. VNF - taksonomia
VNF
Bazujące na PNF
Pełna zgodność
Zgodność
Control Plane
Zmodyfikowana
funkcjonalność
Budowane od
zera
Zgodne na
poziomie CLI
Całkowita
nowość
33. VNF – jak to szybko
uruchomić (i co może
przeszkadzać)
34. VNF – niezbędne kroki do działania
• Download
• Unpack
• Run
• Manage
• Profit
35. Run lub nie run
• Problemy z właściwą konfiguracją maszyny wirtualnej – rozwiązanie
to dystrybucja w postaci OVA
• Licencja
• Wymagana od razu
• VNF pracuje początkowo z pełną funkcjonalnością i wymaga wgrania
licencji po określonym czasie
• VNF uruchamia się ale działa ze zubożoną funkcjonalnością
36. Manage lub nie manage
• VNF udostępnia konsolę w postaci wirtualnego ekranu
• VNF może być zarządzalny poprzez wirtualny port szeregowy
• VNF jest dostępny przez sieć zaraz po instalacji:
• SSH
• HTTPS
• Ale co jak jest ich dużo
38. ETSI
• ETSI ISG NFV
• MANO (management and organization)
• Bloki funkcjonalne:
• VNF Manager – zarządzanie cyklem życia VNF, genrowanie raportów o
VNFI (VNF Instance) do systemów zarządzania wyższego rzędu
• Virtualized Infrastructure Manager (VIM) – narzędzie zarządzające
całością zasobów (procesory, RAM, storage), przypisaniem
poszczególnych zasobów do VNFI oraz zbieraniem statystyk i alarmów
• NFV Orchestrator
• Opis poszczególnych NS (Network Service)
• Zarządzanie cyklem życia NS oraz uprawnieniami do poszczególnych NS
39. Openstack
• Heat Templates
• Obsługiwane tylko przez OpenStack
• Wiele (szczególnie operatorskich) implementacji VNF wykorzystuje
OpenStack
• Dostawca VNF dostarcza szablony Heat lub nie (ale można napisać
swoje)
42. vMX Product Overview
VCPVFP
Physical NICs Management
traffic
Guest VM (Linux) Guest VM (FreeBSD)
Hypervisor: KVM, ESXi
Cores Memory
Bridge / vSwitch
Physical layer
PCIPassthroughSR-IOV
VirtIO
Virtual Control Plane (VCP)
• JUNOS hosted in a VM. Offers all the capabilities
available in JUNOS
• Management remains the same as physical MX
• SMP capable
Virtual Forwarding Plane (VFP)
• Virtualized Trio software forwarding plane. Feature
parity with physical MX. Utilizes Intel DPDK libraries
• Multi-threaded with user configured scale of the packet
processing for elasticity
• SR-IOV capable for high throughput
• Can be hosted in VM or bare-metal
Orchestration
• vMX instance can be orchestrated through OpenStack
HEAT templates
• Package comes with scripts to launch vMX instance
43. AWS
3rd Party VNF
Micro-service
Multiple
deployment
options
Pay as you grow
100 Gbps Per
CPU
socket @
256bytes
- OpenConfig
- JET
- API
vMX Overview
vMX
A Versatile
Virtual
Router
MX Feature
Parity
High
Performance
Flexible,
Elastic
Junos
Automation
Stack
Cloud
Deployment
Platform for
Innovation
48. vMX Feature Parity with Physical MX
MX vMX
High level language High level language
Adaptation layer
Compilation
Compilation using DPDK
library
Trio microcode X86 code
49. VMX QoS model (8-queue)
LEVEL-1 LEVEL-2 LEVEL-3
PORT
E
I
G
H
T
Q
U
E
U
E
S
Q1
Q2
Q3
Q4
Q5
VLAN 1
VLAN 2
VLAN n
Medium
Low
Q0
High
Port:
Shaping-rate
VLAN:
Shaping-rate
4k per IFD
Queues:
8 queues
3 priorities
2 High
2 medium
4 low
Priority groups scheduling follows strict
priority for a given VLAN
Queues of the same priority for a given VLAN
use WRR
High and medium queues are capped at
transmit-rate
Q6
Q7
50. Flow
Actions
Cntr CntrPlcr Encap
DISPATCH
IN
instr instr instr instr instr instr instr instr
Microcode
DISPATCH
OUT
instrinstr
Cntr Plcr EncapCntr TTL
TTL
First
Packets
Packets after
flow actions
are learnt
vMX Flow Cache Based Forwarding
5000 CPU Cycles = 800kpps
500 CPU Cycles = 8Mpps
51. vMX Performance
• SR-IOV
• DPDK
• Adequate number of CPU cores
• 10gigabit of traffic per 10Gigabit Ethernet
• Up to 8 card per system
• Up to 80 Gigabit of traffic
52. vMX Use case
• Virtual Private Cloud Gateway – run as VM on Cloud provider
infrastructure
• Secure connect to existing network
• vBNG
• Low Bandwidth PE
• Old model – CPE – Metro Ethernet – PE – Core
• New model – CPE – PE – Metro Ethernet – Core
• Scale Out model
• Pay as you Grow – flexible licensing model
57. CPE Today
Rigid Network; Manual Operations
Hard-Wired “Service Chains” Complex Test CyclesDistributed Complexity Redundant Scaling Multiple HW, OS, and OAMHigh-Touch Lengthy Procurement
Months To Years
Of Investment
Painful To Change
Or Reconfigure
Massive Scales
To Recoup Cost
Failure Is Not An
Option!
Customer Premises Appliances
Web Filter
NAT
DPI
IPS/IDS
Firewall
Router
Switch
Roll Truck
WLAN
Controll
er
Network Appliances
Flavor #1
Flavor #n
Core
Network
NAT/IPv
6
Firewall DP
I
Parent
al
Contro
l
WAN
Optimize
r
Other
Application
s
Edge
Router
Procure, Design, Integrate, Test, - Repeat
58. Network Services Platform
Integrated Routing and Services
Junos switching and security
Open Platform for Innovation
Linux with KVM
Service Flexibility
Service chaining VNFs
Leading LAN performance
1GbE or 10GbE
NFX250
6-core Intel Xeon-D
10 x 1GbE RJ45, 2 x 1GbE SFP, 2 x 10GbE
SFP+
100 GB SSD and 16 GB RAM model
400 GB SSD and 32 GB RAM model
Zero Touch Deployment
Linux with KVM
Intel DPDK, SR-IOV for performance
59. Why Integrate a PFE into a CPE?
• Routing and Switching
– Integrated routing and switching functionalities
– Wire speed Layer 2/3 LAN forwarding
• Feature Rich
– Combines EX Series switch functions with VNFs
– Supports QoS, firewall filters
• Control and Data Plane
– Junos Control Plane
– Maximum CPU availability for VNFs
CPUBuilt-in
NIC
Packet Forwarding
Engine
10 x 1GbE
copper
2 x
10GbE
SFP+
1 x 1 GbE copper
Management /
WAN
2 x
1GbE
SFP
High Bandwidth Channel
• 2x10GbE Connect PFE to CPU
• Hardware Inter-VNF Forwarding for
Service Chaining
• Configurable as Layer 2 or Layer 3 Ports
60. Open Architecture for Innovation
• Customer Software Layer
– Multiple VNFs
– E.g. vSRX 2.0, third party
• Platform Software Layer
– Linux OS / KVM hypervisor
– Software switch
– Service activation client
• Hardware
– Intel Xeon D CPU
– Merchant Silicon based PFE
Platform Software Layer
Customer Software Layer
VNF #1 VNF #N
Hardware
Layer
Virtual Machine
Service
Activation
Client
Software
Switch
...
CPU
Built-in
NIC
PFE
Junos Control
Plane
(JCP)
vSRX 2.0
VNF
(Third party or
Juniper)
10 x 1GbE
copper
2 x
10GbE
SFP+
1 x 1 GbE copper
Management /
WAN
RAM SSD
Linux/KVM
2 x
1GbE
SFP
61. Remote VNF platform approach
• Serwer card for routers
• Available for years
• Kind of available but we don’t care solution
• Just serwer
• Port multiplicator (switch) needed in most cases
• Management, lifecycle differes from central site (PNF based) solutions
• Juniper NFX
• Junos
• Low power, fast switching (L2 and L3) solution
• Move higher level function – firewall, advanced routing to NFV
63. VNF vs PNF
• PNF nie wyginą
• Duże PNF – core i duży operatorski EDGE
• Małe PNF – home gateway
• Średnie PNF są najbardziej zagrożone
• PNF mają lepszą wydajność energetyczną (najmniej ważne dla
średnich platform)
• Im więcej ASIC w PNF tym trudniej z niego zrobić VNF
64. VNF – zagrożenia dla producentów
• Czy VNF nie bedą wykorzystywane bez odpowiednich licencji
• Większe koszty utrzymania – problemy ze sprzętem lub platformą
wirtualizacji zgłaszane do dostawcy VNF
• Nauczenie klientów jakie są różnice pomiędzy PNF i VNF
65. VNF – zagrożenia dla klientów
• Forsowanie licencji czasowych przez dostawców
• Ryzyko niestabilnej wydajności lub nawet niestabilnej pracy
wynikające z błędów po stronie wirtualizacji (zbyt dużo maszyn
wirtualnych na jednym fizycznym serwerze)
• Zespoły sieciowe muszą nauczyć się nowych umiejętności lub trzeba
zmienić strukturę firmy – co dzieje się jednak niezależnie od VNF
66. • vMX – odpowiednik MX
• vSRX – odpowiednik SRX
• vQFX oraz vEX – tego rozsądnie zrobić się
jeszcze nie da
Juniper da Ci najlepsze PNF i
VNF