隨著網(wǎng)絡(luò)功能虛擬化(NFV)的風(fēng)靡,特別是在移動服務(wù)提供商市場,運營商正在嘗試將EPC內(nèi)的關(guān)鍵功能進行虛擬,例如服務(wù)網(wǎng)關(guān)(SGW)、PDN網(wǎng)關(guān)(PGW)、MME(mobility management entity)。通過在現(xiàn)成的x86平臺上運行這些功能,他們可以從硬件系統(tǒng)中分離出軟件,并實現(xiàn)一點程度的廠商獨立性。至少原則上實現(xiàn)廠商獨立性。
面臨可擴展性的挑戰(zhàn)。雖然一些功能占用相對較低的帶寬,且不需要高容量和高處理能力,但其他的功能需要高帶寬、高容量和高處理能力。對于這些功能,x86平臺能夠提供易于擴展的靈活的能力。
在很多情況下,虛擬化環(huán)境中的擴展性能需要對數(shù)據(jù)包進行特殊處理,例如,在使用SR-IOV等技術(shù)執(zhí)行管理程序和虛擬交換機旁路。通常,企業(yè)將使用專門的網(wǎng)卡(NIC),并且還有硬件加速或網(wǎng)卡卸載以提高性能。但是要利用這些技術(shù)加速和改進性能,企業(yè)需要使用特定的板卡,這反而在硬件和軟件方面帶來鎖定。
換句話說,一旦運營商部署加速技術(shù),他們不能簡單地換出任何其他基于x86服務(wù)器的服務(wù)器。相反,他們需要堅持選擇提供硬件加速和網(wǎng)卡的同一個供應(yīng)商,甚至可能尋求只從該供應(yīng)商處購買,以確保他們的軟件能夠遷移到具有硬件輔助功能的新一代網(wǎng)卡。
當(dāng)使用NIC offload、hypervisor/kernel bypass或其他技術(shù)將會影響其性能,需要通過多服務(wù)擴展性能。如果被虛擬化的網(wǎng)絡(luò)功能是無狀態(tài)的,這個過程相對容易。但是,如果需要在擴展的NFV解決方案上保持狀態(tài)和負載均衡,這個過程就會相對復(fù)雜。在后一種情況下,企業(yè)需要一個負載均衡器,它能夠理解與網(wǎng)絡(luò)功能相關(guān)協(xié)議且關(guān)聯(lián)各個接口的流量,然后的虛擬EPC功能的橫向擴展實例之間智能地實現(xiàn)負載均衡。
這讓我想起了早期的電子商務(wù)和商業(yè)互聯(lián)網(wǎng),即web服務(wù)器運行在x86服務(wù)器的早期。隨著網(wǎng)站和Web應(yīng)用程序流量的增長,這些Web服務(wù)器和應(yīng)用程序需要擴展,這需要流量在橫向擴展解決方案之間進行負載均衡。對于電子商務(wù)流量,需要諸如狀態(tài)負載均衡器之類的功能來跟蹤會話和Cookie,以及向Web應(yīng)用程序或服務(wù)器的實例發(fā)送對應(yīng)的流量。雖然這最初可以通過基于軟件的負載均衡器實現(xiàn),但隨著流量增長,這個過程需要一個專用設(shè)備,可以執(zhí)行各種任務(wù),包括負載均衡、運行狀況檢查和負載重新分配。隨著時間的推移,產(chǎn)生了FPGA和硬件輔助功能的專用負載均衡器,最終帶來了應(yīng)用交付控制器。
NFV領(lǐng)域是否朝著同一個方向發(fā)展?如果是,誰將為所有不同的虛擬網(wǎng)絡(luò)功能構(gòu)建負載均衡器?如果每個廠商都提供具有不同虛擬網(wǎng)絡(luò)功能(VNF)的解決方案,在擴展環(huán)境中進行負載均衡,那么每個虛擬EPC功能是否會有廠商提供特定的負載均衡器?
將兩個場景綜合考慮(即使用專用加速引擎和用于服務(wù)器內(nèi)性能改進的網(wǎng)卡,以及使用專用的有狀態(tài)負載均衡器設(shè)備在服務(wù)器之間分配流量),提出了一個問題:NFV是否加劇了廠商鎖定而不是實現(xiàn)廠商獨立?在當(dāng)前的狀態(tài)下,無疑NFV加劇了廠商鎖定。