轉載與https://blog.csdn.net/napolunyishi/article/details/60876466
網絡虛擬化技術,即用軟件來安裝、控制、操作那些運行在通用硬件上的網絡功能,融合了雲和虛擬化技術,使得新一代網絡業務擁有更好的伸縮性和自動化能力。這些新涌現的技術經常被不加區分地稱為NFV(網絡功能虛擬化)和SDN(軟件定義網絡),雖然二者有逐漸融合之勢,但二者的初衷和架構並不相同:
SDN起源於園區網,發展於數據中心,目的是將控制平面和轉發平面分離,通過集中化的控制平面能夠靈活定義網絡行為。
NFV則由運營商聯盟提出,為了加速部署新的網絡服務,運營商傾向於放棄笨重昂貴的專用網絡設備,轉而使用標准的IT虛擬化技術來拆分網絡功能模塊,如DNS、NAT、Firewall等。於是一些運營商聯合成立了歐洲通信標准協會ETSI(European Telecommunications Standards Institute),他的一個工作組(ETSI ISG NFV)負責開發制定電信網絡的虛擬化架構,如NFV MANO。
下圖是ETSI NFV標准架構:

其中包括NFV infrastructure(NFVI),MANO(Management and Orchestration)和VNFs,三者是標准架構中頂級的概念實體。
這樣的設計實現了以下幾個目的:
1.NFV架構將物理網元的一些功能拆分開來,這樣更便於運營商從多個vendor那里選擇最適合自己的VNF。
2.VNF可以被用於不同的物理硬件和hypervisor。
3.能夠只通過軟件進行快速發布。
4.標准的開放接口便於multi-vendor間的VNF進行交互。
5.使用低成本的通用硬件,不受制於特定供應商。
NFVI(NFV Infrastructure)包含了虛擬化層(hypervisor或者容器管理系統,如Docker,以及vSwitch)以及物理資源,如COTS服務器、交換機、存儲設備等。NFVI可以跨越若干個物理位置進行部署,此時,為這些物理站點提供數據連接的網絡也稱為NFVI的一部分。為了兼容基於現有的網絡架構,NFVI的網絡接入點要能夠跟其它物理網絡互聯互通。NFV支持多vendor,NFVI是一種通用的虛擬化層,所有虛擬資源應該是在一個統一共享的資源池中,不應該受制或者特殊對待某些運行其上的VNF。
NFV、VNF三個同樣的字母調換了順序,含義截然不同。NFV是一種虛擬化技術或概念,解決了將網絡功能部署在通用硬件上的問題;而VNF指的是具體的虛擬網絡功能,提供某種網絡服務,是軟件,利用NFVI提供的基礎設施部署在虛擬機、容器或者bare-metal物理機中。相對於VNF,傳統的基於硬件的網元可以稱為PNF。VNF和PNF能夠單獨或者混合組網,形成所謂的service chain,提供特定場景下所需的E2E網絡服務。
MANO(Management and Orchestration)提供了NFV的整體管理和編排,向上接入OSS/BSS,由NFVO(NFV Orchestrator)、VNFM(VNF Manager)以及VIM(Virtualised infrastructure manager)虛擬化基礎設施管理器三者共同組成。Orchestration,本意是管弦樂團,在NFV架構中,凡是帶’O’的組件都有一定的編排作用,各個VNF、PNF、及其它各類資源只有合理編排下,在正確的時間做正確的事情,整個系統才能發揮應有的作用。
VIM:NFVI被VIM管理,VIM控制着VNF的虛擬資源分配,如虛擬計算,虛擬存儲和虛擬網絡。Openstack和VMWare都可以作為VIM,前者是開源的,后者是商業的。
VNFM:管理VNF的生命周期,如上線、下線,進行狀態監控、image onboard。VNFM基於VNFD(VNF描述)來管理VNF。
NFVO:用以管理NS(Network Service,網絡業務)生命周期,並協調NS生命周期的管理、協調VNF生命周期的管理(需要得到VNF管理器VNFM的支持)、協調NFVI各類資源的管理(需要得到虛擬化基礎設施管理器VIM的支持),以此確保所需各類資源與連接的優化配置。onboard新的網絡業務,VNF轉發表,VNF package。 NFVO基於NSD(網絡服務描述)運行,NSD中包含Service chain,NFV以及perfomance goal等。
E2E網絡服務示例(帶有嵌套的VNF轉發表)
從邏輯上看,網絡流量從一端的接入點流入,經過VNF-1,VNF-2(A/B/C),再經過一個PNF-3,最后從另一端的接入點流出。但是從物理層面看,外面的流量是從一端的PoP(Point of Presence)進入,經過幾個PoP上物理設備的轉發,最終從另一個接入點流出的。
NFV未來的演進可能包含初級和高級兩個階段:
在初級階段,NFV將作為實施傳統業務的新方法,主要完成將傳統基於專用硬件的軟件執行環境一對一地轉化為基於通用硬件的VM上的專用虛擬化環境。
在高級階段,NFV將作為實施新業務的新方法,包括將VNF分解為微業務乃至單功能VNF后再重新組合、采用容器技術將單個VM切片成更小容器、應用可軟件編程的數據模型實現管理系統集成和自動化管理等過程。
參考: