Home » Network Virtualization: NFV, VNF, NFVI, MANO, SR-IOV และ SmartNIC
Network Virtualization: NFV, VNF, NFVI, MANO, SR-IOV และ SmartNIC
Network Virtualization: NFV, VNF, NFVI, MANO, SR-IOV และ SmartNIC
Network Virtualization เปลี่ยน network functions จาก dedicated hardware เป็น software ที่รันบน commodity servers NFV (Network Functions Virtualization) เป็น framework สำหรับ virtualize network functions, VNF (Virtual Network Functions) คือ network functions ที่รันเป็น VMs/containers, NFVI คือ infrastructure ที่รองรับ VNFs, MANO จัดการ orchestration ของ NFV ทั้งหมด, SR-IOV ให้ VM access NIC โดยตรง (bypass hypervisor) และ SmartNIC offload network processing ไปที่ NIC hardware
Service providers ใช้จ่ายเงินมหาศาลกับ proprietary hardware appliances: router แต่ละรุ่น, firewall แต่ละยี่ห้อ, load balancer แต่ละ vendor — แต่ละตัวเป็น single-purpose hardware ที่แพงและ upgrade ยาก NFV เปลี่ยน model: ใช้ commodity x86 servers → run network functions เป็น software → deploy/scale/upgrade ได้เร็วและถูกกว่า
NFV Architecture (ETSI)
| Component |
Role |
Example |
| VNF (Virtual Network Function) |
Network function ที่รันเป็น software (VM/container) |
Virtual router, virtual firewall, virtual load balancer |
| NFVI (NFV Infrastructure) |
Hardware + hypervisor ที่ host VNFs |
x86 servers + KVM/VMware + OVS/VPP |
| MANO (Management and Orchestration) |
จัดการ lifecycle ของ VNFs + resources |
ONAP, OSM, Cisco NSO, VMware VCD |
VNF Types
| VNF |
Replaces |
Vendors |
| vRouter |
Physical router |
VyOS, Cisco CSR1000v, Juniper vMX, MikroTik CHR |
| vFirewall |
Physical firewall |
Palo Alto VM-Series, FortiGate-VM, pfSense |
| vLoad Balancer |
Physical ADC |
F5 BIG-IP VE, HAProxy, Nginx Plus |
| vWAN Optimizer |
WAN optimization appliance |
Riverbed SteelHead-v, Silver Peak VX |
| vIDS/IPS |
Physical IDS/IPS |
Snort, Suricata (as VNF) |
| vCPE |
Customer premises equipment |
SD-WAN edge as VNF, uCPE platforms |
NFVI Components
| Layer |
Component |
Role |
| Compute |
x86 servers (COTS) |
CPU, RAM สำหรับ VNFs |
| Storage |
Local SSD, SAN, Ceph |
Storage สำหรับ VNF images + data |
| Network |
NICs, switches, OVS/VPP |
Connectivity ระหว่าง VNFs + external |
| Hypervisor |
KVM, VMware ESXi |
Virtualization layer ที่ host VNFs |
| VIM |
OpenStack, VMware vCenter |
Virtual Infrastructure Manager — manage compute/storage/network |
MANO Components
| Component |
Role |
| NFVO (NFV Orchestrator) |
Orchestrate network services ที่ประกอบด้วยหลาย VNFs → service chaining |
| VNFM (VNF Manager) |
Lifecycle management ของ individual VNFs (instantiate, scale, heal, terminate) |
| VIM (Virtual Infrastructure Manager) |
Manage NFVI resources (compute, storage, network) |
SR-IOV (Single Root I/O Virtualization)
| Feature |
รายละเอียด |
| คืออะไร |
PCIe standard ที่ให้ VM access NIC hardware โดยตรง (bypass hypervisor) |
| PF (Physical Function) |
Physical NIC function ที่ manage SR-IOV |
| VF (Virtual Function) |
Virtual NIC ที่ assign ให้ VM (lightweight, direct hardware access) |
| Performance |
Near-native performance (ไม่ผ่าน software switch เช่น OVS) |
| Latency |
ลด latency 50-90% เทียบกับ virtio/OVS |
| Limitation |
ลด flexibility: live migration ยากขึ้น, limited software features |
| Use Case |
High-performance VNFs (virtual routers, vEPC, vRAN) |
DPDK (Data Plane Development Kit)
| Feature |
รายละเอียด |
| คืออะไร |
Set of libraries สำหรับ fast packet processing ใน userspace (bypass kernel) |
| How |
Poll-mode driver + hugepages + CPU pinning → process millions of packets/sec |
| Performance |
10-100× faster than kernel networking |
| Used By |
OVS-DPDK, VPP (FD.io), many VNFs |
| Trade-off |
Dedicate CPU cores to polling (even when no traffic) → CPU usage always 100% |
SmartNIC
| Feature |
รายละเอียด |
| คืออะไร |
NIC ที่มี programmable processor (FPGA/ARM/custom ASIC) สำหรับ offload networking |
| Offload |
OVS offload, encryption/decryption, compression, firewall, telemetry |
| Benefit |
Free up server CPU สำหรับ application workloads (network processing ไปอยู่ที่ NIC) |
| Vendors |
NVIDIA BlueField (DPU), AMD/Pensando, Intel IPU, Broadcom Stingray |
| DPU |
Data Processing Unit — SmartNIC ที่ run full OS (เหมือน mini server บน NIC) |
| Use Case |
Cloud providers (AWS Nitro, Azure SmartNIC), telco NFV, bare-metal isolation |
NFV vs CNF (Cloud-Native Network Functions)
| Feature |
VNF (VM-based) |
CNF (Container-based) |
| Runtime |
Virtual Machine (KVM/VMware) |
Container (Docker/Kubernetes) |
| Boot Time |
Minutes |
Seconds |
| Resource |
Heavy (full OS per VNF) |
Lightweight (shared kernel) |
| Scaling |
Slow (spin up new VM) |
Fast (Kubernetes auto-scale) |
| Orchestration |
MANO (ONAP, OSM) |
Kubernetes + Helm + service mesh |
| Trend |
Legacy (being migrated) |
Future (5G core, modern telco) |
ทิ้งท้าย: NFV = Software-Define Your Network Infrastructure
Network Virtualization NFV: run network functions as software on commodity servers (ETSI framework) VNF: vRouter, vFirewall, vLB, vCPE — replace dedicated hardware NFVI: compute + storage + network + hypervisor + VIM (OpenStack) MANO: NFVO (orchestrate services) + VNFM (manage VNFs) + VIM (manage infra) SR-IOV: VM direct NIC access (near-native performance, bypass hypervisor) DPDK: userspace packet processing (10-100× faster than kernel) SmartNIC/DPU: offload networking to NIC hardware (free CPU for apps) Trend: VNF → CNF (containers + Kubernetes = faster, lighter, cloud-native)
อ่านเพิ่มเติมเกี่ยวกับ Container Networking Docker Kubernetes CNI และ EVPN-VXLAN Data Center Fabric ที่ siamlancard.com หรือจาก icafeforex.com และ siam2r.com